Hacker News new | past | comments | ask | show | jobs | submit login

At this time in my life, learning to do front end work at work seems to be more difficult than reading and understanding the LLM paper from OpenAI (or Stephen Wolframe: How LLM works lengthy article). I did some front end work in the first 3 years of my career in server side render with JSP. We added jquery and the likes and it felt little complicated but manageable. Then I become mostly backend eng for the next 14 years. Now I feel like the dumbest folk in the group when it comes to talking UI framework. I know how those stuff works but the process to put them all together is akin to pulling teeth. And then there is a recent discussion at work about going back to SSR with hydration and get rid of react altogether. Hydration, SSR, improving response time by lower round trip calls, geez we did that in the early 2000s. Somehow I can’t help but thinking the way of shit we are in now maybe because of the ZIRP which is ending now. Maybe I can take a deep breath and say “things will be back to normal for fuck sake”

Sorry for the rant :-)




Things aren't normal because JavaScript in the browser is, technically, a very strange starting point for a computer revolution. It is quite different than the Unix REPL approach that preceded it. Much of the craziness is around shoe-horning javascript into the gcc paradigm (webpack) or shoe-horning gcc into javascript (webasm).

The question I'd like to explore, is what if you just author web pages in html, css, and javascript? I feel like web standards are very good, browsers are incredibly powerful, to the point it may be safe to attempt this approach.

Writing pages for modern browsers, with no polyfills, no transpilers, is quite pleasant. Writing JavaScript with arrow functions and destructuring and jquery-esque selector methods, and consistent event apis, is very pleasant. The module system is fine (I'm warming up to it). But how many professional front-end or full-stack folks would even know?


I've messed around a little with this because I like the idea of zero-dependency websites. I think the biggest issue I have is how web components work. I really hate that JavaScript is required. At least with SSR you can have nice, scoped components that don't need JavaScript. I know it's more and more niche but if my project doesn't need JavaScript for functionality and only uses it to enhance some experiences when available, I simply cannot use standard web components without using some other tool to deal with SSR, but at that point why bother with writing standard web components if some framework has some other nice additions?


>hate that JavaScript is required

JS hatred is a huge problem. It has driven huge projects since XHR was invented. Google's GWT was one of the first, targeted at Java devs. jQuery was a bit js hatey, too (early devs didn't know where js stopped and jquery began, including me). And js hatred continues to drive countless projects promising devs 'you don't have to learn js'.

I believe this attitude is utterly foolish. To build a webapp without knowing the foundations of the web is foolish. And much of the misery devs experience is because they weren't willing to do the harder, but wiser, thing and just suck it up, and learn how to program browsers. Literally every dev who's ever believed the line about not needing to know html, css, or js has discovered how utterly false this is.

(TypeScript is actually an exception here since it's a strict superset of JavaScript, so if you are a TS expert you are already a JS expert)


Most of the "developers" working on "front-end" don't really understand these frameworks. These frameworks are "good" because they allow economies of scale. You can push a 6-month bootcamp "dev" into your project and he can start pumping React components almost immediately. The few companies I interacted with that went this way, can't produce any software beyond a nice front-end, a few back-end calls (nextjs functions) and the basic setup that nextjs/netlify boxed them in.


Wolframe's piece was specifically written to be as understandable as possible. No tech documentation were written with this intent in mind, or at least I don't know any.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: