Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Mighty is such an obviously good idea, and if you've spent decades on the cutting edge of the web you'd understand why. People's demands for more powerful web apps are for all intents and purposes infinite, and it is much more pleasant as a developer to develop once, run anywhere, than to develop an app for low powered clients and a different one for high powered ones.


Define "powerful".

I'm rocking a 8 year old laptop. I also use NoScript, which means I'm pretty aware of what code webpages are actually running on my computer.

What I've seen is that the things that make it really chug have very little to do with how much actual functionality the website has. Beautiful CSS animations usually aren't too bad, either, even on my old computer. The real performance hogs tend to be things like scrolljacking, telemetry, and dynamic ad placement.

The interesting outlier here is gmail. Gmail fascinates me, because it keeps getting slower and slower, without, as far as I can tell, actually gaining any new capabilities.


Gmail's so bad now that I only use "classic HTML" Gmail in the browser, and native clients (Apple's Mail, for example). I have no idea how they managed to make a relatively simple "web app" so huge and heavy. You could add all of full-fat Gmail's features to "classic HTML" Gmail for very little cost in bundle size and active resource use—though the result might not be an "app" in many folks' opinions, I guess. I just know navigating classic Gmail, with its "bad" full-page loads, is way faster than the "efficient" AJAX-style crap on normal Gmail.

Mobile Gmail's not just heavy—it's broken. Whatever stupid, misguided bullshit they're doing with scrolling makes it register clicks where they weren't intended if I'm not super careful.


> powerful

I want to visualize 1TB of single cell RNA seq data in a browser tab, then open a new tab, change some params, and share the link to a colleague. I want it to be instant.

In the non-multiomics world I also make browser based data visualization software (most recently worked on this, for example: https://ourworldindata.org/coronavirus-data-explorer). I want to load up 500GB and facet on multiple dimensions and then share the link and have it all run instantly.

I'm not talking about Gmail and Text editors here. M1s solved that.


> I want to visualize 1TB of single cell RNA seq data in a browser tab, then open a new tab, change some params, and share the link to a colleague. I want it to be instant.

But why? Wouldn't you be better suited writing a native application that would do this better? This seems like you're building a problem for this solution. Most people use a browser for Gmail and to read news. Your example already works really well on the browser on my phone


> But why?

Because cancer is incredibly complicated and requires incredible amounts of data, analysis, and *collaboration*.


The "but why" question was not pointed at visualizing 1TB of single cell RNA sequence data or collaboration. It was pointed at why you'd want to do it in a browser? Why wouldn't you be able to make links and share them from a native application that they can then open in their application?

Maybe I'm missing something in your problem statement but are you downloading all that 1TB in your browser window and changing parameters? If yes Mighty has to download that data too and considering that each user is sequestered, someone you're sharing this with will have to download all that too. If you're not and the visualization is running somewhere else and the result streamed to your system how does Mighty solve that problem?


This is slightly what I'm thinking, for that particular use case.

The idea that you're going to shove 1TB of data down to the client strikes me as slightly unhinged. Even if we assume you can achieve a sustained transfer rate of one gigabit per second, it's going to take over 2 hours to get a terabyte shoved down to the client. I'm guessing, though, that the actual vizualization is nowhere near one terabyte. Data's going to have to be aggregated somehow, because no computer monitor can display a terabyte worth of information all at once. Even a 4K monitor would fall short by many orders of magnitude.

It would be much faster, and, I think, simpler, to keep the data on a central server, have it generate the visualizations, and push them down to the client.


> The idea that you're going to shove 1TB of data down to the client strikes me as slightly unhinged

Yeah which is why I asked for clarification from them because it seemed really weird to assert that as a positive for the app?

> It would be much faster, and, I think, simpler, to keep the data on a central server, have it generate the visualizations, and push them down to the client.

Yeah I completely agree but in this case, Mighty would have next to no advantage over just loading the visualization on your own machine. Hence, again the confusion about asserting Mighty as a means to an end


Yeah, agreed. I can see Mighty as perhaps being useful as a band-aid to deal with someone else's poor, resource-hungry design.

But if you're the actual app developer, I'm just not seeing a good reason why you would want to deliberately incorporate this technology into your design. Why farm the sever-side rendering out to a middleman when you could just... do server-side rendering?


> why you'd want to do it in a browser?

Distribution. There's only 1 magic platform that allows you to ship new versions at your own cadence to 100% of people.

Developing for just M1s is great, when all your users are on M1s.


I'm sorry but can you please stop speaking in riddles and be clear about how you feel Mighty is solving this issue? I'm genuinely at a loss about how this is solving your use case but your answers are only cryptic. I truly want to understand how Mighty might help to solve real world problems

How do browsers make something distributed? How are browsers the only "magic platform" that allow you this? How is Mighty contributing to solving this problem? How does M1 matter here


The theoretical end you describe — one where we are all just writing web applications to run in Mighty - sounds incredible but ignores the reality. There will not be 100% or even close to 100% adoption of streaming browsing, especially if it costs $50(!) a month. And you can imagine everything else that will go wrong:

- mighty creates arbitrary APIs that allow more speed so now we have yet another build target

- it manages to become successful, so now competitors jump in and now we have multiple targets to build for.

- god forbid, competitors offer “free” versions that become even more invasive to your browsing


For me, the question becomes—if we must write applications to one target that's going to run on a server anyway—why oh why must it be web tech? The whole appeal of applications (not documents) in the browser was that they were (kinda, sorta) able to run on any platform. If your target is one browser on one OS, and you're writing an actual application, why would you subject yourself, your developers, and your product quality to an HTML + JS UI?


Write once run on billions of clients but scale to supercomputering power.


That will never happen. A large majority of people will never have mighty since it is expensive, webapps will continue to be built to render locally.

People already have a lot of power in their machines for their non-web apps, and it is enough to run web apps as well.


I'm certainly looking forward to seeing how much cryptocurrency I can mine on Mighty, especially if they lower prices later.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: