We need to learn how to teach

Programming is a field where we need to constantly learn lots of stuff. So learning how to learn is a fundamental skill we should have been taught from the beginning. However, we still waste lots of time by reading books or going to courses only to forget  most of what we learned within a few days.

There are ways for students to improve memory retention and understanding, like using flash cards apps with spaced repetition algorithms like Anki.

But I think for teachers to set themselves apart and really show that they care about the students, better ways of teaching are not that hard. Instead of just putting up a text-based tutorial,  give the programmers exercises with a tiny bit of information and a few pointers on where to learn more. We understand better by doing, not just by reading.

Also, if it’s worth learning, it’s worth remembering much later.  Help the programmers by giving them a flash card deck that they can use forever. See if you can somehow incorporate long term retention functionality in your eLearning software.

The moment I became a software developer

I just came across Haruki Murakami’s The Moment I Became a Novelist. It’s short article and tells a story when Murakami went to see a baseball match in 1978 and had an epiphany:

I think Hiroshima’s starting pitcher that day was Yoshiro Sotokoba. Yakult countered with Takeshi Yasuda. In the bottom of the first inning, Hilton slammed Sotokoba’s first pitch into left field for a clean double. The satisfying crack when the bat met the ball resounded throughout Jingu Stadium. Scattered applause rose around me. In that instant, for no reason and on no grounds whatsoever, the thought suddenly struck me: I think I can write a novel.

This sounds almost religious in nature, like a deity somehow helped him find his calling. Did he really not consider writing before that? Does his memory fail him, is this a memory construct that makes for a good story but doesn’t hint at what really happened? I’ve never experienced anything like this myself.

I often tell people, when asked about why I do what I do, that I knew I wanted to be a software developer at the age of 10. But it wasn’t a sudden realisation. It came to me after getting an Amiga 500, playing games and then realising I could make my own games. I vividly remember a summer trip to my aunt’s place in Norway where I brought a book on BASIC and devoured a tutorial on how to make a hotel booking system. I was utterly enthralled and thought “maybe one day I can make hotel booking systems for a living”. From then on there was little doubt I would do this.

Except of course when I turned 13 and got into playing rock music on my guitar. I spent the next 7 years feeling lost, because I really wanted to be a musician but the career opportunities seemed unfeasible. It wasn’t until after a brief stint as a data entry clerk in the UK that I came to the conclusion that I needed to get my shit together and go to uni. So I studied Computer Science and here I am at the ripe age of 35 with 10 years of software development experience, thinking I always knew I wanted to do this. But I didn’t, and writing this made me realise that.

Why did eBay succeed?

I just finished reading the book The Perfect Store: Inside eBay and it was quite enlightening. From what I understand, eBay succeeded because:

  1. They had a very solid first-mover advantage because they built a strong community of users and thus had a lot of sellers and buyers on their site. This made the switching costs very high.
  2. They were very frugal, they perfected the art of thriftiness in a time were IT companies blew boatloads of cash on furniture, scotch and acquisitions.
  3. The founders stepped aside and allowed experienced managers to run the company, as opposed to trying to reinvent the managerial wheels once the business started making lots of money.