Hacker News new | ask | show | jobs
by schtog 6326 days ago
Such a bad article.

Some programming tasks are boring, yes(no shit...).

All? No. Programming can be very challenging, obviously it depends on the task.

If you want a challenge I suggest you pick up computer vision, still 20-30 years down the line a largely unsolved problem. Or create tools to make games programming more productive. Or...the list goes on.

1 comments

He never said "all". In fact, he specifically says: "If you don’t create 'boring' software for a living, then this article doesn’t fully apply."

And it is relevant to concentrate on the boring side of software because, as he also points out: "Only a select few get paid to develop 'sexy' software, whereas most of us are stuck developing the boring stuff." It is not trivial to "pick up computer vision", much less get a job in it.

I'm not sure there is such thing as an inherently boring software project. You can approach it in a boring way, but given free reign, I daresay a programmer could find something interesting in any project.

For instance, document management is not very sexy software, but Zed Shaw's recent talk on rethinking ACLs was extremely interesting. I'd love to be able to apply my current language of choice (Clojure) to document management, or indeed any type of software that is usually considered dull.

The boring part of software development comes when, IMO, you don't automate something, or are forbidden to, due to time constraints.

But perhaps that's because I have yet to encounter a truly boring type of software project :)

And to again quote the article: "Programmers often take refuge in an understandable, but disastrous, inclination towards complexity and ingenuity in their work. Forbidden to design anything larger than a program, they respond by making that program intricate enough to challenge their professional skill."

The article points out that programmers instinctively look for ways to make their jobs more interesting, and that many of these approaches end with solutions that are unusable or unmaintainable. There may well be no interesting and effective way to specify that Arizona and Texas need documents SR008-04X and SR008-04XI.

I don't accept that this is the case. Programming is boring when it involves repetitive tasks that require little mental power to complete. But any any task that is simple and repetitious is also a task that can be automated.

I don't think developers look for a way to make a project "interesting" just for kicks. At least in my experience, there is a genuine desire to improve the process, to automate everything that can be automated, to invent and create something that's much better than the original.

And sure, they might not get it right on the first attempt, but that's why you attempt to fail early. There is this odd notion that code is sacrosanct; that once created, it must never be discarded, that we should never change our initial ideas, no matter how wrong they may be. I'm of the opinion that this is not a good way to solve a problem. If you're heading in the wrong direction, then you turn around. You don't keep driving, hoping for the best, yet this is exactly what most software projects seem to do, and why they ultimately end up in disaster.

The ingenuity of the developers is not necessarily at fault; rather its that they or their managers are afraid to fail early, so they fail when it's too late. We shouldn't shy away from ingenious solutions because of this. The corporate world is too short of ingenuity as it is, and no more so than in the field of software development.

After having worked in the industry for 8 years, I'd have to say that programmers DO try to make a project "interesting". Now this is not just for kicks, its usually for : 1. Not having to learn and use the homegrown piece of sheet solution. 2. To use something that has been used by others elsewhere ie somethings that is already battle proven. 3. To learn something on the job.

The older you grow, the more important number 3 becomes. At least that has been my experience.

"I'm not sure there is such thing as an inherently boring software project."

Have you never heard of SAP?

My name is Nikolai B. Round up a couple of friends and I'll give you $6,000 each to build a competitor to SAP. You have only two constraints:

1. You must build a convincing prototype before you run out of Ramen 2. People must actually like using it.

Go!

It was developed almost 30 years ago. It's based on technologies from 80th. It's don't scale. It's have no community. support. It will cost you a fortune for pre-start, a fortune for make it work, and a fortune for thousand hours of sly consulters and fake trainers. It's for medium business.

For medium-size business its much cheaper to hire some pros who will make analysis of your business processes and build something based on modern technologies. The distributed computing is already mainstream with several OSS codebases.

Of course, if you're Boieng or Citi Group there are no alternatives.

SAP is a brand. It's all about sales, not software, which actually is a terrible mess.

And of course it is an ecosystem, where you must pay for every little step. It is much worse than MS.