No Trees in My Courtyard

This is what I get for procrastinating. I won’t be staying at the “official” OSCON hotel, the Doubletree. Since I really enjoy Google Maps lately, I’ve started one for this year’s trip. The blue marker is the Oregon Convention Center. The red marker to the east is the Doubletree. The red pin to the north is my hotel, the Courtyard by Marriott. For distance, it’s no better or worse than the Doubletree. Of course, as so many of my friends will be at the official hotel, I’ll likely spend a lot of time there anyway.


View Larger Map

I’m sure I’ll add more to this map later. Such as the locations of all the good (and not so good) bars, not to mention the Oregon Brewers Festival.

YAPC::NA in Los Angeles, Anyone?

After attending OSCON last month, and having the usual fun with my geek friends from around the globe, I decided that I should start attending YAPC. As it so happens, the Los Angeles Perl Mongers are kicking around the idea of hosting YAPC::NA in their city. Since LA is nearby for me, I’d like to see that happen.

Looks like Chicago.pm has thrown their hat into the ring as well.

Update: I guess the LA.pm bid never gained any traction.

[tags]oscon, oscon07, yapc, perl mongers, los angeles[/tags]

OSCON 2007: Wrap Up

The O’Reilly Open Source Convention, affectionately known as Summer Camp for Geeks, is over. I’m sitting in Gustav’s Pub & Grill in PDX, somewhat enjoying a German sausage trio and really enjoying the free wifi. I have a couple of hours until my flight boards, so I’m taking the opportunity to grab a bite to eat and write up my summary of OSCON.

I wasn’t overly impressed with the quality of the tutorials or the sessions this year. Even with 15 parallel tracks, I sometimes found it difficult to find a session that held more interest for me than the hallway track. Other times, the sheer number of tracks left me flipping coins to determine which session to attend. I hope that next year the organizers of OSCON (though I don’t expect Allison reads my blog) either reduce the number of parallel tracks, or do a better job scheduling those tracks. I realize it must be a difficult job, but if everyone attending could select the sessions that interest them beforehand, I think it could work.

Last year, I jokingly referred to OSCON as DamianCon(way), after the seemingly endless number of tutorials, sessions, and keynotes he had presented. Unfortunately, this year he wasn’t even in attendance. A lot of people were disappointed to find that Randal Schwartz wasn’t in attendance either. With the absence of two of OSCON’s major celebrities and the news of Nat Torkington stepping down as OSCON program chair, a friend pondered if this meant OSCON had jumped the shark. This quickly led that same friend to ponder if the phrase, “jumped the shark,” had itself jumped the shark.

Still, OSCON isn’t wholly about the tutorials or the sessions. It’s about the people. It’s about seeing friends from around the world (Brad, Dan, Dylan), and meeting new ones (Alasdair, Josh, Kevin), and spending a week together. A week of learning and socializing. That’s the real reason I come to OSCON. After my yearly dose of geek, I return to work refreshed, with more creativity and productivity than when I left. So OSCON is still worth attending, I think, even if it wasn’t as good as we always seem to remember (and I’m sure we’ll all repeat the sentiment next year).

I can’t wait to come back next year.

OSCON 2007: Closing Keynote

The closing keynote was delivered by Phillip Torrone and Limor Fried, of Make Magazine, and was entitled “Open Source Hardware: A Start…” They discussed (more of a discussion than a presentation, really) applying the principles of crysography to hardware.

They are intelligent and creative people, but I don’t have a whole lot to say about what they’re saying. However, I do appreciate the irony of my attendance, given my day job.

OSCON 2007: An Open Source Lexicon

I had originally intended to attend the session on targeting Parrot with your programming language. But it’s Friday. And I don’t want to work. And r0ml is presenting a session. So I said screw it and now I’m being entertained by r0ml.

This talk is not about programming, but about rhetoric. In particular, the rhetoric used in business today. And how no one understands it.

