Programming is Hard
jacobeiting.com
jacobeiting.com
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.
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.
Or medical decices. Or transportation systems. Or weapons systems.
I suppose you're more likely know whether you botched it sooner...
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.