Senior Lecturer, Computer Science, The University of Wolverhampton
My research interests lie in concurrency, parallelism and the Internet of Things. I teach software engineering and high performance computing, particularly focusing on best practices, such as test-driven development.
While working as a Research Assistant at Coventry University, I developed a simulator for applications of wireless sensor networks, which was used extensively by my research group. Developing this highly concurrent simulator led to an interest in communicating sequential processes and message-passing forms of concurrency and parallelism in general.
My current work is focussed on bringing message-passing concurrency to the so-called "dynamic" programming languages. Dynamic programming languages, such as Python and Ruby, are widely used in science and are widely thought of as productive and easy to learn. Many dynamic languages have not been implemented with concurrency in mind, and building safe, high-performance concurrency and parallelism into these languages is still an open challenge.
At present, mutlticore platforms are becoming cheaper, and low-power embedded systems such as phones and tablets are becoming more widespread. It remains to be seen whether dynamic languages can find a home in this evolving ecosystem. I currently hold an ERAS Fellowship which is funding my work into dynamic language implementations on new, low-power manycore platforms, such as the Adapteva Parallella and the GreenArrays GA144.
My goal as an SSI Fellow is to bring scientists together with professional software developers from the Free Software community to share skills and best practices. In particular I will be organising a track for scientists at the 2015 edition of PyConUK.
You can also follow me on Twitter.