"I was with you until you got to this line. Let's be brutally honest: *the limiting factor for most of today's software projects (i.e. CRUD websites and iPhone apps) is not technology. It's developer competency, experience and self-discipline. I'd go so far to say that *most working software developers don't even understand the fundamentals of the technologies they're using -- it's why you see people replacing their relational databases for key-value stores, then trying to re-invent database join algorithms from scratch in the application layer. Or why every new generation of "engineers" re-discovers asynchronous programming in a new language (then promptly writes a framework in Blub...because Blub is so much better than last year's Blub.)"I have to concur with what fellow HN reader, timr said above (emphasis added) regarding the limiting factor of software projects. Sad but true, history keep repeating itself.
Compare to last time, we face less challenging technical issues as most of these have been solved before. Furthermore, these technical problems are googable anyway. Software development, especially web application development is nothing fancy. Once you settled down on a framework, standard conventions, version control, and bug or issue tracking. Everyday challenges are merely mundane SCRUD (Search, Create, Retrieve, Update, and Delete) implementation according to the business requirements.
So, what are the more challenging tasks these days? People, mostly relates to people issues. Especially trying to get everybody (management, product owners, and developers) to work together towards a concrete direction. Which or whose way and direction? Not sure? Yup, the problem still remains and it's damn tiring you have to focus on this bullcrap issue everyday rather than technical stuff.
I used to call myself Software Engineer but not anymore. What we are doing are not really related to engineering, as in classical engineering at all. These days, it just Application Developer or to be exact, Web Application Developer regardless what other kind of title given to me. But after reading Chris Aitchison's post, might as well start calling myself Software Gardener. or more derogatory name like Code Monkey, or Cowboy Coder.