Are Programmers at a Crossroad? (As appeared in AVNetwork on May 2, 2017)

In April, Crestron Electronics welcomed nearly 800 certified programmers to the U.S. edition of its Masters conference, which comprised of three days of training, collaboration, and socializing.
I, along with several of my team members, attended the events to sharpen my skills, network with peers, and learn how to better serve our clients current and future needs. After the event, my team and I began to piece together the trends that we see as the future of control system programming.
One of the big moves being made by Crestron, as well as other manufacturers in the control space, is to provide more solutions that do not require programming in the true sense of the word. These solutions, which are typically out-of-the-box or configured via software and do not rely on writing any code, are addressing clients’ needs for completing projects faster and more cost effectively. The .AV Framework approach and reinvented Crestron Studio application are clear indicators that there is a trend to satisfy more customers and projects with solutions that dispel the perceived complexity, time requirement, and difficulty of implementation.
Over the years, the industry has made several attempts to simplify the effort of control system programming by offering fixed system designs, programming templates, or “wizard” style processes. These options started to surface in response to dissatisfied clients who were overspending on functionality, features, or customization that didn’t quite meet their operational needs. Today, the features and functionality of these “no-programing-required” solutions are advancing and creating a growing presence in the control space.
This shift is mainly being driven by the idea that the reduced cost of “no-programming-required” systems will allow technology to be more prevalent in rooms that did not previously have a control solution. As part of this, the industry is attracted to the simplicity that configured solutions offer, with less hardware to control and fewer buttons to push. Such systems can be installed as is, without additional customization that entails actual programming.
On the flip side, Crestron continues to boost the value and importance of programming in their new language SIMPL# and SIMPL#Pro which is based on C#. As much as the configuration approach simplifies the solution, minimizes the complexities, and removes the need for a programmer, the availability of SIMPL# and SIMPL#Pro takes Crestron programming to the next level.
The ability to write code in an object-oriented fashion and access readily available libraries in a true software development and programming environment unleashes a realm of possibilities for clients seeking customized solutions. With customized solutions, clients are offered features that can enhance workflow, ease of communication, and business productivity by involving more integration possibilities than ever before.
With all of these advancements and investments made in .AV Framework, Crestron Studio, and SIMPL#/SIMPL#Pro, there are clear signs that the future of control solutions will be divided at opposite ends of the spectrum: the “no-programming-required” or configurable approach, and the highly advanced and powerful software development approach of SIMPL# and SIMPL#Pro. If that direction plays out, where does it leave the typical Crestron programmers who have hung their hats on programming systems for many years in SIMPL Windows, and are proficient with the SIMPL language, but may be facing a significant learning curve in getting up to speed with SIMPL#/SIMPL#Pro?
The quick answer is that programmers will need to pick a side. They will either invest in learning SIMPL#/SIMPL#Pro and advance their knowledge and capabilities, or they will be left behind as the “no-programming-required” solutions likely erode projects served by SIMPL Windows programmed solutions. This change will likely not happen overnight. But, neither will learning SIMPL#/SIMPL#Pro, if you are not a seasoned software developer with experience in object-oriented programming.
What next? The best way to learn SIMPL# is to start with C#. There are plenty of books, courses, videos, and online resources available to help learn C#. Additionally, there are individuals and companies already using SIMPL# that could a place for hiring expertise or pursuing employment.
Whichever path is chosen, the time is now to start thinking about the future of control system programming and what direction programmers want to pursue to secure their future.