Wednesday, May 2, 2012

Reflections in the morning light


The hot caffeine makes me feel better. More psychological than physical, it reassures me that things are OK and I'm able to do whatever my day will demand. It gives me energy to press forward; when I wake up, I'm awake and may even be brightly so, but almost always lack the extra reserves of energy that anything beyond reading require of me.

Four years of Berkeley mornings have not warped me, but they have given me a glimpse of what tranquility can be: perfect sunshine, a gentle easy light that brings out the greens of leaves and grasses, the browns of wood fences and houses and treetrunks; a clearness to the air, lacking excessive heat or humidity; the fresh, clean, organic smells of plantlife awakening to the morning and disseminating their pollen for bees to find. Sure, there are cars and horns (though not too many of the latter); traffic and chores and strollers and people on phones. And of course it's easy to ignore the gentle pleasantness and focus on the podcast, or the day ahead, or a thousand other distractions. But Berkeley is always here, ready for the morning commuter to open his eyes and nose and perceive it.

It's the light that really makes our kitchen something special - the sunlight as it rises, giving the surprisingly elegant linoleum tiles a character far outstripping their simple black-and-whiteness. The morning gray sky (though not today; perhaps that's a relic of the winter months; I certainly remember many brilliant blue mornings) filling in the gaps between the tops of houses, as different from each other as their collective whole is from the suburban sameness that shamefully dominates so much of this brilliantly beautiful country. The shabbily-pale green of the hills off to the right (East) and the much richer greens and browns and whites of the leaves that block us from the Bay to the West (left).

Sunlight is not all the same. A clear February morning in Chicago, and a clear May morning in Berkeley: both are blue skies with a dominant sun just out of reach, but to look at them is to know instinctively the bitter cold or blissful warmth that awaits outside. How much of this is a trick of context, I'm not sure; I know that clear May mornings in Berkeley are typically not cold and so I see things that are not there, perhaps; indications of a temperature that isn't actually conveyed by anything more than the calendar. I know a clear February morning in Chicago is going to be ass-bitingly cold, and so I see that in the light on rooftops and sidewalks. Yet I feel certain that if I saw a photograph of a sunlit street in February and July, the light alone would help me know which was which.

It's the everyday pleasantness of life in Berkeley that I worry about missing the most, and that I'm not sure Chicago will replace. Of course there are those glorious spring days, coming out of the cold, where the energy and optimism of the imminent summer infects every activity with joy. But the November afternoons - will enough of those be quietly pleasant enough to make up for the lack of the everyday niceness of Berkeley? I suppose I shouldn't worry; plenty of people even in my own family have left here for there and never looked back. They must have experienced this same general pleasantness (the weather is changing, but not by that much in the last 30 years that they wouldn't have had such days as these), so maybe I should just ask them.

Tuesday, May 1, 2012

A new kind of literacy


Today I hacked my camera, taking it back from the limitations its programmers imposed on it out of a desire to sell more expensive models. I didn't write a single line of code, only used the command-line twice, and yet the process would have been bewildering for most computer users. I was able to do it because I've spent a short lifetime using tech and writing code; both the concepts and the computer-DIY skills I've picked up along the way helped me do something entirely outside my normal domain of experience.

This, I think, is what constitutes the sort of fundamental technical building blocks we should be giving every citizen - though we need to come up with a better name than "technical building blocks", since that metaphor isn't really domain-appropriate. This is an important type of literacy, increasingly relevant in the 21st century and kind of nonexistent for most of human history into the 20th century. The language of computing devices requires some training to understand, and Turing machines being what they are, and their programmers being who they are, a lot of that knowledge is transferrable. I learned about partitioning disks when I was first trying to install Linux on my desktops in high school, and since I was already familiar with the concept, I found it easier to install a hack on my camera today.

So what kinds of things should we be teaching people, in order to give them this basic skillset? Here are a few proposals (that perhaps betray a mindset already a few years out of date):

1. Scripting - most people don't really ever need to know how to program, but would benefit from knowing how to make a computer do something automatically. Both the process of learning how a computer thinks about things like "commands", and the actual ability to issue those commands in an automated way, are an important part of computer literacy.
2. Assembling a desktop - this is increasingly an unnecessary skill for most people's lived experience - laptops and smartphones don't really permit any real kind of hardware hackery. But understanding how a computer's parts fit together, how to take them apart and assemble them, and what those basic parts even are, is as useful as knowing the basic geography of a car's hood.
3. Using a command line - not only is it helpful for future job prospects (command-line familiarity, in my experience, is surprisingly rare outside of coders and sysadmins); learning how to phrase questions in a language a computer speaks teaches you a lot about how it thinks and what its capable of. In many ways, this is a skillset very similar to scripting, and a lot of what you learn on the command-line is helpful when programming (and vice-versa).
4. Learning how to learn - the most important skill I ever learned in the Internet age was how to learn how to do something I don't already know. In my previous jobs, I've been the lone technical person on non-technical teams; and the questions I got asked were often not ones I knew the answers to. But I knew how to teach myself what our team needed in order to get the job done; and in my day-to-day life, I use these skills all the time. This goes far beyond just Googling a question (although that's very important, and there are subtle tricks to know); it's about how to approach a problem so as to make it comprehensible; how to break it down into component parts and solve those; knowing what types of things computers are good and bad at, and what places on the Internet are good gateways for the former.