OSCON ended over a week ago and I’m finally all caught up. Well, not really, I’m never caught up, so I’d better post these notes before they get stale.
OSCON was an interesting conference again this year. Unlike last year (my first OSCON) there was no Java sub-conference. Instead, there was a Java/JVM track as part of the main conference. I thought this worked out better; it felt like part of something bigger. With the Java sub-conference it was off in another corner of the convention center, kind of isolated, kind of insular.
This year the emphasis was on open source community and less about technology. That was possibly based on my choice of sessions to attend though. The conference is enormously broad: there were 18 simultaneous tracks! I wish I could have attended more. It’s a useful counterpoint to the Java-centricity of JavaOne.
Portland remains an interesting city to visit.The variety of beer is amazing, with all kinds of local brews available. There were rather a lot of homeless people, and the stoner/slacker/hipster crowd seemed bigger than before. Unfortunately I missed out on Voodoo doughnuts. Next time for sure.
Portland’s light rail system (MAX) is pretty cool, given that it’s free through downtown and to the convention center. Unfortunately on my last day in Portland, I got stuck twice on the MAX. The first time, the drawbridge was up, causing a delay getting from downtown to the convention center. This caused me to miss some really cool keynotes. (Well, I was running late already, but that’s my story and I’m sticking to it.) Then, later in the day, I was heading to the airport with Stephen Chin when some kind of outage caused all the trains on the line heading out to the airport to grind to a halt. We got off the tram and cabbed it to the airport. I missed my flight but I was pretty easily able to reschedule a later one. Still, kind of a bad track record (heh) for the MAX.
♦ ♦ ♦
The London Java Community guys Martijn Verburg and Ben Evans had I think four sessions. These guys are really impressive. Not only did they have the conference sessions, they wrote a book (just published), they’ve run a couple Java warnings cleanup and Lambda hackathons, they run the AdoptOpenJDK program, and they’ve posted a “reference app” for Java 8. Plus they (at least Ben) spent most of each night drinking beer. Do these guys sleep?
Seriously, these guys are a big part of the OpenJDK community and they’re providing a lot of useful feedback and contributions. It was great to hang around with them at the conference. Oh, and thanks for the signed copy of the book!
♦ ♦ ♦
My talk was “Reducing Technical Debt in OpenJDK — The Legacy and the Burden“. Since it’s an off-release year for Java, I decided to talk about something other than new features and the latest and greatest technology. Unfortunately it was in the very last technical session slot of the conference. Well, somebody has to be last. There were only about 20 attendees. I will admit, though, that technical debt is not the most scintillating of topics. The attendees stayed awake (mostly) and there were some good questions and comments.
There was another talk about technical debt by some guy who calls himself “Abigail.” It was supposed to be about the economics of technical debt but it mostly seemed to be about how his company doesn’t follow the usual modern development practices such as refactoring, having a large automated unit test suite, and so forth. He talked about how their site’s 1 million visitors per day do the testing for them. (I’m not quite sure what that has to do with technical debt.) He did have a reasonable point about how technical debt is an investment in the future; you pay now to get benefits later. But if your project is cancelled, there’s no “later” when you can reap the benefits. Incurring debt now can let you ship faster and reduce the risk of cancellation; postponing debt makes sense.
I’ll also point out that this doesn’t apply to OpenJDK (my project). OpenJDK is expected to have a very long lifetime, so the tradeoffs are different. In fact, I think that right now is the “later” that early JDK engineers had in mind when they said, “we’ll fix that later,” as they surely must have said many times over the past 15 years.
♦ ♦ ♦
I saw a pretty good talk on the Disruptor by Trisha Gee. I was slightly familiar with the concept already from Martin Thompson‘s GOTO Amsterdam talk last year, but his talk focused less on the Disruptor and more on general performance “folklore” as he put it. Trisha’s talk was centered on the Disruptor and featured unique hand-drawn diagrams, a useful antidote to the typical PowerPoint clip art. (Unfortunately her slides aren’t posted as of this writing.)
♦ ♦ ♦
The conference itself was pretty well run from a speaker’s point of view. Little things count. The speaker lounge had a full breakfast in the morning, and coffee all day. (I needed it.) They also offered luggage storage and boarding pass printing. This is very helpful on the last day of the conference! It saves a trip back to the hotel. Decent schwag and a nice conference T-shirt. (Oh yeah, I still gotta wash that T-shirt and put it into the rotation.) The network — both wireless and wired — was pretty good, and I didn’t have any trouble connecting from the speaker lounge, the networking and hack spaces, and from the session rooms. (I even managed to push a changeset to fix some tests I had broken the day before heading to the conference.)
The energy was pretty high this year, and word had it that attendance had risen compared to the previous year. Networking (the people kind) was exceptionally good too. I’m already thinking of what to propose for next year.