Attention conservation notice: what follows is a nice, quirky blogpost that pushed a few of my buttons.

"How I became a programmer". Several of us have heard stories about this. The below is typical in some ways and atypical in others, not least in that this guy can write prose as well as code.

Some of the better quotes:

Shortly before high school graduation, quite out of the blue, my dad called. Together with Major Pruett, we conspired to keep me out of the Air Force. Since I couldn't live at home anymore, I eventually ended up in California with my dad's parents. The nice thing about that was my grandpa let me use his dial up VAX account so I could fire up vi and take dictation in C.


Applications let users do things with the computer, rather than to the computer.

And, of course, the domain name, and the blog name itself.

Heh.

Udhay, who is still mildly puzzled that he never turned into a coder


http://www.atomicwang.org/motherfucker/Index/A9267832-5BD9-475F-98E6-A8C269E91C4B.html

Here's a hypothetical for you: imagine some band you really liked as a kid is touring the casino circuit. You go to see them, and even though you don't normally, you sit at a slot machine and start to play. Suddenly the bells go off, the lights start flashing, and shit goes crazy. You, my friend, have just won the jackpot!

Now, slot machine jackpots aren't like winning the lottery. It varies from machine to machine, but assuming you're a working stiff, figure you walk out of there with a check for your annual salary. What would you do?

We're talking about enough money to change your life, but only just a little bit. You could pay off your debts, but probably not your mortgage. You could get a new car, but not a Lamborghini. You could take a year off from work, but not retire.

What would you do? I knew a guy this actually happened to, so I used to think about it a lot. Then, a few years later, I got my own proverbial jackpot. This is the story of what I did.

I did not have a computer growing up.

I was born in 1976, the same year as Apple, so my dad was just the right age to get into the early results of the home-brew movement. One of my few memories of early childhood is of him coming home with a Sinclair 2000 and a book of games. He sat there for hours typing in the code for Space Invaders, and we played it maybe 30 minutes before turning the machine off and undoing all his work.

I often say that anyone can learn to program, but you have to be born a programmer. My father obviously had a fascination with computers. His father before him was a gifted systems analyst. There isn't a lot good you can say about my grandfather, but if humans, like bloodhounds, can inherit the ability to sniff out bugs, that's obviously where I got it.

None of this is groundbreaking. Ask any programmer how they became a programmer, and they'll start the same way. This is the beginning of what I call the "standard story." I had a computer growing up. I was in the computer club in high school. I studied computer science in college. I got a job programming for so and so. My story starts in the same place, but makes an immediate and severe detour.

After my parents got divorced, anything having to do with my dad was taboo. If you'll permit me the digression, because this shit fascinates me, I want to talk about the word "taboo." The native English word, which is to say, the Germanic word, is "forbidden." The modern German word, of course, is "verboten."

Our word "taboo" comes from the Tongan word "tabu." In Hawaiian, being also Polynesian in origin, the word is "kapu." In Malagasy, the native tongue of Madagascar, they say "fady." I speak a lot more Japanese than I do Malagasy, Hawaiian, Tongan, or German. Yet, I can't think of a word that means the same thing.

Aside from my Japanese heritage, things I inherited from my father include my looks, my Y chromosome, my handwriting, my fascination with computers, and my size. After the divorce, when I was in second grade, my mother and my redneck stepfather saw to it that I was continually and severely punished for all of these things.

All, that is, except for my size. That didn't manifest itself until much later in life, and it's not obvious I get that from my father. Aside from having to know my mother's family are all rail thin, you have to stop and think about what the selective breeding of a warrior class does to a person's capacity for growth.

If my parents had ever fed me it might have become an issue. As it was, I was among the shortest kids in my school until I turned 16. That was when I got a job and started eating. Now I'm 6'3" and weigh 300 pounds. My step-father was a career alcoholic and would be pushing 70, so he's probably dead. Certainly it's better for all involved if I continue to believe that.

So, yeah, I was there with the rest of my elementary school class, sitting in the school's Apple II lab. I learned to program in BASIC and Logo. I learned to use Bank Street Writer, along with the admonition that if we didn't know Bank Street Writer, we wouldn't be able to get jobs in the nebulous future. I was there, but my life was far too complicated for me to pay a lot of attention.

I was not in the computer club in high school.

