KUAS’ Dr. Ian Piumarta began programming at the age of 10 on a Texas Instruments programmable calculator, and his passion for computers has driven him to live in three continents as the advancements in computer technology have shaped almost every detail of our modern life. He has also been interested in how we interact with computers, and one of his greatest research goals is to fundamentally simplify this interaction.
He has previously been working on scaling down source code, proving that it is possible to render complex operations in just a few lines of code. Using this knowledge as a base, he is looking to make our programming languages “intelligent”, coming up with more elegant ways to model and express solutions to problems, making programs less complex, easier to reason about, and ultimately more reliable. Specifically, this field is called meta-programming, which allows a programming system to have knowledge of itself or to modify its own characteristics. Any system that can observe and analyze its own behavior, and can adapt itself to changing conditions, has the potential to improve performance or reduce resource requirements. Take communication in the Internet of Things (IoT), for instance, which uses protocols that can be complex to implement and yet easy to describe with the help of the right models and ways to express behavior that themselves can evolve easily in parallel with our understanding of the problem.
Using this, Dr. Piumarta wants to take on the “programming crisis” – he believes that it is still way too hard to make a program do what you want it too, and he wants to bring this flexibility into the mainstream. If he were able to achieve this, one could say that his decades of research would have come full-circle. Furthermore, he sees further applications, specifically through applying such software parameters to the hardware side. With more and more devices becoming “smart” as part of the Internet of Things, this could have profound implications. One potential application would thus be self-modifying hardware, which is able to configure itself based on what external factors require. Starting with his calculator that had mere 2 kilobytes of ram, Dr. Piumarta has taken his passion into a fascinating career, and we are excited to see how he will look to revolutionize programming from here on out.