Hacker News new | past | comments | ask | show | jobs | submit login
Boreout (wikipedia.org)
39 points by razerbeans on Feb 20, 2010 | hide | past | favorite | 13 comments

I realized a while ago that the reason why I love programming even after doing it for 13 years professionally is that I never have to do the same thing twice. Automate, automate, automate. The most trivial HR application when approached with good software design methodology is an opportunity to learn, to refine one's abstraction methodology, and to automate things away that don't just bore you, but bore other people. In fact, the most trivial HR application can be way more fun to work on than the far more superficially-glamorous game programming.

(Though I wouldn't dream of arguing that the end result of the HR system is more fun.)

Later on I've started to notice that those who never develop their skills this far tend to boreout of the career earlier. I hypothesize that at about the ten year mark, programmers fall reasonably cleanly into one of three categories: 1. approaching the job the way I do 2. boredout of the career or 3. immune to boredom, the traditional old fogey who doesn't keep up and only knows COBOL (or whatever fills the niche for when the programmer started), and the ones who give us #1s a bad name. I plan on keeping my eye out for this in the future. (That is, when I say "I hypothesize" I mean it's a new hypothesis I mean to test, but do not have any immediate counterexamples.)

It's hard to automate e.g. fixing bugs in an ancient C codebase. And some things, such as various elements in a build tree that need to stay in sync, such that when you modify one bit you have to modify other bits, cannot be easily automated because of the brittleness such automation can introduce. Instead of simply making sure that files are in the right place and following (human) scripts annotated directly in the source code, you end up down in a maze of twisty auto-generating scripts, all not quite alike, trying to figure out what wrote what, where when and why, and route all the right configuration elements from one place to the next, adding complexity and coupling, etc.

So yes, ostensibly everything can be automated, but many things are boring and repetitive yet resist automation, while for others, introducing automation is either too much work to be worth it in the first place, or just introduces more code you need to maintain.

In that situation, you have two choices: Aggressively refactor until it is actually manageable, which I find fun as long as it's not the only thing I'm doing all the time, or find a new job. I am serious about both choices and am not surreptitiously claiming one or the other is the only choice.

Re C codebases: time spent fixing bugs and refactoring is time not spent putting in new features and selling new releases. It's a trade-off, and perfectly manageable code is at one end, unfortunately. Re builds: such things as I described aren't really refactorable without introducing the coupling / brittleness thing I talked about, as linkages need to be maintained between source-code level constructs in a handful of different languages.

But these kinds of jobs can have their upsides...

It's said that an engineer is defined as someone who will spend 11 hours making a tool to solve in 1 hour a one-off problem that would have taken 10 hours to solve manually.

(Of course, when the manual solution proves error-prone or the "one-off" problem "unexpectedly" arises a second time, we all know who gets the last laugh...)

I write HR applications, strangely, for a living. I did this kind of work once with a tight-knit, small, lean team back in 2001-2004. That, I will say, was an intense and awesome experience. We solved some amazing problems: workforce planning, inventory management, salary deductions, even adoption and foster care program management.

Fast forward to where I am today, writing HR applications on a much larger scale, and the funny thing is we're solving the same problems we 'solved' years ago, just in a different, more enterprisey (read: slow, buggy) way. Its both sad, and amusing to watch from a distance.

That said, even the most boring of application will give you a rush when you hit a breakthrough. I once got excited over finishing a brute force solution to a problem in college. Sure, it was inefficient, but I wrote it, and it worked.

I've read the book "The Living Dead", mentioned at the bottom, that makes a similar convincing case that there are plenty of people doing basically nothing within most large organisations.

When you look at the positional externalities imposed by various products, the case can be made that there are plenty of organisations that are doing basically nothing within most societies.

Trying to wrap my head around that one - though I think you made a good point. Do you mean like super-luxury goods, haut couture, things like that?

I personally think that there are plenty of people, and organizations, that are doing less than nothing by sabotaging the work of others. Nathan Myhrvold's latest venture qualifies, as do many game playing executives killing internal innovation that threatens their area.

"Boreout is a management theory that posits that lack of work, boredom, and consequent lack of satisfaction are a common malaise affecting individuals working in modern organizations, especially in office-based white collar jobs. This theory was first expounded in 2008..." (emphasis mine)

2008? We've had a generation of movies, books, etc. in which this idea is one of the main themes at the very least. Office Space, anyone? Fight Club, even?

"The authors disagree with the common perceptions that a demotivated employee is lazy"

I was wondering about this the other day - does lazy have a real meaning? I thought through some options and came to the conclusion that it's a nondescription used to close off any further enquiry and also used as an insult.

It doesn't explain anything, it's a proper phlogiston answer.

Not doing something could be lack of motivation (that doesn't matter), lack of interest (I don't want to paraglide), other priorities (I would but can't right now), lack of skill (I want to but can't), fear of various things (if I start I will only draw attention to this, what will people think, what if I fail), but lazy? A nonsense word which I should stop using.

To me, it's a generational thing. Boomers see an underling maintaining their e-bay account on company time as theft. For my generation, 10 minutes of web browsing every hour is just our way of coping with being strapped to a chair all day.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact