(Sorry I wasn't clearer, I struggle on how to make points like this succinctly without is sounding a bit disjointed.)
Point being that I think that even if all apps still had the design aesthetic of 2008 iPhone apps that Figma still would have succeeded.
Media creation maybe, but I feel like professional software engineering might move soon.
At the beginning of the year I moved from a company where I worked entirely locally, running a local stack, developing in a local editor, etc, to a company where I work almost entirely non-locally. That happens to be on a box under my desk, but I only use it over SSH. It's beefy, and I could get an even beefier VM somewhere if I wanted. All my editing is now in a web-based VSCode instance which has been much closer to desktop VSCode I was using before than I expected. All my builds happen remotely. It's honestly an amazing experience. I think things like GitHub Codespaces have so much potential here.
I've also tried VS Code in the browser, and personally I find it an absolute unusable mess, the key binding space is just way to overloaded for a complex app like VS Code, and the browser itself to co-exist (e.g., many of VS Code's important bindings get eaten by the browser itself). I think that all that really matters is that the UI for complex apps runs locally.
(But I could be wrong here, I don't make the mistake of extrapolating my own experiences to other users. E.g., I also find VS Code to be so slow I avoid, but most users couldn't care less. https://news.ycombinator.com/item?id=27360494)
FWIW, I'm incredibly picky about shortcuts, and as long as you use Chrome to "install" the web app, it basically works fine.
Working in this way depends a lot on the stack you’re working with. For languages like Java or C#, where you can’t really work productively without an IDE, browser-based VSCode won’t cut it for most people. (I’d prefer a JetBrains IDE over VSCode too.) If your language doesn’t have a good remote debugging story, a remote-first stack won’t cut it.
This setup with a box under your desk doesn’t sound reasonable to me from a financial side either. According to your profile, you’re at Google, so I assume the hardware you use to access the box is a Chromebook. Sure, those are dirt cheap, but is a desktop + Chromebook combo really cheaper than one reasonably priced PC laptop with specs similar to the desktop?
I think I’m still happy with my beefy (spec-wise and kilogram-wise) laptop, having the ability to do everything directly on the machine (with no network round-trip for every operation), and still being able to do things if the VPN or the network goes down (with limitations, of course).
I use a MacBook Pro. I just connect to the machine. We don't use a VPN (see BeyondCorp) but something like Tailscale would probably work well. The fact the machine is under my desk and not in a data center is due to my laziness in returning it, nothing more.
I'm using VSCode for mostly Java. It's not perfect, but I prefer it to JetBrains products. JetBrains products are more capable for now, but I think their new IDE does remote development, and VSCode gets more IDE-like all the time. I think that's the direction things are going.
I'm using a MacBook Pro because I've been using Macs my whole life and have too much muscle memory to switch to something else.
As for having a beefy laptop, that only goes so far. Right now laptops tend to top-out at 32GB RAM if you still want plenty of choice, you make sacrifices to get more than that. Also many companies have policies or regulation restricting what can be on laptops.
I agree that laptops can’t always do everything, but many things can be done comfortably well. At a previous job, I had 32 GB of physical RAM and 20 GB of swap (thanks to 5-10 RAM-hungry JVM apps), and things were quite usable for standard dev workflows.
Yes. So does a VPN outage if you're using that instead. If your laptop gets chewed up by a lawnmower, it's also impossible to work.
Err, sort of. Beyond Corp isn't really one single service that can be running or down, it's more of an approach, a bunch of different pieces, etc. I haven't seen an outage yet, but I don't think it would look like "the VPN is down", probably more like "this web app thinks I'm logged out".
I do recommend reading the BeyondCorp paper, although it's been a long time since I read it.
It is so seamless that you forget that the code is not in your machine.
I think the distinction is that the UI needs to run locally so that shortcut-rich powerful apps don't have to fight for the keybinding space with the browser.
I'd say that the migration to the client-server approach for professional software is already underway, with VS Code of course being the canonical example, but my (limited) understanding is that Blackmagic's Da Vince Resolve (which is currently eating Premiere and Media Composer's lunch) also uses a similar model where data can be stored remotely but the UI runs locally.
But I don't think the let's say "other deltas" that are now keeping other high-powered apps from becoming web apps are moving at all. You can check my other comments in this thread for more details, but a specific point I'm making with the original comment is that there are other areas the Figma hasn't dented at all that prevent more powerful apps from being adapted to the browser. And that the fact that design no longer needed those features is what paved the way for its success.
Figma as part of an app family, is way way more similar to Google Slides (i.e., office suite) than it is to Photoshop (i.e., "professional" software).
Once that is true, you want as many people to collaborate as possible and the browser is the perfect delivery model. Plus you ensure a consistent version across all clients.
And liveblocks.io is here to make that happen at scale.
Today the onus is on people who still believe in that idea to express why they think Mighty failed (without falling into the well-worn "year of the desktop linux" trap).
Personally I don't care about the idea either way, I'm just looking at is where the market is going (e.g., how the market share of various software packages are trending). Ideas that sound good fail all the time in the market.
And so far, outside of Figma, the idea you're expressing looks to me like a failure? And personally, I've started to look at other things different about Figma that might have accounted for its success.
Digging into my own comment here, part of the reason I harp so much on the skeuomorphic to flat design change is it's such a bizarre thing to happen to an industry, for its defining requirements to change in such a way that the technology gets so much simpler.
E.g., can you imagine if realistic light rendering suddenly was no longer desirable in 3D software? Of course that would leave a gigantic opening for new players!
This is not about web vs. native but client-side vs. server-side rendering & compute.
Absolutely 100%. The other thing is that flat design brought a lot of low quality designers into the market because you could just add a few recommended spacing grids and flat colours and get a design out. But because the quality often was low, it forced collaboration for cross checking and that caused Figma and other software to come to the forefront.
But all forms of coding and media editing (the main tasks that are truly CPU/GPU-bound, the area where something like Mighty would help) have remained as local desktop app affairs.
I think what really happened is folks misinterpreted the significance of Figma. The web has taken over in collaboration-focused software, e.g., things like Google Docs, Slack, etc... What really happened is that design has moved from specialized professional software (hard to use, powerful), to being more like collaboration software (easy to use, light).
I.e., what Figma really signals is that design is now more like new task that became more like using Google Docs app, not that high-powered tasks like video, photo, and audio editing are becoming web apps. This means what really powered Figma's takeover was that flat design took over, which is less technically demanding.