This Wednesday our group had the distinct pleasure of visiting IBM Hursley, IBM’s research and development lab that resides in the leafy-green pastures of Hursley village, Hampshire. Our day started at approximately 1pm and after navigating our way through the scenic complex we finally arrived at our destination in G Block, the Galileo Centre.
After being checked in at reception we got to meet John McNamara who we had briefly conversed with a few days earlier on Google Hangouts. He showed us around the Galileo Centre and introduced us to the very wise and friendly, quintessential computer scientist, Steve Upton.
Steve gave us a brief but insightful introduction into the high-level view of the software architecture topology known as microservices. This software architecture relies on breaking a larger project up into smaller, self-contained apps. This allows the programmer to fold the inevitability of human error into their design and make occasional adjustments to certain apps that have failed. The example that Steve gave was that if Netflix has a self-contained login page that fails, it wouldn’t directly impact another person watching Breaking Bad. This faulty login page could then be updated when it is fixed and put back into the live system without the other ‘boxes’ needing to be updated as well. This type of architecture also has benefits in regards to teamwork as it allows for different members to work on different aspects of the project independently yet cohesively as an unit. Steve mentioned that Netflix has a specific piece of software called the “Chaos Monkey” that deliberately breaks different ‘boxes’ in order to test the ability of an entire system to handle error.
This software design could potentially be very useful in our project considering that if one aspect of our probe fails (eg. twitter feed), we would like to be able to adapt as nimbly as possible so as to keep the remaining systems functioning. The intermediary of these different microservices that was recommended by Steve was MQTT messaging (implemented through Bluemix) which uses the efficient publish/subscribe data management system (although I will not get into too much technical detail in this blog post).
After the microservices explanation, Steve brought us up to the IoT room and gave us a live demonstration of the Bluemix software using the Node-RED platform, showing us the ease and versatility with which we can implement the microservices architecture on our own project. Around the IoT room there were also temperature sensitive lights and a rotating floor which should be able to ‘sense’ our probe’s temperature and spacial conditions respectively when it is in flight.
Finally we ventured past the company cricket field and over to the clubhouse where we had a relaxing pint of Guinness with John. We discussed some more of the project logistics including the acquisition of Helium as well as the transportation of the probe to the launch site in Cambridge. We left Hursley at approximately 4pm and set off into the green meadows to unbox our kit and start building the “Space Sentinel” probe.