14 ms·
> simplicity of the web technologies in general Are we looking at the same web technologies here or are you from an alternative universe?
by BrissyCoder 5y ago
> simplicity of the web technologies in general
Are we looking at the same web technologies here or are you from an alternative universe?
- zodiakzz 5y agoI am a senior web developer with 12 years of experience, also perplexed by that statement. Edit: The React repo is 3 million+ lines of code, written in its own niche language...
- uryga 5y agowhat niche language?
- brundolf 5y agoThere are different definitions of "simplicity". The entire stack top to bottom may not be simple, but if the developer experience is simple (which it can often be on the web- that's a major driver of the web's prevalence as a platform), that can be what matters. I have a theory that the people who go on about how the web ecosystem is too complicated are either 1) web developers who are nostalgic for the jQuery days (and have selective memories about those days), or 2) non-GUI developers who enjoy the theoretical virtues of a QT or a GTK but have never actually had to work on a complex GUI, and so can't appreciate the incredible benefits the web has over those other platforms.
- kaba0 5y agoWhat are the incredible benefits of the web? Have you worked on a complex QT app?
- eurasiantiger 5y agoI have seen a LOT of Qt apps and 100% of them had worse UI than your average web app.
- pseudalopex 5y agoI've seen lots of Qt apps. Most of them have been much better than the average web app.
- subw00f 5y agoI have worked with both, including Widgets and Quick. I wonder why you think Qtcom is focusing development on Quick, which uses QML (JSON-like syntax) and JavaScript (ES6), while declaring Widgets "feature complete", mostly releasing minor fixes, in other words, keeping it stagnated. The obvious answer for me without getting into Mobile vs Desktop development is: it's easier to get new professionals to use technology as popular as JS (or any other web related stuff), and definitely cheaper for companies to hire said professionals, therefore making it a easier pick for new projects. To summarize the benefits: easier for junior devs to use and because of that overall cheaper/faster deliveries. Note that I'm not saying anything about quality.
- pseudalopex 5y agoJunior developer doesn't mean a developer who just knows JavaScript. Cheaper developers doesn't mean faster or cheaper delivery in the long run. And I don't think brundolf meant cheaper developers.
- kwanbix 5y agoMaybe you are too young, but there was a time were we used RADs (Rapid Application Development) environments like Delphi, VisualBasic, Visual C++, etc. Those solutions which are from 1990s, are still years ahead in simplicity vs what you need to do to build a full web solution today (front-end and backend). Of course the web has many other benefits, like 0 install, runs everywhere, always updated, etc., but calling web development simple is just crazy in my humble opinion.
- ramchip 5y agoWhere do you get that figure from? I'm looking at the add/delete statistics for instance: https://github.com/facebook/react/graphs/contributors https://github.com/facebook/react/graphs/contributors It doesn't seem possible for this to add up to 3M lines of code?
- shakow 5y agoIndeed, tokei gives me ~400 000 lines, including ~310 000 LoC.
- 11235813213455 5y agowhile preact is 3kb and does the same
- mpfundstein 5y agoit does not do the same. it does few things that react does and thats it. what an ignorant comment
- 11235813213455 5y agoThere's preact/compat sub-module for the remaining react features, please inform yourself before inappropriately flaming someone. There some very slight differences https://preactjs.com/guide/v8/differences-to-react/#what-s-missing https://preactjs.com/guide/v8/differences-to-react/#what-s-m... nothing blocking at all
- 59nadir 5y agoDoes it have hooks? Class components are super tedious in comparison.
- 11235813213455 5y ago`import { useState } from 'preact/hooks';` yes https://preactjs.com/guide/v10/hooks https://preactjs.com/guide/v10/hooks
- spookthesunset 5y agoIn my 20 years as a developer I’ve learned that the more polished something looks on the surface, the more complex the codebase under the hood becomes. Things are simple to the end user because of all that complexity.
- cryptos 5y agoThat is my experience, too. I worked on a SPA with a more or less simple looking table that presented hierarchical data and made them editable with form elements. Under the hood there were hundred lines of very dense rxjs code and the whole thing was communicating with about 10 HTTP endpoints. But it looked simple.
- buchanaf 5y agoIt's a monorepo, so the only package you are really interested in is 'packages/react-dom', which I'm guessing is less than 3 million.
- irrational 5y agoSeriously. I’ve been doing web development professionally since 1998. I’d love to have OP write a blog post to teach the rest of us about this simplicity.
- adventured 5y agoI've also been doing web development on essentially a daily basis since the 1990s. I got pretty tired of chasing the fad explosion. Here's what I build everything with these days: HTML, CSS, JavaScript, Go or PHP, Redis, MySQL or Postgres, Ubuntu & Nginx. Occasionally I'll make use of an ancient version of Sphinx for easy, fast search. I also sometimes mess with Vue for fun, as I happen to be fond of it, but I never find that I need it. No frameworks. No containers. It's all mostly boring and ancient. I use DigitalOcean for about 95% of everything hosting wise (and rarely AWS). Works beautifully, everything is simple, blazing fast, light on bloat and rock solid. The simplicity is still out there, if you don't have to care about what anybody else thinks, if you're not trying to earn a living doing web development (everything I work on is self-determined). That's a big if unfortunately. If you are trying to earn a living doing web development it's understood that chasing the latest thing isn't optional, as you can't afford to miss an inflection.
- QuadrupleA 5y agoDefinitely agree with this type of approach - and my experience as a freelancer (thankfully in charge of my tech stacks) is that clients are happy to pay for fast, reliable software built like this.
- cies 5y agoSoftware that does not have a one-man-team behind it (with all due risks): that's where bigger companies pay even better.
- theonething 5y agoDo you roll your auth and stuff?
- VWWHFSfQ 5y agoI feel like I'm a freaking alien right now.
- mssundaram 5y agoProbably in contrast to the embedded hardware development the OP does...
- rtpg 5y agoTry writing a GUI with other toolkits. Hours of tweaking random XML to try and figure out why some constraint solving thing just isn't working... Despite all the mess, I have an easier time getting buttons on a screen and doing things sanely (once all the fuss is set up) compared to trying to get the ball rolling in Qt/GTK/etc (especially if you're not using Java or C++)
- cies 5y agoIf not using C++ with Qt, Qt is a bit harder to get going. But I honestly dont think that building a UI with JS/HTML/CSS is easier than in C++/Qt. But then the Qt UI: * needs to be (re)compiled for each platform * needs to be re-shipped on each change * is not a client-server application (all runs on the client) * has "desktop styling" by default
- klausjensen 5y agoAgreed wrt other GUI toolkits. I think of it like democracy. It is ugly and terrible, but still better than all the other options.
- kaba0 5y agoAbsolutely not true. Windows forms, WPF, JavaFX, Swing all are much more productive than the vanilla web. Like, how many lines of code does the most basic vbox/hbox thing requires in web technology? Many of them even have dragndrop ui creations, and this XML hatred is downright stupid at this point. How about criticizing the technology and not a random medium for that? Is writing something stupid in JSON inherently better? HTML is simply a terrible GUI base, JS is quite great nowadays and CSS would be great, but has to provide way too much of what HTML should be doing. But the web ui frameworks are just barely getting at the level of where native frameworks have been in a decade.
- ath92 5y agoThat example you mentioned would be just a couple of lines of html with css (which you could inline if you wanted), and there are plenty of drag and drop tools for the web (WebFlow is a modern example, but they have been around for decades).
- deleted 5y ago[deleted]
- z3t4 5y agoWeb development, even single page apps, and progressive web apps, can be simple if you skip the web frameworks which solve non-problems and complicate things. The most difficult problem in web development is to make the user interface (UX) work on everything from smart-watches to 40 inch 4k monitors. CSS solves this problem, but it's not an easy problem by itself. The second most difficult thing in web development is automated testing across the stack, testing both back-end and front-end, with different user devices. It's complicated and time consuming to write the code that test every function automatically. Third most difficult thing in web development is optimizations, the browser dev tools doesn't say much about what is going on internally in the JavaScript engine.
- pseudalopex 5y agoShow me a user interface that works on anything from smart watches to 40 inch monitors.
- einpoklum 5y ago> CSS solves this problem No, it does not. CSS allows some mitigation of this problem.
- austincheney 5y agoI was able to create an original OS like GUI, including file system interaction, using vanilla JS (TypeScript) in about two weeks. I am still using it. The actual GUI is just a couple files each comprising about a dozen functions, nothing really complicated.
- mixmastamyk 5y agoDelphi probably would have gotten you there in two hours.
- XCSme 5y agoThe nice part is that you can make web dev as simple or complex as you want. You can write your entire application in a single index.html file with no compilation or build step. You can also use various preprocessors, scaffolds, libraries and frameworks to achieve the same result. The choice is yours.