18 ms·
App Should Have Been a Website (and Probably Your Game Too)
- gazchop 2y agoI disagree. The problem is more nuanced. A well implemented (native) app is always better than a well implemented web site. The problem is poorly implemented apps which are just UI wrappers hitting dumb APIs or embedding entire web stacks which hit dumb APIs. A well implemented web app isn't much better than that. They don't work offline, they use way more resources than anything native and they leak data like a sieve generally.
- adastra22 2y ago> at Rogue Engine, we’re committed to being the go-to game engine for Three.js and the web and there you go, author has a vested interest in you making web apps.
- polotics 2y agowell the article is well reasoned enough. what I gave up on was finding actual pricing information for this engine. all it say is free if you earn less than 80k... so what's the price please?
- egypturnash 2y agohttps://rogueengine.io/GetStarted https://rogueengine.io/GetStarted says: Plus $ 20 $ 10 / month / seat Billed Annually $ 120 Pro $ 50 $ 25 / month / seat Billed Annually $ 300 Enterprise $ 90 $ 45 / month / seat Billed Annually $ 540 Each of those tiers has a different "free if you earn less than $xxx" level that I'm not gonna cut and paste. There's a chart with the differences between what those tiers gets you too. Also: Can I publish anything I want to Rogue Play? You're allowed to publish content that is neither sexual in nature or illegal under either UK law and the laws of your country of residence. What happens to my files if I cancel my subscription? When you cancel your subscription your files will be locked and you won’t have access to them until you buy a new license. They will be scheduled for deletion in 30 days. What happens to my files if I downgrade my subscription? It's your responsibility to free the necessary space before downgrading. Your files will be deleted after 24hs unless you take action. ----
- adastra22 2y agoI don’t think the article was well sourced. WebGL technologies might be adequate for casual games… maybe. But it will be a very long time before they approach AAA gaming performance. And there is still a ton of funkyness about input (gamepad? multitouch?) and latency that is hard to address on a web stack. He just asserts that the underlying technology has come along. It hasn’t.
- deleted 2y ago[deleted]
- ndr42 2y agoFrom the article: "[…] web apps have caught up. They’re faster […]" Especially how can this be true? Maybe this doesn't matter because it's already fast enough but the difference in look and feel will be noticeable.
- oneeyedpigeon 2y agoThe writer probably meant "faster [than they used to be]" rather than "faster [than native apps]".
- hombre_fatal 2y ago> A well implemented (native) app is always better than a well implemented web site. Dunno, native app doesn't have URLs nor deep links. I can't link you to a page in my native app that you can click on. In my iOS HN app I'd have to click "Copy website link" to share a submission. If there were no website, I couldn't share it at all. Same with Reddit. For most apps, that's a lot to give up when you app is basically just a website without a url bar.
- oneeyedpigeon 2y agoSame native apps don't even relayout when you change window size, let you change the font size, or let you copy text.
- manmal 2y agoNative apps made with SwiftUI or Jetpack Compose adjust their font size according to user preference in system settings out of the box. They also relayout automatically. Copying text on press is a one-liner in both frameworks, just need to think of it.
- sltkr 2y agoAndroid apps absolutely support deep links: https://developer.android.com/training/app-links https://developer.android.com/training/app-links (surely iOS supports this too?) It's also widely implemented in practice. For example, Instagram allows copying links to posts, and if you can view an Instragram link in the browser, it opens in the app.
- victorbjorklund 2y agoios and mac got url schemes. Sure not all developers implement it correctly. But not all sites implement a good url structure either (keeping state etc in url for sharing)
- jcotton42 2y agoAndroid and Windows do too.
- backspace_ 2y agoOn a side not, I like how we have electron apps that are 100s of mega that just access a website. Just as much of a waste.
- amelius 2y ago> A well implemented (native) app is always better than a well implemented web site. No, because it fails to support the feature of running virtually anywhere. For many people this is the #1 feature. Everything else is just icing on the cake. Who cares about an app that is 2x faster but doesn't run?
- flkiwi 2y agoI've watched Logseq (note app) go from a perfect little browser-based app that did exactly what I wanted--block-based markdown notes synced through git--to an app with dozens of features that are pure bloat for me that I can't use in half the places I need it because I cannot install apps. It was an interesting process to watch start, because people were like "finally an app!" and "moving on from 'just' a website!" but without any real justification for it. The app itself was the accomplishment. And I should note the Logseq app is a good piece of work. In absolute terms it's great. It is, however, not what it used to be and not really what I want. I'd like to fork Logseq, deprecate the app, and have a self-hosted browser interface with storage on the server, synced to a git repository for backup.
- mjmsmith 2y ago> For many people this is the #1 feature. Everything else is just icing on the cake. I hear this sentiment from developers much more than non-developers. I wonder what percentage of developers do all their work within a browser.
- amelius 2y agoNon developers typically don't think about these things. They just suffer them subconsciously or accept the situation as something they can never change anyway and go on with their lives. You have to ask them to find out. And I also hear developers complain more about performance issues than non developers.
- syndicatedjelly 2y ago> A well implemented (native) app is always better than a well implemented web site. Given that the entire article argues pretty strongly against this, you need to at minimum argue against the points posed, or present your arguments for why "well-implemented native apps are always better". It's not enough to make a straw man of the worst possible scenario and claim that it holds true for the general case as well.
- wiseowise 2y ago> A well implemented (native) app is always better than a well implemented web site. No, not always. I don’t care how well implemented or optimized your “app” if it’s something that could’ve been a static web page. > They don't work offline, they use way more resources than anything native and they leak data like a sieve generally False, false and false.
- throwitaway1123 2y ago> They don't work offline This isn't true. Offline functionality is the raison d'être for Service Workers. You can run an entire HTTP request router on the client to respond to requests while offline: https://hono.dev/docs/getting-started/service-worker https://hono.dev/docs/getting-started/service-worker
- Spivak 2y agoAre you guys okay? Don't get me wrong it's clever, but it's also insane. If I pitched the idea of having SMB shares work online by shipping a driver that could intercept low level SMB calls and reroute them to a mock SMB server that holds the cache they would have assumed I'd lost it. Surely the browser could help you a bit more to implement offline sites in a more integrated fashion.
- throwitaway1123 2y agoIt's ultimately just a little event listener function that accepts a Request object and returns a Response object. I bundled the service worker by running a quick `npx esbuild --minify --bundle --outfile=sw.js sw.ts` command, and it produced an 18.6kb JS file in 10 milliseconds. That's not even half the size of libraries like HTMX, Alpine, and jQuery. You can of course use the CacheStorage API directly as well (you're not obligated to use a mock server): https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage#examples https://developer.mozilla.org/en-US/docs/Web/API/CacheStorag... I've certainly seen crazier things though. People routinely include entire copies of Ubuntu LTS in their Docker images to ship tiny HTTP servers.
- ctippett 2y agoI sympathise, but talking to my sister I've come to appreciate a different point of view. I have an "app", a PWA, that she says she cannot find because it's not in the App Store. Despite telling her it's available as a website, this seems too much... she just doesn't use — or is comfortable using — Safari.
- spiderfarmer 2y agoNever call a PWA an app, people will get confused.
- oneeyedpigeon 2y agoBut the "A" stands for "app"! Is there anything you could call it that would be less confusing (because "PWA" or "Progressive Web App" sure ain't it)?
- spiderfarmer 2y agoUntil some massive marketing campaign explains to all users of the internet what PWA's are (which is never going to happen), there's nothing wrong with calling your PWA a website if it prevents a lot of confusion.
- oneeyedpigeon 2y agoSure, but I also think there's nothing wrong with calling it an "app" if that's the buzzword that will tip some people from dismissing it towards trying it out.
- spiderfarmer 2y agoIf it's clear that people expect 'apps' to be in the app store, how can you think "there's nothing wrong" with calling PWA's 'apps'?
- 2y ago
- franze 2y agoIt is not about tooling, but distribution.
- noam_compsci 2y agoThis should be auto posted as first comment on every post about a new technology / platform
- streptomycin 2y agoAndroid lets you list PWAs in the app store, so we're halfway there...
- oneeyedpigeon 2y ago> Platforms like Poki and CrazyGames, with a combined 95 million players a month, are leading the charge in, what I like to call, the Browser Games Renaissance. I'm probably not the target market, but my first impression of Poki is that it's absolute trash; it looks like a shopfront for the lowest quality mobile games I can imagine. The first thing I tried was a block-puzzler that involved drag-and-drop to move pieces, but the drag didn't track the mouse cursor properly. If someone asked me "which site is leading the charge in the Browser Games Renaissance?", I would say itch.io, hands down.
- noam_compsci 2y agoAgreed I’d rather spend more time on itch. But from a dev perspective poki has a chance to monetise while itch monetisation is near zero at the moment.
- nottorp 2y agoThat's a good thing for the customers though. When the original article is talking about escaping the tyranny of the app store it sounds to me like they don't want to share the loot box revenue with Apple/Google, like our chinese friends at Epic. Unfortunately for them, there are still pay once real games. Some of the good indies are on itch.io indeed. Stop calling lootbox dispensers "games" please. I prefer paying for a game in advance instead of being monetized.
- nforgerit 2y agoWhilst I agree with most of the points, author is making here I cannot help but make a small snarky remark that we, as a dev community, have been talking and dreaming about those talking points since the advent of html5 which is roughly 15ys. Marketing and availability, i.e. is it within reach when a customer thinks about it, are core problems needing to be solved.
- manmal 2y agoMaybe 2025 will be the year of PWAs? /s
- syndicatedjelly 2y agoWho is this unified hivemind dev community you speak of?
- deleted 2y ago[deleted]
- spiderfarmer 2y agoAs the solo founder of a couple of 'popular' websites I get asked regularly if I want to create an app. When I ask them what they want the app to do what a website can't, they can't name a single USP, especially now notifications work on all devices. And really, who has the time to maintain a website and two apps? Or rebuild a decade old platform in a janky cross compiling solution like Flutter that is always on the brink of being sunsetted? Not me. I'll spend that time on improving my websites, thanks. I'll let my competitors go bankrupt on trying to monetise an expensive app that should have been a website.
- _fat_santa 2y ago> And really, who has the time to maintain a website and two apps? Or rebuild a decade old platform in a janky cross compiling solution like Flutter that is always on the brink of being sunsetted? I'm a solo dev for a startup and this is something I always hammer home to my non-technical co-founder. I tell him that spinning up an app that would have parity with our current app will not only take close to a year for a single person to develop, but from there on out every feature will come out slower since we need to have mobile parity as well. Out current plan is to slowly make all the pages on our website mobile friendly and even that is a big lift for a complex business app
- kdmtctl 2y ago> I'm a solo dev for a startup and this is something I always hammer home to my non-technical co-founder. He is just trying to piggyback an another distribution channel to get more visibility and another place to be found. It has nothing to do with UX.
- mertbio 2y ago> But fast-forward to today, and browsers can do all that. Browsers can't access all the APIs in iOS. > Developers pay hefty app store fees You pay 99$ per year and 15% for each sale. Apple handles VAT, refunds, distribution and so on. > They’re faster, more flexible, and work seamlessly across devices. Native apps? Not so much. Enabling iCloud sync for your app is just a single click on Xcode. > Why Web Apps Are the Future On a national TV program in Germany, they talked about an app related to trees in Hamburg. That same day, my app on the App Store experienced a significant spike in downloads. When I looked into it, I discovered that the app they mentioned on the news was actually a PWA! :) I feel like the author doesn't have any idea about native app development.
- jampekka 2y agoThere are other platforms than iOS.
- deleted 2y ago[deleted]
- oneeyedpigeon 2y agoYour first quote is very misleading because it followed this: > apps had unique features like notifications and offline access. Browsers can do those things. If you're going to offer "Browsers can't access all the APIs in iOS" then, at the very list, provide one or two examples of what you're referring to.
- aman-pro 2y agoContacts API; Not all sensors are supported
- rejhgadellaa 2y agoContacts Picker API: https://developer.mozilla.org/en-US/docs/Web/API/Contact_Picker_API https://developer.mozilla.org/en-US/docs/Web/API/Contact_Pic... Hardware APIs: There is of course a good reason why websites don't get unlimited access to those APIs (and why they can't access them in the background). But Bluetooth and USB are both available on Chromium browsers on every platform except iOS (because Chrome on iOS is Safari). Example: When Google closed down Stadia, they offered a way to unlock the Stadia controller so you could connect it via BT to any computer and use it as a regular controller. You just went to their website, hooked up the controller via USB, and the site would update the firmware on the USB device. But sure, there are many use-cases for native apps. Also, there are many native apps that should just be a website (you shouldn't even need to install it if you only need to use it once or twice).
- noam_compsci 2y agoWeb gaming might be a decent incremental revenue source (< 10%) for big developers or the main distribution channel for small studios that will never make it big. But it will never be more than that. 1. Game ops is too entrenched in mobile. The entire stack (user acquisition, analytics, monetisation) is tried and tested on mobile. These are difficult problems that seem easy to port to web games, but “devils in the detail”. Eg When you’re waiting on appsflyer to ship an update to properly attribute reinstalls for 6 months and end up wasting 25% of your UA budget during that time. 2. Consumers don’t want web games. The UI just isn’t there yet. You misclick out of a tab and lose progress or get distracted / start browsing another tab. Also to do with the ephemeral nature of a browser tab. 3. Unity’s dev network effects are too large. People who know how to make games use unity. People who want to make games therefore learn unity. It’s a flywheel. 4. Something psychological about downloading an app and seeing it on your Home Screen leads to retention. Source: 7 years game dev and each studio I’ve worked in has been paid multiple tens of thousand dollars to port a game to web. Metrics were never anywhere near as good.
- jampekka 2y agoI'm sure there are problems with web games, but some of your arguments seem stem from ignorance about the modern web tech[1]. > 2. Consumers don’t want web games. The UI just isn’t there yet. You misclick out of a tab and lose progress or get distracted / start browsing another tab. Also to do with the ephemeral nature of a browser tab. Fullscreen mode mostly solves the misclick problem. PWAs solve it entirely. Do consumers care at all about what the underlying technology is. > 3. Unity’s dev network effects are too large. People who know how to make games use unity. People who want to make games therefore learn unity. It’s a flywheel. There's Unity web. And people who really know how to make games can also use e.g. Unreal, which as compiled for web for ages. > 4. Something psychological about downloading an app and seeing it on your Home Screen leads to retention. PWAs can install to Home Screen. [1] There is admittedly one company unable to implement modern web tech.
- noam_compsci 2y agoJust played around with a PWA on iOS and added it to Home Screen. Works really really nicely and so it seems pwa have come along a lot since I last looked into them! Thanks for the prompt to update my understanding. I do disagree in the developer point though. Those who know unity really do not translate well to unreal. Totally different languages and ecosystems. Also unity web has always really really sucked for anything other than gimmick games.
- rubymamis 2y agoWhile the web platform is catching up due to the continuous supply of abstractions by modern browsers, once you must deviate from those abstractions, you quickly find yourself needing to implement something yourself that is much less efficient than a native implementation. I wrote about developing my own block editor from scratch[1] using C++ and QML after finding that Notion (and so many other web apps) are extremely slow and inefficient - in terms of CPU/RAM/battery life. I detailed a comparison between native and web block editors, and the difference is huge. The fastest web app (MarkText) is 60x slower at loading texts and uses 3x more RAM than my native app. Also, all web apps couldn't handle loading a very large text file (they were all hanging). Modern computers are blazing fast and efficient, there's no reason a text editor couldn't load large files. This is why, in my view, web apps aren't really the progress people make them to be. We're going backward, not forward, with web apps. This need to change. [1] https://rubymamistvalove.com/block-editor https://rubymamistvalove.com/block-editor [2] https://rubymamistvalove.com/block-editor#8-performance https://rubymamistvalove.com/block-editor#8-performance
- oneeyedpigeon 2y agoA web app that cannot handle a text file bigger than X bytes doesn't become useless, in the same way that a native app isn't useless even though it, too, has a limit on the maximum file size it can handle.
- rubymamis 2y agoAny text editor that struggles to load a large text file on a modern computer is, simply put, inefficient. If 20 years ago they managed to write programs that could handle such cases and today many (web) apps fail at this task means we're going backward. My point is that it's much harder to write efficient code in the web ecosystem because you're bound to specific abstractions from the browser. Once deviating from said abstractions, it's not trivial to write efficient code.
- oneeyedpigeon 2y ago> Any text editor that struggles to load a large text file... Define "large". If it's bigger than the biggest text file I'll ever open, then I don't care. My point is that "efficient" code isn't absolutely necessary in many, many cases.
- PaulRobinson 2y agoA couple of weeks ago I was with a friend who was looking at a website for unusual holiday properties and he bemoaned the lack of an app. I asked him why bookmarks didn't work for him, and he explained it all just got lost - he wanted this to be in the "hotels and holidays" section of his phone's home screen. So I showed him how to add a website to his home screen (well, sort of, I've been iOS since ~2009 and he uses Android, so we had to do a little of collaboration to make it work). Mind blown. Effusive thanks. He now has a way to bookmark sites that works for him. I'm a big fan of the PWA phenomenon, and got very annoyed with my CEO when I was CTO'ing a new platform about 10 years ago, because he wanted to move to native apps just so that a loading screen looked a little nicer. Ended up using a native shell, did the loading screen the way he wanted and then fell back to a WebUI view for core functions. However, there are some areas where I think native wins out, primarily the developer experience - I'll take SwiftUI + Swift over almost any other UI based developer workflow out there. WebASM should mean we see a nice little bit of innovation in the web app dev experience in the near future, and I keep meaning to find time to try Elm out, but at the moment the next app I'm thinking about (which has some tricky low latency UI needs), I'm eyeing up native a lot.
- chrisjj 2y ago> I showed him how to add a website to his home screen Some sites prevent rhis, diverting you to install their app.
- i_love_retros 2y agoApps get access to the device advertising id, can slurp up more valuable data from users who don't know better than to install it, and are harder to block ads in (average Joe isn't going to set up DNS level ad blocking) It's all about advertising, always, everywhere.
- newusertoday 2y agoWebapps do not have access to public url's outside their domain(CORS). Webapps don't have access to gpu in 2024(there is webgpu in chrome but not yet enabled in firefox) Webapps don't have access video/audio codecs.(There is webcodecs api but its partly enabled and there is no api for muxing/demuxing which makes accessing them difficult.) Webapps don't have access to other hardware features that are required for ML. So while i am rooting for webapps it is still long way to go.
- tetrisgm 2y agoOne aspect I find fascinating and under estimated is how Apple makes the browser kind of secondary to apps. The browser is basically a navigator, a renderer of websites. People don’t think of the web as a platform for apps. For them, it’s like a bunch of pages you get to via Google. They have very poor notions of how to navigate or make workflows with it. How many people do you know who just have a million tabs open? Who have no notion of what web apps to use and mainly use Gmail / Slack / Google? This is why Apple pushes apps so much. A dedicated little place for a use case. PWAs are a good in between for sure. But for a lot of humans, having a logo of a brand they recognize is going to be the main thing. “I want a button that says Music, it’s Apple Music, I pay it 10 bucks, I get all the music.“
- ANewFormation 2y agoAre you trying to tell me there are people without a million tabs open?
- taminka 2y agowhile i understand the sentiment and having an app for everything is annoying, there’s a reason ppl prefer app: most web developers are either incompetent as hell or don’t care and write horrible websites, and forcing ppl to make a native app at least ensures some basic level of saneness and performance i think there’s maybe two or three popular websites that work well on my phone, everything else is unuseable, while apps still work okay
- BlueTemplar 2y agoPlease stop making web apps, the web is for documents, not to be hijacked by Google in their attempt to wrestle personal computing from Microsoft. This issue becomes even worse if you try to make software that can both be used with keyboard & mouse and on a small touchscreen. With very few exceptions, you end up with something that works poorly with both interfaces, instead of working great on one of them. Trying to do that in a browser rather than the OS only makes the issue worse (what happens when you press "Alt" ?).
- deleted 2y ago[deleted]
- superkuh 2y agoYep. And it gets worse. Websites are at least supposedly sandboxed so they are not as much of a risk as running native binaries. But this is getting worse and worse as browsers expose more and more of their host operating system's functionality. The benefits of using a website instead of a native app are quickly disappearing while the drawbacks have only been somewhat mitigated. We're getting to the point where browsers are worthy of the decades old criticism Emacs has received. They have eventually become an OS with many fine features - simply lacking a good web browser. The browser, and the web, has been destroyed by the insane security model of modern OS-Browsers: running every executable they're sent from anyone with not a care in the world as if it is normal. This one thing has made it so browsers cannot be in control of the user, made it so that CA TLS is pretty much required and so that browser devs write entirely for the security use cases of the insane corporate web applications instead of writing for human people looking at website documents. And this same security model makes it so that web apps basically cannot communicate with each other at all, unlike real applications where piping between small applications is the entire idea.
- watermelon0 2y agoMobile operating systems have really good security models, and native apps are even more isolated compared to the websites. I really wish that we would have similar isolation options on desktop/laptop OSes.
- shahzaibmushtaq 2y agoUsers should educate themselves about when to use web apps and native apps.
- flax 2y agoFor my game, I do have a web version, but I also have native apps, because the web monetization path is just not as smooth as native. I chose Flutter because I like Dart far more than TypeScript/JavaScript. AdMob doesn't support web. Of course there is a Google Web ads solution, but Google's "significant content" evaluator doesn't see any Flutter content, so you have to add a bunch of useless text to use web ads. In-app purchases are fairly easy compared to getting Stripe set up, and for the user far more usable. I'd LOVE to stop dealing with app stores and the 15% tax, and iOS entirely, but it's not a good user experience. Of course, I could choose not to monetize at all, but I would like to get something for my efforts, at least enough to support its own running costs.
- parski 2y agoThe web is for hypertext. Simultaneously, lots of apps should be App Clips or whatever the Android fragment equivalent is called.
- pacifika 2y agoThe app can be installed only by tapping, but the web app requires typing in the url or into a search. I feel this is difficult for many more people with less motor skills, or that can’t read.
- sumuyuda 2y agoDo you not have to search for the app on the app stores? How else is the app found?
- dredmorbius 2y agoSave bookmark to home screen.
- kyriakos 2y agoI currently have 4 parking apps, and 2 ev charging apps on my phone. None of those have a Web version when you can clearly see that most of their ui is webview based. They could have been bookmarks indeed.
- rejhgadellaa 2y ago100% agree. Except it would be nice to have a notification, reminding you that the meter is running. And on iOS, you need to install a web app before it can send notifications, defeating the point of not having to install anything. https://webventures.rejh.nl/blog/2023/ios-web-push-requires-install/ https://webventures.rejh.nl/blog/2023/ios-web-push-requires-...
- jbombadil 2y agoAs a consumer, I understand the need of a native app for something that is performance intensive or that requires a level of OS access that the website doesn’t provide. OTOH, in tired of everyone pushing apps that could easily be a website. I had an xfinity technician aggressively pushing me to install their xfi app when they came to install the service. They told me it was the only good way to configure the WiFi (!) and that they had to check a task in their technician to do list that they “walked the consumer through installing the app”. Horrible consumer experience. Between the borderline lies and the nefarious push for the app, if I had had any other choice I would have rejected the installation on the spot. But alas xfinity was literally the only provider that could offer service with any decent speed.
- capitainenemo 2y agoDefinitely not necessary for internet service alone. You also don't need their modem. Just buy your own. Cheaper in the long run and a bit more control over the device. Never had a tech push me into installing anything either. But, I guess if you're paying for one for one of their all-in-one packages where the service is managing voip/streaming/tv/internet I guess I can see their equipment and management tool might be necessary. Wouldn't know, have avoided all that. Try to keep them just as an ISP.
- xemdetia 2y agoIt has been crazy since before apps were 'apps.' It is a simple flow chart to me: do I need to interact more than once a month? No? Should probably be a website. The only time I want an app is for things I check more than 50 or so times a day, but that is because the UI for phones is awful and it is more convenient to context switch. Needless to say I find messaging apps to be the only ones that qualify.
- ukoki 2y agoI don't think it has anything to do with performance. Apps make it far easier to advertise to users. You can send the users a notification even when they aren't using the app It's much harder or impossible for users to block in-app advertising It's easier to track users via apps, and your tracking data will be richer, more accurate and therefore more valuable. Until this changes, we'll get stupid apps that should have been websites.
- etothet 2y agoThis argument has existed since native apps were first introduced. One of the problems I see now is how horrible and frankly broken browsing the web can feel, especially on a mobile device. With all of the cookie confirmations due to GDPA and other ways mobile websites try to engage you (such as popups to subscribe to a newsletter or for discounts off your first order), some websites become almost unusable on a mobile device. If that's the future where native apps don't exist, count me out.
- watermelon0 2y agoThere is no difference regarding GDPR/newsletter/discount popups between website and application. It's up to the owner if they want to nag users, and on which platforms. (as for the GDPR, consent must explicitly be given in app as on the website, if they are doing tracking and sharing the data with 3rd parties)
- etothet 2y agoI disagree. Native apps usually don't have annoying popups especially to the extent that the web does. Saying there's "no" difference isn't being genuine.
- blae 2y ago[flagged]
- helf 2y ago[dead]
- tannedNerd 2y agoCool, but web apps still can’t do location tracking in the background. So please do tell me how my fitness app should be a web app instead?
- bdcravens 2y agoDoes your app still function if the user disables location sharing?
- averageRoyalty 2y agoRegardless of the answer, it's very common for people to wish to share their workouts, locations included.
- summermusic 2y agoI generally agree, but not for any critical workflow. You can't easily archive copies of web software. One day any website you rely on could introduce user-hostile regressions or simply disappear. Apps in the mobile ecosystem also have this problem, but at least you can archive and sideload old APKs on Android (for now).
- bdcravens 2y ago> you can archive and sideload old APKs Only as long as external dependencies (like APIs) are satisfied.
- summermusic 2y agoVery true, but you can also keep around an old Android phone, or even emulate an old AOSP distribution if your really need to. Obviously this is not ideal, but if you're trusting your hobby or business to an app, it is in your best interest to make sure that it doesn't poof out of existence randomly before you can upgrade.
- bdcravens 2y agoI was thinking more about backend APIs managed by the company providing the app.
- not_the_fda 2y agoI'll take a native app over a web app every time. HTTP was not designed for apps, it was designed for serving HTML. We had a decent solution in Java applets and the tech giants could play nice so we couldn't have nice things. The work around has been a huge kludge of crap frameworks of the day trying to reinvent the OS and associated API in the browser. It sucks all the way down. Apps are: More powerful More efficient Have better tooling Have stable APIs Are easier to debug
- est 2y ago> a decent solution in Java applets Uh!
- bdcravens 2y agoWhen HTTP was designed, there also weren't any images, CSS, or Javascript.
- snakeyjake 2y agoThere was no support for images in the two pre-1.0 versions of HTTP. The two versions written by one man as experiments and used by (by reasonable interpretation) absolutely nobody. HTTP 1.0, the first "real" HTTP did indeed include support for images at some point prior to being finalized as RFC 1945.
- rpdillon 2y agoApps also: Require devs pay a tithe to the app store owner Are less able to be customized, reverse-engineered, and controlled by the user Are subject to arbitrary, vague, constantly shifting, opaque app store approval rules Require constant updates just to continue existing, since the platforms they target don't care for backwards compatibility, and are constantly releasing updates Are hostile to open source projects that have limited resources, as those represent a drain on the system, since they generate no revenue
- wiseowise 2y ago> More powerful What does it even mean? > More efficient Debatable. Depends on implementation. > Have better tooling Absolutely no. I’m yet to see any native toolkit that has even feature parity and nice DX compared to web development. > Have stable APIs Ask Android developers about stable APIs. Also, which web APIs do you find unstable? > Are easier to debug Debatable.
- guzik 2y agoI'd give anything to move our apps to the web. We're in the medical field (our apps connect to medical devices over Bluetooth), so publishing on Google Play is like a Kafkaesque fever dream. Two days ago they tell us our app fits into categories like: Activity and Fitness Nutrition and Weight Management Sleep Management Medical Device Apps So we gotta update our policies, but today they said something like: "Actually, jk, you don't qualify as a Medical Device App anymore - app update rejected." Meanwhile, Apple (who used to be the actual nightmare) has somehow turned into the reasonable one. They approve apps in minutes now. MINUTES. It's like Google saw Apple's approval process from 10 years ago and thought, "Let's do that, but make it a circus." At this point, I dream of ditching native apps entirely. Too bad Bluetooth on the web is still a bit... fragile.
- fidotron 2y agoThe Google Play update emails kill me with the level of irrelevant noise. “This is an important tax update for [country you didn’t think existed anymore].” etc.
- Dig1t 2y agoGood lord this is so true. I somehow got my personal email associated with the classroom Google Play account from back when I was at university, so every app uploaded by all students for each new semester I get emails for still. Every few months I get a batch of 30+ emails telling my that my app is not in compliance and it's at risk of being removed.
- adastra22 2y agoWe’ve wandered off topic, but there should be a safe harbor provision if your app has <500 installs or something.
- deleted 2y ago[deleted]
- FredPret 2y agoThe web is just a beautiful publishing platform. - no permission needed (mostly) - built-in discoverability - you get to figure out whatever payment processing you want - works on every device - update code in seconds - no copy protection needed
- bdcravens 2y agoMeetings should be emails Youtube content should be a blog React websites should be static with sprinkles of vanilla JS etc These are all ideas that in many cases are true, though sometimes they aren't, but if you ask the right questions, usually those holding the line have a financial incentive.
- ndileas 2y agoI look at these things as essentially aesthetic preferences. There's certainly cases where a certain medium is the objectively right one for a task, but there's many others where it really just a matter of taste.
- ilrwbwrkhv 2y agoI actually think of them as more than just an aesthetic preference. It is fundamentally about proof of work. Something that will become more and more important as we move into a post AI world. Every single piece of art, music, game or any other creative piece, has three things to it. One, the actual artifact itself of the music, the art and the game. Second is who is making it. And the third is how much have they put into it. This last point I think matters a lot. As producing things gets easier and easier, just because almost all of creative art is a popularity contest, things will move towards who has put in most of their hearts / effort into it. And that is why still I think we will always remember a desktop game such as Stardew Valley but never a web game, no matter how good it is. I mean Roblox has been around for a while and maybe I can tell you one or two games in their entire history, which I even remember. The same with movies from Netflix which are becoming this data oriented, aesthetically pleasing, easy to watch things, but none of them are worth remembering. Will Netflix and these platforms keep growing and having more and more users? Sure. But therein lies the conundrum. We will have a lot of everything. We will own none of it and our lives will grow more and more shallow and meaningless.
- ndileas 2y agoThat's a interesting way of thinking of it, but a little limited. For most, the proof of work aspect becomes just another part of the the status competition. I think I'm a little more optimistic about the future. Also, there's definitely web games (paperclips, kittens) and art in every media that are memorable and excellent to someone. That's kind of the point that I was making; the medium is part of the message, but many things can be presented in different ways, and mostly this doesn't detract from anyone else. Fundamentally, I reject your model of art; I personally think the actual artifact should be the most important part. Anything else shouldn't even be considered as far as we're able, even though we are mostly status seeking monkeys who pay very close attention to every other monkey's status so as to increase our status.
- duxup 2y agoDo individual consumer web apps get many sales when compared to smartphone apps in a store?
- fidotron 2y agoThe problem with web games is monetization. If you look at Poki, for example, the most popular games are those that simply drag the user into a sort of low level loop where they are not ever going to actually fail but also never really succeed, as the aim is just to keep them there long enough to show more and more ads. This makes casino games look almost virtuous because in those the possibility that you win and walk away actually exists. On reflection, since I also experimented and contributed to this mess, the whole Facebook game era of web games was the peak, because at least those games enabled strengthening connections between real people.
- mwest217 2y agoStrongly disagree that Facebook games were the peak. To me that was classic flash games like nitrome.com
- hahahacorn 2y agoAgreed but on mobile, the native app still has a marginally nicer UX. For apps I use heavily, I appreciate that. (Funnily enough, I use the inverse as a means of controlling my screen time. Too much YouTube? Delete the app and suffer through using it on Safari.) This is exactly why I’m such a huge fan of Strada. I’m not married to Strada as the “best” solution, but it was early on trending towards the (seemingly) obvious solution.
- perons 2y agoOne comment that I haven't seen yet and that puts PWA for Games in jeopardy: the maximum caching allowed for Safari PWA's (thus the whole iOS ecossystem) is only 50mb. Most mid-core / hardcore mobile games are bigger than that after downloading remote assets when the app loads for the first time, and this means a player of a mid-core PWA game would have to redownload a good chunk of the assets everytime the game loads. I could be mistaken though, but I tried looking for how PWA's work with caching and it is a whole layer of uncertainties that depends on which browser/OS/ecosystem you are in, and if the user clears it's browser cache. In the end, it seems like PWA will only work reliably when the PWA is super light, and doesn't need a lot of caching, so for gaming that would mean only lightweight, casual and hypercasual games.
- streptomycin 2y agoThe 50mb limit no longer exists, it's much higher now https://bugs.webkit.org/show_bug.cgi?id=198133#c15 https://bugs.webkit.org/show_bug.cgi?id=198133#c15 Safari will delete your cached data if your app goes unused for a little while though. Native apps may do the same thing though... at least on Android I get notifications about it deleting cached data for native apps I haven't used recently.
- henriquelalves 2y agoThat's nice, thanks for correcting me! Although it's quite a nuisance that most PWA info I looked for before posting had the old 50mb (mis)information.
- nchmy 2y agoIf the app is added to the home screen, then it is exempted from having it's data wiped after 7 days without usage. https://webkit.org/tracking-prevention/#intelligent-tracking-prevention-itp https://webkit.org/tracking-prevention/#intelligent-tracking... And good docs on storage quotas on different browsers. https://developer.mozilla.org/en-US/docs/Web/API/Storage_API/Storage_quotas_and_eviction_criteria https://developer.mozilla.org/en-US/docs/Web/API/Storage_API... I think there's also benefits of using persistent storage
- 2y ago
- alexpotato 2y agoOne of my kids recently started playing travel basketball and being a nerdy, into stats tech dad I wanted to take stats on the game. Instead of downloading an existing app, I decided to see if I could write my own web app with the following constraints: - no frameworks - just basic javascript - track multiple stats - be able to enter stats via phone and only using one hand - while also holding a 4 year old in my other arm It was a fun exercise and I actually got it working! It can track multiple players, multiple stats and even saves the data to a server for later viewing or more analysis. "You can just build things" also includes fully functional web apps using old school technologies to solve your own needs/constraints.
- CyberDildonics 2y agoI don't understand what this has to do with the topic.
- alexpotato 2y agoThe general topic was web apps vs phone apps. I was pointing out that this applies to apps that you can build yourself.
- CyberDildonics 2y agoThis is about apps being easily simple enough to make into a web page. No one is saying a table with javascript can't be done in a web page, people have been doing it for 30 years.
- chrisjj 2y agoLove this: > Important!! the Windows version might show a false warning, if it does, hit More Info and then Run Anyway. because recognising a false warning is impossible.
- chrisjj 2y ago> A Unity like environment to create web apps Spell check needed.
- chrisjj 2y ago> To create an Audio Asset, you need to import your audio file (mp3, wav, ogg, mkv) into your project. Seriously? You can't have audio except precomputed in a file?
- jeena 2y agoI'm playing https://www.twilightwars.com https://www.twilightwars.com it's a turn based game. You get a notification once it's your turn. If you don't click on the notification but just open the browser, the browser thinks you don't want the notifications and stops them. There is no way of whitelisting the notifications.
- evanjrowley 2y agoThis reasoning is why I'm keen to try out RomM[0], a ROM library manager that has EmulatorJS[1] built in. Rather than having to setup emulation on each device where I want to play a simple game, I can instead use this combination to do it from any web browser on my local network. [0] https://github.com/rommapp/romm https://github.com/rommapp/romm [1] https://github.com/EmulatorJS/EmulatorJS https://github.com/EmulatorJS/EmulatorJS
- gassi 2y agoHey I'm one of the devs, let me know if you run into any issues getting setup!
- marxisttemp 2y agoLol no thanks, not everyone hates beautiful native design
- nox101 2y agoI'm also curious about apps vs native. Here on HN it seems people often hate on the web "you're the product, not the customer" vs native. But, half the websites I visit say "download the app!!!!". If all the spying on the web is so great for them but they're pushing you to an app, that to me suggests they get more spying on the app. Even if the app is just a webview, they get to set the policy so no blocking the 950+ companies they're letting spy on you. And, even better, the app will require you to login in so they can magically get even better data. It feels like we (the HN crowd?) should be pushing for more web (the one place where you can inject more control like ad blockers, etc), than native apps (where you have no control)
- yonatan8070 2y agoThe modern web sucks, with all the tracking, etc. But it's still a lot better than apps, which give the developer more control without (in most cases) any tangible UX benefit. Just as an example, Reddit doesn't need to have an app, all they do is display text and images, along with some interaction, and they especially don't need to lock some content behind the app (I recently got a popup when trying to view a post saying that "unreviewed content" is only available in the app, despite the post clearly loading for a split second before the popup).
- rejhgadellaa 2y agoYeah so native apps have some unique abilities to track you that websites do not. On top of that, platforms like Reddit and Facebook tend to prefer native apps because it's easier to keep you within the app. Even if you click a link to an external website, for example, Facebook will open that link in an in-app browser (unless you find the opt-out). A few years ago, a researcher found out that these apps often inject their own javascript into that in-app browser. In theory, that means FB can track you even on external sites, even if you do not accept cookies for that website. You just brought your own tracker. Facebook then decided they should ship their own entire browser engine, giving them even more control. https://webventures.rejh.nl/blog/2022/in-app-browsers-are-tracking-you/ https://webventures.rejh.nl/blog/2022/in-app-browsers-are-tr...
- rmac 2y agoemail me when y'all are upset enough to actually do something about this => e.g., create a newsgroup like app-store across iOS and Android using the new api's exposed by apple and google maceip@sina.com
- apitman 2y ago> it’s time to get back to what the web was always meant to be: a universal platform for everyone That is not what the web was always meant to be. The web is a document distribution platform. In its purest form, that should mean no bloat, no tracking, no JavaScript period. Browsers should be tiny, extremely secure programs. There's nothing wrong with having a universal app platform that embraces important lessons from the web like URIs, the security model, WebAssembly, etc, but it should be a separate program.
- idle_zealot 2y agoThat ship appears to have sailed. The more realistic proposal would be the converse: a stripped down browser that acts only to retrieve and display web pages that are documents, not apps.
- apitman 2y agoI actually agree. I think that's the best way to achieve what I'm talking about. Compatibility with current browsers must be maintained for many years. But we split the web into two much simpler platforms. One for documents that includes HTML and a tiny subset of CSS, and the other that's basically WebAssembly + WebGPU and other APIs for networking etc. 90% of the web can be documents. If you're actually building an app use the app platform. People using legacy browsers don't need to know the difference, but over time they'll want to switch because of the benefits.
- furyofantares 2y agoI'm working on a little niche puzzle game in Love2D. Well, I'm done, I just need to ship it. I currently have web, iOS, and Windows builds. I strongly prefer playing the native version. I'm not sure what I'm going to do about this. I think people will have a better experience with the native versions, but won't discover that if the web version exists. However there are also probably people who would play the web version who wouldn't install an app. Probably most of the attention I can drive to it will come from other daily web puzzle games I run. I suppose if that weren't the case, I wouldn't bother with the web version (unless I get rejected by app stores - which looks somewhat likely at the moment.)
- jbverschoor 2y agoNope.. HTML should’ve been just that, hyperlinked text. Friend should’ve been forms. Applications should’ve been apps. The thing is that html/http is such a great distribution model
- Devasta 2y agoReferring to everything as "web" when they mean JavaScript has been such a feat of marketing. I'd rather not have stuff I pay for be websites, thanks. I have games from 2005 I can still play today. The flash games from back then on the other hand are gone forever.
- debugnik 2y agoPlenty of flash games got archived in time as .swf files! And many can still be played with either Ruffle or the last build of the standalone Flash Player Projector (which is still available on Internet Archive). Games nowadays however have so many online-only features and content that it's getting much harder to keep them working no matter the platform.
- thot_experiment 2y agoI man don't get me wrong, I love the idea of PWAs but this dude is out to lunch. It's so painful making anything complex work cross browser/cross platform. On iOS iirc they don't even support adding PWAs to the homescreen? You definitely can't Bluetooth outside of Chrome (probably only on Android and Windows too because nothing fun is ever allowed on Macs). Multiplayer games you kind of need UDP. You cannot UDP in the browser (WebRTC data channels technically use UDP but that stack is an abomination wrapped in SCTP and DTLS) This is by no means an exhaustive list, just issues I've dealt with recently. It's better than it was with WebGPU and WASM, some of the gap between a native app and a website is surmountable, but unless you're doing something extremely boring surmounting the gap is hard fucking work.
- coip 2y agoI have several PWAs on my home screen on a iPhone that open in a window that doesn’t appear as a browser.
- tshaddox 2y ago> On iOS iirc they don't even support adding PWAs to the homescreen? You've been able to add websites to the home screen going back at least to the iPhone 5 in 2012. Is it the "PWA" part you're questioning? iOS definitely does have PWA support, although with a few notable limitations that may be deal-breakers for certain apps. Oh, and apparently Apple recently disabled PWAs entirely in the EU.
- xeromal 2y agoOne big missing piece is the inability for me to put an "Install" button like I can on android. I don't want to have to teach old people how to add to desktop
- below43 2y agoYes, even Windows (Edge) prompts to install the PWA on the desktop. The "Add to Home Screen" process works well, but is obscure.
- j45 2y agoWebOS had quietly solved this years ahead of its time. All apps and the OS are JavaScript based. The timing of the hardware missed or maybe it could have stuck more.
- MattHeard 2y agoOne thing I haven't seen addressed in the post or comments (sorry if it's there and I just missed it) is for apps and websites that sell non-digital goods to customers. For returning customers, a customer with an app installed is simply going to have a lot less friction to open the installed app and place an order than a customer who has to open their browser, log in again, and then place the order. That alone is worth the investment for many companies in making an app, even if a minority of customers actually choose to install the app and keep it installed.
- rejhgadellaa 2y agoIf the website is a PWA, it can be installed to the home screen and look and behave just like a native app. You just tap the icon on the home screen. It will remember your login. And the upside is that you only have to develop one website (instead of a website and 2 separate native apps for iOS and Android).
- la_fayette 2y agoThere are definitely apps, which could be websites, e.g., using the coinmarkecap app doesn't make any sense in comparison to the website. But there are many things which cannot be done sufficiently on the web, e.g., augmented reality, tracking gps in the background, accessing a users calendar or phonebook, Bluetooth, scheduled notifications, etc... In general there is something called app fatigue. Convincing somebody to install an app is difficult these days, even if it's free... Let's see what the future brings for app development.
- KTibow 2y agoThe web tries to do a lot of things, even some of the stuff you named. There's a Bluetooth API in Chrome, server-sent notifications via service workers, and some attempts at VR support.
- Animats 2y ago> Thanks to HTML5, WebGL, and WebAssembly, browser games are catching up to native ones in ways we couldn’t have imagined just a few years ago. Meta’s Oculus browser already delivers web games that rival native apps in performance. And once WebGPU becomes standard, the differences will be practically invisible. If only. Have you tried Google Earth on Firefox lately? You can't even zoom in and out any more without waiting many seconds. It's CPU bound, not I/O or graphics bound. Anyone know what went wrong in there? Is it a deliberate attempt by Google to force people to Chrome? As for games, the browser environment is still rather limited. WebGPU is (mostly) single thread. (You can share memory between processes, which is something else.) It's a subset of Vulkan - one command queue, and no bindless mode. Google proposes to fix that around December 2026. On the other hand, there is absolutely no reason that Uber or Waymo needs to have an "app".
- pjmlp 2y agoAlso, after a decade, browser vendors still don't provide any usable 3D developer tooling better than SpectorJS.
- xyzsparetimexyz 2y agoYeah, your best bet is targeting both desktop and web with something like the rust wgpu library and using renderdoc for debugging/profiling. Which works well until the code stops working in the browser for whatever reason.
- debugnik 2y ago> Is it a deliberate attempt by Google to force people to Chrome? For the last several months, the YouTube player takes me several seconds to load on Firefox and freezes on me for a couple of seconds every other time I press play/pause... And changing the user agent fixed it! So I say yes. But I found the extensions to do so quite clunky so I gave up.
- Animats 2y ago> And changing the user agent fixed it! Send a note about that to the legal team at the Department of Justice managing the Google antitrust lawsuit.[1] [1] https://apnews.com/article/google-search-antitrust-case-59114d8bf1dc4c8453c08acaa4051f14 https://apnews.com/article/google-search-antitrust-case-5911...
- hot_gril 2y agoFor multiple reasons outside of devs' control, PWAs basically don't fly on iPhones. They don't go to all that extra effort of packing a webapp into a "native" app just for fun.
- al_borland 2y agoThis was the original plan for the iPhone. The web just needed to catch up. But now that everything is app based, it's hard for companies to want to give up space on a user's home screen. Web apps can be added to the home screen, but it's not the default state, like an app is.
- ssz 2y agoI completely agree with the sentiment of the article but the general user behavior is changing. Young people are always asking for an app. It's what they're used to. My nephew never even opens his web browser on his phone.
- boohoo123 2y agothere's even a worse option that his article doesnt include. and thats apps that have limited functionality compared to the web app. My bank is one of them. Heres your account and here's your most recent bank statement. You want to see more bank statements or add/remove a auto bill or change your password, you need to go to the website for that. What the f** why do you even have an app?
- r33b33 2y agoNo. Websites are more laggy, cookie disclaimers, weird dimensions, needless UX, choppy. Apps are almost always way smoother.
- purple-leafy 2y agoAnd here I am making unportable C projects. Actually, I'm quite happy being away from the web, its a pain
- ghjfrdghibt 2y agoThere's a clear agenda with this article. I'm all for website wrapping apps being websites again. But I'm definitely sick of websites that should be apps. And I'd use a native app any day over a bloated website masquerading as an app, especially on desktop.
- ToucanLoucan 2y agoHard agree on all that. And to be honest, none of these things solve the actual issue which is tons of these apps are software that is built by companies who do not build good software, and no framework or methodology is going to overcome that fact. My banking app, Chase, is terrific. It is either native or such a well optimized web wrapped one that I can't tell the difference, which would be a first-of-kind. It has quirks but for every daily driver task I need, it's great. In fact the app being so good was actually part of why I decided to pull the trigger on changing banks, because my last was anything but. That said, other apps I use (and websites, for that matter) are TRASH on mobile. Slow to load, slow to respond, and make my damn phone hot in my hand while I try and use them. And like, maybe they'd be better running native code, from a technical perspective at least, but that doesn't change that the usability is still awful, which is not a technical problem: it's a design problem, that probably originated far above the heads of any of the developers actually building them.
- prmph 2y agoKind of off-topic, but I always wonder why Chase bank's tech is so good. I seldom use the app, preferring instead to use the website, but no matter which way I interact with Chase, they seems to know what they are doing. This is all the more surprising considering how other other banks, let alone other large companies, seem to blunder all the time with their services, especially online banking. I returned to my country Ghana from the US a few years back, and more time passes, the more I realize just how valuable my account with them is. Never have I felt I needed to visit a physical branch for anything. Everything just works. In my view, they are arguably the best bank in the world.
- soerxpso 2y ago> Yet businesses still push native apps as if it’s 2010, and we’re left downloading apps for things that should just work on the web. The app icon acts as free marketing. If it were just a website, you wouldn't have a little picture of their logo on your phone to be reminded that they exist every now and then. They know that it could just be a website (usually it IS just a website, packed inside an "app"), but they don't want that for a reason.
- rejhgadellaa 2y ago> If it were just a website, you wouldn't have a little picture of their logo on your phone You can install web apps on the home screen since iOS 1.0. The fact that you (and many, many others) don't seem to know this is a thing, says a lot about how effective Apple is at hiding that feature... :( (Chromium browsers support an API where a website can show an install button if certain conditions are met, making it a one-click experience. But alas, for some reason Apple doesn't allow browser engines except the one they control :thinking: )
- haikuya 2y agoThere’s a dichotomy between web and native apps. I don’t feel like I’m leaving my OS when using an app that’s parked on my dock. For subscriptions and pricing web is great but even the notifications are sub-par to native, I need user retention not another tab in my browser.
- simlan 2y agoJust to add another perspective: Native apps are sticky. As an example a Webshop has no reason to have a native app (likely it is a browser wrapper anyway). However, being installed puts you right in front of the users noses everytime the unlock the phone. Just look at the discounts that are offered for installing Native apps or shops that are app only to begin with.
- deleted 2y ago[deleted]
- kristianp 2y agoFor many businesses an app also has a web version for those users who refuse to install the app. I'm thinking my local supermarket, or kmart, they want me to install their app for some reason. I suppose it's so they can send me advertising as notifications? Many business that aren't "app only" have to have both web app and mobiles apps. App development studios love them.
- jongjong 2y agoI never understood why anyone bothered with native apps. It defies reason why consumers would prefer to download some clunky app instead of just using it in their mobile browser with no strings attached. The main excuse I keep hearing are UI/UX differences but web UI/UX is excellent these days, it really doesn't offset the huge negative hurdle of having to download an untrusted app which takes up your time and uses up space on your phone before you can use it. How do consumers even know they will like the app before they tried it? Why would they download an app they don't know? It makes no sense to me. WTF! The user will only ever download the native app if they've been conditioned to believe that it's worth their time and disk space. But how do you get that conditioning effect going when you're just starting out? Massive chicken-and-egg problem. I think it's probably a remnant of a very successful corporate PsyOp. I can see why big tech wants to be able to covertly access people's cameras, microphones and location data. In most cases, there is literally nothing positive for the consumer. It's a story of leveraging user apathy to manufacture consent. Most people fell for it. Personally, I hate being forced to download native apps when the web version of the app already works perfectly. Sometimes I feel like the push against web tech is partly the product of a spiteful group of developers who hate JavaScript because they had a bad experience with it back in 2010 and they've stubbornly refused to re-evaluate their position in spite of the language showing extreme resilience and adaptability. The HTML + CSS + JavaScript combo is a marvel of software engineering. The ECMAScript standard is surely one of the most impressive accomplishment that bureaucracy has ever produced. It has progressed with both speed and quality, picking the best parts of many different languages.
- leeoniya 2y agomeanwhile, huge shout out to FiiO for their web based eq control and firmware updater (via WebHID) https://fiiocontrol.fiio.com/ https://fiiocontrol.fiio.com/
- mmis1000 2y agoI would if there aren't silly restrictions like rotation lock and fullscreen in safari. You can't even make a app that stay at one direction properly. And fullscreen is limited to video (without any ui control). Even worse that it limit memory to damn 1gb. So any slightly complex operations will CRASH and restart the whole page. These basically work in any browser except safari (Not even ie crash and restart your page so often) These aren't really fancy features only a few people used. It's the bare minimum for anything that is considered "properly working"
- ertucetin 2y ago> WebGPU and web games are said to be catching up to native-level performance, and some argue they’re already there. I can’t agree with that, sorry. I’m developing 3D games for the web, and the limitations are asset size, memory size, and CPU/GPU constraints feel like developing games with 2001-era resources. The web isn’t there yet, and I’m not sure it will be anytime soon. There are some impressive apps leveraging the web’s fast distribution, but 3D games are harder in that regard. You can create content-rich, visually appealing 3D games, but then you severely limit your audience. I’m considering moving to native game development because the web’s limitations are daunting.
- steelframe 2y agoWhen an app rots you're left completely helpless. When a website rots at least you can try with multiple browsers until one of them works. In 2015 Robin Hutcheson partnered with a vendor, ParkSLC, to deploy an iOS and Android app that is the only possible way to pay for street parking in many areas of downtown SLC. She seemed awfully proud of herself in this announcement, bragging about how it hasn't really fallen over much in the first few months in the field: https://archive.org/details/Press_Conference_-_ParkSLC_Mobile_Parking_Payment_Launch https://archive.org/details/Press_Conference_-_ParkSLC_Mobil... But that's not the bar. For public infrastructure it needs to continue to function for the life of the system. So let's fast-forward to Kubecon 2024 in SLC. I'm staying with a friend further south, so I had to rent a car. I pull up to a restaurant where I'm meeting some business partners and park right here: https://www.google.com/maps/@40.7647761,-111.8938564,3a,75y,127.38h,71.66t/data=!3m7!1e1!3m5!1sRw5T0AIGzEeb9wLe5OkPzg!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fcb_client%3Dmaps_sv.tactile%26w%3D900%26h%3D600%26pitch%3D18.337777934607374%26panoid%3DRw5T0AIGzEeb9wLe5OkPzg%26yaw%3D127.3848004906006!7i16384!8i8192?entry=ttu&g_ep=EgoyMDI0MTIxMS4wIKXMDSoJLDEwMjExMjMzSAFQAw%3D%3D https://www.google.com/maps/@40.7647761,-111.8938564,3a,75y,... In a past life there would be a parking meter right there at the stall where I could drop in some coins and be on my way. Now let's talk about how Robin's fancy new parking system is going now that we're in the app-infested future. It's November in the early evening, so it's not exactly warm and cozy. The first problem is that the little blue post you see in the Google Streetview back in Oct 2022 isn't there now. So I have no idea what the stall number is. Fortunately the blue post for the spot behind it is there, and I determine it's counting up going north. I guess the stall number is one higher than the one behind it, and that's all I have to go with. I walk up to the super-advanced new fancy kiosk and hit the button to turn on the screen. Icons on the screen invite me to start tapping away to register. No response. The touchscreen functionality is completely broken. There's a sticker with a QR code and a website, parkslc.com. Okay, maybe I'm not being phished here. Better do a quick web search to make sure. Yup, ParkSLC appears to be The Thing. So I go to parkslc.com to get the link to the app and discover that it's only distributed via Google Play. But I'm running GrapheneOS because I don't want Google spying on me. So it looks like the only way I can park on W Temple in downtown Salt Lake City is to allow Google to spy on me? Great. Well, I do have another dummy account on the phone with a sandboxed install of Google Play with a temporary account I created just for that user on that phone, so I was able to attempt to install the app. It still "phones home" to Google but maybe without enough information for Google to determine who I am. But at that point I'm greeted with an error like, "This app was designed for an older version of Android. Go pound sand." Great. So this app isn't even being updated, I guess. I wonder if other people with newer Android devices are getting this same error. Regardless, by then it's been about 7 minutes while I've been sitting on a concrete bench in the cold trying to pay to park so I can go to my business meeting. So far both the kiosk and the app have been dead ends. My last option, it seems, is to browse to parkslc.com and see if there's a way to pay via Firefox. After scrolling around more than I should have had to I finally find a "Pay Online" link and follow it. It asks me for a phone number, so I punch that in. I get an SMS. I have to create a pin. It asks me for a "Zone Number." I punch in what I guess it's supposed to me. Then it prompts me for my credit card. I start punching that in, but when I get to the drop-down menu to select the year of expiration... nothing. No response to my taps. No ability to just type in the year. Great. So the website doesn't work with Firefox. Another 3 or 4 minutes wasted on another dead end. Okay, so I launch Vanadium and restart the whole process again. This time around the drop-down menu worked, and I was finally able to complete the process, after futzing around with a broken kiosk, a broken app, and a broken website for 12-13 minutes out in the cold night air of Salt Lake City. As the app-based system she deployed in SLC fell into ruin behind her, Robin has since flown on to be the administrator of the Federal Motor Carrier Safety Administration. Good for her! I'm sure there's blame to be passed around here, as it's in the current transportation administration in SLC to maintain the system in working order. I just wonder how many spare kiosk touchscreens they have lying around from a system built in 2015. And I wonder if anyone still has the source code for the app that doesn't work with newer versions of Android. Or if there's anyone around who can even push an update any more. Obviously Robin didn't seem to do enough to ensure the system she deployed would end up being robust and reliable public infrastructure just 10 short years down the road. And not to pick on Robin too much, this is endemic in our institutions everywhere. As an industry we need to do much, much better. One lesson from my anecdote is that there should always be a website, and it should be as simple and compatible as possible, especially if it serves as public infrastructure.
- 0dayz 2y agoThis really depends on the scope of the project or the philosophy of the project. Personally I have pretty much sworn off webapps because of the amount of separate concerns: * the web stack (html+css+ts) * framework quirks * dom vs vdom * nodejs quirks * hosting platform quirks (if you use serverless) While some of these can be overcome, personally it was too damn much work. Compared to say flutter it's dart + flutter quirks, I was surprised how fast I got a working prototype ready without having to dread the all extra crap. And it seems it's mostly the bullshit Apple and Google does since both solutions have technical issues, all the web apps that only support Chrome for instance.
- BeardScript 2y agoHey, author here. Thanks thunderbong for sharing. I underestimated how much people cared about this. I'm so happy to see everyone sharing their arguments.