Between reviews and evaluation reports, for Cybenetics, I also need to code the Powenetics app, since it will be released into this month to the market and on top of that, we will show it at Computex, so everything needs to be perfect.
I used to code a lot in Delphi, but as time passed and this language lost its heavy support, I moved to the most popular programming language for desktop use, Microsoft’s C#. I have tried all popular programming languages in the past, and some are not so popular, but I can only master a single one at a time. In the C# case, I started with Windows Forms and jumped to WPF. During the last few years, I heavily used the Model–View–ViewModel (MVVM) architectural pattern, as Wikipedia describes it, which separates the development of the graphical user interface (GUI, aka the view) from the backend logic (the model). The most vital advantage of MVVM is that it allows one team of programmers to focus on the GUI while the other programmers handle the application’s logic. As programmers, we have to pay special attention to the GUI and make it as straightforward as it gets but let’s face it, not all of us have a talent in this, and the separation above allows a team of programmers to handle the roles that best fit their interests and capabilities. Moreover, the user interface can change, especially when the application is released to the market and starts receiving feedback, while there is no need to mess with the app’s logic if it works ok.