August 25, 2021 23 min read
One of my favorite ML voices online these days is Santiago Valdarrama. Santiago is a software developer who has transitioned into a machine learning expert, and has built a following of those who are looking to pursue a similar path. While he appreciates the theory and research being done in the field of data science, his is a far more practical approach. He is always learning new ways to maximize the value of machine learning and shares those insights with his audience every day— and he does so in a way that is clear, compelling, and accessible.
I got a chance to chat with Santiago recently about the current and future role of the software developer in ML, advice he would give to those looking to make a career using machine learning, and much more. Follow Santiago on Twitter @svpino and check out our full conversation, below.
Andrew. All right, Santiago thank you so much for joining me today.
Santiago. Absolutely. Thanks for inviting me.
Andrew. Oh yeah, it's my pleasure I’m really excited to chat with you and I think folks who are watching this, many of them will probably already know a little bit about you and your background, but for those who don't yet, can you just start by sharing a little bit of an introduction, who you are, a little bit about what you work on every day?
Santiago. Yeah, absolutely. So, I’m a developer at heart that transitioned into machine learning probably about six years ago, six, seven years ago and right now that's what I spend most of my time on. I work for a company in south Florida and what we do is we partner with Boston Dynamics specifically for the spot robot and we implement computer vision algorithms to make the robot see the world. That’s you know, a good summary. Super challenging but super fun type of work and it's mostly centered around computer vision and machine learning.
Andrew. So that's it very cool and it's also a very vivid example of machine learning I think the idea of robots being able to see is something probably that is very futuristic so it's very cool that that’s what you spend your days working on. I definitely want to hear more about that but I actually want to go backwards in time a little bit because I think one of the things that I am certainly most interested in is how you have made the journey from this extensive career in software development into machine learning and because I know that's something you talk a lot about and it's something that your audience really gravitates towards is that evolution. So maybe just start by talking about what that journey looked like for you, how it came about maybe some obstacles you encountered.
Santiago. Yeah, absolutely so number one it's about the reason I really like the machine learning world and I decided to, I don't like to say that I made a switch but basically I sort of like started doing more of machine learning is because the nature of the problems that I have to face today is very different to the nature of it like a regular software problem, like I feel like most of the software problems that I faced before were deterministic. I knew how to get to a certain point, it was just about execution most of the time, here there is a lot of research there is a lot of unknowns there is a lot of trade-offs that didn't exist on this in the software world so that's something that extra challenge is something that it’s very appealing to me. So the reason I transition or when I transition how that came about was because I decided to take my masters. Since I came to the United States one of my so right at the top of my bucket list was I want to go to college here I want to experience graduate education here so I had the opportunity with Georgia Tech to do my masters. I went into my masters thinking about computer science in general but then I found out that they had a machine learning specialization. Started taking one class and I said okay this is my thing this super challenging thing, it's my thing going forward that's how I started and you know it all trickles down from that point by how do I find documentation, how do I actually apply the stuff that I’m listening to here. I’m listening to a professor tell me a bunch of stuff but I’m not sure how to connect that to my real job which is what I have to do you know from nine to five. In pursuit of that connection and pursuing how to make machine learning useful is where the content creation comes from its where the finding good materials that teach me not only the theory that is great but how can actually, we can translate that into actual value. That's where my passion is.
Andrew. And is it right to assume then that you felt like there was an absence of that, that there wasn't as much content or instruction or learning around how you connect the thoughts between the theory and the practice?
Santiago. Yeah, absolutely. I’m you know by the way, that's so that's six years ago, which you know, for all that that matters it might be an eternity in technology years. So, machine learning is still very new and most of the documentation, most of the content is coming out of academia, so obviously it's very tilted towards research right, and even the best practices that you get, even you know the tips and tricks, are very focused on research or on Kaggle competitions which is very different than what you're gonna find out in in a real-world application, right. So yeah, it's you know no wonder whenever people start learning about this and start to try to make sense of the entire amount of information that's out there, they you know, it's very challenging to take that and actually apply it in real life scenarios. So yeah, the documentation is lacking, you know professors at school they come from an academic background so all of that is contributing to this. It's much better now by the way, 2021 is way better than it was back in the day but still.
Andrew. Well, and part of that has to do right with you and people like you contributing to that conversation so maybe just share a little bit about what are the kinds of ways that you're trying to help push that a little bit forward and help drive the connection between practice and theory home for folks who are looking to get into the space and for whom that's a real priority?
Santiago. I think you know; you can easily summarize it by talking about the stuff that I’m finding every single day, right. Like right now I’m working on a data set I’m doing a lot of manual work on a data set of images and I have so many ideas of things that I want to talk about that are normally not being talked about like one idea that just came to my mind right now is the, not only the importance of data augmentation, which everyone knows that is very important, but it's to actually validate that the other the data augmentation that you're doing on your data set is producing good results and the reason why and the reason why that might be screwing with your training process. So, finding the issues in real life that are beyond what the book says you should augment your data, and this is why or trying that finding the problems with that and talking about them. That's the main avenue I have to communicate with other people that are trying to do this right, like I’ve gotten a much better understanding of why this is a rule and why you should never do this by practicing it and by talking about it because then I get to communicate with other people that have tried or that have a different perspective so that's sort of like a feedback loop there of trying something, communicating with people listening to what they have to say, that is super rewarding for sure and that is sort of like an engine that produces more and more content.
Andrew. That's great. Yeah, I want to go back to something you said earlier about how for you a shift in I guess the way you were sort of encountering problems in the world was ones that were maybe more deterministic and maybe solved through kind of more traditional software development and then ones where there were maybe more variables and that kind of the magic, if you will, of machine learning maybe had, more had more of a role to play. Do you see that as sort of a growing reality for software development writ large? Like, is that a source of why people are following you on Twitter and subscribing to your newsletter because they are also software developers encountering that kind of similar reality?
Santiago. I think so that's part of it another part is obviously you cannot forget that machine learning is very sexy right now. Not only you know the title of it but the salaries the market is going nuts over machine learning engineers. It’s super sought after so obviously all of that contributes to this right so like sudden interest. 08:52 Machine learning, it's proven to be very useful over the last few years so we went from the early 2000's where we have all of these experiments are really cool to now it is practically impossible for a person not to interact at any given day with something that's powered by machine learning from your phone to your tv there's so many points of interaction with really useful algorithms that are making your life better so all of that obviously contributes to more companies looking for software developers slash machine learning practitioners and more people trying to get in the back level and yeah I think that's part of it.
Andrew. And what do you envision as sort of the future of the role of the software developer in a world where increasingly everything has machine learning?
Santiago. I think those two roles are going to merge eventually I think I don't know how long but I don't think you're going to be able to separate them and say well I’m only doing software development I’m only doing machine learning I think they're going to tend to merge into a person that solves problems and part of your tools are going to be tools that use more deterministic algorithms like a sorting algorithm and another tool that's maybe a linear regression. They're going to have to apply for certain type of data but you're going to be doing both of those without necessarily having to specialize and by the way, there's always I believe there's always going to be researchers that are going to focus on one area or the other area just like there is today but for most of us for people that are trying to take all of these techniques and apply them in the industry I think those roles are going to tend to merge.10:45
Andrew. And do you have a sense of what even at a high level will have to change in the ecosystem in academia in industry, you know to realize that result?
Santiago. I think we're not waiting for anything. I think the thing that's missing right now is more companies applying this and it's a matter of time right. Like, if I look just five years ago the conversations that we were having at our company most of the conversations ended with, "yeah, I think we want that, that is great. Give us a year so we can go and figure out the data problem that we have and, in a year, we're going to talk to you guys again to apply all of those cool magic." The conversations that we’re having today, five years later are very different where you get many companies that are ready to apply machine learning. They already have data they already, have a good idea of what machine learning is going to be able to do for them and again you know guarantee these are usually big companies but that's the early days of the web right 1998 where people didn't know they needed a website and that started changing very rapidly, so I think we are in the midst of that transition, and in five years from now most companies are going to have machine learning as part of their process. I’m pretty sure of that.
Andrew. And you probably get questions about this from your audience all the time; What are sort of the biggest pieces of advice that you give to software developers who share the belief, have bought into that vision of the future? And want to be a part of it are there things that you're telling them okay, you want to make sure you you've learned this or you've experienced this? What sort of advice do you give those people?
Santiago. Well, probably the most useful advice is that I tell people don't think about making like, what scares most I mean, if you've been in the industry for 10 years and somebody comes along telling you, well, what you're doing right here just stop doing that and start doing this, obviously that's going to be very scary. That is not the right way of looking at this thing. You don't have to transition, you don't have to switch, right. It's not like you need to stop doing what you're doing and start doing something else; you have to augment your skill set with some of these techniques. You don't need to become a researcher, you just need to start adding small tools to your tool set so you can start expanding the horizon and the number of problems that you can tackle, that's exactly how I started, beyond the classes that I was getting was about looking at a problem and saying you know, what I could apply this little thing to that problem on top of everything else that I’m doing for this company. I’m still developing software, I still need to put together a front end on a database and a backend, but I can also offer them the ability to implement this particular feature that requires machine learning so that I think is a great sort of like frame of mind for developers to tackle this is, what can I add on top of what I already know. It's gonna be small enough that I can you know maybe pick it up in a couple of weeks or three four weeks and I can start immediately adding value. I can start adding value by adding your star piece.
Andrew. Do you think then, it sounds like, you don't believe necessarily that they need to, you know, go back to school, and become data scientists right?
Santiago. They don't have to, not for sure, no. So now I mean there is so many resources out there that you can start very slowly making progress through those that you don't need to go back to school and be a data scientist. I don't know there's so many that come to mind right now that are specifically geared towards how you can make an impact right away. Without boring you with the details, one that comes to mind is like fast ai fast dot ai that website has a tutorial a deep learning tutorial not tutorial but a course for developers, specifically for developers. I really like that approach because they say that you know, they make an analogy with playing baseball, right? You don't tell kids, let me sit you down in a classroom, give you all of the rules and once you master those, I’m gonna let you go out in the field. That's not the way you learn baseball. You just find a ball, find a bat, start hitting the ball, and people will start picking up the rules as they go. That's exactly how they approach machine learning and I think it's a perfect example of how can you bring more people in without scaring them and telling them what you have, you need to you know four hours of math.15:51
Andrew. And I think another piece that, at least I’ve heard, as you know we've talked to developers in the past and also businesses that are thinking about implementing machine learning is there's definitely the intimidation factor of all the math and the courses and people are frequently saying like you know I don't want to spend 150 hours you know having to learn this new thing, is there any sort of way to get more quickly to value. Another thing though I think and you mentioned this a moment ago with regards to like businesses being ready form is like availability of data and like the preparation of that data and sort of the engineering of that data in a way that you know it is sort of model ready, you know is ready to sort of start to derive insights from. Have you noticed any shifts in that over the years? 16:44 Like what are the shifts that you've noticed that that lead you to believe that there are companies that are you know that are more ready for that today than they used to be?
Santiago. Yeah, so number one it's just personal experience from working at a company that does that, that you know talks to clients and we sort of like engage with them, offer them our services, and we see sort of like this tape at which they are and by the way it's all over you know, like fortune companies to mid-size businesses and we've seen this shift of the conversation right from oh wow that's magic to now CTOs and CIOs that understand where AI is gonna take them. We went from having on every single phone call, having to sort of like help the person on the other side of the phone understand where the value was and sort of like trying to sell the idea of AI to start completing each other sentences, right? So now we get on the phone and they already know what AI can do for them, they know how to get there, they just need somebody to execute so that's one transition that I’ve seen. Yeah, a big part of that is you know big companies are spending massive budgets, sort of like telling people this, right? And you can get AI from Amazon and Apple and all of them keep pushing this information and smaller businesses are realizing, “Wait a minute, if I don't get on that you know, if I don't get on that I’m probably gonna be left behind really quick,” so they are you know they are more you know more prepared, they're hiring people that also know what they're doing and yeah, the shift is definitely happening. Are we there yet? Is everyone now ready for that? No, we still find a lot of companies that they are again, one year two years away from being able to apply machine learning but it's much better now, yeah.
Andrew. And do you see companies, like I guess the question here is about the kind of creativity I think element of it, so it sounds like more and more companies are coming to you ready with a plan about how they think machine learning can be valuable to them. Do you feel as if they've sort of begun to fully explore creatively all the kind of interesting creative things that they might be able to do with machine learning or is it a lot of the same kind of problem but now everyone's realizing oh you know machine learning can be used to you know stave off user churn or something like that or detect fraud or like some common ones or are you seeing some really innovative things? Are we still a little farther away from that?
Santiago. Yeah, no that's a great question so I think we are, what I’ve seen is that we are mostly suggesting use cases that don't exist yet so companies usually think on like we call it like cost reduction, right? How do we reduce cost or make this process more efficient? There is another area that's as interesting if not more, which is how about doing something that you've never been able to do before, right? That's the area where we are mostly coming up with the ideas and so like letting them know, hey, by the way, have you thought about this? The reason we are sort of like leading that conversation is because we've been exposed to so many use cases that is easy to make the connections but businesses are mostly right now thinking of how can I get that AI and make my process cheaper or faster or better but they're not thinking about new use cases they're not necessarily at a global scale.
Andrew. Now, when you make those suggestions how responsive do they tend to be?
Santiago. If there's usually a wow you know, there's if the idea is good it's sort of like, you know pause over the phone people thinking yeah that's exactly wow yeah let us think about that you know there is usually this wow factor and this realization wow we sort of like been thinking within a box and these guys are coming with a bigger box right like you know so yeah.
Andrew. It's interesting because I think tying back to some of the previous parts of our conversation for me, I have assumed to some degree that part of what it will take to get ML to sort of the next level of prolific, the next level of everyone, consumers just are totally aware of the way in which it touches every part of their life is that it won't just be that all of the things we already do get smarter and faster and more efficient and cheaper and all those things but it'll be that we start doing completely new things that are that were only ever made possible from ML. I think sort of like the you know, some examples of that people would say about like until there was 4G there were certain kinds of you know, app based tools that just were or location based apps that were just not even available so I guess that's the my mind there's something really exciting about that next frontier of like tools that are not just like improvements on our existing tools but tools that we just wouldn't have had without ML. Do you find yourself encountering any of those just yet?
Santiago. Oh yeah, well so the other day we were, we had an entire project to our conversation thinking about where all of this is going, right? So if you if you could fast forward years 100, yeah what are we going to be in 100 years and the prob, the reality is that every future that we can try to make up it's completely wrong because we cannot even imagine the things, we don't know what we don't know. I think that's the summary of it right like we were talking about self-driving cars the conversation started there. I’m like "why are we talking about cars? Is that gonna even be a thing?” Like right now we cannot see a future without them but is that efficient? Is that the best way to transport ourselves? Probably not, so why are we you know limited? So yeah, it's really hard to look in the future obviously and to try to come up with things but if Moore’s law continues to be what it's been. I mean the future is gonna be pretty crazy. There is a bunch of stuff that and it's this is the other thing that I was talking about the other day with another friend. Think about when we invented the telescope. It was in whatever it took like years after that for the major invention besides the telescope and then it took another 100 years for another big invention and now we are at a pace where we became numb to these breakthroughs because there's so many so quickly, right? Like five years ago self-driving wasn't even in you know in our minds and now we are putting people on space like three different companies which is, when you think about it, you take a pause you know, it's amazing how fast we are making things happen. GPT-3 was a huge deal in 2020 and now it feels old and it's one year old there's all sort of businesses powered by GPT-3 right making millions of dollars and it's one year old, right? Feels old at this point by the way there are like three GPT-3 competitors already. There's one from China, another one from, I don't know a big company here. It's just incredible how much progress we're making in in such a short amount of time and this is not gonna slow down. We're not seeing, okay you know what I think we're getting to the no we're it's just the green field in front of us.
Andrew. Yeah, and do you think tools wise it's an interesting note GPT-3 like that that is sort of the trajectory of the pace of at least industry innovation which is that there are these tools that are foundational that give rise to all of these other tools. GPT-3 sounds like a great example of that. I wonder do you is that the model you see for the future or is there some other way you imagine this proliferating?
Santiago. Yeah, I think I think that's one way the other thing that now that you mentioned tools and I don't know if you're referring to these, but I look at the machine learning world right now as the development world was probably back in the 90s where we didn't have anything. Right now there's so many great tools for developing software, you get GitHub and you know you get all sort of IDEs, there are Cicd tools, testing tools we have everything right in the machine learning world we're just starting to see, right? So when you get outside of a, here you have Jupyter notebooks, and here you have the specific cloud tools that they are sort of like started to develop, there is nothing out there is literally nothing out there, people are building small tools to focus on one small problem and we don't have, none of those are standard by the way, so if you jump from company to company everyone is using something either created in-house or completely vendor plotting and so it is great to see that, mean it's not great that we don't have the tools but it's great to see that again, it's a green field in front of us so much innovation is going to happen and you know with better tools it's it that only means that we're going to be able to provide more and more value more quickly. So yeah, I’m very excited about that for sure.
Andrew. Yeah, as am I think the I hear a lot from folks about the similar analogy about where we are in the development cycle of this technology and how just even the lack of like frameworks and standards and sort of conventions that that once those things you know take there's something kind of beautiful about being in the wild west element of that because you get to you know roam free in this wide open field and then as those things start to solidify I think it only further quickens the pace of development which is hard to imagine it moving any faster than it already is. Well I have taken up a lot of your time already, so maybe the last question I’ll ask you is just for folks that aren't already kind of keeping up with you, where do they go to stay in touch with you and your work and how can they stay in touch with you.
Santiago. Yeah, so I think it's Twitter is the main place. I do write on medium blogs. I’m not consistent with it. I do have a newsletter but that I mostly summarize what I posted on Twitter, so Twitter is the main sort of like water cooler place where I go and I discuss everything that's happening and it's all about machine learning so there you're not gonna see pictures of my cat, number one because I don't have a cat, number two because I don't post pictures but you're gonna get all of the machine learning thoughts that I’m thinking and ideas and whatnot. Yeah, that's the place.
Andrew. Terrific, awesome. Well, I really appreciate you taking the time. Had a really great time chatting with you and thank you for all your work and for being so kind of transparent and communicative about it because it is such early days for this technology so it's good to have pioneers that are like standing up and helping to lead the way a little bit so thank you, I really appreciate it.
Santiago. Thank you for inviting me. Super fun.
Andrew. Yeah, my pleasure. All right have a great rest of your day take care. Bye