I learned Java without a computer


I can recall being with my family in southern ohio on a pontoon boat, on a lake in the woods.  There was a strict “no technology” policy enforced ruthlessly by my parents.  Of course I hated it, and the next best thing I was allowed to do was bring my programming books with me.

“Teach yourself java in 21 days” was an incredibly well-written book.  I read this book so much and so often that the flimsy paper cover lost its plastic and ended its life with a barely recognizable cover in the ACM office at UIUC.  I believe it’s still there.

But what’s remarkable to me is that I didn’t have a computer when I learned the guts of my java knowledge.  This was probably 8th or 9th grade.  I’d played with VB for a year or two, and before that made my own little html/css/javascript web pages on angel fire in middle school.  It’s fascinating to me to look back and see how my programming skills and knowledge accumulated.  It was, almost 100%, for fun.  All of it.  I’ve had several discussions about “why” people want to code.  And holy hell, are people different.  Some people want jobs.  Some people chose CS when they got to college because it looked neat.  Some people learned from classes, others from digging into open source projects.  Some people attended lectures, others read books.  Some people loved the idea of building something functional out of nothing.  Others just want to make some money.  Some want to be famous hackers, others are content bit twiddling in their basements.

I remember fuzzy things about my Java learning experience.  I first read an antiquated Java 1.1 book that probably cost $3 on the bargain shelf at border’s, and then finally acquired the 21-days java 2 book.  I remember the first time I understood what GridBagLayout meant, and I absolutely remember the first time the “interface” idea caught on, with respect to java’s class ideology.  Class inheritance?  Lightbulb moment.  How event handlers worked?  Done.

All of these lightbulb moments occurred many miles away from the nearest computer. That fact hasn’t detracted from my ability to acquire new programming skills and understand different ways of thinking about code.  I’m certainly not saying it’s helped, but I suspect it has.

It’s been so long since I “learned” how to program that these memories are starting to surface.


Emotions feel physical. They feel like concrete, intrinsic things of their own accord. “Feeling” is something every human being on the planet can relate to.

Take catharsis, for example. It is a very real phenomenon. Crying literally seems to “release” emotions. Sadness, stress, and the like are literally made up, on the inside, of hormones in our bodies. What causes them? Our consciousness causes them.

When you get angry, it’s because of your mind. You have comprehended something that has triggered in your mind a feeling of anger, which underneath is just a combination of chemicals coursing through your blood.

Emotions are quite literally the link between consciousness and the physical underpinnings by which such consciousness arises.

Beautiful Technology

“The products suck!  There’s no sex in them anymore!” – Steve Jobs, just before his return to Apple (1997)

Why is Apple the only company that makes technology that doesn’t look like it was crafted by robots?  There are several common answers.

1) They control the entire supply chain and are vertically integrated.  This is a fact.  However, I don’t think this answers the right question.  For example, there was a long period (basically when Jobs was absent) when Apple’s products were nowhere near as awesome as they were before and after.  Being vertically integrated allows Apple to exercise a seemingly unmatchable amount of control over their products and keep their costs low.  It doesn’t mean they automatically make better products simply because they’re cheaper.  It just means they have more control and keep costs down.

There’s a quote from Alan Kay that goes like this: “People who are really serious about software should make their own hardware.”  Can you name a single other company that does this?

2) The best designers work at Apple.  I hear this a lot — and I think it’s obvious that it’s not true.  Two things are happening here: Apple has good designers and bad designers, and we see the cream of the crop in Apple products; and lots of good designers never see their ideas pushed into production.  Additionally, a good design isn’t equivalent with a good product.  And what does “design” mean?  It’s not granular enough.  The Newton looked good but sucked.  Why did it suck?  Because while it looked good, it lacked that critical balance of design on the outside and the inside.  The user experience wasn’t there.

3) It’s Steve Jobs.  While the correlation between Apple’s success and Steve Jobs’ presence at the company is undeniable, I am still not convinced Apple will start making shitty products when Steve is gone.  Jobs has spent the past decade and a half working with the entire company to build these great products.  It’s not just him; he’s just the public face.

So what is that balance Apple strikes in order to make beautiful technology?  They took multitasking away from us.  Multitasking.  If you had asked someone in 2001 if it made sense to disable MULTITASKING, they would’ve laughed in your face and called you a charlatan for questioning something so basic to everyday computing.  Why did Apple do it?

They did it by changing the question.  Technology doesn’t exist solely for humans to choose between the best solutions.  That’s what the market is for.  Technology exists to make our lives easier, to take away those pain points.  Once those pain points are identified, technology can make our lives BETTER.  It can connect us with people, but again, those connections aren’t about choice; they’re about the best experience and how to facilitate human connections.

This is what I want to do.  I want to create technology that enhances our lives and makes a difference.  Apple products inspire me because they show that it’s possible to show people something they haven’t seen and didn’t even know they wanted.  I remember trying desperately to convince my parents to buy android devices when they decided to throw away the old flip phones.  After a year and a half, my mother had countless problems.  And she’s a smart woman.  Her email would get screwed up, she’d have to reset her account, constantly couldn’t figure out how to upload a photo somewhere or listen to music.  She wasn’t forgetful; I completely understand her problems here.  It just wasn’t as easy to use as it could be.  At one point, I handed her my iPhone and asked her to check her mail.  She did it with ease.  I then asked her to find me the quickest route to the nearest grocery store (we were in an unfamiliar area) and it worked without a hitch.  She asked no questions, had zero problems, and everything worked.  It was like magic.  A week later she bought an iPhone.

People shouldn’t need to understand how technology works in order to use it.  At all.  I think the biggest reason not many people make sexy technology is because most people making the tech don’t know what’s sexy.  They don’t know how.  Jobs, Ive, and the countless others at Apple know how to do this.

I often get raised eyebrows when I confess my apparent Apple fanboy-ism.  The reason I love Apple products is because I don’t need to understand how they work in order to use them.  Isn’t that the goal of technology?  Apple got it right — choice is only a secondary priority.  The first priority for technology is to make it magical.