Live data from Hacker News

Overthinking it and the value of simple solutions (2019)

korecki.me

11–20 of 58 posts

Re: Overthinking it and the value of simple solutions (2019)

#11

I shudder to think about the amount of man hours wasted on a relatively simple website that has been completely over-engineered with the likes of React and/or Angular JS when a simple server side MVC framework and a bit of jQuery could have sufficed. The industry is rife with people that instead of looking at a problem and choosing the appropriate tech to solve the problem. They choose the technology and then try to…

If everyone did do something like server side rendering with a sprinkle of jquery then we'd have this terrible issue of everyone going home at 5. And then the existential dread would start to creep in and that causes a lot more problems.

Re: Overthinking it and the value of simple solutions (2019)

#12

I shudder to think about the amount of man hours wasted on a relatively simple website that has been completely over-engineered with the likes of React and/or Angular JS when a simple server side MVC framework and a bit of jQuery could have sufficed. The industry is rife with people that instead of looking at a problem and choosing the appropriate tech to solve the problem. They choose the technology and then try to…

Partly because we have to upgrade the CV.

Re: Overthinking it and the value of simple solutions (2019)

#13
post #6

Earlier quoted context omitted.

While not disagreeing with your point, it is also worth noting that in some contexts developers are regarded as unemployable if they don't have experience with whatever the latest technology is so it is hardly surprising that people use every opportunity they can to get exposure to the latest tools. 'Modern' hiring practises cause a lot of problems.

I agree. Most of my colleagues think I am quite a decent JavaScript programmer, but because I haven't got much commercial experience with React or Angular it is quite difficult to find a JavaScript role.

You can learn any framework and get good at even while on a project, in just a couple of months. The problem is that there are too many things to learn in terms of tooling and frameworks all the time making you have less time/bandwidth for the actual domain problems which are why you have the said job. Getting good is one thing and becoming an expert is another. Because these frameworks lifetimes you don’t want to become an expert over and over again on things that become obsolete because it takes a lot of energy and the payoff is short term.

Re: Overthinking it and the value of simple solutions (2019)

#15
post #6

I shudder to think about the amount of man hours wasted on a relatively simple website that has been completely over-engineered with the likes of React and/or Angular JS when a simple server side MVC framework and a bit of jQuery could have sufficed. The industry is rife with people that instead of looking at a problem and choosing the appropriate tech to solve the problem. They choose the technology and then try to…

While not disagreeing with your point, it is also worth noting that in some contexts developers are regarded as unemployable if they don't have experience with whatever the latest technology is so it is hardly surprising that people use every opportunity they can to get exposure to the latest tools. 'Modern' hiring practises cause a lot of problems.

It's a self-fulfilling prophecy.

Programmers develop new technology and paradigms to solve problems caused by existing technology and paradigms. As those new technologies are adopted, they are perceived to give an edge. And so, this creates a demand for experience in this new technology.

As time moves on, the impact of the new paradigm or new tech is getting better understood and the initial optimistic bias aligns with reality. Meanwhile, programmers develop new solutions to solve problems caused by... and the cycle repeats.

The problem here is that the problems that are being solved aren't necessarily new. It's just this foundational "how do you build a website or web interface efficiently" problem that underpins everything.

In a way, it's not much different from re-inventing the wheel. There are only so many specific ways of doing that before the entire exercise turns silly.

The bigger issue here is that - unlike tire manufacturing - the subsequent cycles of innovation are too short for a majority part of the workforce to keep up with changes. Why? First, because the complexity of those solutions creates a prohibitive cost for their employers to easily migrate on short notice and keep up with the cycle. Second, because the vast majority of new tech are just small optimizations in the real world with a limited impact on business making migration a risk and not an opportunity.

Hence why, once a tech has been chosen, companies stick with it for the long haul at the expense of individual developer experience keeping up with the innovation cycle.

That's what turns this into a self-fulfilling prophecy. The faster the cycle goes, the more tight the labor market becomes. That's why you'd see those crazy "Must have 15 years of React experience" requirements.

Finally, what we see is developers are being goaded into whimsical HR hiring processes that shake them down. In reality, it's not developers being "unemployable", it's the hiring process that's essentially broken as it is driven by individual business needs that aren't really that sustainable in the long haul.

When businesses lament that they can't find good talent, but at the same time reject the vast majority of candidates because they can't possibly be proficient in the latest cycle of hype technology (unless you're a core contributor to a particular framework or live a monastic life foregoing any and all other aspects that make life worthwhile living, that is), well, that's a form cognitive dissonance I would say.

As a developer, I feel it's important to keep an eye out of how things evolve, but there's little to no point in trying to keep up with the nitty-gritty at all costs without knowing if you're ever going to need it.

Re: Overthinking it and the value of simple solutions (2019)

#17
post #9

Sometimes it requires a lot of thinking to come up with simple solutions. Usually you need to consider a lot of alternative solutions in order to come up with the simplest solution and that takes time and a lot of thinking and a deep understanding of the requirements. When I start a new complex project, in the early stages, there are entire days where I'm just thinking about stuff without writing any code. Then as th…

Same here. Making things simple actually takes quite a lot of practice.

Re: Overthinking it and the value of simple solutions (2019)

#18
post #14

Earlier quoted context omitted.

I guess valid TLS is not boring enough for this website?

I don't really understand why we have decided that static html pages need to have a TLS certificate

Well for one thing it prevents ISPs from injecting ads (or worse) into sites.

Re: Overthinking it and the value of simple solutions (2019)

#20

I shudder to think about the amount of man hours wasted on a relatively simple website that has been completely over-engineered with the likes of React and/or Angular JS when a simple server side MVC framework and a bit of jQuery could have sufficed. The industry is rife with people that instead of looking at a problem and choosing the appropriate tech to solve the problem. They choose the technology and then try to…

IME React leads to simple solutions far more than jQuery spaghetti.
Post reply on HN