Dr Andrew Herbert OBE retired in 2011, after a long and eventful career in IT. He has been a lecturer and researcher, an entrepreneur, a manager of SMEs, and finally Director and then Chairman of Microsoft Research EMEA. Innovation is one of the many threads which runs through his career.
Andrew Herbert was born in 1954, his father was an avionics engineer and that along with early education experiences provided Andrew with the inspiration for his future career in computer science.
Andrew first interaction with computers came at the end of his fifth year after completing his O levels. He says: “I encountered my maths master, a Mr Stokes who it turned out had come into teaching after starting his career as a programmer for Elliott Brothers, who were quite strongly in minicomputers in the Sixties. It was the time of one of the General Elections, and he was writing curious runes on squared paper, which he explained was something called FORTRAN; he was doing analysis of the voting results and that intrigued me.”
Mr Stokes ended up running a computer club which Andrew joined. He says: “It was the classic model where we wrote our programs out on squared paper, we sent them in an envelope to the local technical college, and a week later you got back a paper tape and a teleprinter listing of your errors, or if you were lucky, your results, so you very quickly learnt to write correct code.” Andrew, who wasn’t particularly interested in sports, persuaded his teachers to allow him to use games afternoons to take the coding sheets up to the college and run the programs. He adds: “The place had two machines, an Elliott 903 which they were kind of pensioning off, and a brand new sparkly ICL 1901A. Between them they had FORTRAN, ALGOL, COBOL and assemblers. On Wednesday afternoons I had the run of the computer suite, access to all the manuals, and I just completely dived into the hardware and the software and tinkered with everything. The 903 was essentially a bare bones machine, whereas the 1A had a tiny operating system really just a batch executive, but that opened my eyes to the fact that a computer that could organise itself. I think the thing which fascinated me all the way through was that you could just make this box do anything.”
He explains that one of the first things he did was to write a program that worked out volumetric analysis of chemical reagents for his A-level chemistry classes and produced a standard lab report.
During his fifth and sixth year at school, Andrew’s father got him a summer job at Elliott’s where he was involved in writing flight control software among other things. He says: “I got to realise then, computers could not only model the world and simulate it, they can control it.”
Andrew went to Leeds University to study Computer Science where the head of department, Professor Mike Wells, and one of the lecturers, Dr Dave Holdsworth, spotted Andrew’s enthusiasm and talent and encouraged it. In 1975, after completing his degree, Andrew went to Cambridge to do his PhD; which he says: “kind of defined the rest of my career”.
Having been interviewed by Maurice Wilkes and Roger Needham, Andrew started his research project on the Cambridge CAP computer under their supervision along with David Wheeler. He says the three were completely different personalities.
Maurice was by then head of the department and not deeply involved in matters technical. Andrew says of Maurice: “Wilkes was a very good manager of the department. Very good at keeping people focused on doing challenging projects. A really good leader. Wilkes’s skill was conceiving of really excellent, timely projects and putting together a team who were better than him to deliver them.”
Andrew describes Wheeler as very enigmatic. He says of him: “He was very quiet. He would pick problems that interested him. He had designed the hardware for CAP, so we would occasionally have to go back to him if there were issues with the machine, to find out how things worked. He had a double-sided sheet of A4 summary which was his description of the machine that he gave you. It was a mixture of schematics some of the more interesting circuits; some timing waveforms so that you could understand the order in which things happen; a list of internal registers and various ad hoc notes.”
Andrew says of Roger: “He was leading the CAP project, so we were much, much, closer, working together on the design of the operating system, and trying out ideas. Roger and I focused a lot on virtual memory, paging algorithms and so forth – eventually coming to the realisation that you’re be better off having a bigger store. It solves all the problems! Moreover by the end of the CAP project the advent of 16K and 64K memory chips made building a large store quite economic – at the end of its life Cap had grown from a slow 192K core store to a 256K fast seminconductor store.” Roger became head of the department in 1978 and Andrew acted as “his sidekick” along with Andy Hopper. Andrew says: “Andy kind of was the hardware guy, and I was kind of the software guy; we were Roger’s two protégés.”
Academia and Consulting
Upon completing his PhD, Andrew stayed on at Cambridge and became an assistant lecturer on a fixed term, three-year appointment. He says: “You’re encouraged to continue your research, but you pick up some teaching duties. … By then we had started work on building the Cambridge Distributed System, which was kind of a mainframe built out of lots of machines attached to a Cambridge Ring; we thought of it as a shared computing service. These days we would call it cloud computing.”
After several years as an assistant lecturer, Andrew began to spend some of his time as a consultant to industry to meet the financial needs of a growing family. He did not really enjoy this very much as it took away time from his research. But this was during a period when Cambridge shifted its focus slightly to more engagement with the wider community, At this time, the Computer Lab benefitted from equipment donated by Xerox PARC where Roger had been on sabbatical and Digital where Maurice had retired to. Andrew says: “We got to work with scientists and engineers in those companies and got a lot more visibility of what was happening in the US. That very much stopped Cambridge looking inwards and looking much more externally. So, it was fun to be there, all this technology to play with, to be working with people in those companies and the industry labs exploring really leading-edge ideas at that time.” In addition gave Andrew industry experience and links that would be useful later in his career.
Andrew says that salvation from being a part-time consultant came with the announcement of theAlvey Programme; a Government funded project in the mid-Eighties to compete with the Japanese who claimed they were doing a fifth generation. Roger and his wife Karen and others had been on a panel that had conceived of the programme where one of the proposals was for demonstrators to showcase the individual results. One large demonstrator was supposed to pull together all the various pieces of technology into an Alvey workstation and Andrew was invited to start defining this. Andrew says: “I fairly quickly said, actually, building a computer is not the right thing, learning from the Cambridge experience. What you want to do is, network devices together and design for a very heterogeneous world, and think about connectivity, then you could have very specialist boxes, and use different tools for different jobs, and integrate it all together.” The Alvey directors were excited by this and Andrew was appointed as chief architect for what became the Advanced Network Systems Architecture (ANSA) Project. The directors wanted a shared laboratory which would be co-funded with industry, so a company was set up and Andrew, plus a project director started to build a team. The company was called “Architecture Projects management” or APM for short. Andrew says: “An arrangement was made where APM itself had rights to the IP that could generate it, as well as the industry partners, provided we didn’t use it in competition with the partners. That gave us the ability to spin up new business.”
The ANSA project lasted eleven years and evolved into a “big Esprit (EU) project” that
generated spinoff projects as the partners wanted to take the technology into different application areas. Andrew says: “One of the most successful was end-to-end security. Working with Hewlett-Packard and Swiss Bank we did a big business-to-business system by which HP and its business customers manage printer repairs and the billing etc using smartcards, online credit card transactions, browser interfaces, and getting all the security of that right. That was quite fun.”
In 1996, Andrew and a group of his engineers, decided to spin out a company called Digitivity alongside the consulting business to ensure that there was always income while the new spin out developed. Andrew says: “With the help of Scott Metcalf, who was American and became CEO, and Chris Phoenix of ICL who joined as general manager, we raised funding to build Internet start-up that built a browser security product one of our engineers Dave Otway had invented. I took the role of CTO. We did all the engineering in Cambridge; we put our headquarters in Silicon Valley, so that we looked American. … It was definitely a gamble. I remember conversations with my first wife, because by then we had three children, I’m going to throw the dice again, it’s all uncertainty, but the last time I threw them was taking the Alvey thing on, and that doubled my income, and bought us a new house. So let’s see where this one takes us!”
After three years, Andrew and Scott sold Digitivity to Citrix who wanted their expertise and the Internet knowledge. Andrew stayed on to be Director of Advanced Technology. Andrew says: “A big part of the job was going around telling all the barons who owned the various bits of the Citrix empire, what they had to do to join the Internet age, and some were enthusiastic about that, and others less so.”
Microsoft Research Cambridge
After Digitivity and Citrix, Andrew went to work for Microsoft Research, recruited by Roger Needham who had left Cambridge University in 1996 to create the first overseas Microsoft research lab in Cambridge.
Andrew says he joined Microsoft at a fascinating time due to the issues they were having from their “home computer mindset of just write the software and get it out there”. Andrew explains: “There had been the whole antitrust thing; the whole Internet security thing, and viruses, and blue screens, were causing the company real difficulties, because serious players had built up big dependences on Microsoft technologies. This is where research was really able to help. Out of the Cambridge lab we gave Microsoft a functional programming language, F#, which is state of the art in programming techniques. We did a huge amount of work on software verification. We built a device driver verification toolkit, so rather than device drivers rather than being approved by somebody in Microsoft looking at them with a rubber stamp, they actually had to go through a whole software-based verification system. Suddenly blue screens went away and in the operating systems world, there’s cloud computing; much of what we’ve been doing in operating systems, kernel development and networking in research, that was leapt on. All the 3D graphics that went ultimately into Xbox and the games systems, that all came out of Research. Cambridge led the Xbox Kinect technology. The company was receptive to picking up research ideas when they could see it solving business problems for them.”
Of his time at Microsoft Research, Andrew says: “One of the things I’m most proud of setting up in the Cambridge lab computational science group, looking at how computing has been changing science as we’ve got into modern computing and machine learning and simulation and what you can do with databases and so forth. That’s been very exciting and it’s certainly had benefits for Microsoft as they’ve grown a healthcare business. I also started a user interface group who were very focused on the way gadgets and social media were changing society.”
In the last few years of his job, as well as looking after research, Andrew worked with Craig Mundie, who was the Microsoft chief technological officer, and working together, they created the technology strategy and policy for the company. Andrew says: “I was looking after the EMEA end of that, it involved lots of talking to governments and other companies and things and I found that absolutely fascinating.”
Andrew retired in 2011 to “play with aeroplanes” among other projects he has since taken on.
National Museum of Computing
Upon retirement, Andrew was instantly contacted by Andy Hopper (by then head of the Cambridge Computer Lab) and asked to get involved with building a reconstruction of EDSAC and putting it in the National Museum of Computing. Andrew explains: “I thought, that sounds like fun, so, I, working through the Computer Conservation Society, and generally networking, built a team to work on EDSAC. Through my network of wealthy Cambridge alumni and Silicon Valley, we have raised the quarter of a million pounds that we needed to buy all the bits and bobs and we might have a machine working some point this year. It’s getting quite close now.”
Andrew also became a trustee and chairman of National Museum of Computing. He says: “It’s a lovely museum with a lot of interesting artefacts, including the world’s oldest computer, the WITCH, which still works and dates back to ’51. We’ll have EDSAC. We’ve got the Colossus reconstruction. In the last year the Turing Bombe reconstruction has come into our museum and so now we’ve got all the wartime code-breaking machines. We’ve got an ICL 2966 and we go through to the modern age, with Raspberry Pi’s and smartphones.”
Andrew thinks that the future of technology is very bright, with valuable work in AI, machine learning, robotics, big data analysis and healthcare. In his own area of expertise, he identifies the need to find the answer to the challenge of how to make big cloud computing data centres run efficiently and effectively. He adds: “computer architectures, we need to look at different kinds of processors, particularly that handle some of the AI applications where graphics processors are better at it than central processors. How we deal with the challenge that Moore’s law has reached its limit, we can’t just cram more transistors on a chip. I think someone once described it it as too many transistors and not enough ideas. We have now used up all the transistors, and so new ideas have to flow.”
He continues: “The, the other thing which I find very compelling is, with those computing resources, we can now simulate things that let us do experimental science on the computer faster than we can do it in the laboratory, let alone in the real world, and that lets us, in some sense, do impossible science. This was a theme that came out of the computational science work I started in Microsoft.”
Inspiring the Next Generation
Andrew thinks that the hardest thing about motivating young people into a career in computing is helping them to recognise what happens behind the scenes of the technology they use. He says: “They just don’t see all the stuff going behind the screen. It’s kind of disappeared. I think an important part of, and it’s what we’re trying to do with our education programme in the museum, and what other people are doing through things like the British Computer Society’s Computing at School programme, is, expose the kids to what’s going on behind the gadgets they’re used to, and the opportunities to be part of the excitement of creating new technology.”
Threats and Security
Andrew says there are many threats, however, the key thing is to acknowledge that “we can’t go back”, he continues: “therefore part of the responsibility is to give the best tools we can to those who will defend our interests.”
He goes on to reflect on the need for greater understanding of ethics in technological advances, citing the issues with AI and bias data. “The AI community is starting to pick up on the fact that they need to develop ethics, and people are talking about that. In understanding those ethics, they’ve got to think about issues like bias. A lot of big data is coming unstuck because the datasets are biased. For example, many exclude people of colour or females and so face recognition for white males is there and done; for other people it’s not so good. We’ve got to fix biases in the data, that’s an ethical issue. When you come to robotics, and autonomous cars, you’ve got to look at the ethics there, but I think you have to ask the right question. Everyone currently comes up with the scenario where you have two choices, you can swerve left and kill a toddler, or serve right and kill a grandma. What’s the right thing to do? I think what you have to look at is, if we can make autonomous car systems work, and reduce the total number of accidents down from 5,000 a year to 1,000 a year, then, it’s unfortunate if you wipe out the toddler or a granny, but if by going to autonomous cars you reduce the number of deaths overall, that’s an improvement.”
Andrew says that one of his regrets is that a programming language he developed for writing distributed applications which was object-oriented never made the light of day. He adds: “If we had a following wind, it could have been Java. I think with a lot of these things, the timing and where you stand are as important as the idea and success. We were early and we weren’t standing in the right place, but I’d love to have seen that be more successful; there’s a frustration in that. It was a lovely little language we designed, but it never got to change the world.”