So many words used in business today have other meanings. Meanings that have nothing to do with how they’re being used in business rhetoric. So what do we do? We put words together and pretend they mean something new. And, since we’re not German, we turn them into acronyms. Acronyms that may themselves mean something else. Confusing, isn’t it?

Here’s an idea. Go back in time to find words that mean something else, but that no one today remembers (at least, no more than a handful of people on the planet). Then redefine that word to mean whatever you want. This works particularly well if Google returns very few hits for the word in question. Of course, like anything, it can backfire.

After talking about the fallacy of rhetoric in modern business language, the remainder of the session was dedicated to replacing our modern business language with words from antiquity, almost all of which have meanings very close to what we want. I’m not surprised that most of the words come from the literary (as in books) domain. We are, after all, writing and publishing software.

Shamefully, no one recorded this session. I couldn’t even attempt to do it justice here.

This session has given me a desire to subscribe to the Oxford English Dictionary.

Who says the English language doesn’t have a proper word for what we mean by free software?

Liberal Software.

Duh.

Stupid politicians. Thanks guys.

OSCON 2007: Subversion Worst Practices

We started using Subversion at work shortly after I joined the team, so I thought I’d attend the “Subversion Worst Practices” talk. It’s billed by the speakers, Ben Collins-Sussman & Brian W. Fitzpatrick of Google (and of Subversion fame), as a light-hearted follow-up to the best practices session they held last year. I’m happy it will be light-hearted, because I wasn’t thrilled with the session last year, and didn’t feel I got much out of it.

They started out with the top 10 ways to sabotage your project with Subversion. It’s Friday, and there’s not that much to say about each of the slides, so I’ll merely enumerate the worst practices, without commentary, for now. Hopefully the slides will be posted later.

10. Argue about Version Control Systems

9. Do a Brute-Force Transition

8. Backups? What Backups?

7. Loads of Locales

6. Rule with an IRON FIST

5. Hide the Version Control

4. Use Complex Branching Schemes

3. Put Everything in the Repository

2. Use a Network Drive

(Oops, we do that…)

1. Really Clever Hook Scripts!

0. Edit the Repository Database

Obviously, this session was really a list of best practices presented in a humorous way, by pointing out the extreme case of not actually following those best practices.

I noticed the MacBook Pro Ben and Brian are using to drive their session has a bumper sticker on it: “My other computer is a data center.” I like it. It’s exactly what I’ve been doing to my computing.

It was nice that Ben and Brian left ample time for questions and answers. The audience appreciated the time to ask questions about how to apply Subversion best practices to their own repositories. Or just to bitch about some pain points. Fun stuff.

OSCON 2007: Friday Morning Keynotes

It’s the last day of OSCON 2007, and I couldn’t be happier. Don’t get me wrong, I love coming to OSCON (even if I’ve only been twice now). It just starts so early in the morning. I’m looking forward to sleeping in tomorrow before I finally head back home.

Anyway, on to the keynotes.

First up is Philip Rosedale, of giant, flying penis fame. Um. I mean, Second Life fame. He’s here to talk about Open Source Second Life. He had an interesting comment comparing Second Life to the X Prize. We, as humans, have two major goals. First, we could delve into inner space, the virtual world that is Second Life. Second, we could venture into outer space, leaving the planet behind altogether. But really what he wants to talk about is how Open Source can benefit Second Life and, presumably, how Second Life can benefit Open Source. Philip sees Second Life as being good for humanity and wants to see it grow in the way that only the Open Source community can manage.

I’m not entirely sure how Second Life can be good for humanity (it’s just graphical IRC, isn’t it?) and I’ve never even considered using Second Life. On the surface, it looks like it could be fun. But it’s not a game. At least the MMORPGs had stuff to do. Second Life is just real people in an imaginary world, doing all the things that real people do to annoy me. We’ll see.

