I knew prof. Barbara Liskov is visiting NUS from my friends, then I saw the posters with the talk she’s going to give on the Jan 27th. However, I never thought I could get to talk to her in an informal setting such as a meeting room with up to 20 ladies in computer science, mostly PhDs. I wasn’t expecting anything because it was on short-notice so I didn’t have time to build expectations… except, of course, there’s a lot to learn from someone who has such an amazing career as hers. But no clear picture.
Hence it was a pleasant surprise. The atmosphere was pretty relaxed, we introduced ourselves so I got the chance to see what others are working on. And then when prof. Liskov started telling her story or how she got started in computer science, I was captivated. She studied Maths in undergrad as there was no CS department back then. She was one of the few women in sciences and after undergrad she went for a job as something new… a programmer. She hadn’t come into contact with computer before that point. Overtaking the challenge to teach herself programming, she discovered she enjoyed this and decided to apply to PhD in an interdisciplinary subject that would become computer science. Her journey is fascinating as she went from one area to another, from research to academia, teaching and pioneering in programming languages, distributed systems, replication algorithms, just to mention some.
Now what is the takeaway?
- I keep hearing this over and over again and as I begin to work on my PhD I tend to agree with it. Finding the problem to work on is difficult, it takes a lot of time to study the literature, understand the current state of the art and understand its impact. But that problem you find, you have to find it interesting. Prof. Liskov had the chance to work on many interesting problems and very diverse because when she started out, there were only a few papers in this field so it was easier to have a broad view and contribute to different topics. Now it is not so feasible (unless you are working with experts in that field). However, as my prof says, at the end of the PhD you should be able to understand how to approach hard, research problems and find solutions.
- Be efficient, organize and plan your time wisely. You can have a family if you want to but you have to be very efficient with your time. Start work early and do just work when you are at work. Don’t let things like social media distract you or chatting. If you are talking to people, talk to them on work issues. Prof. Liskov said she works 2 days from home. And she also mentioned that only after her undergrad she formed this working discipline (haha, guess it’s not too late for me). And of course, there will be times when you will be working over-time but there might also be times when you are
- Programming languages design is very important, how you can make sure that you don’t allow even the worst programmer make mistakes, what rules do you enforce by design in the programming language construct so that it is still a “programmer-friendly” language? Prof. Liskov also talked about a programming language that is expressive enough for concurrency and high-level but can still be reasoned about through program states.
- Prof. Liskov said teaching goes hand-in-hand with research because it allows you to understand the basics very well and from different perspectives. And this, I would say, is strongly connected to another point: you shouldn’t kid yourself you understand something when you don’t. And how do you check that? You explain it to someone else, you want to work with people who are able to contradict you. Collaborate, explain, talk more, note down proofs or explanations.
I found this talk highly motivating and inspirational, prof. Barbara Liskov really is an amazing person! It may not be easy to work on something that has a great impact, maybe it’s luck, but I feel that whatever I do, as long as there is passion, enthusiasm and a good work ethic, there will be a good outcome.
And for the future, there are a lot of opportunities for us today, there’s no old boys’ network anymore. Academia gives you the flexibility of working on research problems that you find interesting, while research in industry, while sometimes not so flexible, it allows what you are working on to have a greater impact on the real world, to be more applied. So yeah, aim high, work hard! Spor!