In which I criticize Steve Blank’s Observations about the Fate of Apple

Steve Blank has a pretty articulate post here about why Apple is doomed because Steve Jobs has left. The reasoning seems simple and sound: a brilliant visionary finds as a successor an execution-focused CEO, and the company is left to falter without that stroke of genius. Apple loses the drive to reinvent itself (as it did multiple times in the past) and instead only nurtures its cash cows leaving itself open to disruption.

Everything seems logical until you consider a few facts:

  1. Steve Jobs almost ran NeXT into the ground. And his performance at Apple (in his first incarnation) wasn’t stellar either1. This selective read of history seems problematic.
  2. The only big company CEOs that Blank doesn’t mention in the article are the founders of Google. That’s largely because the founders of Google now run mostly failed experiments at a weird company called Alphabet and it’s an execution-focused employee of theirs who runs (& excels at running) Google.
  3. The fallacy that only founders can drive change or influence products in a company. This is the same kind of thinking that’s behind the largely discredited Auteur Theory, where only the director is credited for a movie. Does that seem sensible?

The romantic notion that a brilliant founder can change the direction of a company and move mountains to build great products can be a great movie script. In fact in companies where the CEO is also the major salesperson (like Apple earlier & Tesla now), this is exacerbated because the public only sees a single face.

A real company is more complex. Dozens of human beings work hard to build great products. In good companies, disruption comes from below. An engineer with a great idea made Gmail (just for comparison, the CEO drove Google+). Somebody at Apple invented the Touch Bar to replace the ageing function keys.

Now: Apple might very well get disrupted. It might very well stop building innovative products. The examples that Steve uses definitely illustrate areas where Apple hasfallen behind (AI and Cloud Services).

But the solution is hard work, ground-up iterative innovation and continuing to solve difficult problems. Not a magic reincarnation of Jobs.


On Death

11709471104_49ec1741d7_b-1.jpg1

My aunt passed away today. She was 68, and a happy, lively soul. Heart attack was the initial diagnosis. Some raw thoughts while I still feel them:

  • There is no dignity in death. The instant you die, you become a body to everybody else. “Where are they keeping the body?” People ask. When is the cremation? When are the kids coming?
  • My parents are getting old too. It’s hard to deal with your mom’s and dad’s mortality. Especially when all through they’ve been a fixture, and larger than life.
  • People really don’t know how to behave when they come over to visit. There’s a stilted awkwardness all around.
  • When your kids are so far away, your body is kept in a mortuary until they can come and attend to your last rites. This takes at least 48 hours.
  • My uncle is resigned to his new life, but his eyes brim over when he talks of her death.
  • And finally, I’m 31 now, so around 50% of my life is over. Have I really done what I wanted with my life?

  1. Photo credits: Michał Huniewicz

India Xbox One Support Fail! No Repair After Warranty At All!

Screen-Shot-2016-05-10-at-4-47-47-PM-1.png

I bought my Xbox One around a year ago. It was a good time to buy: Flipkart, Amazon and Snapdeal were head-to-head trying to outdo each other with offers, and I’ve always wanted a gaming machine of my own.

Hari asked me to build a PC gaming rig instead, but I didn’t want to go through the pain of purchasing parts, building and maintaining a custom rig.

In hindsight, this was the wrong decision.

Why? Because one of the major reasons somebody like me would buy an Xbox is to offload the support and repair work to somebody more capable. Apparently though, in India, Microsoft will not repair consoles after the warranty expires. Even if you are willing to pay for the repair.

Microsoft will not repair consoles after the warranty expires

Yup, you read that right. At first I found that hard to believe, but the Xbox Repair Request Website shows something like this:

Screen-Shot-2016-05-10-at-4-49-35-PM.png

Note the text in red: “There are no Offers associated with the problem/accessory type selected.”

Because Offers is a pretty vague way to phrase a repair request, I decided to talk to customer support. Elaine Q at Xbox Support was very friendly but equally unhelpful.

