Live data from Hacker News

Why is modern web development so complicated?

vrk.dev

551–560 of 731 posts

Re: Why is modern web development so complicated?

#551
post #114

Webdevs tend to suffer from an inferiority complex, that they are not considered “real” developers by the rest of the community. So they have responded by making the simple things they do monstrously complicated to try to prove something to the C++ guys, who simply don’t care, until they try to use the dumpster fire that is any modern website, that is. Then it has the opposite of the intended effect! Someone else men…

I think this is it more than anything. People wanted to make the web complicated because it made them feel cooler developing it. Some SPAs are cool. Easyeda.com is pretty cool. But also: storing information about a page in the URL is pretty cool too. It makes it possible to link to the page, for instance!

This comment (and so many others on this thread) demonstrates such a complete lack of understanding of web development and SPAs.

Knowing as little as you do about SPAs, why do you think you would be able to understand all the intricacies of the problems they solve. Don't claim that people

> make the web complicated because it made them feel cooler developing it

just because you don't understand the issues.

It would be like me claiming that pro golfers wear golf shoes "just to look cool", when in reality, golf shoes probably offer some advantage that I'm just not aware of.

Re: Why is modern web development so complicated?

#552

Earlier quoted context omitted.

Likely in that other industry the engineer built 100+ other basically identical items that are two or three orders of magnitude less complex and where all the costs and techniques are pretty well known. Also, those mature industries routinely overrun by millions of dollars and months or years, event though they are dealing with a fraction of the complexity and the costs and techniques are well known. Software is the…

> Software is the only industry where you are asked to build systems that have never been built before but that are more complex than anything ever built in the history of "mature industries" I have a feeling that some SpaceX engineers would have something to say about this after one of their rockets lands on a floating barge.

> I have a feeling that some SpaceX engineers would have something to say about this after one of their rockets lands on a floating barge.

That is because you are ignoring/left out the critical last part of the phrase you quoted: "and estimate it with an accuracy of 5 to 10 days and a few thousand dollars."

This is particularly relevant because this is a direct response to the following:

> We can't even accurately estimate the cost of a complex project given our choice of tools, let alone talk about costs and ROI with different toolchains for the same projects.

Re: Why is modern web development so complicated?

#554

Earlier quoted context omitted.

The trouble is that "don't build shit software" isn't actionable advice on how to avoid building shit software. For someone seeking to be a more skillful web software engineer, there's no information there.

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.…

The "opinions" part is true, and has implications on whoever is paying for the software and whoever is maintaining it (with their own opinions, of course).

A company/client will often make decisions based on "opinions" too. "We need a website, what should we use to make it?" It's a bit of a blank canvas situation at first where a developer/engineer could come in and say "We should do it X way with Y libraries because ". Devs could have totally different takes on the same canvas by a matter of opinion.

If I were to ask people "What type of car should I buy?", I would likely get a whole variety of answers from hybrids to SUVs to European and Japanese cars based on who I asked and what their own preferences and tendencies are. I may end up happy or I may end up unhappy depending on which opinion I'm swayed by and how much rigor I put into investigating the different opinions.

Software can be very similar when people providing the "opinions" are caught up in looking to use specific tools over trying to figure out an appropriate solution. When developers/engineers/designers/managers immediate choose tools as a blanket solution over understanding the scope and use-case for context, it's a sign to heavily question the authority of their opinions.

Re: Why is modern web development so complicated?

#555
post #59

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…

Did you consider that the next developer might well come along and post a similar comment: > It replaced a site that was pretty much a home-grown PHP framework written by a single developer. Random mixed logic in templates, hard to update CSS and a poorly designed 'not-an-ORM' ORM. Not to say that your rewrite is like that, but one man's garbage is another man's treasure.

Did you consider that up to a certain point any framework, be it home grown or commonly used, makes things more complicated?

Simple cgi endpoints and static files for any css/js should be our starting point and any web developer should understand them. When the problem becomes bigger and more complex is when we should start looking at frameworks.

Re: Why is modern web development so complicated?

#556
(shameless plug) Just for kicks I wrote the client side of https://watch.ly/ without any frameworks (but used less/ejs/express).

Also winricklabs.com

It's a nice breather after writing AngularJS for six years... I'm sure with the next complicated UI I'll use some big framework (Spring+Leaflet or Angular...)

However, I think the goal should be to reduce complexity and have your business/product be focused as possible.

Watch.ly is literally just live hit counters. The live part gets challenging at some scale. But the product is focused.

Re: Why is modern web development so complicated?

#557

Earlier quoted context omitted.

> PHP, MySQL Agreed in general, but there are better free/libre choices. I don't recommend these for greenfield projects.

What would you recommend instead of those?

Flask and postgres

Re: Why is modern web development so complicated?

#558

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.

Yep, I can see how beginners or god-level guru could turn that into a thousand characters one-liner.

Re: Why is modern web development so complicated?

#559

Earlier quoted context omitted.

The trouble is that "don't build shit software" isn't actionable advice on how to avoid building shit software. For someone seeking to be a more skillful web software engineer, there's no information there.

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.…

> We can't even accurately estimate the cost of a complex project given our choice of tools, let alone talk about costs and ROI with different toolchains for the same projects.

No industry can, unless it's something that has been done repeatedly before. If you ask a frontend designer specializing in WordPress to make a theme for WordPress and implement it, they can estimate it accurately.

What is thoroughly missing from this debate is the age old project management terms of scope and risks. As soon as you enter unknown land, the risk goes up. And risk means uncertainty and probably expenses. And if the people writing the checks change the scope, the original estimates goes out the window. If you're making a building, it's easier to understand that you cannot just change the scope after the blueprint is made. You have to get an architect to remake it, and everything done and ordered so far may or may not be salvageable. It happens in all industries, but just more so in software development.

Re: Why is modern web development so complicated?

#560

Earlier quoted context omitted.

The statefulness of jQuery is a massive cognitive load.

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

It should be totally obvious if you have written or tried to reason about a jQuery codebase that is larger than, say, one thousand lines of code, especially with multiple event listeners reading from and writing to the same pieces of state.
Post reply on HN