Marian Petre
Emeritus Professor at The Open University
A brain-picker at heart, Marian explored and documented the thinking of expert software developers and problem solvers throughout her career. In the early age of software development, she notes, a diverse background was part of the ‘typical’ computer science pathway.
Marian Petre is an Emeritus Professor at The Open University and a Distinguished Professor at the University of California Irvine. She was born in Illinois in a place she described as a “one-horse town whose horse died”.
Marian’s first real encounter with programming was in high school, when a class was offered that gave her the opportunity to program the only computer available, a PDP-8. She was soon thrown out due to “improper use”, that is, she was using it to generate poetry instead of solving mathematical problems. But she was reinstated, and she subsequently helped develop software used to schedule classes.
Much of her young adult life was spent coming to terms with computers entering society whether she liked it or not, and she realised that either she would have to master them, or they would master her. She worked for a time in a company that created labels for consumer goods, and, in the course of running the inventory software, kept finding bugs and reporting them, which led to her first conversations with developers.
Psycholinguistics
She attended Swarthmore college, which emphasised breadth in the first years, and where she had the opportunity to explore her multifarious interests.
She took a course on psycholinguistics; it was a discipline that hadn’t been fully ironed out at the time. The standards of evidence were only emerging, and professors were encouraging students to think hard and to ask questions. She found the relationship between language and thought incredibly exciting and so decided to make psycholinguistics the focus of her undergraduate degree.
This allowed her to do research as an undergraduate with wonderful teachers and mentors. She was pushed to understand the world in rigorous terms, yet be driven by her own interests. When she dared to challenge something, they expected her to step up to the task and deliver an evidence-based argument. She appreciates how important this style of education was to her development, and believes this open-mindedness to students’ curiosity, no matter their background, is incredibly important.
Moving Towards Computer Science
After graduating from Swarthmore and working for a couple of engineering firms, she realised it would be useful to escape one’s national perspective and moved to the UK. She signed up for Oxford Polytechnic’s undergraduate computer science (CS) degree, which she described as ‘beautifully traditional’ and covering everything from the electrons to the code. She finally understood things from the ground up, which was incredibly powerful for her and sparked an interest in pursuing CS, which provided a context in which to pursue her interest in the relationship between language and thought.
She applied for PhD studentships in CS, ending up at University College London, where people were intrigued that someone with both psycholinguistics and CS degrees wanted to complete a PhD revolving around CS. She wanted to take a scientific approach by asking questions and running experiments, which was completely foreign to the engineering-oriented department at the time. It was unusual, but her determination to follow her interests was clear, and she was accepted.
Her focus was on picking the brains of the smartest people in various domains to see how they approached and solved problems; she describes herself as having been a glorified journalist researching expertise. She found that people do not think in programming languages, but in personal pseudo-languages, and she highlighted the significance of accurate operational models. She found this work to be invigorating, naturally blending her skills in both psycholinguistics and computer science.
The Crossroads of Psycholinguistics & Computer Science
Why is CS always the bridesmaid and not the bride? Fundamentally, Marian notes, it combines so many other disciplines and in turn draws much inspiration from them. It is founded in mathematics and logic, but is ultimately bounded only by what people can imagine and build. It sits as the nexus discipline, where subjects criss-cross over each other. It is an extension of people, and is situated in their social, conceptual, physical, and technological world.
It is clear to her that her psycholinguistics degree laid the foundation for much of her later work, existing as an indispensable partner to her subsequent education in computer science. Many of those whom she has interviewed began somewhere else too. When the field of software development was young, and CS was not yet an established academic discipline, it was inevitable that developers had their roots elsewhere. Many began in mathematics, or physics, or classics, or music, and the intersections of these dual interests were incredibly interesting to her. “There are many paths up the mountain”, she notes.
Nevertheless, there are common patterns which do characterise this diverse array of minds. They are far more interested in engaging in ideas than in being right, and have very little sense of status. This mindset of openness, curiosity, and humility is something she believes isn’t emphasised enough in the discipline; many have a sense that they must “prove their chops”.
Remaining Curious
There are flavours of computer science which have a stilted and mechanistic view of how things must progress. Sometimes companies can see their programmers as plug-and-play. Stick them in a seat, send them some tasks, and handle their output. They are in some senses akin to software factories, which are very different from the teams that really innovate. The people that Marian have found to be the most interesting have always been adamantly curious. Few of them stayed solely on a single road, and yet it has only enhanced their perspective, ability, and career.
Marian’s book Software Design Decoded: 66 Ways Experts Think discusses the practices and principles that expert software designers use to create great software and can be found on Amazon.co.uk.