Merging modern software development with electrons and metal
Random header image... Refresh for more!

Software Development Trends

Here is my quick overview of modern software development trends. It’s somewhat quirky, but software development is a big area, all the way from programming $0.50 PIC micros in toaster ovens to massive web services and supercomputers.

Where do I pick up these trends? From trade magazines (after applying my hype discount factor), web blogs, discussions with other programmers, and what works for me.

  • Version Control and Bug Tracking that work. These are essential for good development, but I suspect that most automation developers, at least at small companies, still do not use them.
  • Design Patterns – a good way of talking about software architecture.
  • Unit testing and Test Driven Development – somewhat hard to apply to automation software, but definitely making waves right now in desktop and web development.
  • Refactoring – restructuring and improving existing software, instead of doing a ground-up re-write.
  • Agile Development – iterative, customer focused development instead of BDUF (Big Design Up Front).
  • Dynamic languages – allow rapid development, better re-use of existing components, run time customizations.
  • Mixed language development – use appropriate tool for the job. A desktop example is Adobe Lightroom, written in Lua and C. I do a lot of this (especially when including IEC 61131 as a language)
  • Web technologies – interesting stuff, but I think factory software developers should not get caught up in the hype.
  • Open Source – some very good products to add to your toolkit.

I plan on discussing many of these techniques in the future, using concrete examples of the tools I use and like. For example, I will use Subversion when discussing version control.

Comments 4/5/2011: still good stuff, but unfortunately I haven’t followed up (limited by lack of time and my fun excursions into PCB and MCAD land).  I need to write more about these topics.

Tony

0 comments

There are no comments yet...

Kick things off by filling out the form below.

Leave a Comment