My notes from CS230 — Stanford’s Deep Learning with Prof. Andrew Ng

Learnin’​ Good All This AI Stuff for Product Management

Mark Cramer
The Startup
Published in
7 min readJun 19, 2019

--

How product managers can learn what they need to know about AI to be at peak effectiveness

The most frequent question I get about AI from colleagues, product managers and others, is,

“What do I need to know about AI and what’s the best way to learn it?”

I’ve invested a considerable amount of time taking numerous courses, so I dug into my emails to collect some of the suggestions I’ve doled out.

Is this necessary?

First, it’s worth addressing the extent to which a product manager even needs to understand how AI works in order to be effective. There is an endless stream of business articles about what AI is, what it does and how it is going to disrupt this and that, all of which is great, but I am talking about understanding how it works (e.g. stochastic gradient descent, convolutional neural networks, tree search, supervised vs unsupervised learning, and all the other mumbo jumbo that sounds complicated until you know what it is).

As Marty Cagan pointed out in Inspired (a must-read), product managers can come from a variety of different vertical disciplines, including those that are not necessarily technical, such as marketing or sales. Can these individuals, or even product managers who come from engineering but don’t necessarily have a background in AI, be successful managing AI products?

In his article Behind Every Great Product, Marty says,

While you don’t need to be able to invent or implement the new technology yourself in order to be a strong product manager, you do need to be comfortable enough with the technology that you can understand it and see its potential applications.

With this, I could not agree more. As mentioned in my last post, if a product manager’s two key responsibilities are assessing opportunities and defining products to be built, these become particularly challenging without an understanding of the underlying technology.

AI, however, is raising the bar. Almost 3 years ago Jon Evans welcomed everyone to the era of “hardtech” by comparing beginner tutorials for Android and TensorFlow. (I program in both and the latter is much more difficult.) Things have not gotten easier in the intervening years. For those who want to product manage in AI (which I highly recommend), at this very early stage of AI commercialization, it is critical to understand how it works in order to grasp what it cannot yet do and envision what is possible. You might be able to bumble around in PowerPoint for a while, but whether you are technical or not, it is important to learn the technology in order to be able to understand it and see its potential, not to mention communicate credibly with engineering.

If you are still skeptical, allow me to also offer a comprehensive list of all the associated costs with learning AI:

If you don’t think you have what it takes to learn AI, whatever you imagine that to be, you are probably mistaken. Read on or jump to the bottom for some inspiration (then come back).

How to get there

First, if you don’t know how already, learn how to code (a little).

There has always been a lot of discussion about whether or not founders need to know how to code. TechCrunch had an article many years ago about “ The Trouble with Non-Tech Co-founders” and then Steve Blank (required reading) opined on “ Why Founders Should Know How to Code.” More recently TechCrunch implored people to “ Please Don’t Learn to Code” before posting an article on how the CEO of Auth0 still codes. Recognizing that product managers and founders are different things, although running product is most always one of the responsibilities of a founder, the relationship here is apt. Regardless, discussions around whether or not these people need to know how to code is complicated.

The good news is that, the amount of coding skill you need to be able to get what you need out of your AI studies is relatively easy. You are not going to write production code, or any code that will go into the products you manage; you are just going to write enough to get through the classes. Take an online introduction to Python class (I have never taken one so cannot make a recommendation), get yourself an account on Stack Overflow (check out that juicy rep) and you should be good to go.