Next up is Jimmy Wales, of Wikia fame. He started off with a quote. “Imagine a world in which every single person on the planet is given free access to the sum of all human knowledge.” That is free, as in speech, of course. Wikipedia was the encyclopedia. Now, Wikia wants to be the entire library.

Of course, this being OSCON, Jimmy was sure to point out that all of this free information is thanks to Open Source. Today, there are so many inexpensive options out there to publish web sites, which I certainly don’t need to enumerate to my audience. Wikipedia, and now Wikia, take full advantage of this Open Source software.

So why not extend the idea of openness to search? Today, all of our searches are locked up in companies. From so-called good companies (Google) to so-called bad companies (Microsoft). But they are still companies. Search should be open and democratic, too. So that’s what Wikia is doing, building an open search.

There are four keys to open search: transparency, collaboration, quality, and privacy.

Now for the announcement. Wikia has acquired Grub (no, not the bootloader), a distributed web crawling program. Interesting. Another distributed software application. I like the idea behind these, using all the potential of all those idle processors, but I don’t much like paying the electric bill.

Our third keynote of the day is being delivered by Simon Wardley, who points out that he is from Kent, England. He’s here to talk about one of his passions—second only to ducks—commoditisation. There is an ever-driving force in IT to push products and services to being commodities. Companies try hard to push products and services away from being commodities, using patents and DRM. However, Open Source is a major driving force for turning products and services into commodities.

This is a concept I really like. Why should we spend all of our time reinventing wheels? If something has already been done right, why can’t we all take advantage of it? In fact, it was all the rage when I attended the Platform Grid Conference last year. However, aside from the academics speaking at that conference, everyone there represented a company that wanted to capture and jail your data.

There are three main levels of commoditization, software, framework, and hardware as a service ({S,F,H}aaS). By open sourcing each of these, we create a stack capable of deploying new and interesting products, without spending so much time reinventing those bloody wheels.

Our next speaker was none other than Nathan Torkington, our program chair. He will be giving us three keynotes in fifteen minutes, just to prove that fifteen minutes is more than enough time for a keynote.

Short keynote number one: Dr. Nat’s therapy session. It was very funny, but very difficult to blog. In short, he took a page out of Dr. Phil’s book and psychoanalyzed all the software we use on a daily basis. It’s hard to describe, but he nailed each of the projects’ idiosyncrasies quite well.

Short keynote number two: Open Source has won. Nat’s running low on time, so he’s talking really, really fast in his kiwi accent. Fortunately, isn’t as strong as other kiwi accents I’ve heard, but as he speaks faster, it gets stronger. So Open Source may have won (is winning?) the battle against proprietary software companies, but we spend a lot of time fighting amongst each other.

Short keynote number three: People are stupid (don’t even get me started). Apparently, all the smart people now work for Google, leaving the rest of the world with very few smart people. The message here, it’s easy to be mean, but hard to be nice. Remember, we’re all people. Be nice to each other.

Our final keynote is from James Larsson, someone who, as Nat tells us, embodies the hacker spirit. He’s here to tell us how to “Pimp My Garbage.” I’m actually a little scared to find out what that means.

Okay, this is a great talk. He’s showing off ways he has turned old, boring games into something a bit more exciting. Not only games, but old, discarded electronics. It’s all about taking old things and thinking of new, interesting things to do with them. It is the essence of hacking. I’m tempted to subscribe to Make magazine now.

Interestingly (or perhaps not), the higher the level of sophistication of a product, the less potential it has for hackability. So the only thing you can really do with the more sophisticated things is to destroy them in interesting ways.

I don’t know how to even begin describing James’s keynote. Fortunately, it’s being recorded for later posting on YouTube. I’ll post the link when it’s available.

And that’s the end of the keynotes. Time for the break.

OSCON 2007: State of the Onion

After the auction to benefit the Perl Foundation, it was finally time for the State of the Onion. I don’t know which number this is, but there have been a lot.

