September 28, 2009

The Future of Computer Software Development

What does the future of software development hold? Even over the last few years I can think back to how much more difficult the day to day tasks of software development were. Writing a Java GUI application was painful, using source control was difficult, testing code was error prone. All of these things and many more tasks seemed to take up a lot of my time.

To be honest not all of these things have gotten easier. But many great tools and methodologies have come along that make many of the tasks we perform each day much easier. They allow me to spend less time on the mundane tasks so that I can focus on what I enjoy: developing software. I find that more and more of my day can be spent on system architecture, software design, and actual coding.

Some of the specifics that I think of are: Visual Studio and Subversion. Visual Studio can be a pain to learn to use well. There is a steep learning curve, but I find myself somewhat dependent on the tools and help that it gives me. I know some people will think that this is a bad thing, but overall I find that it makes me more productive. Subversion makes my day so much easier. Most of the other source control systems I have used are not very smart, and not very easy to use.

At the heart of things I still know that software development is not easy. Regardless of the tools at hand, more powerful languages, any anything else that has come along, it still takes skilled engineers with solid development practices and procedures to write good software. But will this change in the future? Will some new tool or language some along that is so revolutionary that software development will be easy? I don't believe so.

Some tasks might continue to get easier, but in the end you will always need experienced and educated software developers to do the work.

1 comment:

William Echlin said...

The easier it gets to develop and test software applications the easier it will be for other people to learn the trade and start competing for work. So I'm wondering if the industry will go the same way as the legal profession where you need more and more qualifications and accreditations before you get access to certain jobs.

In some ways I would like the professions of programming and software testing to remain difficult. That way my career is slightly safer. Yet the fact that I didn't really need any qualifications myself to get started in this industry is one reason I like it so much. With such low barriers to entry the only things that really matter in order for you to do well in the industry are dedication and skill.