Live data from Hacker News

Programming is Hard

jacobeiting.com

1–9 of 9 posts

Re: Programming is Hard

#3
post #2

things that takes days to learn: landing a plane. Really? I expect its harder to land a plane than programming.

Landing an airplane is fairly bounded problem. Its just a matter of getting the wheels on the runway. I probably had 6-8 hours of landing practice before I was allowed to do it on my own.

Re: Programming is Hard

#4
post #2

things that takes days to learn: landing a plane. Really? I expect its harder to land a plane than programming.

I doubt it's harder, but you certainly have much better reasons not to mess up :P. A bug in your code is far less likely to cause bodily harm than a botched landing.

Re: Programming is Hard

#5
post #4
post #2

things that takes days to learn: landing a plane. Really? I expect its harder to land a plane than programming.

I doubt it's harder , but you certainly have much better reasons not to mess up :P. A bug in your code is far less likely to cause bodily harm than a botched landing.

Unless you're programming avionics.

Or medical decices. Or transportation systems. Or weapons systems.

I suppose you're more likely know whether you botched it sooner...

Re: Programming is Hard

#6
Why it is hard isn't that complicated, if you have ever watched someone struggle. Learning to write software is easy. Learning to debug the software you write is hard, and takes some time. Learning to write maintainable software is much harder still.

The problem of course is that the only way you will get the software to work is if you can debug it. This requires learning a new way of thinking which is why it is hard. That takes months often. Then you can go from writing very trivial programs that work to somewhat less trivial programs that work.

The problem beyond this though is that as hard as debugging is, learning to write maintainable code is even harder. It requires learning to think about the way you will be thinking (later) about the way you will be debugging the software. This can only come slowly from experience.

Re: Programming is Hard

#7
post #5
post #4

Earlier quoted context omitted.

I doubt it's harder , but you certainly have much better reasons not to mess up :P. A bug in your code is far less likely to cause bodily harm than a botched landing.

Unless you're programming avionics. Or medical decices. Or transportation systems. Or weapons systems. I suppose you're more likely know whether you botched it sooner...

Very few changes are made to production code directly. Usually there are multiple reviews and tests before merging to main.

Re: Programming is Hard

#8
post #2

things that takes days to learn: landing a plane. Really? I expect its harder to land a plane than programming.

Visual Flying (and landing) a plane is really not that hard. There's quite a bunch of rules and protocols that you have to follow and learn before you can take the yoke, but they're safety rules so that you're not a danger to other flying objects, and well, because when you're airborne you can't simply stop if there's a problem. Driving a car around and flying a plane around are really in the same ballpark in terms of difficulty.

As an aside, people have a fear of landing when actually it's taking off that's more perilous: pull too early and you're just slowing yourself, and pull too late and there's the end of the track, with trees and whatnot. What's more, if anything goes wrong, you will be going down at a moment you're not supposed to (on the track past the point of no return, and after the end, when you don't have enough altitude to recover and by definition no place to land anymore). Compare with landing, where by definition you have room to land (even if it's a tough one) and you have both speed and altitude, since you're in the process of flying, then controlling your descent. It's then just a matter of lining along the track's vertical plane, then approaching the horizontal one not too fast.

Re: Programming is Hard

#9
Programming is a craft, you can always improve it with more experience and hours of practice. I think what makes it interesting is that new languages and environments emerge and programmers have to learn to apply their existing knowledge while continuously unlearning parts of their craft.

I've been programming for almost 30 years now and even within the relatively constrained world of low-level C programming I still learn new skills all the time. I would say, though, that it took me a good 2 or 3 years of regular practice to get to the point where I avoid most common mistakes and develop debugging skills to find the mistakes I still make.