37 ms·
The baseline for web development in 2022
- netr0ute 5y agoWhy make it so complicated? Just assume everyone has a 2G connection (you don't see them because of a demographics problem, but 2G users are out there) and make sure all static information is accessible without JS. Don't think about web browser compat at all because that's a software problem which costs nothing to fix on the user end, while 2G and slow processors are hardware problems which cost a lot to fix.
- bitwize 5y ago2G and 3G are going away soon, it's LTE/5G or GTFO.
- netr0ute 5y ago> 2G and 3G are going away soon Only in the most developed countries, as places like Bolivia are still hanging on to 2G. You just don't hear about those places because of that demographics problem, so people assume 4G/5G are all that's out there.
- SkyPuncher 5y agoHow many companies are targeting their primary use case in Bolivia?
- pjmlp 5y agoBolivian companies I guess, duh.
- netr0ute 5y agoProbably not many, but there are two good counterarguments to that. The first is because that "primary use case" becomes a self-fulfilling prophecy. If Some Company isn't intentionally targeting places like Bolivia and instead feeds Big Macs to their website, then people in Bolivia could never discover Some Company's website because of its bloat. Because people can't discover it, Some Company never knows that it could target those people. The second is that not all websites are to promote some product or company, but only provide information. Information usually isn't country-specific, so ignoring the 2G demographic leaves them in the dust.
- Turing_Machine 5y agoHmm... at this point, someone with an entrepreneurial bent should probably be asking him- or herself "Just how much money is lying on the table in places like Bolivia?" Wikipedia tells me that Bolivia has a GDP (PPP) of $89.018 billion, and there are a bunch of countries like Bolivia.
- dudeman13 5y agoIf Bolivia is like sweet home, that money is concentraded as fuck so either their schtick would have to be ubiquitous for it to be worth it, or they would be selling to the ~10% richest in Bolivia (which probably have decent internet access). For all that people sometimes go on about untapped market potential in poor countries, it really isn't that easy when >90% of the population lives on less than 350 USD/month. Sauce: spent the first 1/4 of century of my life living in a third world shithole.
- Turing_Machine 5y agoWell, yeah, you're probably not going to sell many Lamborghinis there (other than to the elites you mention). On the other hand, Coca-Cola has a presence in Bolivia, and apparently controls about 60% of the Bolivian market. With 11 million people, that's gotta be a nice piece of change. If what you're selling is closer in price to a Coke than a Lambo, you probably shouldn't write Bolivia off.
- lelanthran 5y ago> If what you're selling is closer in price to a Coke than a Lambo, you probably shouldn't write Bolivia off. If what you're selling is BOTH: a) closer in price to a Coke than a Lambo and b) closer in demand to a Coke than a Lambo Then, sure, you shouldn't write it off. However, if you're selling stock-trading software, even for the price of a coke, you might not make enough money back to justify supporting Bolivia. Cokes, even in poor countries, are still purchased by tens of millions of people at least once a month. Selling a similarly priced item that may be purchased by a few hundred people at most is not the same thing as Coke.
- 5y ago
- rhn_mk1 5y agoIs that the right question to ask? Shouldn't we rather ask: how many companies care about users in Bolivia at all?
- it_citizen 5y agoSo what? With that line of reasoning, very few websites should care about accessibility for people with disabilities.
- SkyPuncher 5y agoWell, this line of reasoning is why accessibility is federally required. It's something that most companies explicitly do not care about.
- jacquesm 5y agoThere are 660 million people living in Latin America, roughly twice as many as in the United States. You can bet that there are companies targeting them. I know a couple and I live in Western Europe, so locally I'd expect that number to be just about as high as in any other place where people live.
- nicbou 5y agoNot in the Berlin U-Bahn, or on German intercity trains. Not in large swathes of rural land. Not for people who ran out of data, but still need to Google stuff.
- bitwize 5y agoIn the USA, the major telcos are shutting off their 2G and 3G towers, this year -- after which if you are not reachable with LTE or 5G, you will simply have no service.
- netr0ute 5y agoThat doesn't account for private stations or congested areas where the service is technically 4G or WiFi, but you get 2G speeds.
- krono 5y agoDon't worry, we're slowly circling back to servers pushing out fully pre-rendered pages that don't require any scripts - or make it more convenient to create those, anyway. React's upcoming server-side components will likely be a very popular solution for achieving this. It's like PHP but this time in JavaScript.
- netr0ute 5y agoIf I can't use an adblocker on it then count me out.
- Dma54rhs 5y agoThe jsx soup already reminds me hacking php and html together with each other, truly back to the roots :)
- klabb3 5y agoIndeed. But it's kinda funny that it quite literally came full circle.
- seumars 5y agoIt’s disappointing to see that the consensus among frontend devs is to just sit and wait for a new API from react to do all the work. Every framework out there has simple methods for rendering a component to string which can be returned to the client.
- tomphoolery 5y agoTrust me, no one who's actually working on this in the real world is banking on React's upcoming APIs for this at all. Suspense is still not done, and it's been over 4 years. Server components aren't happening anytime soon IMO. The only reason why I think this year is still tenable is because Vercel ate up all the React devs who can contribute to such a task. Most JS devs I've talked to or work with are writing code based on what we have now.
- 5y ago
- Lamad123 5y agoYou are a 2G user when you most need the Internet. Just drive in parts of New York state or Northeastern Pennsylvania (I mention these two states because they are not remote empty rectangles like Idaho or Utah).
- golergka 5y agoHow are going to build something like Figma with these constraints?
- netr0ute 5y agoWhy does anyone NEED Figma?
- golergka 5y agoDepends on your definition of "need". But most people I know that use it enjoy it a lot, and especially collaboration features that they didn't have in desktop software.
- swiftcoder 5y agoThere's no particular reason why native desktop software can't support online collaboration - online video games all somehow manage to support networked interaction while running on the desktop.
- golergka 5y agoI'm working on electron-based desktop software at my job. We support macos, windows and linux. Building the same software natively would take 4x developers, move much slower, and require a lot more coordination. We would also not have access to incredible ecosystem of libraries and tools that we have at our disposal now. And if we wanted to develop a web version, to enable potential customers to try it out without installation, it would be a separate project equal in complexity to what we're already doing right now.
- swiftcoder 5y agoOf these points, I think that (almost) free cross-compile to the web is the only one that really holds up to inspection. Cross-platform desktop software has been a thing for decades prior to Electron showing up on the scene, there are frameworks designed explicitly to support that, and there is a truly massive ecosystem of native libraries and tools.
- LAC-Tech 5y agoFor the past 1.5 years I've been working on apps for the agriculture industry, mostly in Australia. This means 2G, slow 3G or satellite using customers are extremely common. No G too, if they're using your product out in the field. I myself lived 30 minutes drive from a mobile connection in 2021. A sheep literally ate my internet by chewing through the cable from the satellite to the house. So those users definitely exist in my demographic. And very much in the demographic of my clients, as potential customers. Still, it seems to be a hard sell to make things work with crap connections or offline. First off, frontend devs resist because you're taking away their favourite toys. (Very rational from their perspective - their next gig is probably in banking or retail or somewhere else with ubiquitous fast internet). Second off, those allocating budgets are very hesitant to spend money on any software dev out of the mainstream. From their perspective software is risky enough given its expense, let alone doing something that might require specialists. (This may be more of an Australian thing, they're not risk takers like Americans). So yes, you're very right on a technical level. I'm with you, and would love to talk to others who see this. On a more practical level - it's hard to make the stars align, even if it will land you customers.
- agumonkey 5y agoDo you ever write articles / blog entries about this ? I love frugal programming (and it seems there's some people interested in that too). You're experience is pretty telling.
- LAC-Tech 5y agoAppreciate the comment. I do keep meaning to blog. Anything in that post that caught your interest in particular? I'll make it happen.
- stonenoodles 5y agoWould subscribe/read as well. Not original poster, but would be interested in these edge case challenges and solutions.
- fomine3 5y ago
- ravenstine 5y agoWhat I find funny was the whole idea of a "web app" used to be that having JavaScript on the frontend perform lean API requests to the backend would result in a snappier experience for the user. It's turned out to be quite the opposite, though I primarily blame the developers rather than the technology itself; pretty much everyone is using the technology wrong, otherwise so many blogs wouldn't completely fail to show content with NoScript enabled.
- fomine3 5y agoOP is written by LINE employee, that's widely used messenger in some Asia. So it seems that it covers wide user range. Maybe Asia is good at 4G deployment, some developing country just skip 3G and deploy 4G. Or OP maybe only see Japan, where 4G coverage is enough high to stop supporting 3G on 5G phone.
- onion2k 5y agoIf a user on 2G you'd probably be better off moving away from typical web dev entirely, and delivering a desktop or mobile app with as much clientside logic built in as possible (offline database, CRDT for syncing, no external dependencies, binary protocol for any critical networking, etc).
- duckmysick 5y ago> Don't think about web browser compat at all because that's a software problem which costs nothing to fix on the user end Disagree. It costs them time and attention. If they don't have to do something, they won't do it. Updating software is low on people's priority lists. And not everyone has automatic updates enabled.
- jefftk 5y agoFrom the article: 1. Other mobile browsers update independently from the OS, whereas Safari is only updated when there is an update to iOS. iOS devices that are no longer supported with newer versions of iOS cannot update to the latest version of Safari. 2. All browsers in iOS are based on Webkit: There are Chrome and Firefox versions for iOS but those use the same engine as Safari in iOS. This is because of an Apple guideline which mentions that all iOS browsers must use Webkit. These users can't fix this problem without getting a new device.
- msoad 5y agoThe most surprising chart was how large bundle sizes are when using React to build components.
- deleted 5y ago[deleted]
- solidr53 5y agoIt’s also the most popular framework. With popularity the overhead of inexperienced developers npm installing everything starts to show.
- golergka 5y agoThat graph is data from real websites, right? So it might be selection bias: sites with logic requirements, app like, tend to use React, when simplest static websites don't have any reason to.
- superkuh 5y ago>Safari is the baseline in terms of web standards: The sites we develop must work in Safari versions at least 2 years old. How can anything work reliably when software's lifetime is less than the time I can store meat in my freezer? Future shock has hit the software world hard and nowhere harder than on the web. I can understand the financial motivations for for-profit businesses and why they behave this way. And I know that's not going to change. But as people, as human people and not just an employee fufilling a corporate person's goals, we can write, support, and use software for far longer than 2 years and we should.
- ubercow13 5y agoWho is using a browser build that is more than 2 years old on the open web? Is that a sensible enough use case that it should be supported?
- superkuh 5y agoI do and it's perfectly sensible as a human person. It's just not a sensible design your business around people like me to make a profit, usually. That said, businesses that actually want to take your money and aren't just selling you do tend to support very old browsers. For example, I can use my browser from 2016 to browse and buy things from Amazon.com very easily. Even with JS disabled.
- shaunpersad 5y agoThat's not sensible from a security perspective at all.
- TingPing 5y agoI believe Safari is supported for roughly 1 year and they expect users to keep updating their OS because they control the OS and know it will get updates.
- dmitriid 5y agoAn sufficiently large org will have a non-trivial amount of users on "outdated" (aka older than 2 years old) versions of software. Any public service (aka government site) will have a huge amount of people on "outdated" software and hardware. Also: how the f... did 2 years become "omg it's so old we're no longer supporting it"?
- nicbou 5y agoI follow a different set of criteria for my content-based website. Some are stricter, and some are more relaxed: - It must be readable on the shittiest monitor money can buy - It must be readable at night without straining the eyes - It must be understandable by non-native English speakers - It must load quickly even in the Berlin U-Bahn (underground train) - It must work fine with the strictest ad blockers - It must work fine with JavaScript turned off - It must be respectful of people's data plans - It must work in Reader Mode, in Pocket, or as a printed document - It must work in any reasonably modern web browser Web developers tend to forget that many people access the web from places with poor reception, on cheap devices, with poor eyesight, and with ad blockers.
- deleted 5y ago[deleted]
- sharps_xp 5y agowho are the groups of people actively turning off JS?
- heavyset_go 5y agoI open a lot of tabs and my battery would die within a couple of hours if I left JS on.
- papito 5y agoIt's like turning your car's engine off because that uses fuel.
- Isognoviastoma 5y agoIt's like turning your car's engine off overnight because that uses fuel.
- VectorLock 5y agoIdle-stop is (annoyingly) a thing, now.
- dmm 5y ago> but none were as big as the official retirement of Internet Explorer (IE) How many years does Firefox have left?
- mcdonje 5y agoHopefully a lot!
- darklion 5y ago> number of web standards only Safari hasn’t implemented is many times bigger than those of Firefox and Chrome Is that actual web standards, or just what is listed on caniuse.com? The reason I ask is that a lot of "standards" aren't actually standards: Service workers are not yet a standard: "This is a living document. Readers need to be aware that this specification may include unimplemented features, and details that may change. Service Workers 1 is a version that is advancing toward a W3C Recommendation." (https://w3c.github.io/ServiceWorker/ https://w3c.github.io/ServiceWorker/) Web Application Manifest is not yet a standard: "This document was published by the Web Applications Working Group as a Working Draft using the Recommendation track. Publication as a Working Draft does not imply endorsement by W3C and its Members." (https://www.w3.org/TR/appmanifest/ https://www.w3.org/TR/appmanifest/) Background sync is not a standard: "This specification was published by the Web Platform Incubator Community Group. It is not a W3C Standard nor is it on the W3C Standards Track." (https://wicg.github.io/background-sync/spec/ https://wicg.github.io/background-sync/spec/) Cookie store is not a standard: "This specification was published by the Web Platform Incubator Community Group. It is not a W3C Standard nor is it on the W3C Standards Track." (https://wicg.github.io/cookie-store/ https://wicg.github.io/cookie-store/) Streams is not a standard, it's just a specification: "This specification provides APIs for creating, composing, and consuming streams of data that map efficiently to low-level I/O primitives." (https://streams.spec.whatwg.org https://streams.spec.whatwg.org) So does Safari suck because it's not supporting actual standards, or does it only suck in comparison to Chrome because Chrome is willing to implement technologies that aren't finalized standards and technologies that aren't even on a standards track?
- danaris 5y agoOr, to take it a step further (and in a slightly different perspective): Does Safari suck because it's not supporting actual standards, or does Chrome suck because it's trying to make sure that the web only works on Chrome, like Microsoft did with IE 20+ years ago?
- heavyset_go 5y ago> Does Safari suck because it's not supporting actual standards, or does Chrome suck because it's trying to make sure that the web only works on Chrome This is a weird argument when Firefox supports many of the standards that Safari doesn't, as well.
- ChrisArchitect 5y ago[dupe] from yesterday https://news.ycombinator.com/item?id=30093502 https://news.ycombinator.com/item?id=30093502
- deleted 5y ago[deleted]
- pvg 5y agoIt's only an HN-dupe if it has some non-trivial amount of HN comments. https://hn.algolia.com/?dateRange=all&page=0&prefix=false&query=author%3Adang%20dupe&sort=byDate&type=comment https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
- ChrisArchitect 5y agofairplay, I just dunno how it gets resubmitted over when the orig post is right there with upvotes
- timetraveller26 5y agoIt seems that Vue has some points in its favor over React in terms of speed, despite React's finner control over reactivity. In the article they associate that with React's internals, but I wonder if also their philosophy to leverage the developer to trigger reactivity makes it easy to generate inefficient code, and in that case it may be that Vue's reactivity model has it's perks after all.
- terandle 5y agoAlthough preact is about par with Vue and that has the same model/API as react right?
- blux 5y agoTo me it's surprising and unsettling to see how small the market share of Firefox has become.
- forbiddenvoid 5y agoWhy is that surprising? Firefox doesn't have a narrative that's compelling for the typical user and I'm not sure it's ever had one that was really viable. 'Not-google' really isn't good enough for the average user, and no amount of 'we care about your privacy' is going to convince the common user that Mozilla _does_, in fact, care about their privacy. The reality is that most typical users care about their privacy a lot less than we might expect or want. That's probably not a great sign for society in general, but I think it's the truth.
- irrational 5y ago> Firefox doesn't have a narrative that's compelling for the typical user Firefox doesn't sell you off to the highest bidder?
- d12bb 5y agoOh, they absolutely do, like 90% of the funding for Mozilla comes from Google.
- irrational 5y agoGoogle just does that so they don't get broken up. But that doesn't mean Firefox is sending your data to Google.
- account42 5y agoIt does exatcly mean that Firefox is (by default) sending your searches to Google. Mozilla also uses Google Analytics on their websites and keep testing the waters with putting ads right into the browser. Users are absolutely justified in not trusting Mozilla's claims about caring for privacy.
- datavirtue 5y ago"over-dependence on JavaScript are hindering our sites’ performance" Hmmm...going to need a citation on that one. The most severe energy and performance hog I have seen are the tracking "pixels." I loath that shit. It brings a site to it's gnees and barfs out twenty requests to Facebook every time someone touches something. These tracking services and cookies are the worst abomination literally ruining the web.
- netr0ute 5y ago> going to need a citation on that one > It brings a site to it's gnees and barfs out twenty requests to Facebook every time someone touches something Does not compute
- awinter-py 5y agounsurprisingly jekyll remains the most performant option for frontend JS in 2022
- MrYellowP 5y ago
- linopolus 5y agoTo say it the other way round: Use HTML/CSS for information purposes (JS where needed, nice explanatory animations etc), get back to using real nice native code for applications, using the OSes capabilities to the fullest, providing an experience integrated with the rest of the OS, having full performance.
- ng12 5y agoPretty much a non-starter. If you're selling a desktop app and your competitor is a browser-based SaaS you will lose every time. It's one of the rare things both end-users and IT will agree on.
- pjmlp 5y agoIT will gladly put those native applications available via Citrix/RDP, no biggie.
- nexuist 5y ago...right up until users complain that they can't access critical work information on their phone or tablet in the field, unless they use a shitty RDP app to move a cursor around their desktop at 3 frames per second.
- pjmlp 5y agoUsers are free to complain, and IT is free to ignore them unless management says otherwise.
- pessimizer 5y agoManagement will also hate using Citrix.
- pjmlp 5y agoHardly when they are the ones signing it.
- irrational 5y agoIs Safari on MacOS and Safari on iOS the same? I'm confused when it says things like Safari is the new web baseline, but I'm not sure which version it means. I would think Safari on iOS would be more important than Safari on desktop. Everyone that has an iOS device is using Safari (whether directly or under the hood), while I'm not sure I've ever met anyone that uses Safari on desktop (other than to download a different browser).
- Eric_WVGG 5y agoway over 95% the same > not sure I've ever met anyone that uses Safari on desktop Odd conversation starter, I certainly haven't polled most of my acquaintances. The ones who have nerd-ish leanings overwhelmingly use it, though, as Chrome is a crapfire for laptop batteries and privacy.
- DenseComet 5y agoYep. I use Firefox when my laptop is docked and Safari the rest of the time. It might not matter for the M1 laptops, but with Intel, the difference in battery life is extremely noticeable.
- Eric_WVGG 5y agoIt definitely matters for M1. https://www.forbes.com/sites/brookecrothers/2021/02/21/this-kills-m1-macbook-pro-battery-life/?sh=14f0f826668a https://www.forbes.com/sites/brookecrothers/2021/02/21/this-...
- dusted 5y agoInstead of asking "how bloated can we allow to make websites" we should ask "how can we make this run faster and better and use less resources"
- bschwindHN 5y agoI just recently redid my company's website and used CSS grid this time. Our designer used a grid-based layout as well so it was super easy to lay out elements according to the design. I'm fortunately in a position where we don't need to support every browser under the sun, so using a lot of the modern standards was overall pretty fun. I'm not really a frontend guy so hopefully next time I need to make a website the standards will have advanced even further.
- nicbou 5y agoI'm using more and more grid elements on my website. I'm surprised by how easy it is to make them responsive. Small features like grid-gap are also very useful.
- ksec 5y agoiOS Market Shares in Japan 66.5%, Tim Cook: Apple doesn’t have a ‘dominant market share’ in any of its market.
- codeptualize 5y agoI find the framework part difficult. There are so many factors that impact bundle size and performance. To start what type of apps? How much content do they pull in? How much interactivity is there? If you for example compare a few very minimal mostly static site vs let's say data dashboards your comparison stops to make sense. Also consider the people who use the frameworks; some of the frameworks are quite new, you can expect a higher percentage of "early adopters" which are likely to be more experienced and write more performant code in general. It reminds me a bit of Wordpress. Can be very quick, but most sites were/are just 100 plugins bundled together into a slow mess. Its popularity and ease of use messing with its "score". Anyway, it's definitely interesting to see such numbers, but I won't be using them to make decisions or draw conclusions.
- austincheney 5y agoOn IE * Sunset on Nov 2018. * Support and compatibility from other MS products for IE terminated in Nov 2020. * Security support terminated 15 June 2022.
- dmitriid 5y agoIE will effectively be supported until the current version of OS it was shipped on stops being supported. Also: ending IE support doesn't mean people magically just stop using it.
- austincheney 5y agoYou can continue supporting IE6 if you wish. Regardless, on 15 June IE becomes abandon-ware.
- dmitriid 5y ago> Regardless, on 15 June IE becomes abandon-ware. People don't care about some technical company doing something. https://news.ycombinator.com/item?id=30112310 https://news.ycombinator.com/item?id=30112310
- austincheney 5y agoIt sounds like you have a fully self-imposed restraint qualified by expired data.
- dmitriid 5y agoNo, it doesn't. It only shows that I understand that the world doesn't care about "EoL" of tech. products. Close to half of Android users run on Android versions first released more than three years ago. Just because Google waves and magic wand and says "version X is unsupported" does not make them vanish from the face of the earth. Caniuse shows IE 11 at 0.66% global use. It means there are ~30-35 million users still using IE11. Depending on what service you run and who your target audience is, these users can make up a significant chunk of your user base. Windows 7 EoL was in 2020. As any smug know-it-all commenter on Hacker News knows, this means that it's now gone, never to be seen again. As reality shows, it still holds a 13% market share. And so on. Examples are too numerous to list. Do you have to support all these systems? It depends. It doesn't depend, however, on the arbitrary "two years is more than enough, drop support now".
- wildandextreme 5y agoReact is so slow, so hard to reason about with everything just "it will update at some point and everything is pinging around off each other reactively", and just generally terrible to use. I find it hilarious that it ever gained popularity. I am releasing a framework soon (well it is already on github with no documentation and not in release form) that uses web components and it has similar amounts of characters to type to perform tasks as React, yet thousands of times better performance. The library is so small, initial page load is probably the same as server-side rendering when you take into account users computer vs server. JavaScript is not really a factor in anything, it is just how it is used by people that is the factor.
- difosfor 5y agoI wish we'll finally get some regulators to force Apple to allow use of other browsers and installation of standard web apps in iOS. Seems like a pretty clear cut case of abuse of monopoly/platform power. I bet once that happens all of a sudden Safari will make an about face and also get many of the features it's resisting now.
- Terretta 5y agoThe outsized chrome bars atop every graph say "Safari monopoly" to you? On the contrary, seems like Safari (webkit, which Chrome used to be as well) is one of the few moats against total chrome, and one of the few to remain up to date across devices. For this you want regulators involved?
- sylware 5y agoAny criticial web sites (banks, administration services...) without noscript/basic (x)html compatibility should not be deployed.