Live data from Hacker News

Why is modern web development so complicated?

vrk.dev

391–400 of 731 posts

Re: Why is modern web development so complicated?

#391
post #372

Earlier quoted context omitted.

This is fundamentally because our industry is built on opinions, not standards. You talk to one software engineer, and they'll say, "that's built in PHP, so it sucks; it should have been built with npm, obviously." Then you talk to another and they say, "I can't believe they built that with npm, the package management system is just terrible and the whole mess is bloated and there have been a ton of security issues.…

There are reasons why other industries are more mature, like: they've been waaaaaaaaay longer than CS/SE they do not change so robustly & fast in short peroids of time. >We can't even accurately estimate the cost of a complex project given our choice of tools Let's do not pretend as if that was limited to our industry.

I think OP's point, or at least my agreement, is how many often pretend the software industry is like other engineering industries and make such implications in their job titles.

There is still a lot of creative art and the more we stop pretending this isn't the case, the more people will be reasonable. There is still an high degree of technicality in the profession, but that doesn't mean its "engineering" -- you can be technical, not an engineer, and still respectable (heck, look at science in general). It's still a complex skill and makes lots of money for many businesses.

Re: Why is modern web development so complicated?

#392
post #311

Earlier quoted context omitted.

"What's more impressive is that things are getting less complicated." Over what timeframe? While it certainly had its own issues, the HTML5/jQuery pairing easily fit into your head. Notwithstanding the benefits, React, packers, routers, and the 10 other things you bundle, is a cognitive load. Doesn't help that the routers and 10 other things don't come with React, and so, choices vary across teams.

The statefulness of jQuery is a massive cognitive load.

This is far from obvious and is almost never convincingly exemplified.

Re: Why is modern web development so complicated?

#393

Earlier quoted context omitted.

This is fundamentally because our industry is built on opinions, not standards. You talk to one software engineer, and they'll say, "that's built in PHP, so it sucks; it should have been built with npm, obviously." Then you talk to another and they say, "I can't believe they built that with npm, the package management system is just terrible and the whole mess is bloated and there have been a ton of security issues.…

> "sure, that material might not be the most durable on the market, but unobtainium would have added $35 million to the project cost and ongoing maintenance costs would have gone up by another $5 million / year." > That right there is a comparison that developers can never, ever offer anyone that's writing the checks for a project. Sure they can. At Google there was an internal cheat sheet of "numbers every engineer…

>> internal cheat sheet of "numbers every engineer should know" which included the cost in dollar terms

Would love to see that. For companies determining what's worth what, this would be great to see, even just for the format.

Re: Why is modern web development so complicated?

#394

Earlier quoted context omitted.

Actually, that's a well know mantra: the best code is no code.

People don't know what that means though. It is only helpful after explaining to shoot for deeper yet simpler rules for your system along with identifying what can be separated from execution as static data.

Part of that mantra also falls under problem solving in general. Not every solution needs a technology solution. Sometimes fixes can be made in processes or policy in general. Many jump to technology solutions too quickly and I feel this is lazy and often passing responsibility for someone else to fix a situation.

Re: Why is modern web development so complicated?

#395
Web development sucks precisely because we use a document markup language, a document styling language, and an interaction scripting language to build applications. It was bad enough when we just used this mess to make user interfaces.

If you've ever written or worked on a classical desktop application, you'll know what I mean. Since (at least) the 90s there have been visual UI builders and geometry management tools that allowed you to easily define a responsive user interface and connect widget events with calls to back end code. With the advent of CSS Grid and Flexbox, we finally have two decent geometry management tools--it only took 20 years. Except I can't use them yet, I have to support terrible old browsers (like IE7) that are embedded in customer applications.

We've been involved in reinventing a pretty, zero-config version of X-Windows, and we're only about 60% of the way done. How much further would we be if we didn't insist on building it in a hopped up word-processor?

Re: Why is modern web development so complicated?

#396

So... let me get this straight. You are making a website. You do need to load some changing data into it, so just a static site will not cut it. But we want to keep things simple. All we really need are a few AJAX calls and some DOM updates. And just like the author mentioned we don't want to write old clunky JS, we want to write beautiful ES6 code. So we install babel for ES6. And we install jQuery to do our AJAX an…

So using your summary at which step did the engineer make the wrong choice?

At the point that they chose to use all this kit and write "beautiful ES6". Write ES5, use a few polyfill functions, include the already minified mithril/vue/react js IF you actually are going to need dynamic DOM elements. An XHR sweetener is included in mithril at least, but if not, it's only a few lines easily memorized, as you will do them constantly, it's also a good candidate for that library you should have made for all your projects by now, with that "byId()" and "byClass" shorteners etc... just an XHR you can pass a callback, url, and method to...

  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function(){
    if(this.readyState == 4 && this.status == 200) {
      //do stuff to your dom, JSON.parse(return stuff) etc.
    }
  }

  xhr.open("POST", "/some route/" + whatever, true);
  xhr.send();
FormData(); would add 2 more lines to the above... I see no point in all this front-end toolchain stuff trying to maintain an illusion that ES6 runs in most browsers. Invariably maintaining false abstractions will not promote deeper understandings of the rather essential and basic "request response" cycle of HTTP.

It's not even pretty. Classes in JS? Gimme a break. Show me the ugly truth and K.I.S.S. because life is short and we have better things to do in life...

Re: Why is modern web development so complicated?

#397

It doesn't have to be complicated, if you get support from above. A few weeks ago I launched a new web site for a health care company. HTML, PHP, CSS, and MySQL. No frameworks. No javascript. No garbage. It replaced a site that was a mess of javascript libraries on top of frameworks on top of a half dozen jquery version and on and on and on. The company administrators, doctors, practitioners, etc... are so happy with…

> HTML, PHP, CSS, and MySQL. No frameworks. No javascript. No garbage.

Wait, PHP is not garbage?

Re: Why is modern web development so complicated?

#398

Earlier quoted context omitted.

I don't think someone nitpicking between the definition of the words "framework" and "library" is engaging in this conversation honestly, and I'm pretty sure that your failure to address the "this is but one of hundreds of examples, not all of which are covered by standard libraries in PHP" comment I made is further justification of that belief.

In the context of web development, they are generally considered as distinct.

Not the argument, nor is it relevant, hence the discussion about it being disingenuous.

Re: Why is modern web development so complicated?

#399

Earlier quoted context omitted.

> You can't honestly say any toolchain on the desktop side is any easier. Why, yes. Yes, I can. Delphi, for example. Visual Basic. Frankly, I think Cocoa and Gtk+ are easier.

1) Install NodeJS 2) npx create-react-app demo How many steps does it take to start from scratch with other toolchains?

1) Install Delphi. 2) File->New Project

Not really a sensible comparison. The tooling to build desktop interfaces remains vastly, vastly better than the tools to build web interfaces.

Re: Why is modern web development so complicated?

#400

Earlier quoted context omitted.

Unhelpful advice. Typical programmer up his own ass bullshit really. Oh that ways not good. Well what's good? I don't know, just not that. Look at how many clowns criticize jQuery these days as an example of garbage software.

I think jQuery got a bad rap because so many script kiddies would drop the entire damn framework into a page when they just didn't feel like writing a standard selector to do a mobile menu.

funny, that is the pattern I use, I don't consider it kiddy... it's just efficiant and easy to drop in.

le sigh

Post reply on HN