Skip to main content

Pi Perspectives: Dr Jeremy Bennett (Embecosm)

Dr Jeremy Bennett is Chief Executive of Embecosm, a provider of embedded development tools and services, and is former Champion for Embedded Systems at the Technology Strategy Board's ESP Knowledge Transfer Network. In this interview Dr Bennett reflects on his own experiences of teaching computer science, suggests challenges the industry faces, and considers how the Raspberry Pi may go on to foster a whole new generation of engineers.

Can you give us an insight into how you gained your introduction to computing

My Physics teacher, Mr Barker, when I was 11 years old in 1971. Imperial College offered local schools the opportunity to submit programs on punched cards to run on their IBM 7094. I started on FORTRAN, but over the next few years had a chance to dabble with many other languages (Algol60 and SNOBOL4 are two I particularly remember). We used "port-a-punch" cards - pre-scored Hollerith cards, where you knocked out holes with a stylus. Each card took several minutes to prepare, so it did instil a discipline of care when programming.

How do you think the opportunities for young people now differ from when you were growing up?

I was very lucky to have access to a computer at such a young age, and a school teacher who knew a huge amount about computing. Today young people are surrounded by computers, and tools like Scratch make learning programming much more attractive. However, the shortage of skilled teachers remains a serious problem. You still have to be very fortunate to encounter a school teacher with even basic knowledge of computing.

How important are skills in areas such as microelectronics and computer science to the economy?

These fields are very important as we try to re-balance our economy. They are high value, and fields in which we excel.

It is often not appreciated that the UK is not just good at microelectronics and computing, in some very important fields it is the world leader. Take the back off a smartphone, and you will see a processor from ARM (Cambridge), graphics from Imagination Technology (Kings Langley), high speed comms from Icera (Bristol), Bluetooth from CSR (Cambridge). Without British engineering, the modern smartphone would not exist.

Do you think the UK has seen an overall decline in the aforementioned skills over the last 20 or so years?

If you look at the companies I listed above, they are led by engineers in their 40's and 50's - the BBC Micro generation. During the 1980's, the coolest thing to be doing was computing. We had the right timing of an emerging industry, a long British track-record of innovation in this field (Colossus, Manchester Mark 1, EDSAC), the BBC with a powerful engineering department, and a very ambitious politician (Kenneth Baker) with the ear of the Cabinet as the world's first minister for IT.

We dropped the ball in the 1990's, and we have a generation, for whom computing means modern secretarial skills. You can see the symptoms in all sorts of places. For example, the British Computer Society started awarding CEng - a qualification for those who design computers. Now, although you can still get a CEng, they want to sell you a CITP – a qualification for those who use computers.

Can you tell us about your own experiences of teaching computing science

I taught in the School of Mathematical Sciences at Bath University, where students entered with a broad common first year and only later specialised as mathematicians, statisticians or computer scientists.

Even then (1986-1995), it was becoming clear that schools lacked the ability to teach students about computing. Our official line was that we didn't care if you studied CS at 'A' level. We were much more interested that you got good results in traditional subjects like maths and physics.

We found there were two classes of student on intake. Those who had taught themselves computing. They had always been way ahead of their school teachers, and thus thought they had nothing to learn. The other group were those who had not used computers to any extent at school. It was impossible to teach such a group using mainstream programming languages. The know-it-alls didn't bother to pay attention to any lectures, whilst the beginners despaired at the apparent superiority of the know-it-alls and gave up.

The inspired solution my colleagues came up with was to teach a first programming language no student would have seen before, and which was unlike anything they had seen before. We started teaching ML – a functional language, ideal for getting across concepts of algorithms. The result was the know-it-alls realised they didn't know it all, and the beginners were able to study on a level playing field. When we then introduced C in the second term, everyone was much more willing to pay attention. I know that quite a few other universities have since taken the same approach.

