6 ms·
The JS & frontend world is _seriously fun_ right now. If you blew it all off as a quagmire of complexity, sketchy engineering, treadmill of tools, etc... it's
by qbasic_forever 6y ago
The JS & frontend world is _seriously fun_ right now. If you blew it all off as a quagmire of complexity, sketchy engineering, treadmill of tools, etc... it's time to re-evaluate everything. I have more fun and feel more productive working on modern frontend stuff with tools like esbuild than any other GUI programming I've done in 30 years.
- Scramblejams 6y agoYep, I tried front-end way back and hated it. Can you mention some other tech that should be covered in my re-evaluation?
- teryyy 6y agoTailwindCSS, Svelte, and Snowpack are probably worth a shot, all pretty much bleeding edge
- 1_player 6y agoThe problem with front end development is that it's all bleeding edge and nothing that's stable and is improved for more than one hype cycle. Suggesting more bleeding edge tech is not a good argument to demonstrate that front end development got better. In my experience, it changed, it improved on many aspects, but it's still a pile of unstable crap running on the power of hype and over-enthusiastic junior engineers.
- qbasic_forever 6y agoI get your frustration (and shared it a year ago), but you're really doing something like react a disservice by dismissing it like that as just hype. On the contrary react has evolved significantly over the years, introducing things like JSX (templating HTML + JS in the same file, now standard in every other component system), build tooling like create-react-app (zero config tooling, now standard in every JS build tool), functional component model with hooks (now copied by every other component library), and on the horizon stuff like server-side components. It has only gotten more stable, more proven, and easier to use over time.
- 1_player 6y agoI am not dismissing it. I appreciate what React is doing, and it is indeed revolutionary. My point is that there has been a lot of evolution and improvement, but developer sanity is one of the few things that have just gone worse. It is dishonest to look only at the bright side of modern frontend coding and forgetting the node_modules nightmare, the incredibly obtuse language, the slow compilation times, the myriad of CSS frameworks that are invented because CSS is an absolute pain in the arse for modern design, etc., the fact that every JS tool either is core to the whole circus and is maintained by a stressed out, underpaid person in the middle of nowhere, or has a minimum of 5k Github issues and a major version released every 3 months, and every time you get a problem you're told "haven't you tried the new alpha release of the big rewrite we've just started?". It is absolute madness, not just frustrating. But yeah, React is cool.
- protoduction 6y agoI'm really biased as I am building it myself: Starboard Notebook puts literate programming into the browser without a lot of magic. It's amazing what browsers can do these days without any build step! [0]: https://starboard.gg https://starboard.gg
- qbasic_forever 6y agoReact & next.js are worth evaluating. It's a super powerful full stack with everything from server side rendered data (REST APIs even) all the way to complete client-side SPAs, all using the same react components. It's a slick little swiss-army knife that can make anything from a basic blog with markdown content, to a static marketing page, to a full client-first PWA experience. There is sadly almost nothing else really like it right now. MDX is another neat step, it's markdown + react components and fits in very well with next.js: https://github.com/hashicorp/next-mdx-remote https://github.com/hashicorp/next-mdx-remote Vue, and Svelte to just get an idea of what other components systems are like. They're all equally capable and just have different tradeoffs and styles. Keep an eye on Svelte in particular as its next.js-like system (SvelteKit) is working on a major revamp to be serverless-first and is quite interesting. Once you learn one component system it's easy to switch between them all--they're all cribbing and building on top of each other's ideas. The whole space is innovating in a great way. Web components are good to learn and compare to component frameworks above. It's still a changing space but points to a nice future where we can all just publish and share components.
- pandemic_region 6y agoYet none of the stuff you mention here will live beyond the next two years. Fun is as much as i would describe the js ecosystem, for more boring corporate use banking on these is the equivalent of getting a trojan horse in the application portfolio.
- EMM_386 6y agoI agree. I was a web developer in the 90s when stuff was primitive, ugly and difficult. I switched to desktop .Net development in 2001 did that for almost 15 years. Since then I have been back on the web. I am full-stack so I find myself switching between front-end and back-end frequently. I am enjoying my time more in the world of TypeScript, VS Code, and Angular than I am writing the back-end REST APIs in .Net Core and Visual Studio. I was dreading going back to web development when I switched back again but recently it has turned out to be nicely structured, performant, logical and enjoyable.
- christophilus 6y agoMy career sounds much like yours, and my conclusions are the same. Typescript is a decent language. The tooling is excellent. The old footguns are mostly behind us. It’s definitely a completely new ballgame vs the old hackery I used to have to endure.
- taspeotis 6y agoIf you have the resources available to you (e.g. your employer is willing to pay) Rider is an excellent alternative to Visual Studio. It should make backend dev more enjoyable.
- lame88 6y agoEvery time I am unfortunate enough to do something front-end it's just as bad as I remember. Edit: professionally, that is; when I do front-end related stuff for myself, it's fine, but they are small and I keep things simple - vanilla JS where needed, etc.
- wishinghand 6y agoWhat do you remember? These days I’m no longer concerned about `this` pointing to the wrong object. Importing files is a huge step forward from when I started. The standard library has grown; a bunch of Lodash isn’t needed anymore because of it. Promises and async/await. Even just template strings! So glad I don’t have to concatenate with pluses and watching my double or single quotes.
- matt7340 6y agoI definitely agree with this in general, but there are exceptions where it’s still a quagmire. Angular, for example.
- swyx 6y agototally! i have been developing a thesis around this I call the "Third Age" of JavaScript - TLDR: the arc of history is toward ES Modules, and polyglot tooling, like esbuild. Creating much faster dev tools and user experiences. http://swyx.io/js-third-age http://swyx.io/js-third-age
- stefan_ 6y agoDrag&drop building UI in Visual Whatever was plenty productive, hell they even had what the kids today call server rendering, and if it didn't look right I could always press F5 and see the result right there.