Once you have the programming basics, then what? While no one could ever explore every AI class under the sun, here is the list of some MOOC s that I recommend, with a little commentary:

  • Udacity Deep Learning Nanodegree: This is the first one I took, without ever having written a line of Python. (Not recommended, but I was already proficient in Java and R.) I was in the first group that ever went through this course, so it was more than a little rough, but it was fun and amazing. I was instantly hooked. Udacity now also has an AI Nanodegree, but I’m unfamiliar with that.
  • Coursera Machine Learning offered by Stanford: I took this one, too, and it’s fantastic. Prof. Andrew Ng is a wonderful instructor and the way he organizes the concepts to cascade one into the next is beautiful. It uses Matlab (you can use Octave for free) which puts some people off, but it is worth it.
  • Coursera Deep Learning Specialization offered by Stanford: I took this one, although as part of Stanford’s CS230 course (see below), again with Prof. Andrew Ng. Like his ML course, it is marvelous.
  • Coursera Machine Learning Foundations offered by University of Washington: I have not taken this one, but it comes highly recommend from my good friend Anthony Stevens, Global Enterprise AI Architect at IBM.
  • fast.ai: I have not taken this, but I’ve heard it is outstanding, and it is free. They tout not requiring any advanced math prerequisites. Leave a comment if you have any opinions.
  • EdX Artificial Intelligence offered by Columbia University: I haven’t taken this one either, but I’ve heard great things.
  • Udacity AI Product Manager Nanodegree: This one certainly sounds like it is in the bullseye, and I’m a fan of the Udacity Deep Learning Nanodegree, but this one is non-technical (no programming required), so I’m skeptical for the reasons described above. I haven’t taken it, and nobody else has yet either, because it was only announced yesterday. If you want to do it for real, which I am sure you do, then I’d recommend one of the courses above. (They are hard, but not that hard.) As soon as I learn something about this one I’ll report back here.

Going all the way

I am not recommending this for product managers because it is overkill, a ton of work with deadlines, and expensive, but I am in the middle of Stanford’s 4-course, 16-unit Graduate Certificate in Artificial Intelligence. These are not MOOCs or continuing education (I’ve done those, too), but rather 200-level, master’s degree classes, with serious prerequisites and full-time students, at Stanford, in the lecture hall, with TAs and exams and team projects and the rest of the ball of wax. Having completed CS230 and CS221, I don’t know which two courses I’ll take next (I want to take all of them), but I’m aiming to finish in March 2020.

Pacman competition assignment from Stanford’s CS221 — AI Principals & Techniques

Many friends have asked me, “Why?” It was a bit impulsive, but upon reflection I have a few answers:

  • It makes me better at my job. In my product management role at PARC, helping Xerox launch AI-powered applications, I want to explore every possibility to bring value to the team.
  • I can see Hoover Tower from my office window. Proximity to campus isn’t a reason for anything, but it is motivational.
  • The classes are excellent. AI is amazing. The assignments are fun. In CS221 we developed AI to play Pacman. The class had a competition to see whose AI could generate the highest average score and I placed 11th out of ~350 students, so not too bad.
  • As an electrical engineer before getting an MBA, this feels a little like I am getting “back to my roots.”
  • You can potentially go on to get a Stanford master’s degree in CS! If accepted into the program, you can roll over the units from the Graduate Certificate, which means you are already a third of the way there. Apparently there are department emails that refer to these classes as “tryouts,” so if I do well enough (I have heard it very challenging to get in even with straight As) I’ll apply.
  • Learning is awesome.

Bringing it home

As Rachel Thomas, deep learning researcher and co-founder of fast.ai, said recently during a talk about AI,

“It’s natural to feel like if you’re not a math genius or you don’t have a PhD from Stanford that you couldn’t possibly hope to understand what’s going on, much less to get involved. I’m here to tell you that is false.”

Agreed! Sure, there is a bit of math, but this isn’t string theory. Rachel goes on to talk about Melissa Fabros, an English literature Ph.D. (almost literally a poet) who took the fast.ai course and went on to win a grant to work in computer vision. With some determination and perseverance, almost everyone can learn the basics of how AI works, and then some.

If you are a product manager, or would like to become one, who wants to work in AI, or is perhaps there already, then there is no reason not to learn a little Python and get going with the MOOCs. If you are passionate about the technology, which frankly you better be if this is what you want to do, then you will get there.

So get pumped, sign yourself up for a class, start cranking and let me know how it goes in the comments below. Good luck!

Originally published at https://www.linkedin.com.

--

--