There's so much creativity one can put into programming. Especially when programming for oneself and not for Super Evil MegaCorp (not the actual game dev company [0]!). Sometimes it feels to me like art, for example when creating games.
My older brother, at some point in his live, he thought programming sucked as well. But then he stopped doing programming professionally and now just as a hobby and it became fun for him once again.
I will read the article later today :)
---
"The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of imagination ... yet the program construct, unlike the poet’s words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself"
That's one of the reasons why I still love programming (after programming professionally for almost 25 years): http://henrikwarne.com/2012/06/02/why-i-love-coding/
* costs and time, difficult to maintain
* difficult to hire developers, difficult to learn
* no diversity in industry
* users have no influence on product
Well, yes. Software is a labour intensive task. But given the number of jobs digitization has destroyed and the immense gains it provides, I don't think it so bad. Despite the authors criticism it's still an improvement.
I find his argument hard to follow, the author wants to solve 'the problem', but I don't quite get it. The all purpose machine was a good idea, having an evolving eco system, competition, forks, etc. is a good thing.
* Incompetent management
* Lack of communication
* Rush to market, rather than integrity of solution
* No solid requirements
The unfortunate irony here is that the startup mentality promotes the above problems because it's generally not trying to solve a problem, but make money.Sad really.
Many reports show how time-to-market is more and more important, and 'agile' is the only way.
Even companies well-versed in proper engineering practices move towards the modern 'best practices' and acquire all of the best problems at the same time.
No agile development, just a horrible, horrible mess.