News for hackers. Stuff that matters.
Re:Why is modern web development so complicated? by jacobsenscott on Wednesday August 07, 2019 @07:58PM (#20640492)
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 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", on top of astronomically complex systems, and estimate it with an accuracy of 5 to 10 days and a few thousand dollars.

Re:Why is modern web development so complicated? by pjmlp on Thursday August 08, 2019 @01:16AM (#20642038)
90% of Web applications are database frontends.

What they do to the end user might be different, how the pieces come together, it is always the same, unless one is doing curriculum driven development.

Re:Why is modern web development so complicated? by collyw on Thursday August 08, 2019 @07:09AM (#20643398)
I wish we could get away from the fashion show in this industry. Currently we have a React frontend, which just adds extra complexity for no real benefit. But its fashionable.
Re:Why is modern web development so complicated? by eropple on Thursday August 08, 2019 @12:48PM (#20646136)
React (and other SPAs) may be fashionable, but I generally contend that--when written well or even passably, which obviously requires an asterisk lest the Scotsmen come by but I don't think is a very high bar--if nothing else it requires developers to treat a web application as a client of an API rather than tightly integrating it. It enforces a level of separation of concerns that, IME, tends to encourage loose coupling and better design.

Forget everything about responsiveness or whatever (which I find way more valuable than the tradeoffs one makes)--the lack of tight coupling is the real win of React and similar. I mean, if you'd like you can pretty easily build a server-side React app with NextJS and still get a lot of these benefits while using React purely as a pretty-dang-good templating language.

Re:Why is modern web development so complicated? by collyw on Friday August 09, 2019 @03:13AM (#20651973)
SPA apps will decouple the backend from the front end, but the front end will always be specific to a backend in the vast majority of cases. I don't see how that is so different from templates being rendered on the server.

Old school server side rendered apps are underrated and its perfectly possible to make something that looks and behaves as well as a SPA app for most things.

Re:Why is modern web development so complicated? by eropple on Friday August 09, 2019 @09:46AM (#20654246)
I disagree that the frontend will be specific in even a "vast" majority of cases--if only because of the obvious proliferation of mobile. And while I agree that you can often make a good-looking server-side-rendered, templated application, I will contest that you can ever make a server-side-rendered, templated application feel correctly on a mobile device.

Even in the case where you do have a specific frontend, I contend that there's still value in the separation because it very strongly encourages (coupled with tools like, shameless plug, nestjs-data-sec[0]) the writing of very clear viewmodels where thought must be put into what exactly should be exposed over the wire in a way that commingling database objects and template logic doesn't allow.

I think server-side rendered pages are properly rated at this point, not underrated; there are places to use them but they're shrinking as other tooling get better. As an example, even I write React almost exclusively because I write React faster and with fewer errors than any templating language I see in common use except maybe Razor (and Razor implies buying into ASP.NET, which, no). React/TypeScript are hard to get wrong and easy to burn through quickly. And I would call a React page rendered through NextJS a "server-side rendered app"--but I get the feeling you would not. ;)

[0] - https://github.com/eropple/nestjs-data-sec

Re:Why is modern web development so complicated? by I_complete_me on Thursday August 08, 2019 @01:42PM (#20646693)
Off topic this but your phrase "lest the Scotsmen come by" intrigued me. It sounds vaguely idiomatic but I don't know the reference. Any enlightenment available?
Re:Why is modern web development so complicated? by steve_g on Thursday August 08, 2019 @03:05PM (#20647522)
Re:Why is modern web development so complicated? by I_complete_me on Friday August 09, 2019 @04:25PM (#20657989)
Thanks for the link. No true Scotsman would have been so kind!
Re:Why is modern web development so complicated? by jacobsenscott on Friday August 09, 2019 @10:33AM (#20654692)
90% of apps use databases, but that doesn't mean they are just database frontends. If you zoom in there is always specialized domain logic that is custom to that app. If there isn't it shouldn't have been built.
Re:Why is modern web development so complicated? by Xelbair on Thursday August 08, 2019 @07:42AM (#20643570)
>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", on top of astronomically complex systems, and estimate it with an accuracy of 5 to 10 days and a few thousand dollars.

You are seriously overestimating complexity and novelty of most software development, while underestimating engineering in other industries. I work currently as software developer and previously in a branch of a civil engineering.

Do you seriously think that other engineering disciplines to not have those small little problems that plague us all the time in software development? They do, but they can offer their solutions based on data, not just whim. They do also have codified standards, and guidelines and certification exams.

On the other hand software development is relatively new discipline - other fields had hundred of years to mature.

EDIT: and they are catching up with rapid prototyping - it is getting cheaper and faster.

Re:Why is modern web development so complicated? by kjsthree on Thursday August 08, 2019 @12:41AM (#20641902)
> 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.

Re:Why is modern web development so complicated? by shkkmo on Thursday August 08, 2019 @02:03AM (#20642231)
> 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? by jacobsenscott on Friday August 09, 2019 @10:13AM (#20654487)
Software landed the rocket on on a floating barge. The hardware is just holes for hot gas to come out.
Re:Why is modern web development so complicated? by newen on Thursday August 08, 2019 @05:52PM (#20649206)
It's especially hilarious because he is comparing projects done by bootcamp graduates to projects done by highly trained PhDs. Some people just don't have a clue about the massive difference involved in webdev type projects and complex engineering projects.
Re:Why is modern web development so complicated? by lexs on Thursday August 08, 2019 @06:03AM (#20643115)
Some McDonnell Douglas DC-X engineers would probably have something to say about your comment too.
Re:Why is modern web development so complicated? by CapricornNoble on Thursday August 08, 2019 @08:21AM (#20643797)
>>>>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"

Anyone engineering hypersonic missiles would easily dispute that.[1] Or submarine-capable quantum communication systems.[2] [1]https://www.nytimes.com/2019/06/19/magazine/hypersonic-missi... [2]https://www.realcleardefense.com/2017/11/04/quantum_communic...

Re:Why is modern web development so complicated? by jacobsenscott on Friday August 09, 2019 @10:25AM (#20654609)
There are occasionally novel engineering projects. These will be millions of dollars and years over budget, and then will fail. All their "mature industry standards and procedures and certifications" wont' save them.
Re:Why is modern web development so complicated? by CapricornNoble on Saturday August 10, 2019 @06:59AM (#20661373)
It's unwise to extrapolate the US defense industry's procurement problems onto the Russians and Chinese. There's reasonable evidence to suggest the Russian Kinzhal and Zircon hypersonic missiles are already Working As Designed, or fairly close to it.[1][2]

[1]https://www.scmp.com/news/world/russia-central-asia/article/...

[2]https://en.wikipedia.org/wiki/3M22_Zircon

Re:Why is modern web development so complicated? by saiya-jin on Thursday August 08, 2019 @07:28AM (#20643499)
Yeah, I used to hold similar naive views fresh out of school. Reality is, at least 98% of the software out there is just redoing what has been done, copy paste for slightly different purposes, integrating libs in slightly different ways.

But maybe its hard to admit it, lower down your ego and be a bit humble. Yes, software development is a creative work, but so are all other engineering branches. And yes, we have massive issues with code, process and people quality across whole business.