Why Is Front-End Development So Unstable?
51–60 of 366 posts
Re: Why Is Front-End Development So Unstable?
#52Earlier quoted context omitted.
jQuery is great for small snippets of code, but encourages a quick and dirty style that collapses for larger applications. Most jQuery applications couple their business logic to the mechanics of working with the DOM. It was also intended to smooth over browser inconsistencies and gaps in APIs. This is less relevant these days now that browsers are more mature.
> jQuery is great for small snippets of code, but encourages a quick and dirty style that collapses for larger applications. I keep hearing (well, reading on HN) criticisms of this sort about jQuery and they are absolutely not supported by the years of experience I have using jQuery for front-ends that have in many cases been quite complex. I use it because it greatly simplifies DOM manipulation and event handling. (…
Re: Why Is Front-End Development So Unstable?
#53https://www.reddit.com/r/programming/comments/8n00k2/why_is_...
I think this is the same as the HN user 'jerf', but am not certain.
Re: Why Is Front-End Development So Unstable?
#54This is a really well-written and well-thought out piece. The author touches on a number of points but never gets polemical. This piece resonated with me particularly well: > Be wary of self-promotion > Over the last few years I’ve seen much more aggressive self-marketing in the JavaScript world, possibly due to the rise of paid online training materials and the employment/consulting advantage of being a Github ‘cele…
For example: https://github.com/pypa/pipenv/issues/2228
Re: Why Is Front-End Development So Unstable?
#55"Unstable", "Issue", "Problem". The opposite of the front-end world is not something to desire. Change means people are fixing problems and giving away their solutions for free. To desire less change means wishing fewer people gave away their work.
Re: Why Is Front-End Development So Unstable?
#56Think of a typical web app. Your data exists:
1. As rows in a database, accessed via SQL
2. As model objects on the server, accessed via method calls and attributes
3. As JSON, accessed via many HTTP endpoints with a limited set of verbs (GET/PUT/POST/DELETE)
4. As Javascript objects, accessed via (a different set of) method calls and attributes
5. As HTML tags, accessed via the DOM API
6. As pixels, styled by CSS.
--
Each time you translate from one layer to the next, there's a nasty impedance mismatch. This, in turn, attracts "magic": ORMs (DBObject); Angular Resources (RESTJS Object); templating engines (JS ObjectDOM); etc. Each of these translation layers shares two characteristics:
(A) It is "magic": It abuses the semantics of one layer (eg DB model objects) in an attempt to interface with another (eg SQL).
(B) It's a terribly leaky abstraction.
This means that (a) every translation layer is prone to unintuitive failures, and (b) every advanced user of it needs to know enough to build one themselves. So when the impedance mismatch bites you on the ass, some fraction of users are going to flip the table, swear they could do better, and write their own. Which, of course, can't solve the underlying mismatch, and therefore won't be satisfactory...and so the cycle continues.
Of these nasty transitions, 4/5 are associated with the front end, so the front end gets the rap.
(I gave a lightning talk at PyCon two weeks ago, about exactly this - stacking this up against the "Zen of Python" and talking about some of the ways we avoid this in Anvil: https://anvil.works/blog/pycon18-making-the-web-more-pythoni...)
Re: Why Is Front-End Development So Unstable?
#57It's because of all the icky data-sync for the client/service round trips. An async, slow, failure-prone concern wired throughout the entire codebase. I/O hurts everyone in subtly different ways and it's hard to solve so you see a lot of churn. service/database has this problem too (the ORM flamewars of the 00s) but to a much less degree because it is in a happier place on the latency chart: https://gist.github.com/j…
With browser there were several constraints :
ES5 is extremely error prone and scales very poorly to larger codebases
slow JS VMs
missingt for sane layout like flexbox
1. Got better with npm, we pack, es6 transpilers, typescript/flow and tooling built along the way
2./3. Got solved by finally depricating everything I'd say angular is relatively stable now and decently productive once you get a hang of their patterns, I've been using it for different frontend projects since early betas, written ionic apps for mobile with it - have very few complaints about the framework, some of the stuff didn't always work along the way (like ahead of time compilation, i18n) but recently (5+) I've had 0 issues with the framework and I'm quite productive with it. I think the alternatives will mature as well and things will settle.
Re: Why Is Front-End Development So Unstable?
#58It's because of all the icky data-sync for the client/service round trips. An async, slow, failure-prone concern wired throughout the entire codebase. I/O hurts everyone in subtly different ways and it's hard to solve so you see a lot of churn. service/database has this problem too (the ORM flamewars of the 00s) but to a much less degree because it is in a happier place on the latency chart: https://gist.github.com/j…
Re: Why Is Front-End Development So Unstable?
#59FWIW, the GitHub age isn't entirely accurate because both React and Vue had major rewrites and the current default branch doesn't hold the entire development history. Vue's first public release was Feb of 2014 and React is just celebrating its 5th birthday.
Re: Why Is Front-End Development So Unstable?
#60This is a really well-written and well-thought out piece. The author touches on a number of points but never gets polemical. This piece resonated with me particularly well: > Be wary of self-promotion > Over the last few years I’ve seen much more aggressive self-marketing in the JavaScript world, possibly due to the rise of paid online training materials and the employment/consulting advantage of being a Github ‘cele…
I'm finding the growing celebrity culture of programming to be troubling. I find that programming is becoming less and less about code or architecture and more about evangelism and marketing, but I'm not sure what changed in the incentive structure for this to happen, and I would like to find out. Aside: This has made me reconsider being a career programmer.