Steve Forbes and Sebastian Thrun

My old boss and friend, Sebastian Thrun, spent an hour talking with my current boss, Steve Forbes.

They cover AI, transportation, digital medicine, autonomous flight, Udacity, the future of technology, and more. You even get to hear Sebastian talk about a refrigerator flirting with a dishwasher.

(I contribute; it’s a stretch to call Steve Forbes my “boss”. I’ve actually never met Steve Forbes myself, but just go with it.)

Farewell, Udacity!

After four and a half years, today is my last day at Udacity. On Monday, I will return to my roots in core self-driving car engineering. I’m excited!

Udacity has been the most successful and fun experience of professional life. I leave with memories of amazing students, terrific colleagues, and work of which I am proud.

I am so grateful to Sebastian Thrun and the Udacity team for recruiting me here in 2016. Together we built the Self-Driving Car Engineer Nanodegree Program, which has trained thousands of autonomous vehicle engineers, along many other amazing programs an courses, ranging from artificial intelligence to data science to web development to cloud computing, and beyond.

This small collection of photos captures a few of my many wonderful experiences with this amazing company.

The 2016 SDC Pre-Launch Dashboard!
Launching at TechCrunch Disrupt 2016!
Finding Lane Lines — the first Self-Driving Car Project
Ryan Keenan building Self-Driving Car projects
The first Self-Driving Car Team Retreat in Pajaro Dunes
Meeting Udacity students in Detroit
We won the first Udaciward!
Meeting Udacity students in Tokyo
Udaciward Outing: NASCAR in Sonoma
Teaching with Lufthansa’s FlyingLab at 30,000 feet!
Filming the final video!
We finished the Self-Driving Car Engineer Nanodegree Program!
Brok and the team went crazy for my birthday!
Autonomous Day at the Porsche Experience Center
Interviewing Sebastian Thrun for Udacity Talks
Working with the Infosys self-driving golf cart in Mysore, India!
Filming with the Baidu Apollo team
Teaching self-driving cars at the Navimotive Conference in Ukraine!
Presenting at NIO House in Hangzhou
South by Southwest!
The last School of Autonomous Systems Team Retreat, in San Francisco!
Interviewing C++ creator Bjarne Stroustrup
Live Teaching Samples!
Curriculum Team Q4 2019 Retreat in the redwoods
The Curriculum Team escaped!
Super Chris Vasquez!
We completed Los Pollos Hermanos Employee Training!
Ask Me Anything!
Farewell Karaoke!

Udacity is full of such wonderful people! My colleagues made me an amazing farewell video 🙂

I’m a little self-conscious about sharing it, because it’s hardly modest. But the video is a tour in and of itself through my time at Udacity, and it makes me so happy and proud.

If you pay attention, you can even get some hints about what I’ll be up to next 😉

Udacity’s Cloud Architect Nanodegree Program

Today Udacity’s AWS Cloud Architect Nanodegree Program launched!

This is outside my usual wheelhouse of autonomous vehicles and robotics, but I played a significant (albeit behind-the-scenes) role teaching the first course in the three-course program.

Tom Verbiscer and I worked together to design and build a sequence of lessons on high-availability, resilience, and redundancy. Tom teaches about:

  • Availability Zones
  • Regions
  • Server-based architecture
  • Serverless architecture
  • Global services
  • DynamoDB and global tables
  • S3 classes and features
  • Uptime
  • Downtime
  • Service-Level Agreements
  • Recovery Time Objectives
  • Recovery Point Objectives
  • Disaster Recovery
  • Monitoring with CloudWatch
  • Alerting with Simple Notification Service
  • Recovery
  • Chaos Engineering!

And that’s just the first course of the program!

I hope everyone that enrolls learns as much from taking the program as I did working with Tom to build the program.

Nanodegree Programs To Jobs

Karl Mondon/Bay Area News Group

I came to Udacity three years ago to build the Self-Driving Car Engineer Nanodegree Program. Since then, we’ve had thousands of students enroll in and graduate the program, and we’ve built other Nanodegree programs:

Udacity builds all of its programs with the goal of helping students get jobs and advance in their careers.

This week Levi Sumagaysay at the San Jose Mercury News published an article about how Nanodegree programs lead to jobs, particularly in the exciting world of autonomous vehicles. It’s awesome to make the hometown paper 📰

What Are Flying Cars?

My Udacity colleague, Michele Cavaioni, has written a post about flying cars. You should read it!

Michaele has worked extensively with our Flying Car and Autonomous Flight Engineer Nanodegree Program and knows his stuff. In this post, he focuses on the advantages and disadvantages of rotary versus fixed-wing aircraft.

You might be able to deduce the strengths and weaknesses of each modality from these nifty graphics, but you should read the whole post for more 😊 🚁 ✈️

Udacity’s Sensor Fusion Nanodegree Program!

Udacity’s Sensor Fusion Nanodegree Program launched yesterday! I am so happy to get this one out to students 😁


The goal of this program is to offer a much deeper dive into perception and sensor fusion than we were able to do in our core Self-Driving Car Engineer Nanodegree Program. This is a great option for students who want to develop super-advanced, cutting-edge skills for working with lidar, camera, and radar data, and fusing that data together.