When Larry hooked up his computer to the projector, he had an IRC window open to #parrot on irc.perl.org. Yes, of course I did it. I jumped right into the channel and wrote, “hi mom.” I got a good laugh from those in the room, but I’ll probably never be welcome in that channel again.

Larry thinks it’s a bad idea to get rid of the term scripting. Perl already owns the brand when it comes to scripting. We have about the same chance of changing the branding of hacker.

“Programming is hard, let’s go scripting!”

Scripting isn’t so bad. It’s actually kind of easy; just look at all the script kiddies out there. But we can use Perl to turn all those script kiddies into real programmers. After all, Larry claims to have come to Perl in the same way.

So what’s the difference between scripting and programmers? Scripting is like profanity, you know it when you see it.

This year’s State of the Onion is about scripting, past, present, and future.

The past, essentially, is a brief history of Larry and his experience with scripting at different times of his life. More importantly, it’s about what all of these languages ar, how they and his experiences with them influenced what Perl was, is, and will be.

The present is an overview of the different ways languages can be designed. Binding, dispatch, typology, structure, and others are all different forks in the road of language design. Each fork developed for different reasons, whether it be efficiency of code or abstraction of language concepts. Follow all of these forks like some kind of Choose Your Own Adventure book, and different languages emerge. The lessons of each of these languages can be used as new ones are developed.

So I guess what Larry is trying to say is that Perl 6 looked at what every other language (including Perl 5) did right and what they did wrong, then went ahead and did everything right.

In fact, Perl 6 has taken Yogi Berra’s advice and took all of the forks. Sure, it seems confusing, but think of the power.

Okay, so what’s the future?

Perl 6.

Duh.

OSCON 2007: Perl Lightning Talks

It’s time for one of my favorite OSCON traditions: the Perl lightning talks. These five minute speed talks run the gamut from incredibly boring and disorganized to amazingly good. Last year, Audrey Tang gave a particularly good one. In fact, my head is still spinning from it.

Seventeen talks this year, in a span that only allows sixteen. No break for us.

Vani Raja talked about YUI CSS. This appears to be some kind of Yahoo style sheet stuff for HTML. I’m not sure how this differs from any other style sheet out there, but she seems very proud of it. I’m guessing it’s just a set of pre-written styles that page designers can mix and match in their web sites. Oh, and apparently Nate is her hero.

Okay, now it’s time for “How Long Is Five Minutes?” by Schwern. He seems very concerned about how long five minutes is and how often he ruins his tea. Why is this important? Well, if you don’t know how long five minutes is and how much you can do in those five minutes, how can you know how much you can do in a half hour, an hour, a day, a week?

Schwern managed to get himself two slots of lightning talks. This second one is a very rapid combination of three talks. First up is a plug of the new Perl 5 wiki. He wants this to be the encyclopedia of Perl 5. As an aside, someone in my Perl Mongers group who already wants to have a wiki-thon at our next meeting. Next, we got to stand up a lot as he asked questions about our demographics. Apparently we in this room are not representative of the US at large. In any case, a survey of this information has been put up at perlsurvey.org. Finally, we’re supposed to blame Schwern. Larry has gone off to Perl 6, so Schwern is taking the responsibility of being the one who people can go to if they want to do something in Perl 5. In other words, we get to blame him for giving people the go ahead. (That was amazingly hard to type up in the five minutes Schwern was allotted.)

Ask Bjorn Hansen wanted to present qpsmtpd, which is something he threw together in Perl to implement features he wanted in qmail. In fact, Perl hackers can easily write plug-ins for the system, which is a pretty cool idea. It looks pretty nifty, I may take a look at it, if only to toy with it as a game.

Andy Lester talked about ack, an awesome way to grep trees of source code. He gave this talk last year, and I’ve been enamored of it every since. It even made it onto the Perl Advent calendar last year. He’s also set up Perl 101 (dot org), to help n00bs avoid asking n00b questions on IRC or on mailing lists. He needs help making it awesome. His third topic is Google Code. Use it instead of SourceForge, because it is awesome. Period.

