I remembered this rather nice article about the evolution of the Lua programming language when I mentioned it in a previous post.
It talks quite pleasantly about how Lua got started, how it underwent changes and where it is today. Quite a fascinating read about a language that was born in South America and is today one of the most widely embedded languages inside of video/PC games in the world. Speaking of which, it also makes for a very clear understanding of the difference between an extensible language and an embeddable one.
Worth the read!
The Inmates Are Running The Asylum is a book that all software developers ought to read. It is about design – and don’t think architecture – but think interaction design.
Interaction design is one of the most neglected subjects within the field of software engineering – and yet is the crucial piece that can make or break a consumer software product. Interaction design is a process of researching users, their needs, their likes and dislikes, their work patterns, their business needs, their goals, profiling all of this, to build software that is cognitively friction-free. Without interaction design, software usually feels raw and clunky – with users having to adapt to the way it works. Software should be soft – it should be malleable enough to adapt to its users. Interaction design provides a way to fulfill that requirement.
Alan Cooper does a remarkable job in explaining this – and this book is a great prologue to his somewhat more prescriptive About Face. Check this book out, I’m hoping that if enough software people read it, software will stop being so darn frustrating.