Hacker News new | ask | show | jobs
by Cthulhu_ 1494 days ago
> make time to be curious.

This is kinda dangerous advice, because I've been involved in countless CRUD apps where the developers were bored and made things more interesting for themselves; NoSQL databases, difficult programming languages like Scala, microservices, CQRS, infrastructure-as-code that was never used in practice (it was wishful-thinking-as-code), home-rolled frameworks (one involved the CTO / lead developer to basically work from home and stay underwater for six months before coming out with a C# framework; it was just e-commerce that used a 3rd party to do all the heavy lifting), etc.

Heed the magpie developer. Choose boring technology. Eat the shit sandwich or move on if you think CRUD is beneath you.

5 comments

I wonder if a plain old CRUD app in a fill-in-the-blanks framework really is the best kind of job for a developer. I'd like to try it at least once in my career and see if there is any truth to it.

It would also be nice to have a job solving interesting computer science problems, like building compilers, tools, optimisation systems, etc. But that's unlikely unless you're actually a genius, or at least an accomplished academic, but some of the things you have to do to get ahead in academia seem even more demeaning than writing CRUD apps.

Instead every single job in my career has been the mess that you describe, and I'm starting to lose hope that there is anything other than it in this industry. I think it's the absolute worst of both worlds. You're solving completely trivial problems, but you're forced to do it in the most convoluted way possible. You sit all day racking your brain under maximum cognitive load trying to accomplish something so trivial and mundane that every single fill-in-the-blanks framework already does for you out of the box.

I had a sudden realization that this is currently the biggest problem in "tech" after reading this hacker news comment - https://news.ycombinator.com/item?id=25968087

Somehow we have an industry of people who believe that work needs to be a source of personal entertainment instead of, you know, work.

Expectations need to change. Imagine if other occupations were like this? You hire a plumber to fix a clog and they spend the entire day on fastening some custom device because they felt that using a drain snake was just too boring.

It's probably more obvious how it affects the bottom line to those who make and do things in the physical realm. For example, I recently had a new septic system put in. The contractor decided to be clever, and ended up having to redo everything, taking up several people and machines for three more days. That probably cost them more than their profit margin on that whole job, and they're not going to forget about it any time soon.

Compare to product owners and engineering managers who either have no clue how bad it is, or have been conditioned to believe that it is completely normal or even desirable.

>Somehow we have an industry of people who believe that work needs to be a source of personal entertainment instead of, you know, work.

More importantly it should be a source of money for living without either burning yourself out or causing the poor sods who have to clean up after you to burn out. The current state of affairs is hurting both employees and employers. Just telling the employees off doesn't change anything or help anyone.

100% agree and can relate. Part of our "estate" is exactly that type of a project - all that was required was a CRUD app, what we got and have to maintain is an app written in functional style written with 3 layered frameworks using Hexagonal Architecture. In answer to the question "Why?", the response was - "We were bored."
This is reasonable advice but it carries the assumption that "simplest is easiest". It is in hindsight. People sometimes say "It's easy to make a complicated solution for a simple problem, but not the other way around," and it's painfully true, as Rube Goldberg noticed. But of course that means we actually have a real challenge if we get our priorities straight.

There are still tedious/repetitive things that come up, though, and if the repetition is bad enough, then there are opportunities to do something clever... But again: Can it be done simply enough to make it worthwhile? Another challenge.

And sometimes you just gotta do the dirty work dirty, and hang in there. Admittedly that is part of any job done well, in the long run.

TBH, I'm fine with people who want to flex refusing to work on CRUD apps. CRUD apps are my favorite. They pay well, rarely demand overtime, and never have me on call after hours. They're great for developers who just want to do a job, get paid, and have a life that doesn't revolve around tech.