Besides my social publishing (Blogging), I have also written and published professionally. These works were all completed under paid contracts with the publisher.
In 2017 I published Hands-On Android UI Development, ISBN Number 9781788475051 which covers everything from designing to implementing great Android user interfaces and applications. The book builds a solid foundation for developers by introducing them to good design practices and theory, while also demonstrating the practical "how to write the code" aspects of Android UI.
In 2011 I published Android User Interface Development: A Beginners Guide, ISBN Number 9781849514484. The book has introduced a wide range of readers to the core widgets and techniques used to develop Android apps.
Back in 2009 I wrote an article for Developer.com that described a Java technique for using annotations to generate ServiceLoader files automatically, helping cut down on service discovery bugs and simplify code.
I started learning to program somewhere between the ages of 9 and 11 depending on who you ask in my family, and I've just never really stopped. Software is something I live and breath every day, I wake up thinking about code, and I go to sleep thinking about architecture. This might sound unhealthy, but I have a few other hobbies and my family to occupy me as well.
I love not just exploring and writing software but also the dynamics within software teams and the art of programming itself. Questions like "how can you define good design?", and "what makes some code more understandable than other code?" are regular visitors in my mind, and I spend plenty of my time thinking about these sorts of subjects. I also love thinking about what makes individual people write code that some people love to read, and others can't seem to understand at all.
Programming is something that we've only been doing for a relatively short amount of time as a society, but in many very real ways it's output underpins our everyday lives wherever we care to look. What goes on to get that in place is often as interesting as the effects it has on peoples lives, and I'm passionate about exploring both as it helps define what makes for "good software".