Fate is like gravity. Its pull is weak relative to the other forces, but it acts over great distances. There's no reason why a nerdy Chinese girl sitting in front of a 9-inch white screen should have attracted my attention. Yet that girl would be my senior prom date, and that computer, the Macintosh, would become my career. If that moment wasn't the force of fate asserting itself over the distance of my childhood, then the centrifugal and Coriolis forces don't exist either.

Even though I knew very little about computers and wasn't in the habit of doing school work, I recognized that she was writing a report. I had access to a decent typewriter. Then I noticed something. When she would get to the end of the page, the text flowed onto the next line. If she had a second thought and inserted, deleted, or rearranged some text, everything just moved around to accommodate her.

I was baffled. I asked her a bunch of questions about it, and she patiently, if suspiciously, explained "word wrap" to me. Her expression was as you would wear if some alleged human asked you why you kept putting food in your mouth. I didn't care. Word wrap blew my fucking mind. I had to get myself a computer, but it wasn't going to be easy.

The problem was all my money was in an account at the Bank of Mom. That was what my mom called it when I got any kind of birthday or Christmas money and she took it. It wasn't gone, she assured me. It was in my account. While she could take money from the account to fine me for misbehavior, the Bank of Mom didn't issue passbooks, checkbooks, or ATM cards, so making withdrawals was nigh impossible.

You might find this hard to believe, but when I was a senior in high school, I was a bit of a wise ass. These Army recruiters kept hanging around the school and my best friend Matt Pruett and I loved to mess with them. As a prank only a high school senior could understand, we let them sign us up for the ASVAB, the military entrance exam. I got a perfect score, and Matt didn't do too shabby either.

Matt’s dad, Major Pruett, stopped the calls from the recruitment office in short order. My mom on the other hand, dragged me to talk to the Air Force. What could be better than a job where they'd feed me, house me, clothe me and, as long as I signed the right papers, send my paychecks to my mom. She also made no secret of her hope they might finally beat the Japanese out of me.

Luckily I’d gotten too fat to enlist, despite my golden ASVAB score. Mom tried several motivational tactics: begging, pleading, threatening, and a hundred-hands face slapping technique right out of Street Fighter. Finally, she came up with an idea so clever I actually have to give her credit. The Bank of Mom was going to have a special promotion. You might even call it a gambler's sale.

Bolstered by a tax from my part-time job, my Bank of Mom account balance was about $1500. While I'm not sure it was entirely optional, my mom was willing to make a bet. If I could lose more weight in 30 days than she could, I would win and double my life savings. In 1993, that was a four-year education at the University of Hawaii.

At first I thought I could just start riding my bike to places other than 7-11, but then I noticed my mom doing a lot of bible reading. She'd fasted before, but did she really have it in her to consume nothing for a month but water and Jesus? That was, at the time, the longest I'd ever gone without eating, but finally, for the first time in my life, I had a computer.

Windows is just plain hard to use. I couldn't even load a game without having to dick around with memory configurations and other bullshit. Finally, I had no choice but to sit down and learn every single thing about that computer. I learned every piece of hardware, every piece of software, every arcane DOS command, every modem control token. I learned it all.

Since I'd enlisted in the Air Force, my mom agreed to leave me alone for the rest of senior year. I stayed up every night hacking away, dialing in to bulletin board systems, endlessly twiddling config.sys, writing batch files, and playing video games. I did most of my sleeping in class.

I did not study computer science in college.

Shortly before high school graduation, quite out of the blue, my dad called. Together with Major Pruett, we conspired to keep me out of the Air Force. Since I couldn't live at home anymore, I eventually ended up in California with my dad's parents. The nice thing about that was my grandpa let me use his dial up VAX account so I could fire up vi and take dictation in C.

When he wasn't around I would explore the internet, something I hadn't had access to in Hawaii. I discovered this technology out of Switzerland that was so new, the "Internet for Dummies" book I bought at Costco only had one paragraph about it. It was call the World Wide Web.

I had this childhood obsession with "choose your own adventure" books, and I had often sat with paper and pencil and tried to write my own, but it was too hard to keep track of all the links. Since keeping track of links was what the web was all about, I learned HTML.

Eventually I did go back to Hawaii and to the university, but I didn't study computer science. All of my friends had gone into it, this being the dawn of dot-com, so I had matriculated as pre-med. I continued writing web pages, eventually discovering BBEdit and switching to the Mac.

Later, when all my friends changed their majors, I tried change mine to computer science, but the university had a policy that everyone in the major had to start with CompSci 101: This is Called a "Mouse." I stubbornly refused to do that, so I studied photojournalism and kept programming as a hobby.