Here’s an extract from the chat log1:

> Vishnu: at 14:26:06
But just to check, can I not pay for the repair?

> Vishnu: at 14:26:11
If I send it in?

> Elaine Q.: at 14:26:46
Thank you so much! So sorry but there's no paid repair option that's also showing up here, Vishnu. The paid repair option is also not offered. My sincere apologies for the inconvenience.

> Vishnu: at 14:27:27
Ok, that's bad. I'll try with OSUDT3.

> Vishnu: at 14:27:33
Is there any other way you can help?

> Elaine Q.: at 14:29:58
Yes please do try it out, Vishnu. It will be very much appreciated. I would really love to process a repair order but I am really sorry as there's no option that's showing up since the system detected that your console is no longer within warranty. But no need to worry, trying out the offline update again is the best possible option. This is not a guarantee and we don't recommend this but you may also try to check with retailers near you if they have any possible option for xbox one consoles which are no longer working but please consider it as well that in case if they modify or alter the console and it gets fixed, you will no longer be able to connect to live.  

This is frankly, preposterous. Microsoft can sell its consoles here, but can’t be bothered to offer support.

If I can’t find a way to resolve this, I’m swearing off the Xbox platform entirely for a long time. A shame, because it was looking really promising with the Windows 10 unified app platform and backwards compatibility and all.

Following Hari’s advice again, I’m going to go with a PC gaming rig instead. Other positives that work for a PC:

  • It’s a real computer. Every app should work.
  • Games are so much cheaper.
  • One major drawback was a good interface for TV, but Steam’s Big Picture Modeis looking really good. It can even add apps and games that are not bought through Steam.
  • No Xbox Live subscription for network play2.

If you have any suggestions on how to fix my Xbox, I would love it. Things I’ve tried:

Just a note that I didn’t cause this Xbox failure in any fashion. The power conked off in the middle of a software update and from then on, Xbox wouldn’t start up3.

In short, nothing seems to work. If I’m not able to find a solution for this, I will strongly recommend that you do not buy an Xbox One from India.


  1. The OSUDT3 option up there is the Offline Diagnostic Tool which unfortunately does not work for me.
  2. I play mostly RPGs and MMOs, so this is a biggie.
  3. Yes, a real third-world problem. Power cuts!

Engineers Do More than Algorithms

Good computer science know-how and engineering skills seem to be generally thought of like this:

1.png

The implication, of course, is that you need to be a computer scientist to be a software engineer.

2-1.png

If you remove the words “computer” & “software” from this & make the diagram more general, some of the absurdity of this assumption will bleed through:

3.png

i.e. to be a great Engineer, you first need to be Scientist or a Researcher in the field. This rings patently false.

Of course, Computer Science as a field is useful to become a Software Engineer. It’s just that at least, the Venn diagram should be redrawn like this:

4.png

A lot of working engineers would agree: they have used at least some of the skills and know-how that a computer scientist would pick up, but it’s not the primary thing they do.

Engineers do more than Algorithms.

They write legible code for other human beings, they think of creative solutions to real business problems (often by judicious use of libraries and software that other engineers have painstakingly written), they contribute to writing maintainable code, they document & test, and far often than worrying about O(N) complexity, they worry about building something useful and valuable.

Good Engineers do know when to use a Hashmap over a List. But they also know when to pick Redis over MySQL (Technology Choices), how to not reinvent the wheel (NIH Syndrome), and when to consciously write hacky solutions to further business goals (Pragmatism) & when to revisit it to make sure foundations remain strong (Technical Debt).