That was quite a few years ago. I did a short spell since then in one of our new Universities (an ex technical college), which illustrates a serious problem in our higher education system with computing. I was teaching a second year course on UML to students on a four year software engineering course. One third of the class would have done well at any University. One third of the class were struggling valiantly and just about learning some basic ideas. And the bottom third, despite a year of intensive teaching on Java still did not understand the difference between a class and an instance of a class.

The reality is that the bottom third were on the wrong course (and paying a great deal for it). They should have been on a more practical technical college course, not studying for a degree. They should have been failed at the end of the first year, but of course the University cannot afford to lose that many fee-paying students. The result is a glut of unemployable computing graduates. You can see that in the statistics, where a degree in computing offers the highest life term earnings gain, as well as the highest rate of graduate unemployment. If you are good and go to a good department you will do very well. If you are poor and go to a bad department you will end up unemployed.

One of the other things that worries me is the narrowness of many syllabuses. This same new university still teaches a four year software engineering course, where you have to study only one language (Java) and no assembly language. That does not equip graduates with the breadth of skills on which to build. This is a problem at the bottom end of our education system. When I look at the top end - universities like Cambridge, Bristol, Manchester, Edinburgh and quite a few others - I see international excellence of the highest order. These departments have a completely different problem - persuading well qualified candidates to apply for courses.

What challenges does the industry face in terms of skills and resources?

There is a desperate lack of graduates coming through who have skills necessary for "physical computing". The ability to get close to the hardware. All too many degree courses are only about programming applications on a PC with 4GB of RAM. Yet more and more of our computing is embedded.

Quite a few British Universities offer Masters degrees in this area, yet it is noticeable that they are dominated by overseas candidates. Good for our national trade balance, but not for our engineering. Combined with the ridiculous rules on immigration from the current government we have a perfect storm ready to undermine our strong global position. We can't fill vacancies in engineering teams from the UK, and we can't bring people in to fill those gaps.

These are the high-value innovative teams. Not groups you want to outsource to other countries to save money. Yet we are doing our best to make it impossible to run such teams in the UK.

What opportunity do you think the Raspberry Pi presents us with?

The industry has been shouting for some years about the lack of graduates in electronics/embedded computing. At last the pressure from organizations like the BCS and Royal Society, and companies like Google has caused government to sit up and take notice.

So I think Raspberry Pi captures the spirit of the times. It has some very motivated engineers driving it. It builds on something that was already just starting with products like Arduino and mbed. It is a chance to create the new generation that will continue 70+ years of British excellence in this field.

What can the engineering and academic communities do to help ensure that the Raspberry Pi is a success in education?

The overwhelming risk is in our schools — they very often have no one with even a basic understanding of computers, and they have no incentive to invest in Raspberry Pi, or indeed any serious computer science.

That is only going to change through activism. It means getting on to your local school board of governors (local authorities welcome volunteers who are not parents to be governors). It means lobbying your MP and County/Borough Councillors to make sure they understand why this matters. It means working through political parties, to ensure candidates for elections understand this matters.

There is no shortage of volunteers to offer technical support to schools. When I trained as a STEM (Science, Technology, Engineering, Maths) ambassador, half the trainees were from computer engineering, yet our skills are never called upon. Schools have regarded IT as a cheap way of boosting GCSE results. Indeed it is not actually a STEM subject (it is derived from the old secretarial skills courses). My hope is that the change of rules from the Education Secretary will start to rebalance this.

What role does open source have to play in supporting the Raspberry Pi and the goals of the Foundation?

As the educationalist, Miles Berry, has pointed out, open source is ideal for schools. The whole idea of being able to take something apart to see what it does and modify it, is central to how education works.

Will you be buying a Raspberry Pi, and if so what do you plan to do with it?

With two children in secondary school, who are already familiar with mbed, the only question will be how many to buy. I doubt very much I will have an opportunity to get my hands on them though.

Thank you for your time, Jeremy!

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.
DesignSpark Electrical Logolinkedin