Learning While Building
MVPs, Prototypes, and the Importance of Physical Gesture
The “build, measure, learn” loop and the importance of iterating on “working software” brought to us by the eXtreme Programming (XP) and Agile Software Development movements is now an essential part of 21st century software development. The ability to iterate, learn, and pivot becomes even more valuable in fast moving industries like digital audio. We can increase our pace of learning and iteration by not only embracing these techniques from XP and Agile by bringing the learning process earlier before you begin to write “working software.”
Will people even want what I’m building? A discussion of Lean Software Development will illuminate ways a Minimal Viable Product (MVP) can be built to get external feedback from the market while writing little—or hopefully no—code. After covering general examples of MVPs, we will look at some fantasy audio plug-in MVP examples as well discuss how MVPs were used to test some currently shipping audio plug-ins.
There is also internal learnings to be gained about the thing we are building: enter the world of prototyping. We will discuss the differences between MVPs and prototypes, how to use both for learning, and about different types of software and non-software prototyping. After a tour of example prototypes, we will look at some prototyping tools useful for digital audio: starting from one of the oldest tools on the block Max (or now Max4Live) to some of the latest community built tools for prototyping machine learning within the DAW.
This tour of user research, MVPs, and prototyping will show many ways to learn along your software development process, but at the end of our journey we will see that there are learnings about an idea that can only be obtained by combining physical gesture with audio feedback.
Roth Michaels
Principal Software Engineer
Native Instruments
Roth Michaels is a Principal Software Engineer at Native Instruments, an industry leader in real-time audio software for music production and broadcast/film post-production. In his current role he is involved with software architecture and bringing together three merged engineering organizations and legacy codebases: Brainworx, iZotope, and Native Instruments. He also supports the Audio Research team to help accelerate moving research to productization and developing fast prototyping tools for product teams. Before merging with Native Instruments, when he joined iZotope, Roth was the lead library designer of a new internal cross-platform "Glass", part of which is now available as open-source. More recently in his former role as Mix/Master Software Architect, Roth helped develop the reference implementation to move iZotope's products to subscription and led the team that launched the company’s first SaaS offering for music producers. Roth studied music composition at Brandeis University and continued his studies in the Dartmouth Digital Musics program. Roth began his career in software development writing software for his own compositions, and the works of other composers and artists, and teaching MaxMSP to composers and musicians; both private instruction and designing university courses. Before joining iZotope, he was working as a consultant for small startups working on mobile applications specializing in location services and Bluetooth.