I have a habit of getting interested in everything, so one way to explain my interests is with a quick bio…
Many years ago, I graduated in Engineering from UQ, and went on to work on the core development team for what was the SingleView customer care system. (The company I worked for has been bought many times and is now part of CSGi).
Most of what I was doing was very solid software engineering, in C, Delphi, and Java. But I started to become interested in interaction design because thought the way enterprise software is customised by client teams is unnecessarily cumbersome, and I was interested in using End User Programming techniques to improve this.
(Later, I would realise that modern software development is an incredibly elaborate Computer Supported Cooperative Work environment – an almost ideal playground for a technically-minded HCI researcher.)
I worked on the Intelligent Book project – a joint project with MIT to develop intelligent teaching systems, where students could work cooperatively with AI, primarily interacting with diagrams, in a socially-constructed textbook.
I had a great deal of fun on this project. A lot of the research was on making AI “reasonable” – finding ways to translate between the user’s mental model and the machine’s mental model (usually using the diagram as context). But I also developed a drag-and-drop language for mathematics, ways of modeling complex questions with very simple AI, and a better way to ask short answer questions on the web. And on the technical side, this was modern web development (with async communication to the server) before it was commonplace.
I also did rather a lot of student theatre, which probably helped my teaching.
After I finished my PhD, I worked for the university for a little over a year, on small development projects and also finding out what’s involved in taking new technology from research into production. We didn’t entirely succeed – it was technology seeking a customer, and not even in a start-up context as it was internal to the university. But it was a formative voyage of discovery, as I had the chance to discover how entrepreneurialism is supposed to happen (even if I wasn’t actually doing a start-up!)
Initially I was working on multi-modal conversation analysis and visualisation – if we took a video, could we throw every kind of simple analysis we can think of at it (topic-mapping, relevance-mapping, pause patterns and turn-taking from audio, movement from video, etc), and “see” what happened in the conversation before we watch the video back? This was framed as an educational technology project, looking at how to improve communication skills training for doctors, but was mostly creating tools for data analysis, processing and visualisation.
Collaborative studio teaching (NICTA & UQ)
In 2011, Jörn Guy Süß and I were asked to teach UQ’s software engineering studio and project management units, after the unexpected death of David Carrington. We were given leeway to make some changes to the software engineering unit, and turned it into a “supercollaborative” studio – each group of students developed a different feature of the same product, so that not only were the students collaborating in groups, the groups were collaborating with each other on a common project. This proved successful, as it let us make the development process in the course more closely match real-world software development, with continuous integration, test-driven development, distributed version control, etc. In 2013, Jim Steel and I turned this into Design Computing Studio 2, with better critique processes and elements of continuous design in the course.
In 2014, we had 200 students working concurrently on the same project – which we believe is a record. (In 2015, the student numbers went up again, but the class was split across three projects.)
In 2015, I moved to the University of New England, which was hiring a new small “computational science” team, but also wanted to redesign its computer science degrees.
For me, this meant a continuing (rather than fixed term) academic position, the chance to help design a degree, and the opportunity to design a distributed studio course. Eighty per cent of UNE’s students study by distance education, but we still want them to have the experience of studio teaching and collaborative development.
We ran a trial of this in 2015, and it is becomming COSC220 Software Engineering Studio from 2016.