Engineers do more than Algorithms. Good engineers value collaboration and teamwork over the competition (like ugh, Coding Contests. They understand that even though they are called “Engineers”, the ephemeral code they write is not the same as brick and mortar or steel and cement. Code is fluid, and writing code that lasts and changes and builds on itself needs different planning & team management than you’ll find amongst architects or construction engineers. They value Agility over static upfront planning, and they’ve learned (often the hard way) to stand up to dysfunctional managers and team leaders who think of building software as raising up a dullard pillar: all labor and effort and a little creativity.

Good programmers are writers. They are craftsmen, working hard at their tools and tasks, learning skill & gaining experience, making wonderful tools and useful products for everybody else.

Great Software Engineers work together like a team of artists. They value each other’s work, they complement each other’s skills, and like a theater troupe, they put in their best performances to build something truly great.

Let’s redraw the Venn diagram:

5.png

Engineers do more than Algorithms. Our field sure does value the knowledge we learn from Computer Science. But let’s make sure that we understand what we do is broader than and different to what Computer Scientists and Researchers do. This is doubly important because the most profound change we need in this generation is this: everybody should be a programmer. We’d like everybody to learn how to code, but that will not happen if we continue to place the wrong emphasis on what we do and who we are.


If you agree with what’s written here and would like to contribute to a small video my company is preparing on the topic, please write to help@sv.co. Thank you!

Please hashtag your thoughts with #EngineersDoMore so I can follow up.

Ride from Kochi to Andhakaranazhi Beach, Thaickal Beach & Fort Kochi

DSCF8899.jpg

Today I took the bike on its first breaking-in ride. Here’s quick impressions, route & notes.

  • Trip length: ~100km (to n fro)
  • Route: Map
  • Roads: Good, but not too wide.
  • Traffic: low.
  • Hazards: Few unmarked bumps that might surprise you, and of course the private bus drivers that want to wipe you off the road.
  • Fun Quotient: Good fun!

DSCF8902.jpg

Andhakaran-azhi Beach is the first pit-stop. To get here, you turn left from Thoppumpady until you reach the road colloquially known as the Fort Kochi Beach road. If you turn right on the dead-end you’ll reach Fort Kochi & Mattancherry. Turn left instead and keep going until you come to the beach. It’s around a 20 km ride hugging the coast with greenery all around. The road itself isn’t too wide but traffic is low and it’s quite a comfortable ride. The destination is unmistakeable because the road will open up to the beach on the right and a well-adorned bridge will lead you to the beach.

The beach is pretty well developed for its location and in addition to the usual baji vendors, frolicking children and cricket & football playing folk, you also get to see a rather ostentatious walkway constructed so you can view the sunset in style. I reached there quite early (5.30pm) so decided to move on to Thaickal instead.

Thaickal Beach is perhaps around 10km down the same road (note: don’t go back over the bridge but instead take a right so that you continue on the same road). The road to the beach is a small road to the right that is pretty easy to miss, but as far as I remember it’s the first cross-intersection that I came to. Take a right: the road extends perhaps 50 meters, park your bike and you have a much less cluttered beach to enjoy the sunset in peace.

Because there was still light available I decided to head back to Fort Kochi (straight line road ahead) and have some food from there before heading back home.

DSCF8913.jpg

While having dinner, this guy was with me throughout, meowing for scraps.

Final trip meter:

DSCF8915.jpg

Impressions about the bike & the ride:

  • The bike is rock stable on the road, even on low speeds at low gear.
  • Like all Royal Enfields, there is significant vibration at lower speeds. It steadies up as I pick up speed though.
  • I never can seem to get the right rearview mirror correctly placed. Even with tons of jiggling I can’t quite comfortably see the road back.
  • The feel of riding the bike is really nice. I’m not a vroom-vroom rev-happy speed kind of person. The gentle curves and acceleration on this bike is really good.
  • I have zero direction sense so even on this small trip I got lost at Fort Kochi. Google does help out but the fact that you have to stop the bike, take your phone out and poke at it is distracting. Perhaps I’ll get a phone mount.
  • Just like the phone, another accessory I tout around is my X100S (that’s what took these photos). Having it around the neck quickly leads to some neck pain. Not sure how to solve this. The easiest solution might just be to carry a bag.

If you are looking for a quick ride out of Kochi, do follow this route and let me know! Cheers.