My first programs were bots constructed out of terminal macros. I used to call this real-time 300-bps chat board, called “Saimin.” There were only five phone lines, and members were automatically logged out after 30 minutes. It became a challenge among the nerdier of us to stay logged in all the time.

If the system logged you out, there was a stall that almost guaranteed someone else would get your spot. Your only hope was to recognize when you were about to be logged out, then drop carrier and call back immediately. We'd mess with each other's bots, trying to trick them into logging out. The logic became more and more complex as the battle of the bots raged on.

I did not get a job programming for so an so.

I dropped out of school and moved to Seattle, where I started working for a major airline. The work was physically demanding, but paid well. This was a good, union job you could work until the day some luggage went missing and they eventually found you dead in your tug.

I bought a PowerBook and started programming between flights. My work continued to center around web technology. I learned PERL so I could write scripts for CGI. I learned JavaScript so I could write DHTML. I learned PHP so I could survive the browser wars. I learned XML and Java, so I could work on a project with a design-gifted coworker.

The project was an online training system that ended up saving the company almost a million dollars a year. After being at the airport for five years, I was given a job developing training software. This was my first real office job and the first time I'd really been forced to use a computer for anything other than hacking.

In the real world, they have these things called applications. Applications let users do things with the computer, rather than to the computer. See, in the decade since getting my own computer, I'd never used it for any productive task other than word processing. I played games and surfed the web, which are not productive, and I wrote reports, web pages, and scripts, which are all word processing.

Now I had to make flowcharts and prepare presentations. Using Keynote and OmniGraffle, I could produce amazing results while my office mates struggled with their Windows counterparts. This disparity inspired me while working on my own applications. More and more, I realized what I really wanted to create were Mac applications.

My boss' boss had a nephew who worked at Apple. She arranged for us to fly down to Cupertino to meet him and take a tour of campus. The tour, if you've ever had it, is very short. You walk to Caffé Macs, have lunch, then hit the company store. I expressed my desire to become a Mac programmer, and asked for his advice.

He suggested I finish school, learn to use Xcode, and ditch Java for Objective-C. At first I was taken aback. Nobody likes to hear the truth stated so plainly. But, it was good advice. I started taking classes part time and bought every book I could find on programming in Objective-C.

Some of you may remember that the airlines suffered severe financial setbacks in a few years ago. My airline had to shrink in a hurry, but with unions, nothing happens in a hurry. Thus, they looked to cut management. Since I wasn't in the union anymore, I was considered management. They offered us early retirement, which for me was one year's salary and benefits.

Jackpot!

The first thing I did upon leaving the company was go to Apple's Worldwide Developer Conference. I found a cheap hotel in the ghetto, used my flight benefits to travel, and got a student scholarship, thanks to the fact I'd been taking classes. Honestly, I thought I was pretty hot shit. I had been the only programmer in my department, after all, so I was de facto the best.

Student day kicked my ass. I couldn't keep up with the example project, which was using NSTableView with bindings. It took me all night in my hotel room to finally get it working. The presentations, including Wil Shipley's now famous talk, were simultaneously inspiring and discouraging. The whole week was like that.

It was like I was in high school, studying Japanese. I was the top of my class, and I always knew one day I would go to Japan and it would be awesome. Then I get to Japan, and the good news is, it's so much better than I ever imagined. The bad news is, I don't really speak Japanese. Oh sure, I can conjugate a verb or two, but when it actually comes to real world, rapid-fire Japanese, I'm almost completely incommunicado.

Confronted with a sudden, near-lethal dose of humility, my mind hatched an insane plan. Acting with cleverness and boldness unmatched before or since, I started looking for Wil Shipley. When I finally found him, I blurted out: “I want to work for you, with no pay, for one year.” When I got back to Seattle, I sold my condo, gave away most of my things, and moved into Wil's basement.

It is with more than just a bit of amazement that I look at the pictures of me, Wil, and Lucas, standing on the stage at WWDC two years later, holding our design award. The road from that stage leading all the way back to my dad’s Sinclair 2000 had been long and perilous, but fate would not be denied. I was born a programmer. The rest is just implementation detail.

I was born a programmer. The rest is just implementation detail.



--
((Udhay Shankar N)) ((udhay @ pobox.com)) ((www.digeratus.com))


Reply via email to