An interview with Laurence Moroney, Developer Advocate at Google

Sayak Paul
8 min readAug 31, 2019

This is a part of the interview series I have started on data science and machine learning. These interviews are from the people that have inspired me, that have taught me (read are teaching me) about these beautiful subjects. The purpose of doing this is to mainly get insights about the real-world project experiences, perspectives on learning new things, some fun facts and thereby enriching the communities in the process.

This is where you can find all the interviews done so far.

Today, I have Laurence Moroney with me. Laurence is an AI Advocate at Google specializing in TensorFlow and Google AI. Previously he worked on Firebase, Google Maps and a bit of Google Cloud. He hosts the YouTube show Coffee with a Googler, a popular interview show that puts a human face on many of the roles that people take inside this wonderful company! Laurence is also the instructor of Coursera’s TensorFlow in Practice Specialization, co-developed with deeplearning.ai.

He has authored lots of books including the Definitive Guide to Firebase from Apress, the popular Legend of the Locust Young Adult Sci-Fi series, and the prequel to the movie ‘Equilibrium’, starring Christian Bale! You can learn more about Laurence from here.

I would like to wholeheartedly thank Laurence for taking the time to do this interview. I hope this interview serves a purpose towards the betterment of data science and machine learning communities in general :)

Source: Build a deep neural network in 4 mins with TensorFlow in Colab

An interview with Laurence Moroney, Developer Advocate at Google

Sayak: Hi Laurence! Thank you for doing this interview. It’s a pleasure to have you here today.

Laurence: My pleasure entirely! Thanks for putting this together!

Sayak: Maybe you could start by introducing yourself — what is your current job and what are your responsibilities over there?

Laurence: I work as an AI advocate in Google’s Research into Machine Intelligence division. My goal is to scale out the message around TensorFlow in particular, helping developers to get up and running with the new tools and techniques that Machine Learning makes available to them. For this I have to wear many hats, from running the TensorFlow YouTube channel at youtube.com/tensorflow, to teaching MOOCs like the TensorFlow: In Practice specialization you mentioned, and speaking at various conferences and meetups around the world.

Sayak: That is so versatile! How did you become interested in machine learning?

Laurence: I first got into AI way back in the late 80s, early 90s, before the famed AI Winter, and was intrigued by the possibilities. When studying my Master’s degree, I created an algorithm that ‘learned’ how to play tic-tac-toe by remembering how it lost games against a human and avoiding moves that would bring such losses about. After that, I was hooked. When Google launched and open-sourced TensorFlow as a platform to democratize ML and AI, I knew I wanted to be a part of it!

Sayak: When you were starting what kind of challenges did you face? How did you overcome them?

Laurence: When I was originally starting (way back in 80s/90s), the biggest challenge was tooling and platforms. Back then AI was very basic inference in a language like Prolog or very basic NLP in a language like LISP. Fast forward to today, and when trying to get back into AI, the challenge I faced was that it seemed very mathematical. Much of the training involved learning calculus to understand how loss functions and optimizers worked, for example. As such, I realized that there was a great opportunity, with TensorFlow, to show developers how the APIs can be used without first needing a strong mathematical background. Once you saw the thing working, then you could go back and optimize, or crack open the derivative functions to see how they’re working for your system. I likened it to not needing to know how a compiler works in order to write code, but when you do know how a compiler works, then you can write better code.

Sayak: What were some of the capstone projects you did during your formative years?

Laurence: My formative years are so far back in history now :) Some of my favorites were being involved in creating a platform for interfacing PCs to backend systems in the real world like CCTV, Elevators, Door access etc. My first job in the US was in developing them, so that security personnel could, for example, have a GUI with a map of their environment, with icons representing cameras etc. They could click on the icon to call up a camera feed. Seems super simple now, but was revolutionary back then! With the emergence of the web as a platform, migrating to that so that the same controls could be done remotely and offsite for security reasons was another mindblower. My first project I did at Google, many years later, was also a mindblowing one for me when I saw the scale involved. It was to put together a quiz that helped a famous boy band launch their newest album back in 2013. They would live stream an event with 1 million or more concurrent viewers. Every ten minutes they’d direct the viewers to a URL to answer a question. Think about the impact that would have on a web server…nothing for 9 minutes and 59 seconds, and then a rush of maybe a million users. Repeated every 10 minutes for 12 hours! It was quite the engineering challenge, and a lot of fun to work on. It really showed me why Cloud is such an important technology — scale to what you need, dynamically, and only pay for what you use. It was also my forcing function to lead me to learn Python! I did a fun talk about it at dotScale a few years ago here: https://youtu.be/aIxNm5Eed_8

