10 ms·
> As someone who has been into mobile app development since 2010, the comments above read like a punch to the gut. We grew up believing that the native experien
by StuckDuck 4y ago
> As someone who has been into mobile app development since 2010, the comments above read like a punch to the gut. We grew up believing that the native experience was better than the web!
It is
With the transition to web apps, we have lost some excellent quality standards, integration, and availablity.
10 years ago you could have productively used your computer and software without ever needing to touch an internet connection. Nowadays it's either:
- the browser is the portal to everything
- apps are just slow, unresponsive, ugly looking WebViews
It's sad that the bar is so low these days that VSCode is considered acceptable. That takes 30 seconds to start up on my i5-8250U with MX150 graphics.
Notepad++ launches instantly on a 10 year old 32 bit computer with a *low end CPU.
Not criticizing your service btw, I'm sure it's well developed. I hate the general concept at the base tho.
- wooque 4y agoVS Code is not slow, it launches in second or two, you probably installed bunch of shitty extensions that slowed Code to crawl.
- StuckDuck 4y agoNo, this was on a clean install
- nawgz 4y ago> It's sad that the bar is so low these days that VSCode is considered acceptable. That takes 30 seconds to start up on my i5-8250U with MX150 graphics. Have you considered that your computer is the problem? I am running a dual-core MacBook Pro that usually hosts a docker-compose file running Postgres and Mongo, a few NodeJS services, and a React hot-reload server, and I can open a fresh or additional VSCode window in 5s. Or on my i7-6700k/1070 I was pulling it up within 2s I don't disagree with the idea you express about the internet connection though - it's frustrating to find all the things that should be locally cached and aren't, and all the places offline-first tech isn't applied that it would be beneficial. Fortunately airplanes have more and more wifi these days...
- StuckDuck 4y ago> Have you considered that your computer is the problem? I wouldn't say so, Elementary OS's built in code editor takes a few seconds at most to open a file Then again, Electron is really slow (among other things), but anyways, regardless of the toolkit you're using, your app is still an overly complex .html page, doing things the DOM was never meant to do or programmed for, e.g. DOM traversal becomes slow. (Unless you use something like React Native, which is 'truly native', but mobile only) Honestly the idea of web apps sounds a whole lot like trying to make a video editor app in MS Word
- nawgz 4y ago> your app is still an overly complex .html page, doing things the DOM was never meant to do or programmed for I mean, maybe it was true when browsers were hypertext-only applications, but now they are performant app-delivery toolkits. Native might get higher performance, but at a fairly steep cost of coupling and distribution difficulty. I can deliver insanely powerful apps to many OSs and form factors on a 512kB bundle, meanwhile native mobile apps come in at 60-500MB for 1 platform. It's also not really that hard to have smooth 60fps display on big datasets & visualizations, which means I contest what "slow" really means for DOM traversal. Seems to me like you're hell bent on discounting this one platform instead of arguing the tradeoffs are not worth it, which is a shallow take from my view.
- MatthiasPortzel 4y agoArguing that web technologies weren’t originally intended to be used to develop apps is completely orthogonal to the discussion. The fact of the matter is that web technologies are the best tool for the job. They’re one of the only tools that allow you to build an identical cross-platform application; not to mention the host of other advantages, like code-sharing with a website, an extensive JS ecosystem, (in the case of a PWA) fully sandboxed, etc. And, I agree with you that today Electron apps are a worse user-experience a lot of the times. But just brushing off anything made with web technologies because “it wasn’t designed for this” feels very shortsighted in my opinion.
- 4y ago
- whizzter 4y agoThe blame is on the mobile vendors (and desktop platform vendors) just trying to "out-innovate" each other (also building propietary security/signing solutions) with their propietary stacks (SwiftUI/ObjC, Java/Kotlin, C#,etc) at the same time as there's been an explosion of apps/services that just needs basic functionality. The budgets/manpower isn't there to support everything... apart from if it's just a webview. 20 years ago a Windows program was enough (guess why Visual Basic was so popular?). There's also a flip-side to the equation, the web-platform is damn capable thanks to the relentless pacing (both in features and JIT improvements in JS engines) after IE died off and catching up to it is becoming harder every day. Looking today the only real choices for cross-platform dev seems to be: WebView, React Native (using Expo is a damn smooth experience almost to the level of webviews) and finally Xamarin/C#. (Yeah, I'm aware of Dart/Flutter but isn't it already long overdue to be killed by Google?)
- Kiro 4y agoVSCode launches instantly for me.
- _Algernon_ 4y agoI wouldn't call it instant, but it takes roughly 1s for me. That's acceptable in my eyes.
- ugjka 4y agoYes, it launches instantly, but depending on the dev env and plugins you have it may take a while before it is fully usable
- throw10920 4y agoDo you have the same system (or strictly lower-spec) than GP? If not, your comment is irrevelant.
- Kiro 4y agoYes, but even if I had monster computer "instant vs 30 seconds" wouldn't be irrelevant.
- throw10920 4y ago> Yes Alright, so it works for you, but not GP. That still means that it's poorly optimized. > even if I had monster computer "instant vs 30 seconds" wouldn't be irrelevant You're stating the negation without providing any argument, so I guess I should explicitly clarify why it's irrelevant: because the topic of this thread is about medium-to-low-end machines, and not about high-spec ones. To be even more clear, the difference between "instant" and "30 seconds" is categorical in almost every situation, let alone the specific context of interactive software tools.
- _nhh 4y agoSee, this is where the misconception comes from. I am happily creating great offline experiences with static html apps embedded into every platform I want. (pc, ios, android, xbox) All with the exact same code base. A browser not implies online connectivity.
- WA 4y agoSame here. My offline-first Capacitor/Ionic app feels a lot more snappy than the native competitor, which requires an internet connection and has a lag of a second when saving a data item. Point is: just because it’s native, doesn’t mean it’s well-designed.
- carlosdp 4y agoYou're totally right about startup times with apps like VSCode, but there's a reason that never gets worked on really: the most active users startup those pro apps (VSCode, Photoshop, etc.) and simply don't close them. Optimizing for startup time probably doesn't end up being much of a gain, better to make sure the experience stays solid once it's already running, and for long periods of time.
- FinalBriefing 4y agoAgreed. I do like how it shows the impact that each extension has on startup time, but memory is the real issue I care about.
- LunaSea 4y ago> 10 years ago you could have productively used your computer and software without ever needing to touch an internet connection And then users wanted collaboration features, weren't keeping their software up to date (so it had to be done for them), wanted to share their data across their device on the cloud, etc, etc.
- StuckDuck 4y agoI never did.
- LunaSea 4y agoBut a lot did. Microsoft Word still exists but somehow lots of people prefer using Google Docs because it has those cool features.
- StuckDuck 4y agoCloud apps != Web apps I never had a problem with the former, and appreciate their capabilities. Many cloud apps are also web apps, but not necessarily (see Sketch)
- bityard 4y ago> That takes 30 seconds to start up on my i5-8250U I run VSCode (on Linux) on a number of different low- to mid-end machines between a 5 and 10 years old and it starts within 2-3 seconds on all of them. New windows/tabs open basically instantly. I ran it once on a Raspberry Pi just for fun and even then it was entirely bearable. I can only imagine you are loading a bunch of extensions, or maybe one or two extremely heavy ones. It's never anywhere near as snappy as plain Vim, of course. And I am not easy to please nor a fan of Electron apps in general but VSCode has been fairly tolerable for me over the years.
- divan 4y agoOn my Apple M1 it takes ~33 seconds for cold-start. I use only vim and flutter extention. That said, my biggest complaint is that on this extremely fast computer, the lag between a keypress and a symbol is too big. I'm typing faster than VSCode renders characters. With vim mode enabled it sometimes goes super slow, with 1-2 sec between characters (but that's not always). Anyway, agree with the author. Everytime I use web- or electron-app I'm just expecting sluggishness, ugliness and weird behaviors and refresh the page (=restart the app) all the time. It's just a norm. I guess no matter how people pretend that typesetting engine from 80-s is a good UI stack, they still have to pay huge price in usability, performance and orders of magnitude higher memory usage.
- solardev 4y agoHow is this possible? What is a "cold start"? For me, with Code completely exited (i.e., not in the dock at all), it takes about 1 second to start drawing and about 4 or 5 to finish rendering all the icons and such and be fully usable. Even IntelliJ (now THAT's slow) only takes about 6 or 7 seconds to fully load. On a M1 too. Do you have some weird antivirus or similar scanning all your apps...?
- divan 4y agoBy cold start I mean, I haven't launched the app in the last days, so it's not in any sort of cache or memory pages. No, I don't have any antivirus, and generally very concerned about what's running in the background (I delete apps from LaunchAgents dir, avoid keeping hungry Electron apps in the background unless really needed, etc).