News for hackers. Stuff that matters.
Re:Ask HN: Why did Frontend development explode in complexity? by claudiulodro on Monday January 02, 2023 @09:49AM (#34218420)
Because the browser nowadays is an "operating system" that needs to be capable of handling all manner of dynamic software: maps, video, image editors, games, etc. I haven't done Windows development, but I assume browser-based development complexity will continue trending towards essentially the same complexity as developing e.g. a Windows program.
Re:Ask HN: Why did Frontend development explode in complexity? by eterm on Monday January 02, 2023 @09:56AM (#34218508)
TWenty years ago windows development was a lot simpler than modern browser applications. Fire up visual studio and create a new winforms project.

You could literally drag and drop your way to a modest application with only minimal programming 'under the hood' for the business logic.

I still don't think anything has surpassed the usability of winforms for a developer just wanting to get something done.

Re:Ask HN: Why did Frontend development explode in complexity? by sillysaurusx on Monday January 02, 2023 @09:59AM (#34218547)
Can confirm. I love winforms. Convinced that even the most hardcore Unix devs are missing out on the sheer joy of being able to double-click on a form you just dropped into an editor and seeing it automatically add an event handler for the common case of whatever type of UI component it is. (Buttons are onclick, inputs are ontextchange, etc.)
Re:Ask HN: Why did Frontend development explode in complexity? by sorenjan on Monday January 02, 2023 @10:12AM (#34218699)
I think QTCreator provides a similar experience, but I haven't used it in years and might be wrong.
Re:Ask HN: Why did Frontend development explode in complexity? by pferde on Monday January 02, 2023 @10:15AM (#34218741)
Glade did that decades ago for GTK+ apps too. A WYSIWYG UI editor which prepared all the UI boilerplate code for you automatically.
Re:Ask HN: Why did Frontend development explode in complexity? by AdamKlob on Monday January 02, 2023 @10:12AM (#34218705)
There are RAD IDEs for popular Unix frameworks like Qt or Gnome and probabyly much more I haven't heard about.
Re:Ask HN: Why did Frontend development explode in complexity? by bena on Monday January 02, 2023 @11:38AM (#34219915)
XAML in Visual Studio is similar. You can put in the call to the handler, then "Go To Definition..." and it will create the handler for you.
Re:Ask HN: Why did Frontend development explode in complexity? by hansworst on Monday January 02, 2023 @10:15AM (#34218747)
There are plenty of website builders that don’t require you to code. Platforms like squarespace or wix make it really simple.
Re:Ask HN: Why did Frontend development explode in complexity? by eloff on Monday January 02, 2023 @09:58AM (#34218529)
The browser is powerful enough now that one could replicate this if one wanted to. I don’t think it’s the pinnacle of software development, but it had some advantages.
Re:Ask HN: Why did Frontend development explode in complexity? by jelling on Monday January 02, 2023 @10:08AM (#34218662)
The difference is that winforms basically had one way to do everything which expedited development because it skipped all of the infinite number of stupid small decisions and libraries that must be cobbled together in a typical SPA.
Re:Ask HN: Why did Frontend development explode in complexity? by goalieca on Monday January 02, 2023 @10:12AM (#34218702)
Win32 could do it all. And in windows there was often a different way to handle things like video across each major OS version. Yet still, I feel it was simpler! Crazy!!
Re:Ask HN: Why did Frontend development explode in complexity? by sillysaurusx on Monday January 02, 2023 @10:00AM (#34218566)
This seems true in the same sense that every language is theoretically equivalent because they’re Turing complete: technically true.
Re:Ask HN: Why did Frontend development explode in complexity? by dmitriid on Monday January 02, 2023 @09:58AM (#34218530)
Nothing surpassed Delphi from early 2000s. Not even WinForms.
Re:Ask HN: Why did Frontend development explode in complexity? by greggman3 on Monday January 02, 2023 @10:45AM (#34219115)
drag and drop forms from 20 years ago assumed a desktop PC. Today your form has to work on mobile
Re:Ask HN: Why did Frontend development explode in complexity? by sethammons on Monday January 02, 2023 @10:52AM (#34219216)
Help me understand why that is significant, or is that your point, that the viewport changing shouldn't be a big deal. Not following.
Re:Ask HN: Why did Frontend development explode in complexity? by Lukas_Skywalker on Monday January 02, 2023 @11:59AM (#34220242)
The drag and drop your parent comment mentions is used for creating the WinForms application, not for interacting with it. Creating the application is still done on a Desktop PC.
Re:Ask HN: Why did Frontend development explode in complexity? by greggman3 on Monday January 02, 2023 @09:59PM (#34227008)
Correct, but the form itself was always a fixed layout, designed for desktop, not a responsive layout where things changed based on the size of the user's display and the input methods available to them
Re:Ask HN: Why did Frontend development explode in complexity? by FpUser on Monday January 02, 2023 @11:08AM (#34219466)
This was available way before with Delphi and now Lazarus. And it produced single native exe that did not require install.
Re:Ask HN: Why did Frontend development explode in complexity? by player2121 on Monday January 02, 2023 @12:20PM (#34220571)
I do not think that you would be able to do ActiveX, COM, OLE, MFC, C++ after 2 weeks of bootcamp. Yes, Delphi and Visual Basic simplified many of it but there were still many challenges to develop and ship your software. Just shipping alone and dealing with installers was a challenge by itself. Now compare it with a browser tab and a single click that deploys your code across the globe so it event can run in space on ISS.
Re:Ask HN: Why did Frontend development explode in complexity? by x86x87 on Monday January 02, 2023 @12:43PM (#34220936)
But here's the thing: you didn't needed COM or ActiveX or MFC in many cases. You could literally wire up and build an up pretty effortlessly. With webdev today we jump directly to very complicated things when 90% of the time they are not needed.
Re:Ask HN: Why did Frontend development explode in complexity? by player2121 on Monday January 02, 2023 @01:12PM (#34221392)
For simple things we still have Excel and Ms Access where people continue to build simple UIs for personal use. At my previous job, our CFO build own framework (Excel) to manage and automate financial reports (which makes him a full-stack developer based on industry standards)

I guess the frustration comes from the fact that historically Web started as a set of static HTML files to create/publish documents and we inertially compare todays Web with it but we if stop comparing apples with oranges than it becomes apparent that:

1. It's never been simpler to create and publish web content 2. It's never been simpler to build/ship/and distribute software

Complexity arises when people (given many options) pick wrong tool for a job.

Re:Ask HN: Why did Frontend development explode in complexity? by x86x87 on Tuesday January 03, 2023 @11:37AM (#34233729)
Picking the wrong tool but also cargo cults. If everyone is a X-developer and is using Y and you are working in X you start to wonder if you should be using Y, right?
Re:Ask HN: Why did Frontend development explode in complexity? by chinabot on Monday January 02, 2023 @03:12PM (#34223017)
My 15 year old Delphi program which runs the whole factory still hasnt been replaced, despite the company and IT staff growing by 10x. Its now taken 4 years, 3 IT Managers and 2 consulting firms to decide Delphi is archaic and it will all be re-written using "cloud and modern frameworks". They have given the team of 3 developers 2 years to do it. Considering they have not managed to keep a developer or IT Manager for longer than 18 months, I would say good luck. I really dont know how anyone gets anything done these days.
Re:Ask HN: Why did Frontend development explode in complexity? by electroly on Monday January 02, 2023 @10:14AM (#34218731)
I'm a Windows developer and as such I'm biased, but I think Windows apps are dramatically easier to write than web apps. I still use WinForms professionally to this day. Productivity is absurdly high. The number of concerns to worry about is low. The framework has been stable for 20 years and I know all of its quirks, which never change. Fads are ignored. We can zip around with amazing speed.

On the other hand, our apps are:

- Ugly looking

- Dated looking (this is different than ugly, but our apps are both)

- Full of UI jank (too many WinForms controls take their sweet time painting on the UI thread)

- Non-server-based

- Non-cross-platform

- Non-sandboxed

- Installed from downloaded file that gives scary warnings in your browser when you try to open it

These downsides hint at some of the reasons why I think web-based development is necessarily more involved than for Windows apps.

Re:Ask HN: Why did Frontend development explode in complexity? by Inhibit on Monday January 02, 2023 @10:56AM (#34219270)
A large part of the reason people ignore your model for business use, where the target platform is locked down to a single target, is the perceived need to run their software on any given piece of hardware.

That's a question that really aught to be answered. If the business application only requires Windows PCs as a target your design wins out despite the perceived shortcomings.

Re:Ask HN: Why did Frontend development explode in complexity? by prox on Monday January 02, 2023 @10:58AM (#34219294)
Would solving these painpoints be a market? Sounds interesting to delve into.
Re:Ask HN: Why did Frontend development explode in complexity? by mike_hearn on Monday January 02, 2023 @03:33PM (#34223268)
Most of them can be solved by using a more modern but similar toolkit like Jetpack Compose, JavaFX etc. Then you have distribution, but to get rid of the scary warnings just requires you buy signing certificates. Distribution is still a pain after that, but that's why I built Conveyor, to simplify it.

Going further would require remixing bits of Chromium to create a browser-like thing with a sandbox, but which is much less opinionated about what runs inside of it.

Problem is, for there to be a market requires that devs (or someone) pays for it. How much would you pay to be able to not write a web app?

Re:Ask HN: Why did Frontend development explode in complexity? by dogleash on Monday January 02, 2023 @11:07AM (#34219444)
>I'm a Windows developer and as such I'm biased, but I think Windows apps are dramatically easier to write than web apps.

I agree that the usability of a good desktop GUI toolkit runs circles around whatever webdev is these days, but the barrier to entry for a completely new programmer is certainly a lot higher than HTML.

Re:Ask HN: Why did Frontend development explode in complexity? by rescbr on Monday January 02, 2023 @12:14PM (#34220472)
That's why I miss good ol' VB6.

Spaghetti code? Yeah, not only that, but the whole pasta menu. On Error Resume Next.

The barrier to entry were none to zero.

Re:Ask HN: Why did Frontend development explode in complexity? by marcosdumay on Monday January 02, 2023 @10:25AM (#34218860)
Yes, the browsers export a lot of capabilities to the frontend. But you point no reason why the frontends must use those capabilities.
Re:Ask HN: Why did Frontend development explode in complexity? by claudiulodro on Monday January 02, 2023 @10:50AM (#34219180)
IMO it's mainly Google and Chrome/ChromeOS trying desperately to keep people away from the competing Windows and Apple ecosystems, which requires that the browser do essentially anything a stand-alone program could do. This doesn't explain why there are a million JS frameworks, but it does explain why the browser has ballooned in features and complexity over the years.
Re:Ask HN: Why did Frontend development explode in complexity? by pixl97 on Monday January 02, 2023 @12:34PM (#34220794)
>This doesn't explain why there are a million JS frameworks

Not sure if this is a valid answer, but I would assume that both Microsoft and Apple provided decent and easy to use frameworks to build applications on their operating system. This setup a particular amount of vendor lock in, the library is already there and doesn't need downloaded/installed making it easy on the end user.

On the other hand, frameworks were not provided by the browser manufactures initially. Also, everything is downloaded so 'include foo.js' is just as easy as 'include bar.js' opening up a vast ecosystem of frameworks.

Re:Ask HN: Why did Frontend development explode in complexity? by cj on Monday January 02, 2023 @10:52AM (#34219208)
The first sentence is a valid reason:

> Because the browser nowadays is an "operating system" that needs to be capable of handling all manner of dynamic software: maps, video, image editors, games, etc.

If frontends didn't use the "OS" capabilities of the browser, how would one build a multi-user real-time text editing app like Google Docs?

Edit (and off topic): Writing this comment gave me flashbacks of using Mapquest online for driving directions before smartphones. You had to print the directions out and bring them to your car on a piece of paper. It worked though!

Re:Ask HN: Why did Frontend development explode in complexity? by TheDudeMan on Monday January 02, 2023 @09:58AM (#34218532)
But developing a windows program is simpler.
Re:Ask HN: Why did Frontend development explode in complexity? by TrackerFF on Monday January 02, 2023 @12:05PM (#34220321)
A couple of months ago I had to develop a whole CRUD GUI in, wait for it...Excel, using VBA.

It was very much like designing desktop programs some 20 years ago using WinForms, which was actually a piece of cake using the designer tools that came with Visual Studio etc.

It's shameful that creating programs in Excel is such a smooth ride compared to even the most trivial web app. But of course, the web app must be compatible with a billion of other things, compared to Excel and VBA.