Andy got a second slot, after being harassed by the audience on IRC and iChat, he jumped into his Perl-is-a-programming-language-not-a-scripting-language rant. A scripting language implies that it is less capable. Say program, not script! Dammit. Andy is an angry, angry man.

Rebecca, standing up in front of Programmers Anonymous, talked about the similarities between Open Source projects and non-profit organizations that use volunteer labor. When someone shows up and wants to help out an Open Source project, why not have a list of small things to be done that anyone can sink their teeth into.

Eric Wilhelm, who we may know from the Internet, talked about Test::Harness 3.0, which he’s come to recently as a way of parallelizing test code. TAP has evolved. In comes TAP::Parser (which will be used in Test::Harness 3.0… I think… I found that part hard to follow). This is apparently a five minute version of the talk Ovid will be giving at YAPC::EU. He’d like us to help improve the documentation and tests for TAP::Parser. Convenient link: testanything.org.

Eric continued with a second talk. Well, he promptly ducked under the table as he mentioned Module::Build. CPAN is great, but you need to upgrade it before installing. Then there’s a huge upgrade install dance. But soon (real soon now), CPAN will go back to being a one-liner and will do everything right automagically.

Julian introduced MoveMyData.org, which isn’t coded yet. However, it’s a great idea. So many different social networking sites exist (Blogger, Flickr, etc.), and they don’t interoperate at all. This is the solution. A way of moving data between social networks and making sure it’s backed up and always under your own control, not under their control. Very cool, and something I’ve always thought should be done. It’s one of the reasons I maintain my own blogging software, in fact.

Tim Bunce gave a quick talk about DBI, as he usually does. This time it’s about DBI 2 for Perl 6. The JDBC API is a great example of what he wants to do, so he’s going to steal (that is, borrow, now that Java is Open Source) what they’ve done. He continued to give some examples of how it should work and how it would look, but then he got gonged. Good stuff, though.

Second talk by Tim, DashProfiler and lightweight code instrumentation. It seems he does a lot of web service work these days, so he spends a lot of time writing code to help him make this faster. This is an instance of Tim writing code to find out what needs to be made faster. I like this. It’s very magical (read: Perlish). Just use it and it does what it does.

Tim, take three. He condensed yesterday’s 45 minute talk about Gofer into five minutes. I attended that session, so I mostly zoned out during the lightning talk. It’s another way of optimizing the infrastructure behind web services.

Michael Potter (who introduced himself at the end) wanted to talk about Open Sourcing Message Definitions, that is to say he wants a better way of getting data exchange formats into the Open Source or standard or something. I don’t know. It was short, sweet, and to some point I didn’t get.

John Rockway stood up to teach us how to create a blog using Catalyst in 5 minutes. Of course, he used slides, instead of typing it out himself. So mere mortals probably couldn’t create a blog in only 5 minutes. I’m not entirely sure Catalyst has ever been used to create anything other than a blog. That’s my biggest problem with most web frameworks. They look like they’re only useful for the fun stuff, and it’s non-obvious how to use them for other kinds of sites. That’s a bit harsh, but there are too many frameworks for me to play with all of them to see if I can use it. Oh, and I think some of the developers of Catalyst (which was a fork of Maypole) forked it off into something else again.

John continued to plug Angerwhale, an actual blog application he wrote in Catalyst. I really didn’t pay attention. I’m not sure I like Catalyst, and I’m quite sure I don’t need to fill my head with yet another blog application. Although, it is a blog application written in Perl, so I may eat my own dog food and try it out.

Someone who didn’t identify themselves stood up to talk about SVN::Notify::Mirror. No idea what he said, as I wasn’t listening.

Last, and most certainly not least, Pudge got up to perform Perl, in a Nutshell. Of course, everyone has probably already seen this on YouTube already (and if you haven’t, why not?!), but it was awesome to see live.