DAVID LEDGERWOOD: Yoav, great to have you here man, thank you so much for joining us.
YOAV RUBIN: Thanks for inviting me. Glad to be here.
LEDGE: Fantastic. For the audience, the listeners, would you just give the two or three minute story of you and those things you've done and what you work on?
YOAV: I'm now a senior software engineer at Microsoft. I'm working on Azure AI platform. Before that I worked on agency called Databases, specifically security stuff there. Prior to Microsoft I was 14 years at IBM research as a research staff member. During that time I also taught Clojure at university, wrote a chapter about Clojure on how to build functional databases in 360 lines as part of the 500 Lines or Less book, which is a fun book to read. That’s all. I'm just a software guy.
LEDGE: What do you think are the key things, now that Azure and AI is just a huge area now? I would love for our engineering freelancer audience to know more about that platform and what's available. I just think there's going to be a tremendous amount of development going in that direction, almost AI as a Service and cloud. It's just everything is going that way.
What are you seeing? What's important for people to know about now?
YOAV: I think the process that I'm seeing now I think is the same process that in the past software developer was. In the past it just specialized personnel, and now more and more people get involved in that.
AI passes the same stages In the past, you needed a PhD in statistics just to scratch the surface, and now part of the effort is that Microsoft and other companies are basically providing environments and platforms for people less educated and less domain expert to work and build solutions using AI.
So with this, really exciting times in this area, providing these capabilities to many more people.
LEDGE: Working the Azure AI service, tell us about it. What can it do that will be just an awesome thing to include in new applications?
YOAV: Currently, it's an environment that allows you to design your experiments or develop it now in Python. It's part of this entire process, part of this entire shift in thinking. That the aim is to move the domain of AI from specialized experts to basically everybody.
In the past everyone that needed to write software needed to find some software specialized personnel to work on that, and now there are so many tools that would allow even kids to create their own websites. I won't be surprised in the next five, seven years you'd see secondary school kids that will have some AI project when they're 16, or something like that, to be submitted.
LEDGE: What do you think that people will do with it? You work on a platform like this and you make it accessible for the rest of us. You have that vision of, years later that kids would be able to use tools like this. You're right. I imagine my own child on his tablet at home and he could construct his bot in the future. You must think about this stuff.
What will be done in the future? How will people use these technologies in a visionary way? You're enabling a toolset that will allow people to do amazing things. What are some of the places that you think that will be used in a really positive way?
YOAV: This is what I think about AI, it's like a super accelerated software development. This question, what do you think will be able to do with software, basically anything. Just accelerate this. Everyone that has any need to do a tool based in some sort of computation or integrational information, instead of just walking to the library and reading books or trying to integrate information, just type a few characters, run their own experiment, develop their own module. Build the project that is based on AI as the computation engineer but will solve their own specific problems.
Kids at school would create projects and maybe now analyze traffic of ships in the sea, or compare things and build their own ideas. It would be exciting to see what kids will do. I’m excited to see what everyone will do that. It's the same evolution that the software provided to the world. It will be another one of that.
LEDGE: You've worked for two of the biggest names ever in software. You spent a great deal of time at IBM and now Microsoft over the last roughly 20 years. What have you seen change there?
We work with a lot of big companies, we work with a lot of small companies. I'm just interested in, what has that been like for your career, to see the changes in software that have happened in 20 years. You probably 20 years ago didn't even imagine what you're doing now would exist.
YOAV: Yeah. It's quite interesting. In the beginning when I started my career, there were initial talks about how Java would become useful tool. Then people looked and said, "What's that thing internet, and web, and AJAX?"
Of course it's all driven underneath from Moore's Law, and as more and more computation can be done and more and more networking can go, the less and less limitations to what can be done. This reduction of limitations allows people like me, and every software developer, to create better and better tools to expand the basis of whoever can use software, whoever can unblock their own needs in terms of creating tools, creating solutions for themselves that basically run software and solve their issues.
LEDGE: So you've probably worked with a lot of great engineers in the course of your career. We are in the business of finding and evaluating and trying hire the best engineers in the world who are freelancers.
I like to ask everybody who I talk to for the podcast, what are the ways that if a great engineer – you know, A+ best engineer – is in front of you, how do you know? What are the heuristics to know a great software engineer when you interview and when you meet one?
YOAV: I think I will ask them what book have they read lately and what thing have they studied lately, and when was it? If the person tells you about any kind of book, any kind of thing that they've learned lately, it tells you that this person is coming from a problem solving, always learning, state of mind. And he's a software engineer because this is the way that he likes to solve problems.
The key issue about the best engineers that I’ve worked with, they are people that were driven by the need to learn and use their knowledge and gain knowledge to solve problems.
Software is just a mechanism to solve problems, but the key issue, the key drive for these people is always this need to learn and some drive to solve problems.
LEDGE: So I'll turn your question around on you. What have you been reading and learning that you recommend for the audience?
YOAV: Actually, I’m maintaining this small thread on my Twitter feed, but books that I'm reading, I'm reading a lot lately about behavior psychology and cognitive biases as part of me trying to integrate these ideas into some of the work that I do.
The question of ethics in AI is driven by the same sort of biases that engineers have, and the way how to detect these biases in people is a question that was heavily researched by the behavioral economics community. The question is, how to integrate these insights and these ideas from psychology and economics to software and to AI. Because integrating ideas from psychology into AI could help us solve these kinds of problems, these ethics issues or these biases that are accelerated in the world of AI.
LEDGE: That's a great thought. AI ethics is going to be a huge issue now. It reminds me of ‘I, Robot’.
That's fantastic. Yoav, thank you so much for joining us. Really appreciate the insights, and thanks for your writings in the community. I know that the audience loves it.
It's really good to have you on and hear your voice.
YOAV: Thanks for having me.