6 ms·
I find the negativity in this thread depressing. The web stack (html/css/js/http) is one of the most impressive feats of invention by humanity. We have this on
by samwillis 4y ago
I find the negativity in this thread depressing.
The web stack (html/css/js/http) is one of the most impressive feats of invention by humanity. We have this one stack and toolkit that run on everything from a desktop computer down to a cheap (as little as 100$) mobile phone. It's free with no payments for access or deployment, and at the bottom end basic enough that a child can pick it up. But capable of building incredible professional experiences (see Figma or onShape, seriously they are incredible).
As a sole developer I can build something with a single code base for mobile (both web and installable), and desktop (again both web and installable). The breadth of tooling available is incredible.
The OP is about PWAbuilder, there are alternatives. I like the combination of Capacitor (from the Ionic Framework team) and Native Script. It lets you extent your installable version of the app with additional native capability, all while staying mostly in a JS environment.
The complaints about PWA being poor are, in my view, two fold. One, the support for them on iOS has be atrocious until recently, but also there are a lot of poorly written webapps. That is actually a testament to the accessibility of the platform. Look past that and you see what it is truly capable of.
We need to stop this silly gate keeping, it's frankly ridiculous.
Edit: since I started writing the negative posts have them voted down the page. Looking more positive now.
Edit 2: While I have your attention, if you care about PWAs and consumer choice of web engines on mobile, go support the OWA (Open Web Advocacy - https://open-web-advocacy.org/donate/ https://open-web-advocacy.org/donate/). They are there to represent us and push for move choice and support. They are turning up and presenting the evidence needed to ensure the large players open up their platforms.
- illiarian 4y ago> The web stack (html/css/js/http) is one of the most impressive feats of invention by humanity. Yes and no. The "no" part comes from people trying to twist a system designed for displaying static text into an application platform. And as an application platform it sucks. It's one of the most inefficient, slow, resource hungry app platforms that humanity has ever devised. As a free somewhat open cross-platform means for information exchange, it really is unparalled.
- SquareWheel 4y ago>It's one of the most inefficient, slow, resource hungry app platforms that humanity has ever devised. Is it? JavaScript interpreters are crazy fast, almost comparable to compiled languages. The layout engines are powerful and efficient. They support extremely-optimized networking protocols and media formats. It's not (currently) a great platform for high-poly 3D rendering and such, but who knows what the future holds with wasm and WebGPU. Browsers do use a lot of memory, but so did Java, Flash, Shockwave, Silverlight, etc.
- illiarian 4y ago> Is it? It is. None of what you write is either fast or efficient. Especially not the layout engine that does a re-layout and a re-paint as soon as you look at it sideways I always say when people talk about efficiency: There's a reason you can't animate height: auto or a list item efficiently without hacks. As is the reason why opacity changes are outright banned on lower-end devices like TVs. The limitations of this system designed to display static text are such that a non-issue like quickly displaying scrolling text becomes a problem: https://code.visualstudio.com/blogs/2017/10/03/terminal-renderer https://code.visualstudio.com/blogs/2017/10/03/terminal-rend...
- thomaslord 4y agoA large part of the issue is the modern Javascript ecosystem too. The browser isn't the most efficient way to build apps, sure, but using a virtual DOM adds a whole extra layer of performance issues.
- illiarian 4y ago> but using a virtual DOM adds a whole extra layer of performance issues. You mean the fastest libraries like ivi use Virtual DOM ;) : https://twitter.com/RyanCarniato/status/1636120238638137344 https://twitter.com/RyanCarniato/status/1636120238638137344
- boudin 4y ago
- Nursie 4y ago> We need to stop this silly gate keeping OK, perhaps we need to step back from discussing their capabilities and flaws in a technical sense, but we seriously do need to discuss the capabilities of the average user and how allowing PWAs to bypass the app store review process is likely to be harmful to them. If any random webpage can get them to install something which has access to things like notification apis, location etc, we're in for a world (more) privacy invasions, scams and just people whose phones become unusable, beeping, message-laden messes. Yes, there are problems with the app store model, but lets not pretend just bypassing it without a further thought about the impact is a great plan. (And yes, I am aware this article is about a tool for including PWAs in app stores. This is great, if you want to do that, go for it!)
- azangru 4y ago> we seriously do need to discuss the capabilities of the average user and how allowing PWAs to bypass the app store review process is likely to be harmful to them We have at least two kinds of users. One is the non-technical user you are talking about. The other is a braver, more independent, and maybe even technically literate user who at least reads the prompts before granting requested permissions. One group of users wants the comfort of knowing that a big tech company is keeping them safe by keeping a close eye on the place where they get their apps from. The other group of users wants to enjoy the new project Fugu apis available on Chromium-based browsers. Why is the first group of users attended to, and the second one ignored? Why not allow two app stores — one, installed by default and guarded and taxed by Apple, and the other for the projects that want to take a different route — and let the user choose?
- Nursie 4y ago> The other group of users wants to enjoy the new project Fugu apis available on Chromium-based browsers. But it's not users, it's developers. Specifically below we have people saying that as a developer they don't want to have to jump through hoops, nor pay the tax. And as a developer I can empathise. But as a tech savvy user I don't actually have anything that makes me desire PWAs. There's no driver there for me, I don't care about the new project fugu apis available on Chromium-based browsers, I can probably get a native app that does the thing I want, it's developers that care about that stuff. Stuff they could already do if they weren't trying to bypass the app store infrastructure. So even among tech savvy users, the number of users who care about installing from outside of the app store ecosystem is not 100%. > Why is the first group of users attended to, and the second one ignored? Group 1 is a lot larger, they are the mainstream audience and the tech-savvy-but-doesn't-care-specifically-for-PWAs audience. Not only are they the people that the device vendors want to target, they are the people that the nefarious would-be PWA writers want to target too. > and let the user choose? "Press this button, this button and this button to get the free shiny! Don't worry about those silly warnings, they just don't want you having any fun!" "Hi, is this Apple? My phone is an unusable pile of shite and somehow all my money is gone"
- conradfr 4y agoHN loves React Native and Flutter but Ionic and Capacitor are really great. I bootstrapped a Ionic project the other day and had something running right after without knowing anything about it some hours before, compiling as a pwa and native apps using their respective toolchain. It felt like I was replacing Bootstrap components with Ionic's and was able to transfer all my Vue knowledge. Also the docs are great nowadays, way less Angular centric than before.
- wg0 4y agoActually... ReactNative is pretty novel idea TBH but developer experience (DX) is not as smooth IMHO and that's what you use such frameworks in the first place. Flutter's overall DX experience is so incredible that it is in its own league. But the ecosystem is still pretty limited, there are performance issues as well. Web (HTML, CSS, JS) has been so optimised over the past two decades and it has such a HUGE ecosystem and libraries that it becomes almost unavoidable choice if coupled with Capacitor et.el. Imagine d3.js or some of the amazing visualisation libraries. Hard to get the same deal on ReactNative or Flutter with same breadth and robustness.
- Alifatisk 4y agoRegarding Flutters performance issues, they are switching engine from Skia to something called Impeller. You can already switch to it by adding this flag, "--enable-impeller". It's waaay smoother and worth giving a shot, their demo on YT is highly suggested.
- wg0 4y agoOkay, thank you for mentioning. Will check.
- LeanderK 4y agoI was also pleasantly surprised by Ionic. I found it easy to use, quick to set up and performing well. Perfect I think for small to medium sized web-apps!
- 8n4vidtmkvmk 4y agoPWABuilder is glorious. As a 1-man shop I certainly don't have time to develop 3+ versions of my app, but clients keep demanding mobile apps even though it's literally the same thing. The webapp runs great on a phone. Please... just bookmark it to your homescreen, it's fine.
- frodowtf 4y agoThere will always be developers who don't understand that their time is their most valueable resource. They'll just waste hours on reinventing the wheel for every app they create just to save a KB of precious RAM. But tbh, that's not my issue.
- selfmodruntime 4y agoHN developers seem to prefer an endless loop of building the same button in 5 different tech stacks for multiple platforms. Fun.
- deleted 4y ago[deleted]
- perryizgr8 4y ago> incredible professional experiences (see Figma Figma is anything but incredible. I have one Figma file that I always open. Every day or every couple of days. Every single time it loads up ~100 MB of God-knows-what and takes ~20 s before showing anything useful to me. Not to mention the added loading time if you don't have Chrome open. So no, it is not "incredible". It is the slowest app I use. Doesn't put much confidence into me regarding the entire PWA system.
- illiarian 4y agoFigma is incredible for what they managed to achieve: "Pulling this off was really hard; we’ve basically ended up building a browser inside a browser." [1] But yeah. I wish people stopped waving Figma and VSCode around as shining examples of web tech. They are two outlier built at incredible expense and effort. [1] https://www.figma.com/blog/building-a-professional-design-tool-on-the-web/ https://www.figma.com/blog/building-a-professional-design-to...
- samwillis 4y ago> I wish people stopped waving Figma and VSCode around as shining examples of web tech. They are two outlier built at incredible expense and effort Ok, so take a look at photopea.com, basically built by one guy. The point is the web is capable of these things, sometime with a large team sometime with a tiny one.
- illiarian 4y ago> The point is the web is capable of these things, sometime with a large team sometime with a tiny one. The thing is... when you say "the web is capable", keep in mind that it's always one or two of the following: - it's an insane effort to get something working (VS Code, Figma) - it's not using web tech, not really, but desktop tech that is usually 5-10 years behind the actual desktop tech (WebGL in Figma and Photopea, Canvas in Google Docs) And even there it's still multiple unresolved issues like font rendering, accessibility and a plethora of others. Edit: Speaking of Photopea: I'm always in awe of people who can not only build a complex app, but also build an entire library of controls and a design system, too. Because the web's controls are is just so, so, so poor.
- tcfhgj 4y agoWhy do you ignore wasm?
- samwillis 4y agoI don't, just failed to mention it along with WebGL/WebGPU, Canvas 2d, and the "origin privet file system" api. These are all providing an escape hatch to a lower level when the higher level abstractions are not performant enough.
- mrtksn 4y agoI think the negativity is well deserved because if it doesn't need device integration it doesn't need to be an app. The device integration criterion includes achieving a full performance(be it for the UI immersiveness or processing speed). PWA don't tick any of these, they are just an output of the dream to have universal codebase. This is a dream I share but it doesn't need to be an app in the App Store. The only reason people make apps that don't need to be apps is to get another marketing channel through App Store distribution and another user reach channel through notifications.
- factormeta 4y agoand App Store distribution comes with quite bit money. Regular user seems to more comfortable to just download from app store type of places.
- ryanbrunner 4y agoNotifications alone are a legitimate use case that isn't always spammy growth hacking BS. It would be great if the notification story was better with PWA, but it just isn't on Apple and even on Android the well has been poisoned enough that no one is turning on browser notifications even if they legitimately want to be updated. We're considering building an app pretty much solely due to notifications, because our only option currently is e-mail and deliverability while good can never be perfect.
- mrtksn 4y agoAFAIK the web push notifications are already implemented with iOS 16.4 They just have to convince the user to add their PWA to the phone home screen. I guess the issue is that users hate being instructed to "install" "apps" which don't need installation to function.
- lkschubert8 4y agoBut a lot of customers of your "thing" want to be able to download it from the app store.
- kevincox 4y ago
- JohnFen 4y agoI totally understand why developers love PWAs. As a user, though, I very much dislike them and won't use them. Neither of us are wrong, we're both choosing the most appropriate tools for our use cases.