Interaction design programs are an extremely crucial component in modern software, game and web development. At one time, such tools did not exist, and designing digital interfacing was a very different thing. Once, all computers responded only to textual commands, such as DOS or something even less sophisticated before that. UX was a different climate based around this, with usability gaged by how well menus of commands presented themselves, and how easy it was to memorize the types of commands. When graphical interfaces (GUI) became popular in the early 90s, the need for such graphical design programs became instantly apparent, as developing GUI software abstractly from the code is a tedious process. A side effect of this convention being adopted was the sudden accessibility of programming to average people, a trend that directly contributed to the immense digital boom we are riding currently in history. So, what makes a good design program? It highly depends on what you’re designing. So, with that in mind, why don’t we just point out a few of the best interaction design programs of different scope and purpose, and let you conclude what you feel makes a good program for this industry. (Please note that the order of these listings is by complexity, not by ascending or descending quality.) #1 – Balsamiq Balsamiq is a mock-up application for designing layouts, prototypes and flow charts of graphical interfaces. Being largely independent of system or library, the generalized control representations serve to obfuscate these issues when code implementation is done. This program is freemium, with a light version being available for nearly anything with a microchip as a SaaS app for Chrome and Safari. The limits with this program are that it isn’t meant for direct implementation of a GUI in a development project. It is meant as an artist’s tool to design interaction conceptually, ergo it does nothing to make the GUI implementation directly simpler. Still, even if it can’t stand on its own on a project, it’s very useful, even if you have another design tool lined up for implementation phases. #2 – Adobe Edge This visual programming tool is designed around HTML5 and AJAX, which have brought native flow logic programming directly into web markup in recent times. This is a program meant to make directly-rich interactions for web fronts remarkably easy and powerful, with interfaces and programming handled in a visual way it never was before. This program is one of the ones to really watch as SaaS becomes a larger field of deployment in times to come. Programs meant for interface design and programming for these new web interfaces is going to get very demanding, requiring programs like Edge to become immensely powerful. It’s free for the moment, but will likely become a regular Adobe licensed product once its public offering test is completed. #3 – Microsoft Visual Studio We’ve mentioned this one in a past list, but it’s going to be on lists like this somewhere, and for good reason. Visual Studio is an integrated development environment (IDE) for Windows application development. It supports four main languages, C++, C# and Visual Basic.net and ASP.net. It also has slightly lesser functionality support for a form of Java, the Flash clone known as Silverlight, and a math script called F#. As for C++, C# and Visual Basic.net, this is an all in one package that handles most of program development from one central location. An intuitive, standard-defining drag and drop GUI editor mixes with click-navigated event-based programming to address the controls with very visual centrism. Library components, custom controls and various other products can also be developed through the same tools with a different project setting. With compiling and testing being a click of a button, this is one of the best ways to get programming done, if you’re interested only in Windows. #4 – Netbeans Netbeans is a visual designer for Java development, meaning it’s also compatible with Java API systems like Android. This is a Java-based environment with a .net-like point and click GUI designer and a single program build centrism. For those looking to develop in Java, this makes the language far more accessible and practical to use. Netbeans is entirely free, which means that support may be dodgy from time to time, as it is a non-profit project. #5 – Titanium Titanium is a mobile centric IDE and interface editor intended for a wide range of ARM processors, which are commonly used in mobile phones. This system has been used to develop native mobile apps for countless high-end companies such as EBay, Paypal and Lego. With a C-based language and an intuitive interface for rapid application (RAD) development, this program is helping the mobile revolution be all it can. Titanium gets expensive when used for enterprise endeavors, and has kind of shaky help services for learning the software. These are only five of the interaction design programs available right now. You may notice, many also include programming as part of the same functionality. This is actually very helpful. Ask a programmer if you ever get a chance.