Sayak: An arsenal of innovation it must have been! You specialize in a number of different domains — Firebase, Google Maps, Google Cloud and of course, Machine Learning. What is your secret sauce behind this caliber?

Laurence: It’s more one of the great things about working for a large company like Google. My first job was with Google Cloud, and from there I went into mobile development stuff with Android and Firebase. I’ve always geeked out about Google Maps and had lots of feedback for the team, so they invited me to work on it as a 20% project. In January of 2018, I moved to the TensorFlow team where I still am.

Sayak: It must have been a super roller coaster ride :) These fields data science and machine learning are rapidly evolving. How do you manage to keep track of the latest relevant happenings?

Laurence: I’m not sure I do, to be honest! :) That being said, often if I have a few minutes of free time I’ll take a peek through what’s new on arXiv. One of the issues I’m particularly interested in is bias in AI. It’s great that AI and ML have re-ignited the conversation, but bias isn’t something new. We’ve always had bias in software. The data-driven approach to building ML applications makes it easier to spot bias, so I’m super optimistic that bias isn’t a problem with AI and ML, but rather an opportunity to remove software-driven bias that has always been with us.

Sayak: You mentioned about the software-driven bias — that is so damn true! Being a practitioner, one thing that I often find myself struggling with is learning a new concept. Would you like to share how do you approach that process?

Laurence: I always like to have a working sample, in code, that I can dissect to figure out what is going on. With a lot of things and ML, in particular, there are often so many concepts you need to know just to do a ‘Hello World’ type example. So, instead of talking about the concepts first, I’d like to get the working code and have a way to step through it line by line to figure out how it works. Then when I see the areas of interest in it and can map them back to the unknown concepts, it helps me understand more about why.

Sayak: Our principles, in this case, are quite inline. I am really happy about that :) You have associated yourself with a number of extra-curricular activities. How do you manage your time so effectively?

Laurence: I’m not sure I do, to be honest :) — But seriously, I think a big secret to productivity is a similar secret for creating productive code. Don’t repeat yourself (DRY), and if you create something, try to make it as re-usable as possible. So, if I spend time learning a new concept in code, that can become a blog post, a video, a talk, a unit in a MOOC, a chapter in a book, an online sample etc. etc. That way you scale yourself well, and you look a lot more productive than you really are! :)

Sayak: I am sure the DRY principle is going with me to my grave. Any advice for the beginners?

Laurence: Keep learning. And don’t be afraid of hard work. In particular, don’t be discouraged when you hit some walls. Often this work is X steps forward, Y steps back. The trick is to put the time in so that X>Y. When it comes to ML and AI, I really think it is worth burning the calories on. This is such a revolutionary and transformative technology. In particular, if you are part of an underrepresented group, this is a massive opportunity to push the needle. When I first started my professional career, way back in 1993, as an Irish person in London, I faced so many walls of discrimination. People like me weren’t supposed to be smart. We were supposed to be unreliable drunks, and at worst, terrorists! I remember facing a lot of discrimination from micro-aggressions like ‘are you sure you’re Irish, you’re actually quite clever, to ‘get that Irish [expletive] out of here’. But then came the advent of the web, and when companies were hungry for web skills, and I had those skills, they were able to see through their prejudice. Nowadays, over 20 years later, it seems silly that they would behave the way they did. So I hope, 20 years from now, we’ll be having the same conversations about discrimination against women in tech, or against underrepresented minorities in tech. And a massive opportunity to build that world lies right in front of us.

Sayak: Words, taken to heart, Laurence :) Thank you so much, Laurence, for doing this interview and for sharing your valuable insights. I hope they will be immensely helpful for the community.

Laurence: My pleasure, and thanks for hosting me!

Summary

There is no substitute for hard work and it has been proven time and time again. He got intrigued by Artificial Intelligence in the 1980s and he wanted to be a part of AI/ML democratization. Now he is one of the best educators in the subject out there. Determination, genuine willingness can really take you a long way, really. Laurence started out his professional career way back in 1993 that too in a domain different from Machine Learning. Now he is a part of the TensorFlow team, often seen wearing many hats for the team — a journey worth the vigor, I would say :)

I hope you enjoyed reading this interview. Watch out this space for the next one and I hope to see you soon.

If you want to know more about me, check out my website.

--

--