On January 5, I made a whimsical New Year’s resolution. Like the other roughly 400,000 people who signed up to Codecademy’s Code Year challenge, I decided I would make 2012 the year I would learn how to code.
Usually New Year’s resolutions are about things you’ve been trying to accomplish for a while, or at least something you’ve been thinking about. I can honestly say, it had not once crossed my mind at any time before January 5 that I should learn to code. Or that I would ever want to code. To be totally honest, I wasn’t even quite sure what code was.
I was hooked by the headline of an article by Douglas Rushkoff on CNN.com. “Learn to Code, Get a Job!” Coding, he argued, was a skill that not enough people had, and companies were paying big money to find people who were “code literate.”
I was curious. For the last eighteen years I’ve supported myself primarily as a book critic. But the paying work now available to book critics, even those with almost two decades of experience, has pretty much dwindled to non-existent. People still call me regularly. But more and more they believed I should be doing this as an act of philanthropy, from my sacred perch as a wizened elder keeping the old ways alive. And why not? Everybody and her kitten has a book blog. What makes me and the roughly 20,000 hours I’ve spent doing this so special?
I can’t say I quit my job, so much as accepted that the world has quit my skills and expertise. I’m not bitter. I loved what I did. I’d curl up and die in my dusty but comfortable room full of contemporary first editions. But I’m the single mother of an eleven year old boy, so this is not a currently a life option.
I went to the codecademy site. Typed in my name as a “string.” And so it began.
And continued great for about ten minutes. Until it got harder.
Half an hour later I was staring at a screen. Squiggly lines and semi-colons were dancing in front of my eyes like alien creatures. I had felt this gut full of confusion before. Where? Oh, right. That time my son’s father and I drove across the El Paso border and found ourselves in Ciudad Juarez. Two Montrealers with about 20 words of Spanish between us. ( I don’t know where we’d gotten the idea that Juarez would be a friendly border town, kind of like Burlington, Vermont. But it's not.)
Fortunately my son, Ben, was also curious about codecademy and was able to help me.
“What’s wrong with me?” I wondered. “Why is an eleven year old kicking my ass at this?
I now realize that Ben had an edge. Like most Montreal kids, he’s fluently bilingual. Since the age of 14 months, when I enrolled him in French language daycare, his brain has been trained to sift shared syntax from distinctive details. “Mom,” he sighed loudly, clearly enjoying his exasperation with my unusual attack of mental density, “if you write something after console.log, you have to put it in parentheses.”
My brain had also been trained in two languages, but apparently the master gears needed oil.
Cut to twelve weeks later. Ben’s still learning to code, but at a slower rate. Turns out that age and experience are helpful assets in cultivating the sheer bloody mindedness it takes to master this skill. An innate talent for perceptual reasoning probably doesn’t hurt either. But like any branch of science, and life in general, to succeed all you have to be willing to do is fail. A lot.
A couple of Wednesdays ago, Ben came home from school to a mother lost to the dark obsessive frustrations of “Snake Eyes.”
The challenge was to write a program that would record the random dice scores of four players, giving each an extra turn when a double is scored, but grinding the whole game to a halt when any player rolls double ones. This is, no doubt, an elementary problem for any programmer. But I was stuck; and until I figured it out, dinner would have to wait. Or Ben would have to learn how to find his way to Mcdonald’s and buy us both dinner. Which he may very well have done. I’m not sure. My memory of that evening is still hazy.
One day maybe I’ll look back on Snake Eyes as something akin to my first retreat into the desert of programming.
I just know I emerged a different person. Somebody who now sometimes has thoughts like “you know, a well sustained metaphor really works an awful lot like a multi-dimensional array.” Somebody who used to deal with panic through deep breathing exercises, but recently decided it would just be a lot faster to assign my anxiety to a variable and de-increment it in a “for loop.” Somebody who knows that most people will probably read that sentence as complete babble. But somebody who kind of doesn’t care. Because some people will get that joke. And those are my people now.
Maybe.
My moment of programming satori will no doubt wear off. But I do know that my resolution to learn code ceased to be a resolution a while ago.
Whether or not I continue, I’ve realized something important. For too long I’ve bought into a false dichotomy between books and technology. Because they’ve been with us for so long, we think of books as something natural, like trees. We believe they grow slowly and organically through the creative earth of the human soul.
Who can watch the horror, as technology mows them down!
Lo! It is the hero, Jonathan Franzen. Alone with nothing but his rapier condescension, falling to a mechanized army of tweets.
I know enough about the book industry to know what an illusion that is. I love books, but I also know that they are books, not sacred objects. What I didn’t know before, however, in a concrete way, is how much of technology is actually writing. All the things we think are destroying writing, are actually manifestations of writing. Robots are writing, 3D animation is writing, behind all the magic visuals, wizard of Oz-like, are the new writers.
The magic cannot happen without the people who love to play with the clunky blocks of text that keep the dream spinning. And the people generating the blocks of text, combining hard won craft with instinctive art, are not all that different from the people who used to write books, or screenplays, or even book reviews.
Just like the writers of yore, some of them are making heaps money. But just like the writers of always, many of them are giving their knowledge and mentorship away for free. Free for anyone with enough stamina and commitment to learn it.
Maybe codecademy will help find those people. But just as importantly, maybe it will help them find themselves.




Salon.com
Comments
If nothing else, Ben is learning it. Which is good, because Montreal it turns out is the third largest creater of video games next to sillicon valley and Japan. The guy who created Assassin's Creed is from here. And more and more companies are moving here all the time. So it's a great place to incubate kids.
And it's not so much the innate facility for "language" (is it language?) that worries me, it's all that higher order thinking. Yikes. My head is hurting. It looks like the subjonctif, only in computer. /r/
Enjoyed reading this.
Thanks for reading Jeff. It's good to remember that there are ancient coders. They all seem so young!
Thanks Erica. Codecademy is coming out with a course specifically directed at teenagers in the summer. Looking forward to checking it out.
The biggest hazard you will run into, now that you are joining (another) rank of hacks ;-), is the tendency to write logically and syntatically correct run-on sentences and dangling comments.
(I never do this)
I know just enough code to help me customize websites for people. Code, as my beloved WordPress says, is poetry. Kinda like math is truth, unless it's fuzzy math, which is something else altogether, but that's for another day.
Good coding is like good writing: powerful and precise, lean and hard-working, elegant and simple.
Yeah, code is poetry.
I admire you taking on this challenge.
Maria, always great to see you too. One of the best things about learning to code is discovering all the people who've been doing it for years. There's this great blog I discovered for journalists learning to code. I like this girl.
My husband is a programmer, and he always tells me that people told him he could have/should have been a writer. He is, in fact, one of the fastest and best writers I've ever seen, though he's "only" (there goes that writer's condescension) worked in techie jobs.
You make me want to learn how to code.
The reason that code matters is because code does things that the business class can understand. College kids, and 60 year olds who imagine they're still in college, love talking about imagery and angst and character. The people that make the money get that money through writing code.
I never did professional code. But with my first real computer, an Atari 800, I learned assembly language. I figured out how to add code to a simplistic word processor program, so the words would print out centered or with paragraph tabs, something the original didn't have. (This was when the real word processors for the Atari was hideously expensive.) I was so proud, I sent an article about it to the Atari magazine - who rejected it. It was my first indication that writers of any kind - even writers of code - are no longer paid.
Welcome back.
r
After leaving teaching I got deeper into web technology and was able to join my graphic designer-life partner and build websites. After 10 years of tech, I'm now collecting Social Security, our daughter is doing what used to be my web tech stuff and I'm writing about labor issues and labor history (for free of course).
Tech was great to learn and it helps even now. It's kind of like high school was for me. I took 4 years of electronics shop and would go from reading schematics to reading modern poetry. To me it was all good.
There's no reason for there to be a division between humanities and technology. It's all human isn't it? And as for English majors learning coding? Boy, if you think a typo or a syntax error is bad in a book review, just watch how it blows up a few thousand lines of code.
I'll bet English majors would be damned good at coding.
yeah its enjoying a bit of a resurgence or new cachet comparable to the dotcom frenzy/bubble/fever that peaked about 12yrs ago or so [and left a lot of wreckage in the wake]. Ive been coding since a teenager and one can indeed earn a great living at it, but it can be cutthroat at times. its been good to me salary wise but the jobs and environments are very unstable imho. (your mileage may vary). its all based on projects which come and go (or live and die) sort of like movie sets that get built up, filmed, and then torn down, and the teams scatter and go elsewhere. a great book on the subj is called "close to the machine" by ellen ullman, silicon valley coder, a rare literary work based on code.
coding does indeed have many glory years left, some very big ones left I predict [advancing AI is now a reality on the horizon] but I fear it is not making the world less a darwinian rat race, but sometimes, more of one.
cs.stackexchange.com
I can tell you as a programmer of operating systems, network systems and countless other projects since 1979, it can make one bug eyed.
Learning a syntax such as HTML or javascript is the tip of the iceberg. Once you have that you still have to solve a problem like the one you describe.
The difference between programming and writing is that even poor writing like mine can be understood because of the ability of the human to make sense of misspellings, typos, bad grammar and even ambiguous pronoun references.
Computer have no forgiveness. Computers will quickly complain when your syntax is wrong, but when it is correct, the computer cares less about what you told it (or think you told it) to do.
It obeys every instruction without prejudice. It does not care if you are a genius or an idiot. It assumes you are a genius. Why would you have told it to do something you did not mean? :) If your code causes the screen to go blank, it assumes that is what you intended.
But, once past the syntax, programming is problem solving. Just at a low and tedious level. What I have found in my career is that one has to have the capability and desire to live bug eyed.
Many people would enjoy the challenge of an IQ test occasionally.
Not too many people want to do it all day long every day.
The real key is problem solving. Languages are just the way to communicate the logic to the computer. My feeling is that anyone that can solve logic problems can learn the languages.
I just found this link to a classic logic/computer problem.
http://www.mathsisfun.com/games/towerofhanoi.html
Try it with 3 discs. Once you get 3 in the minimum moves you can see that 4 or 5 discs is just the same but more tedious than 3. Us techies call it recursion.
Many people can did this. The question is does one want to do it all
day?
The tower puzzle is a good example of what is hard in the high tech industry. Let's say you are given this problem on Monday and told to complete by Friday. You may be done by lunch on Monday. Great. Take the week off. But since you don't know how long it will take, you may work 12 hrs on Monday, Tuesday and Wed.
After 3 days and 36 hours you are done. If you had known in the first place it would take only 36 hours you could have avoided the stress and overtime and still been done on Friday easily.
And then there is the problem of working stupid hours day and night and Friday comes and you are not done. Uh - oh.
It is a high stress industry. In the old days we used to try to predict numbers of lines of code and man hours to do a project.
It was never much use. Companies like Microsoft and Apple never embraced that nonsense. They just told programmers what the deadline was and expected results. And people worked and still do work crazy hours.
When we can write compilers (the programs that translate language into 1's and 0's), that can understand ambiguous human language
then we will all be programmers. And to a small degree we have that with current speech/text recognition.
Also thanks for that veteran perspective. I'm not sure I see myself going into programming for the long haul. But I'm finding it incredibly useful as a journalist to get a functional grasp of it.
If only so that I can help/encourage other people to have a more confident dialogue with the techies of the world, and vice versa.
I can't understand digits.
I ask help to 'cut & paste'
`
gadgets are like foreign tongues.
`
Yankee stadium a batter bunts.
apology . . . we 'bump' on feed.
I annoy back (tease) if we bunt.
`
blunt?
`
no puff blunt on commode pot?
`
obese farmer on pot
in outhouse
breaks the potty seat
`
Ugh . . .
Have sweet air thoughts.
Walk and hear warblers.
Focus:
`
Finally, sister/brothers,
whatever is noble,
whatever is right,
whatever is lovely,
anything excellent,
admirable, praise-
worthy ~
think about that.
Sense the beauty.
No be stinky cruel.
Have a happy day.