About

The blog #

Software Pendula is a notebook on software architecture and, more and more, on AI. Mostly I write about things I have had to think through properly, either as part of my work or sometimes just out of interest. I find writing down my thoughts helps me clarify and internalise them. Coming back to what I’ve written years later also serves to remind me how wrong I can be sometimes despite having been so confident at the time. It’s a valuable life lesson. 😄

The name comes from an old observation: trends in software development swing from one extreme to the other and then settle somewhere in between, like a pendulum. Static and dynamic languages are one example, and XML configuration and annotations another. My first post has the full, slightly corny explanation, along with how embarrassingly optimistic I was about how often I would post.

Projects #

  • ai-soccer is a small physics-based soccer game for teams controlled by code, which I use as a test bed for learning algorithms. Part 1 describes the game and part 2 covers what happened when the players had to learn it themselves, and what that cost.
  • This site started out on Google’s Blogger following a (rare) New Year’s resolution in 2013. Since 2021 it has been a static site built with Hugo and served from AWS, mostly as a way to learn more about the tech. The source is on GitHub.

Published papers #

During my time as a postgraduate student I published two papers that started my interest in using AI techniques to solve planning and scheduling problems, a topic that seems to have taken a back seat to deep learning in recent times.

  • Parkinson E & Warren PR (1995) A comparison of graph colouring techniques. South African Computer Journal, Number 14, 1995
  • Parkinson, E. & Warren, P.R. (1996) Examination timetabling. Industry Meets Academia: Proceedings of the 1996 National Research and Development Conference, The South African Institute of Computer Scientists and Information Technologists, Interaction Conference Centre, University of Natal, Durban, 26 & 27 September, hosted by The Department of Computer Science and Information Systems, University of Natal, Pietermaritzburg, edited by Vevek Ram, (ISBN 0-620-20568-7)

The author #

My name is Elroy Parkinson. I live in Johannesburg, South Africa, and I am a solutions architect with more than two decades in software. I love finding elegant, simple, cost-effective technical solutions to tough business problems. I am particularly interested in cloud architecture, Kubernetes, and how AI is changing the way software gets built.

I have a Masters Degree in Computer Science from the University of Port Elizabeth (now Nelson Mandela University) and an MBA from Charles Sturt University in Australia.

Elsewhere on the web:

Thanks for reading!