I was once, hard as this may be to believe, a much bigger geek. Oh, sure, I can still kludge a little code, fake my way through cocktails at CFP, even chuckle at nine out of 10 xkcd jokes. But, say, 16 years ago, on a night like this, I’d be sitting at my desk in my 2600 T-shirt, warding off the heat with my eighth can of Jolt cola, listening to Pretty Hate Machine on repeat, and modding the C-source to my old-school dial-up BBS. There’s a universe nextdoor where I’m blogging from some tropical island, having retired at 20 just before the dotcom bubble popped.
Here on Earth Prime, alas, I let my programming skills atrophy young. Partly this was because I got interested in other, more typically teenage things, but it was also that (once I gave up the BBS, at any rate) there wasn’t a whole lot I wanted to do with that skil that seemed efficient for me to do. Knowing enough C to mod my board was handy, and I recall writing a few crude games for my little brother as a lark, but for the most part, writing something interesting would (it seemed) require huge amounts of time and effort. Usually, there was a cheap or free program out there that would do approximately what I wanted; if there wasn’t a program out there, it was probably a task that required more hours and energy than I was prepared to put in as a dilletante programmer.
Recently, though, I’ve found myself thinking it might be worth my while to bone up on PHP (beyond the crude bit I’ve picked up to do little tricks on my site) or even learn some Python. What’s different now? In a word—or rather, an acronym—APIs. “Duh,” say my techie readers, but bear with me a second. What I mean is that there’s not only a lot of code libraries out there that can handle various routine tasks, sparing my having to reinvent the wheel, but there’s also a huge amount of shared content out there organized to make it deliberately easy to play with: Flickr photos, YouTube videos, Twitter feeds, etcetera. So let’s say I think it would be nifty to have a realtime map of all my friends who use Twitter with some kind of geolocator tags, like the Twinkle iPHone app supplies. For me, it’s a curiosity. But you can imagine it being super handy for, say, protest organizers, or someone running a citizen journalism site who wants to see if any users are within range of a breaking story. Probably there’s still some tricky coding involved, but most of the heavy lifting, both in terms of programming and gathering all the vital data from users, has been done by Twitter and Twinkle and Google Maps already. My job is the rather more limited task of getting them to talk to each other. Permute with as many different Web services as you can imagine being recombined in funky ways.
So far, so familiar: Open-sourcey, hopey-changey, brave new world, blah blah blah. The interesting and seemingly less-remarked upon point here is how my incentives change as a result of this. Most of the focus in discussions of open-source or peer production, broadly defined, has been on how new and interesting things can get done when the costs of coordinating small amounts of effort from large numbers of people collapses. And most of this discussion has to do with harnessing preexisting skills: Wikipedia takes advantage of the fact that some people have expert knowledge on a topic, some know enough to improve the subtance of an existing entry to make it read more clearly, some don’t know anything about the subtance of the topic but can still copy-edit. My case, though, is a little different: The point is not that, thanks to lower transaction costs, I can suddenly use my existing knowledge or skills in new ways or to do big things in collaboration with large numbers of others. It’s that this structure of collaboration, and the opportunity horizon it opens up, changes my incentives to acquire new skills.
This, too, is nothing especially novel. In any reasonably advanced economy marked by division of labor, many if not most skills will be “network goods,” at least in a very rough sense. For that matter, one of the very first skills humans acquire in even the most primitive state—speaking a natural language—is of this sort. And if I suddenly find it more worth my while to learn to code in PHP—or, as I did a few years back, to quickly write short, hyperlinked news and commentary—maybe that looks just like the conventional case of changing markets or technologies creating returns to new skills or magnifying the returns to old ones.
I see two possible differences in the current situation, though. First, and probably least important, what we’re talking about here is a change in the return to a middling degree of skill. That is to say, previously, a little knowledge of PHP or Java might help me do a little something on my Web page, but I would need to learn quite a lot more—and invest a lot of time and effort in learning more—before I’d have any hope of, say, becoming a professional coder. There was a wide range of intermediate level of skill that had little use except as a stepping stone to learning more. You can apply the same principle to something like photography or writing, where aside from the intrinsic pleasure of exercising the skill, there’s a gulf between the threshhold level that’s good enough for personal use (my diary; my private photo album) and the level that would qualify you as a pro, or even a “serious” hobbyist. But the potential to both take advantage of the contributions of others and to share your own product with a broad audience (or maybe just your friends on LiveJournal or Flickr) means there’s more to gain from getting a bit better, even if you’re never going to be Annie Dillard or Richard Avedon.
The possibly more interesting difference has to do with ridiculously easy group formation. Something like programming, or maybe just being able to efficiently manage your IM windows, looks like the conventional case of new technology altering the balance of rewards to skills. This is a relatively stable kind of change: Whatever people are doing with social media, knowing how to code interfaces between them is a broad, flexible general skill that will probably be handy for a good while. But the genuinely cool and revolutionary thing about these media is how they facilitate the rapid creation of ad hoc groups, each of which embodies a potential pattern of division of labor. In principle, then, you have returns to skills that shift not just with change in technology, but with the still more rapid change in group configurations. General programming skill is adaptable to a wide range of ends, but membership in a specific ad hoc community might reward the development of some more specific skill (pretending to be a teenage girl to snare online predators, say) to further the particular ends of that group.
What general conclusions can we draw from all this? First, it looks like we’ve got a structure in place that’s apt to increase the rewards—though not necessarily the financial rewards—to being a Jack-of-all-trades, moderately good at a lot of different kind of things, relative to the rewards of specialization. Second, highly flexible group formation, which entails highly flexible systems of division of labor, means potentially very rapid change in the specific kinds of middling-skill that will be valuable for a particular person to know. Taken together, that means a relative increase in the value of the meta-skill of being able to quickly pick something up well enough to do it passably, as opposed to being able to invest the energy and focus and time needed to become very good at a smaller number of things. Which is to say—and this is exceedingly congenial to my own temperament, so perhaps we should adjust this prediction for wishful thinking—we’re not just looking at a technological and cultural transformation that allows us to mobilize the efforts of amateurs and dilettantes. We’re looking at a transformation that encourages us all to get a little more dilettantish.
5 responses so far ↓
1 Tom // Jun 16, 2008 at 3:57 pm
Clearly, I want to believe — although I’m sensitive to the same reservations you express in your penultimate sentence. I hope it all works out this way, though.
More prosaically, let me put in a vote for Python. It’s not a language I know or even like that much, but it’s clearly the one you should tackle if you’re going to try to pick up a scripting language right now. PHP is web-bound for a variety of reasons — it can be forced to do the sorts of long-form computation that I suspect you’ll wind up wanting to do, but it’s not ideal for it. And it really is a disgusting mutt of a language, born of convenience and tacked-on bits rather than a deliberate philosophy. You might consider Ruby, too, although the web seems to be falling out of love with Ruby at the moment (and there are market reasons for expecting Python to grow in prominence in the short term).
2 Kevin // Jun 16, 2008 at 4:02 pm
Kind of besides the point, but +1 for Python over PHP.
On the broader issue: those for whom the costs of learning even rudimentary coding greatly exceed yours (since you have a background, etc.) still have a reasonable outlet: tools like Yahoo Pipes promise to let you do at least a little bit of interesting mashing without having to get your hands too dirty with actual code.
I haven’t used them, and can’t speak to the quality of the particular tools available today, but an awful lot of smart people are working in that space, and sooner or later someone is going to get it right.
(Though, conversely, things like that are always going to hit a point of diminishing returns, since ultimately the skill in programming isn’t knowing the magic incantations but rather understanding logic, abstractions and the like… hence why “business rules systems” designed to let “business analysts” codify rules in something that resembles-but-isn’t-quite a programming language invariably fail).
3 Timon // Jun 16, 2008 at 5:36 pm
Python! It is such an insane pleasure to code in python. I grew up in the same window as you, learned a variant of Lisp in college and fiddled with the then-easy Tcl. The thought of doing anything complex was somewhat terrifying when you realized how many parentheses you were going to have to type. Python is really remarkable in its concision, the availability of libraries, the modularity. The amazing thing is that you really do start writing things that you use every day almost as soon as you learn the syntax.
This gets to your larger point, ie, if you want to learn modern Hebrew or Swedish, in order for them to be useful you need to speak them better than Swedish or Israeli waiters’ English, which is a high bar. And it does seem that the odds of writing programs well enough to overcome the bar of “already out there and free or cheap” is the same — if you really need to communicate with a Swede, just speak English or find any other Swede to translate. On the other linguistic extreme would be something like Chinese, where just learning the characters for bathroom or your bus stop would be useful every day. I think systems programming, the low level stuff, is maybe like Swedish, but the high-level dynamic languages are like an extreme version of Chinese; every time you learn something like BeautifulSoup or Feedparser it is permanently and frequently useful, without having to know pointer arithmetic or whatever.
4 Gryph // Jun 17, 2008 at 8:01 pm
God I hope so!
5 seedeniedobia // Jan 26, 2010 at 4:35 am
[url=http://www.gammonempire.de][img]http://www.backgammon.org/images/BG_195x199_grass.gif[/img][/url]
[b]BackGammon Game Lovers…![/b]
[b]GammonEmpire.com[/b] provides the largest [url=http://www.gammonempire.com][b]online backgammon[/b][/url] game community[url=http://www.tunespro.com][img]http://www.tunespro.com/images/1pixel.gif[/img][/url]
You can enter into the backgammon games for free[url=http://tunespro.com][img]http://tunespro.com/images/1pixel.gif[/img][/url]
There are a bunch of [url=http://www.gammonempire.de][b]online backgammon[/b][/url] & [url=http://www.Backgammon-Directory.info][b]backgammon software[/b][/url] sites.
Best of luck winning… [url=http://www.verifiedfile.com][img]http://verifiedfile.com/images/smile.gif[/img][/url]
[b]The Object of the Game[/b]
The object of the game is to “bear off” all of your checkers from the backgammon board before your opponent. Each player can prevent the other from advancing. The object of the game is the same whether you play face-to-face or online.
[b]Note:[/b] These sites offer a safe and secure online environment where new players can learn how to play Backgammon with the easy rules and strategies provided on this site. Whether you seek an online Backgammon game for beginners or advanced players, you can download free [url=http://www.gammonempire.com/backgammon-articles.php][b]Backgammon[/b][/url] software and play against other players at your level on the Internet. This way you can gain experience and improve your game in preparation for real money games or scheduled online backgammon tournaments. In addition, you can learn where to play online Backgammon, as well as improve your skills on the board by utilizing the useful Backgammon instructions and articles. In the meantime, you can enjoy our 30% bonus on you first deposit, as well as a $5 welcome bonus.
[url=http://www.backgammon-directory.info][img]http://www.backgammon-directory.info/design/BD_01.jpg[/img][/url]