top | item 14320992

Unnecessarily Complicating Front-End Development To Feel Like A Smarter Person

36 points| jugularkill | 9 years ago |medium.com | reply

17 comments

order
[+] vikingcaffiene|9 years ago|reply
Sorry but the tone of this article rubs me a bit wrong.

Clearly the author didn't spend enough time in the bad old days maintaining massive piles of CSS and JQuery vomit to appreciate why modern approaches are the way they are. If an app approaches any degree of non trivial complexity on the front end, a framework like react or angular can really pay off. On the other hand, if we are just talking about a little vanity site or something that isn't going to need to be maintianed long term, by all means go old school. Just don't tell me that it's better in all cases because I've got the scars.

[+] cityofdelusion|9 years ago|reply
My experience and my scars are very similar. I remember the old days of maintaining piles of random JS and CSS -- it is not fun and it doesn't scale beyond blog-size without very good planning. I work for a huge national bank and I despise having to work on our older code. Sure, React/Angular/Redux have a learning curve -- but my company is able to deliver features at large scale significantly faster (and with full test coverage!). I cannot overstate how much better developer quality of life has gotten.

I'd challenge people opposed to more complex frameworks to consider the challenge of delivering code at scale in the old-school style (say, Java EE with JSPs with shared components across multiple million-line applications, with 50% legacy code > 20 years old).

These newer frameworks were created for a reason. I had some doubts at first, but I've seen huge productivity gains.

I also don't care to hear complaints about "HTML in my JS". You only need to code a large application one time with a nest of document.createElement calls to see the rationale.

[+] GoToRO|9 years ago|reply
I agree. With a little discipline, namespacing and a good project organization you can be very productive using only jQuery. No framework to learn, no need to update your app to the latest incompatible version (angular), you do not need to wait 6 months until you can hire a new developer.

The only thing that I would use is a CSS framework.

[+] fvdessen|9 years ago|reply
I am sorry, but modern frameworks such as Vue or React make you an order of magnitude more productive. And instead of waiting 6 months for a dev, I would consider training new ones.
[+] tbcktu|9 years ago|reply
With a little discipline, namespacing, and good project organization you don't need a CSS framework either.
[+] dlwdlw|9 years ago|reply
Hype driven development appears in many disciplines. Javascript is exacerbated due to its lower barrier to entry (htmls/css hardly require cs degrees) but also how young everyone is, due to being mostly new developers.

There is some truth in this article. Younger people are more concerned with looking cool or smart. Due to the tone though, I suspect the author conpletely misses the point of many js frameworks.

An analogy i've been thinking about is tools to cross distance. From walking to cycling to driving to flying. No one will argue that a plane is just a fancy form of flying, with years of schooling and experience being unnecessary. However hardcore runners may look down on cyclists as they can have similar speeds yet maintain the flexibility of 2 feet for climbing, jumping, etc...

In this analogy, rather than distance as attrition(you can technically walk from sf to la for example), it's state complexity. I don't think complexity has grown to plane vs walking levels yet, and it's possible to consume your tools benefit by taking the long way b/c you can move faster (adding unnecesary complexity to use the complexity management tools). I think it's still important to understand and separate the original purpose of tools and their potential, and separate it from how it's actually used (often naively).

The article in the end is trying to create a schism and stratify developers rather than create understanding. That's something I highly disagree eith.

[+] mattnewton|9 years ago|reply
Yup. Whole industry is wrong. No need for better tooling. Web development is easy /s

Making things more complicated by cargo cutting patterns isn't unique to the front end (looking at you, AbstractFactoryBuilderInjector dot Java). It is however different from using those patterns to reduce complexity or otherwise aide in the development of big systems.

[+] anotheryou|9 years ago|reply
Regarding CSS:

- I still need prefixes for old funky phones

- I like or actually need SCSS (try changing the action color across a huge project without it or try overriding some CSS framework defaults).

[+] sasaf5|9 years ago|reply
RIP mobile data wasted on meme-GIFs
[+] wlfmn|9 years ago|reply
None of the gifs hit 1kb. This is actually a pretty lightweight page. < 1mb loaded.