The first three months of the program are brand new content and projects that we’ve never taught before. The final month, on Kalman filters, comes from our core Self-Driving Car Nanodegree Program. The course is designed to last four months for new students. Students who have already graduated the core Self-Driving Car Engineer Nanodegree Program should be able to finish this specialized Sensor Fusion Nanodegree Program in about three months.


Course 1: Lidar
Instructor: Aaron Brown, Mercedes-Benz
Lesson: Introduction. View lidar point clouds with Point Cloud Library (PCL).
Lesson: Point Cloud Segmentation. Program the RANSAC algorithm to segment and remove the ground plane from a lidar point cloud.
Lesson: Clustering. Draw bounding boxes around objects (e.g. vehicles and pedestrians) by grouping points with Euclidean clustering and k-d trees.
Lesson: Real Point Cloud Data. Apply segmentation and clustering to data streaming from a lidar sensor on a real self-driving car.
Lesson: Lidar Obstacle Detection Project. Filter, segment, and cluster real lidar point cloud data to detect vehicles and other objects!

Course 2: Radar
Instructor: Abdullah Zaidi, Metawave
Lesson: Radar Principles. Measure an object’s range using the physical properties of radar.
Lesson: Range-Doppler Estimation. Perform a fast Fourier transform (FFT) on a frequency modulation continuous wave (FMCW) radar signal to create a Doppler map for object detection and velocity measurement.
Lesson: Clutter, CFAR, AoA. Filter noisy radar data in order to reduce both false positives and false negatives.
Lesson: Clustering and Tracking. Track a vehicle with the Automated Driving System Toolbox in MATLAB.
Lesson: Radar Target Generation and Detection Project. Design a radar system using FMCW, signal processing, FFT, and CFAR!

Course 3: Camera
Instructor: Andreas Haja, HAJA Consulting
Lesson: Computer Vision. Learn how cameras capture light to form images.
Lesson: Collision Detection. Design a system to measure the time to collision (TTC) with both lidar and camera sensors.
Lesson: Tracking Image Features. Identify key points in an image and track those points across successive images, using BRISK and SIFT, in order to measure velocity.
Project: 2D Feature Tracking. Compare key point detectors to track objects across images!
Lesson: Combining Camera and Lidar. Project lidar points backward onto a camera image in order to fuse sensor modalities. Perform neural network inference on the fused data in order to track a vehicle.
Lesson: Track An Object in 3D. Combine point cloud data, computer vision, and deep learning to track a moving vehicle and estimate time to collision!

Course 4: Kalman Filters
Dominic Nuss, Michael Maile, and Andrei Vatavu, Mercedes-Benz
Lesson: Sensors. Differentiate sensor modalities based on their strengths and weaknesses.
Lesson: Kalman Filters. Combine multiple sensor measurements using Kalman filters — a probabilistic tool for data fusion.
Lesson: Extended Kalman Filters. Build a Kalman filter pipeline that smoothes non-linear sensor measurements.
Lesson: Unscented Kalman Filters. Linearize data around multiple sigma points in order to fuse highly non-linear data.
Project: Tracking with an Unscented Kalman Filter. Track an object using both radar and lidar data, fused with an unscented Kalman filter!


One of the highlights of working at Udacity is partnering with world experts to teach complex skills to anybody in the world.

In this program we are fortunate to work especially closely with autonomous vehicle engineers from Mercedes-Benz. They appear throughout the Nanodegree Program, often as the primary instructors, and sometimes simply offering their expertise and context on any other topic.

MathWorks has also proven terrific partners by offering our students free educational licenses for MATLAB. The radar course in this program is taught primarily in MATLAB and leverages several of their newest and most advanced toolboxes.


There is a quote, from a completely different context, “It took forever and then it took a night.”

That sums up how I felt building this Nanodegree Program. We spent over a year kicking around ideas for this program, starting work and stopping work, and there were times I thought it wasn’t going to happen. Then we got the right group of instructors together it came together faster than I ever imagined, and it’s beautiful.

Self-Driving Car Ethics

My Udacity colleague Vienna Harvey sat down with Australian podcaster Zoe Eather to discuss the role of both ethics and education as they relate to self-driving cars. It’s a fun episode 🙂

This interview is part of Zoe’s Smart Community podcast, which covers everything from infrastructure, to data, to climate change, to mobility.

Prior to Vienna’s interview, I got to take Zoe for a spin in Carla, Udacity’s self-driving car. Zoe was delightful and I think you’ll enjoy listening to her and Vienna geek out about self-driving cars.

Bjarne Stroustrup on 40 of C++

Recently I sat down with Bjarne Stroustrup, the creator of C++, to discuss his career and the evolution of C++ over years.

We discussed Bjarne’s origins in Denmark, his PhD work at Cambridge, the origins of C++ at Bell Labs, how to teach C++, the ISO committee that governs C++, and what exactly made Bjarne’s career so successful. There’s a lot more, too 😀

Watch the interview here.

And if you are interested in learning C++ from Bjarne (and me, and many other instructors), enroll in Udacity’s C++ Nanodegree Program!