“Empathy Driven Development” at Silicon Labs

I was recently invited to give my “Empathy Driven Development” talk at Silicon Labs for their annual Technical Symposium. This is an idea and a talk I developed at iRobot while trying to come up with a general list of software best practices. The idea grew and evolved over the years, and I’m pretty happy with where it’s at now.

TL;DR:

  1. As engineers, most of our job is communicating with other humans, including our future selves.
  2. Using empathy is an effective way to communicate better.
  3. Anyone can learn to have more empathy.
  4. Using empathy scales up very well.
  5. Profit.

I’m happy to be able to share a video recording of the talk: “Empathy Driven Development” on YouTube

I hope you can watch it and get something useful out of it.

Silicon Labs is a great company: I worked there twice, and enjoyed the work and the people both times. It was a lot of fun (virtually) connecting with many of my former colleagues again.

Thanks to everyone at Silicon Labs for putting on a great conference, and for letting me be a part of it.

Empathy Driven Development slides

Here are the slides from my Embedded Systems Conference 2015 talk on Empathy Driven Development:

Empathy Driven Development slides (pdf)

The slides include a rough transcript of what I said.

I had a great time giving the talk and discussing it with others at ESC.  I’ve given this talk a number of times for software engineers, electrical engineers, mechanical engineers, and a few mixed groups as well, and I’ve learned that it applies to almost any engineering group.

I’ve had a few requests to give the talk for people’s teams & companies and to explore what it might look like in your particular environment, which I’m happy to do. Please email me at svec at this site if you’d like to arrange a visit to your user group/meetup/team/company.

Thanks!

Edit: I reduced the pdf file size (and image quality) so the pdf is now 2MB instead of the previous 50MB.

Empathy Driven Development talk at ESC Boston 2015

I’m excited to be giving a talk about Empathy Driven Development the Boston Embedded Systems Conference!

The talk will be on Wednesday, May 6 at 2pm. Get all the details here: http://www.embeddedconf.com/boston/scheduler/session/why-empathy-driven-development-is-not-just-some-touchy-feely-new-age-fad

You can come to the talk for free if you register for the Demo/Exhibit pass.

You can hear more about Empathy Driven Development in this interview I did with Elecia & Chris White on their Embedded podcast: http://embedded.fm/episodes/2014/11/24/78-happy-cows

Empathy Driven Development interview

I was interviewed about “Empathy Driven Development” on the Embedded podcast: http://embedded.fm/episodes/2014/11/24/78-happy-cows

“Empathy Driven Development” is my attempt at making software engineering (and other types of engineering) better, specifically for the engineers who do the work. Very early thinking, but I think the interview went well!

I’ll be writing more about Empathy Driven Development here in the future, so stay tuned.

Bret Victor: The Future of Programming

Yet another great quote from Bret Victor in his back-to-the-future talk, “The Future of Programming”:

“The most dangerous thought you can have as a creative person is to think that you know what you’re doing. Because once you think you know what you’re doing you stop looking around for other ways of doing things. And you stop being able to see other ways of doing things. You become blind.”

(the quote starts around 31:20)

 

Learnable Programming, Bret Victor, and Other Two Word Phrases

Bret Victor just published his latest essay, “Learnable Programming.”

In “Learnable Programming” Bret criticizes the Khan Academy’s latest “interactive” programming education tools and suggests a better way to teach programming.

He footnotes the essay with this summary:

This essay was an immune response, triggered by hearing too many times that Inventing on Principle was “about live coding”, and seeing too many attempts to “teach programming” by adorning a JavaScript editor with badges and mascots.

“Inventing on Principle” was the talk he gave at CUSEC 2012.

If you haven’t seen/read both you must immediately:

  1. Get a cup of coffee, tea, or whatever comfort beverage you prefer.
  2. Find a comfortable place to sit and pay attention for about two hours.
  3. Watch the video of Inventing on Principle.
  4. Read the Learnable Programming essay.

It’s fantastically worth your time.

Bret sidenotes* the essay with this exciting teaser:

Forward reference: Some work that I’ve done in automatic visualization of ad-hoc data structures will be published later this year, in collaboration with Viewpoints Research.

I’m looking forward to that!

* I just invented the verb “sidenote,” as in, “He sidenoted the heck out of that teaser in the side note.”

The Architecture of Open Source Applications, Volume II: FreeRTOS… released!

Exciting news!

My chapter on FreeRTOS, the open source real-time operating system, has been officially published in The Architecture of Open Source Applications, Volume II!

You can buy it on Lulu.com here: The Architecture of Open Source Applications, Volume II, dead tree version

Or you can wait a week or two and find the complete text (of my chapter and all the others!) here for free: AOSA online

I’m very happy how it turned out; it was a lot more work than I expected, but it was worth it. Greg Wilson and Amy Brown edited the heck out of it, I would love to work with either (or both) of them again. Thanks to them for pulling the whole thing together! Thanks also to Richard Barry, the primary FreeRTOS developer, for his technical help.

I’m looking forward to reading the whole book myself; so far I’ve only read my chapter.

A few choice chapters that I’m particular looking forward to reading are:

So check out the book, either online or in paperback, and enjoy!

Two views on developing for Apple

Two different (opposing?) views on developing for the Apple ecosystem after today’s WWDC love-fest announcements:

The first is from Des Traynor’s post, “Playing their game”:

Apple always look out for their customers. They will always look to improve the experience. If that means adding software to their platform then so be it. If that software is in direct competition with your software, then so be it. If they roll out the software as a free update across all operating systems, leaving you for dead, then so be it.

Their ball. Their game. Their rules.

The second is from Marco Arment’s post, “What Safari’s Reading List means for Instapaper”:

So I’m tentatively optimistic. Our world changes quickly, especially on the cutting edge, and I really don’t know what’s going to happen. (Nobody does.) But the more potential scenarios I consider, the more likely it seems that Safari’s Reading List is either going to have no noticeable effect on Instapaper, or it will improve sales dramatically. Time will tell.

Des says you should stay the heck out of Apple’s way. If Apple might ever create it, you don’t want to be anywhere near it. If Apple decides to create the thing that you’ve created, they’ll kill your business. That makes sense.

(He also says that Apple looks out for their customers, which is almost, but not completely, incorrect. Apple looks out for their customers’ money, not their customers. It’s an important distinction.)

Marco says a rising tide lifts all boats. Apple’s new (free) product looks a lot like Marco’s existing (not free) product. Most people don’t know offline reading exists, so with Apple’s (free) publicity he hopes more people use an offline reader, and if he gets some new revenue he makes out okay. That makes sense too.

It sounds like Des thinks of Apple as powerful, childish tyrant. “You don’t want to be around when Apple loses its temper!”

Marco, however, seems to think of Apple as a morally neutral, unstoppable force of nature. “Good thing my boat is ready to sail, because we’re gonna get a lot of rain!”

Des and Marco each seem to be glad to be where they are, out of Apple’s direct path or in it.

Who is right? Apple: steer clear, or sail near?

And where are you? Out of Apple’s direct path (or Google’s, or Microsoft’s, or Salesforce’s, or Oracle’s…) or in it?