This article originally appeared in the August 2003 issue of the Dæmon News Online Magazine. This is a cleaned-up version of the article with minor style edits and made it HTML5 compliant; else, the content has not been changed.
Although I normally read up on some of the conferences and conventions in the tech world, I generally cruise past the location and cost knowing that it would be too expensive for my budget and would deal with traveling (or even worse, flying). This year, my luck changed for the better when I heard that this year's O'Reilly Open Source Convention (OSCON) would be held in Portland, Oregon and I would be able to get in with a press pass. To say the least, I was really thrilled and immediately put a request in to take that week off from work. :)
The theme for OSCON 2003 was "Embracing and Extending Proprietary Software" and was held at the downtown Marriot hotel, which is within a couple of blocks and a short walk from the Waterfront Park, during the week of July 7-11. The location of the hotel would also be fairly close to some of the off-site events and sessions (which I didn't attend due to the lack of time) and not that far from the Powell's bookstores. As far as the hotel itself... that will be covered below. As far as accomodations is concerned, I don't think a convention for techies could go without network access and well organized ways to meet up with people both online and offline. Thankfully, an open and unencrypted wireless network was available (well, most of the time) along with a Wiki dedicated to OSCON which contained attendee information (completely optional) and other interesting and informative information. Two IRC channels across two networks were also available for chatting; the one on Freenode had the best signal-to-noise ratio, with the exception of several troll flood posts, and that is where I hung out the most.
The first thing that I did on on the first day was to get myself acquainted with the layout of the hotel, get the settings I need for the free (open and non-encrypted) WiFi network, and registered to get my press badge and goodies bag. Once I got my badge and day planned out, I powered up my laptop and was able to get onto the WiFi network, though the signal on the lower floor (which is where the hotel's Oregon Ballroom, as well as a lot of the on-site talks and tutorials, is located) was kind of poor and had averaged a ping response rate to Google of around 500ms. After that, it was time to head to the first tutorial of the day, "Advanced PHP".
The room that the first tutorial was in, was one of the medium-sized rooms and was fairly packed. The tutorial, which started at 8:45a, was done by Sterling Hughes, a developer for the PHP project, and covered a fair number of topics on benchmarking and profile PHP code, covered a bit on the topic of installing components via PEAR, some hints on general application security, and accelerating PHP applications (be it processing time or perceived performance) with mod_gzip and PHP accelerators. Sterling also went over some of the new features and changes in PHP5, though didn't get too deep in it since there was another session later during the week called "Introduction to PHP5". It was a great tutorial and he definitely made it a fun and informative one at that.
During the lunch break, I decided to stroll around, find a place to charge up my laptop before it died on me, and checked my e-mail. Lunch wasn't provided, so thankfully I had a couple of snack bars with me to munch on :)
For the afternoon tutorial session, I decided to stop into the "Efficient SQL/Mastering SQL" tutorial given by Greg Sabino of WebMD to see the different ways of optimizing database queries. The tutorial kind of started slow and, unfortunately, it didn't really improve. Most of it was that the topic on profiling SQL code and looking at SQL syntax is already dry, but the speaker's delivery of the information made it just more monotonous. There were a couple of people who left before I packed up and wanted to check out the other tutorials.
So I decided to check out the "The GNU GPL for Developers and Businesspeople" tutorial presented by Bradley Kuhn, but when I entered the room, there was not a single spot to sit and the only place that I could have sat down was in front of the door. Definitely one of the cases where a tutorial or talk/session ended up being more popular than anticipated and probably didn't help make people too comfortable. I then went back down to the lower level to check out which other tutorials might pique my interest, but didn't find one that wasn't sold out or would suit my interests. At that point, I went back up to the lobby to check my e-mail, chatted on IRC a bit, then headed home.
The second day seemed to be a busy day for tutorials, which makes sense since everyone wanted to be there for the "States of the Union" held that night. I checked the daily list of tutorials and noticed that a lot of the tutorials were sold out, which definitely slimmed down my choices of tutorials that I could attend (paying tutorial attendees get priority over the press people). One of the tutorials that wasn't listed as being sold out was "Network Programming in Python", still I had to wait until the tutorial was about to begin before I could take a seat. The tutorial was given by Steve Holden and started off with the famous Monty Python theme and started off the talk by having everyone in the room, including himself, give a brief who they are and what made them choose that tutorial. There were a couple of people from Industrial Light and Magic, as well as some other large companies and Thomas Wouters, who is not only one of the key guys at XS4ALL but also a Python developer.
The tutorial covered how to use Python to work with the network to send data or messages using both connectionless (UDP) and connection (TCP) based sockets along with some of the libraries available. Steve provided several examples of the different socket methods, libraries, modules and some of the pitfalls that may come up due to the inherent limitations. Being a half-day tutorial, there were somethings that couldn't be covered; but if the tutorial were to be a day-long tutorial, it would be great to see Python sending data over encrypted connections via SSL and SSH (be it with SCP or SFTP).
For the afternoon tutorial, one of the few tutorials that was not marked as sold out was "Managing Web Services with PHP", which was given by Sterling Hughes. Although the term "Web Services" has been tossed around in magazine and news articles as much as the management-speak terms like "synergy" and "[self-]empowerment", not everyone knows what it is and how PHP would work with it. Well, the focus of tutorial was to provide information on using different ways of processing and sending data between web applications, including how to use and how well each is implemented in PHP: REST, XML-RPC and SOAP. The only gripe that I had with the tutorial wasn't exactly with the tutorial itself but rather the room. There was one light bulb in the ceiling that was flickering very badly and it annoyed a lot of the attendees.
There was about an hour to hour and a half break between the afternoon tutorial session and the "States of the Union" and I was getting a bit famished. Instead of waiting to eat alone or just grab a sub sandwich, I decided to see if anyone was looking to join up with others for a quick dinner on IRC. Thankfully there was and there was a consensus to meet up at New York Burrito. So a group of six or so guys, including myself, set out a couple of blocks, had a platter of pretty good grub, chatted a bit and went back to the hotel for the "States of the Union".
The "States of the Union" consisted with seven sessions, each six of which are for components that make up "LAMP" (there was no talk on PostgreSQL or any of the BSD projects) as well as announcing the winners of the ActiveState Active Awards. I've outlined a fairly high-level happenings during the sessions.
For his presentation, Larry Wall was well prepared for the speech and his presentation. Unfortunately, he didn't really do anything more than just read the speech from his laptop. Anyway, the "State of the Union" did unveil some new information regarding the Perl 5, Perl 6 and Parrot. Most people know that Perl 6 will be based on Parrot, but there will also be a Perl 5 implementation on Parrot, which was unveiled as "Ponie". Larry's slideshow definitely contained a bit of humor, which helped make the session not as dull as it could have been.
Larry has made his presentation and the text from his speech available online at perl.com. The winners of the White Camel Awards were also announced as part of the "State of the Onion".
Probably the biggest announcement that Guido made in his "State of the Snake" was that he
was leaving Zope.com and will be joining Elemental Security, where
he will continue to work on Python. Guido also provided a timeline for the release of Python 2.3 (which
happened a couple of days ahead of schedule) and stated that there isn't a scheduled release date
planned for Python 3.0. To the disappointment of many Python developers, Guido stated that the
? :" ternary operator will not be added to the language (at least for now).
Also announced during the "State of the Snake" was the winner of the 2003 Frank Willison Award, which went to Fredrik Lundh for the contributions that he made to the Python community.
PHP 5.0 was the main topic of Shane's presentation and speech, mostly when it came to the changes that are being made in the new version. Some of the anticipated features in PHP 5.0 include: custom exception handling, revamped internals and object-oriented core (not only to increase performance but also to un-break the current state of OO in PHP 4.x), SQLite is bundled as a native database (which can be tied to the custom exception handling), and a new XML extension based on libXML-2. Shane also put down the rumor that support for MySQL is being completely removed from PHP; instead, the MySQL client libraries will be removed from the PHP distribution since those already using PHP would already have it installed and not everyone uses MySQL (I added the latter :).
The winners of the ActiveState award winners for both the Programmer's Choice and the Activator's Choice groups were announced right after the "State of the Elephant". For more information and a list of winners, please check out the ActiveState press release.
The presentation given by both Monty and David seemed to have been more of "State of MySQL AB, as well as MySQL" then the MySQL project and software itself. As noted in the presentation, version 5.0 of MySQL is currently in their BitKeeper source repository system and is currently deemed as the development version. The new version (finally) includes support for ANSI-99 compliant stored procedures as well as online backup of MyISAM tables. The one thing that got the crowd (awaken) and estatic was when the statement (paraphrased) that MySQL AB is against software patents appeared on the screens. The presentation slideshow ended with the Swedish word for "end": SLUT.
The "State of the Feather" covered more than just the Apache web server but also the Apache Foundation altogether. Greg stated that they have revised the Apache license a bit and that it will still have the BSD-like flexibilities. Most of the Apache Foundation servers are still running FreeBSD (this wasn't mentioned in the presentation, but that is the answer I got from Greg via IRC right after he finished).
In one of the slides Greg had in his presentation was a quote by Jon Stevens that I think is spot-on and something everyone needs to remember during licensing debates and "wars":
A license can ruin a perfectly good piece of software.
I have to admit, I didn't pay too much attention to the "State of the Penguin", but the key part of Theodore's presentation was the release of 2.6 would be "Real Soon Now". The list of platforms that run on Linux has had several new members, including AMD's X86-64, 64-bit PowerPC, h8300, uClinux (which includes 68k and v850), as well as user-mode Linux.
With the exception of some big announcements or humorous slides, the "States of the Union" were actually kind of dull. There were a fair amount of grumbles and ramblings on both OSCON IRC channels regarding how the people were bored and chatting about other things. I was fairly engulfed in one of the channels and reading up on questions posted to Greg Stein and his responses that I didn't get most of Theodore's speech. For more coverage on the six "States of the Union", check out ONLamp.com's coverage and summary article.
The third day of the conference notes a change in how the day is broken down since all of the tutorials have finished. Days three through five primarily consist of keynote presentations, sessions, smaller events, Birds of the Feather and other things to pass the time. Day three started off with two keynotes, the first was presented by Tim O'Reilly on "The Open Source Paradigm" and the second was a look at the Eclipse Project done by Paul Buck of IBM.
Tim O'Reilly's keynote provides not only a look at what is happening in the Open Source community, but also how software is becoming more of a commodity so much that proprietary software may have to become gratis in order to compete. Tim also stated that software lock-ins are going to be based on customer/company data and relationships instead of locking into proprietary, non-standard based software. FreeBSD also had a mention in his keynote in regards to which Open Source software is used by almost everyone regularly (in this case, Yahoo! was listed for FreeBSD). Tim also discussed the three "C"'s of software beyond software licensing: Commodization of software, User-Customizable systems and architectures, Network-enabled Collaboration. The keynote was wrapped up on the topic of how important the "P" in LAMP (PHP, Python and Perl—even PostgreSQL, which took a backseat to MySQL at the conference) is very important in not only everyday applications, but also in web applications and web services due to the flexibility and extensibility of those languages.
Paul Buck's keynote was on the status and future directions of the Eclipse Project. Paul started off the keynote with a semi-detailed look at what Eclipse is, the fact that the Eclipse platform is released under an Open Source license (the Common Public License), and that Eclipse is more than a very popular IDE. Eclipse is also an SDK, and a middleware tool. Paul also covered some of the goals for the plug-in portion of Eclipse, including a change from statically loading plug-ins at startup to lazy loading of plug-ins (plug-ins are loaded when needed for the first time). The keynote finished off with how Eclipse fits into IBM's WebSphere Studio product offerings and how IBM is committed to help the Eclipse project grow.
After the keynotes finished, I planned out the rest of my day and picked out the sessions that I wanted to visit. The first session was "Subversion from Within: Python in a Java/.NET World", which was done by Dana Moore. At first, I thought it was going to be a talk about using Python with Subversion along with Java/.NET, but the session actually was on the topic of trying to get Python into a development environment that is either pure Java or .NET. One of the "habits" in his presentation was "Know Thine Enemy and Thyself", which is very important when trying to get a new language introduced and knowing when Python would be or would not be a good fit, and why. It doesn't make sense to spend hours in a project to port legacy code over to Python (or Perl or PHP even) when you would lose performance or may not be able to connect to a legacy backend. One of Python's strengths is the ability to "talk" to Java applications and access Java objects and methods with the use of Jython. The session definitely gave me some things to think about in how to get Python used more within a .NET development environment at work ;)
The next session I attended was a must for any BSD advocate or any BSD users even. The session is a follow-up of last year's PHP and Yahoo! session, which was also presented by Michael Radwin of Yahoo!. It has been a year since Yahoo! started to implement PHP on servers running, you'll never guess it... FreeBSD! The presentation included a high-level look at what powers the many web properties at Yahoo! along with what hardware and software they commonly use. FreeBSD had a fair amount of coverage in the talk, mostly the fact that they find SO_ACCEPTFILTER, kqueue and kevent to be of use. As of when the presentation, Yahoo! is using FreeBSD 4.x on their web servers and haven't rolled out FreeBSD 5.x yet, though it wouldn't be surprising if they did migrate to the newer version. The rest of the session focused on getting PHP to scale to such a large environment as well as keeping it secure. One way to help streamline PHP and possibly reduce possible security issues listed in the presentation is to build a very minimal PHP install and then bolt on only the extensions that you need. The session seemed to be a very popular one as all of the seats were filled and there were people sitting (or laying) on the floor and standing outside.
For lunch, I decided to not take the bait, er drink the "Kool Aid"... well you know what I mean. The lunch provided on days three and four of the convention were sponsored by Microsoft. I opted to eat a nutrition bar that I had grabbed before leaving home each morning.
The third session that I attended that day was "Enterprise Strategies & Open Source: The Case of OpenOffice.org" presented by Louis Suarez-Potts of OpenOffice.org/CollabNet and Danese Cooper from Sun. The session was focused on the continual growth of OpenOffice.org, including the numerous number of Open Source successes in the past several months (including Munich and Thailand). Louis also describe that the way the OpenOffice.org project is handled is fairly similar to the way that the Apache projects are handled.
After the OpenOffice.org session was completed, I decided to take a couple of minutes to stroll through the Exhibit Hall in the bottom floor of the hotel until the next session on my plan, "The IP Wars: SCO vs. Linux". The couple of minutes actually turned into close to 30-40 minutes when I saw a dual-processor HP Itanium 2 workstation and started to chat with Albert Stone, who works at the Open Source lab division of HP. Albert and I had discussed many topics including how Open Source operating systems could actually be one of the things that help the Itanium 2 in the market, to how much Open Source software has become easier to use though there is still a lot to work on. During the discussion, Albert gave me his business card and was more than open to try to get an Itanium 2 system to the FreeBSD/IA-64 porting team. Although I wasn't able to catch the session/date on SCO vs. Linux, but I think I learned more about the Itanium 2 platform and HP's constant push of Open Source, and a chance to have a really nice talk with an HP rep a better choice and use of my time. I think I already hear enough of the SCO vs. Linux bit online as it is and didn't want to sit in what may have been a trollfest.
After speaking with Albert, I strolled around the rest of the Exhibit Hall and scanned over the books at the Powell's section. I then headed back upstairs, strolled around, chatted a bit more on IRC and decided to call it a day.
Like day three, the day started off with two keynote presentations. The first presentation was "The Business & Economics of Open Source in the Enterprise" by Stormy Peters from HP. Stormy provided a view of how HP handles Open Source software, the policies and processes around releasing software to the Open Source community, and reasons not to Open Source software. Some of the reasons that she mentioned when not to release software to the Open Source community for development and support include: the product is obsolete and no longer useful to the company, where the company may not know all of the IP risks and controls bound to the software, or to compete against the Open Source community. The IP risks and controls bullet point is a key one mostly with the continuing saga between SCO and IBM, as well as SCO and Linux.
The second keynote was "Open Source/Linux's Journey on the Mainstream Desktop" presented by Mitch Kapor of Open Source Applications Foundation (OSAF). Mitch's presentation focused on bringing Open Source software (and Linux) on to the desktop as well as how Microsoft may have made it easier for that to happen. Some of you may be scratching your head on the latter part of that sentence, it has been very common knowledge that a lot of companies have been turned off by Microsoft's agressive licensing schemes and terms (Microsoft Licensing 6.0, Software Assurance, educational licenses and how every donated machine must be licensed—which Microsoft has retracted some of the requirements) as well as how fast Microsoft is rolling out new versions of Office and Windows. Anyway, Mitch also had listed some things that Open Source software is making it easier for some to migrate from proprietary software, but also noted that Open Source developers need to turn some of the compatibility and extensibility to their advantage.
During the morning break, Eric S. Raymond and ZDNet announced the formation of the "Open Source Awards", which will recognize and award those who bring excellence and innovation to the Open Source community and the projects within it. ZDNet has more information about the awards. Slashdot also has coverage on the announcement of the awards.
After looking at the list of sessions for the morning, there wasn't a whole lot that jumped out at me, so I decided to head back down to the Exhibit Hall to see what booths that I had missed the other day. The first booth that I stopped at was the one No Starch Press had, which was manned by Bill Pollack. I had a nice talk with Bill and asked about Absolute OpenBSD, there was a print sample displayed, and he was amazed with how popular the book was and how well Absolute BSD has sold. Afterwards, I strolled over to the ActiveState booth and asked one of the attendants about ActiveState and their stance on FreeBSD, mostly in regards with the Komodo IDE. He stated that although Komodo IDE should run fine on FreeBSD under the Linux compatibility layer, but it still isn't a support platform though they are considering it. One thing that he mentioned that should be good news for FreeBSD users and advocates is that more people are asking or talking about support for FreeBSD and for Python.
I stopped back to the HP booth (which is probably one of the larger booths, maybe occupying about the same space as the Powell's mini-bookstore setup next to the HP booth) and was able to see the HP blade servers and their MSA1000 SAN array first hand. I asked the attendant that was fielding questions about the blades if HP is considering working with the FreeBSD community to get FreeBSD running on the multi-processor blades just like how they had worked with the community on getting FreeBSD running on the BL10 blades. The attendant stated that, although he didn't know the answer off-hand, but he stated that HP would probably expand their help to include all blade servers. I had also stopped around at a couple of other booths including the PogoLinux booth to look at some of their NAS servers which are using Serial ATA for drive connectivity.
As with the day before, I opted to pass on the Microsoft sponsored lunch, though I did get to miss the banner Microsoft hanged over the food... but thankfully one of the O'Reilly bloggers took a picture of it. I do have to give Microsoft some points for the smart-alleck response to the "Free as in beer" phrase. Now if only that would apply to more than just the lunch that they sponsored.
After the lunch break, I decided to go to the "How Ogg Vorbis Plug-ins Were Written for the Helix Producer SDK" presented by Holly Watson of RealNetworks. The presentation covered how extensible the Helix Producer SDK is, how files are processed, and the different hooks available in the SDK's APIs. It is good to see that Ogg Vorbis is getting more support as an audio format, mostly since it is not encumbered with patents. Unfortunately, the session did not seem to attract that large of a crowd of people.
"PHP Under Attack" may sound like a session where you have Parrot and Ponie mongers taking to their pitchforks and sticks. Well, the session (presented by Chris Shiflett) actually takes a look at the different security attacks that have been pelting websites and web applications, and how to reduce or even prevent common attacks from taking a site or application down. The session focused on two of the most common and overlooked methods of attacks: Cross-Site Scripting (XSS) and Cross-Site Request Forgery. The presentation provided how the two attacks are carried out, an example of an XSS exploit, and some ways to reduce and/or prevent such attacks from occuring by using functions, facilities and options available in PHP.
The next session I attended was "Performance-Tuning Apache" presented by Thomas Wouters of XS4ALL. The main premise of performance tuning is not just to increase speed but rather to make more efficient use of the existing resources. Thomas mentioned that FreeBSD is used primarily on the XS4ALL web servers because FreeBSD seems to be more stable than Linux, although it may not be as fast. Although the session's title is for Apache, Thomas covered different ways to tune and tweak not only Apache, but also ways to tune applications and some high-level tips on tuning the operating system layer.
The last session I attended for the day was "Anatomy of a High Volume Website—TicketMaster and Open Source" presented by Craig McLane from TicketMaster. Before I go into the session presentation, the room was more than just packed... there were a lot of people on the floor, standing along the walls and standing outside. Craig went into a fair amount of detail in regards to the setup used for the online side of TicketMaster (the core of the backend is made up with VAXen servers). On the software side of things, they are using Linux, Apache 1.3 and 2.0, Perl for applications, read-only MySQL databases to store/cache event and product information, and Oracle for actual purchasing transactions. TicketMaster uses Nagios, Big Brother and MRTG for monitoring and log processing for their servers. They are also looking at moving their core backend over to Linux from the VAXen servers. After the session was over, I was brimming over with ideas and thoughts of how to apply some of what I learned with the web serving environment at work.
Although the last day of OSCON is a short one, it is still packed with great keynotes and sessions. The first keynote, "Von Neumann's Universe: Coding (and Engineering) at the IAS, 1945-1956" presented by George Dyson, took a very detailed look at the history of the von Neumann computer architecture and how important it was in the progress and importance of computers. The presentation was well done and I found it to be very informative and even more curious about computers in their early years. Some of the pictures of the engineer and programmer written logs regarding the bugs and quirks with the computer von Neumann helped design and build at IAS, and letters that even mentioned the engineer and coder's ferocious appetite for caffiene and sugar.
The second keynote, "Beyond .NET: The Mono Project" presented by Miguel de Icaza and Nat Friedman, provided not only a status update on the progress of the Mono project, but also some additional going on's at Ximian and everyone in the audience now knows how Miguel loves (not!) C++. Also mentioned in the keynote presentation was IKVM, which is a JIT compiler that allows transcoding between Java and .NET (along with Mono, of course), including a demo of Eclipse running in a completely Open Sourced environment... thanks to Mono! The keynote was very entertaining, and informative too :)
The first session I attended after the keynotes was "Mixing Open Source and Proprietary Systems:
Ironing Out Security Wrinkles" presented by Gunther Birznieks. The session takes a look at using
Open Source software (such as Perl and Apache) on non-Open Source environments like Mac OS and Windows,
as well as some known issues that can affect the security of applications. One example presented was
that developers were relying on "
$$" to get a process ID that could be used as a
seed to generate a random value. As Gunther stated and demonstrated, the process ID returned when
running Perl under Windows isn't very random at all; there were times that the same process ID value
would get returned over a dozen times. He also described that the session ID generated by Apache::Session
would also be of limited use since it still depends on "
$$" and the current time,
which Windows doesn't provide as granular time counts as UNIX and UNIX-like operating systems. Gunther
also provided a look at issues that have come up with Tomcat under Windows, ApacheAccess control
bypass that was a problem with Mac OS 8/9 due to the fact that the file system was not case-sensitive,
and the Apache 2.0 Directory Traversal vulnerability found in OS/2, Windows and Netware.
I kind of had to go to the "Managing a High-quality Software Mirror Site" since the presenter, Scott Kveton, is from Oregon State University. Although I didn't attend Oregon State, but it would be nice to know how they provide a large mirror service for Open Source software and how they are connected to the Internet2 network. Scott provided some insights on what kind of hardware and protocols should be looked at. On the hardware side, Scott had recommended going with SCSI hard drives, loads of RAM and decent processing power, all of which will help determine how well the server does during the "Gentoo effect". The "Gentoo effect" as shown by Scott is when Gentoo users decide to use rsync to download the latest set of sources and files for the system and the Portage tree. Unfortunately, rsync isn't exactly the most effective service when dealing with such a magnitude of connections and the number of files. For FTP mirroring, Scott mentioned that trying to debug issues with FTP transfers and connections isn't exactly easy and that there are still issues with client connectivity. On the HTTP mirroring side, using bandwidth throttling either through Apache's facilities or at the network level are recommended.
I wrapped up my last day at OSCON by attending the "Tales from the Two Towers" keynote presented by Milton Ngan of Weta. Before I continue, I have to say that I am not the only one to have a picture of Lulu from Final Fantasy X (RPGFan doesn't allow direct linking, but the image is available at http://www.rpgfan.com/pics/ff10/wall.html. It is the second one down in the third column below the Final Fantasy X logo) as a wallpaper! :) Anyway, right before Milton's presentation started, the O'Reilly crew showed a humorous video showing some of the speakers and attendees poking fun at the products and software that they push (including Monty Widenius of MySQL AB taking stabs at MySQL), which included a small set of outtakes as well.
Milton's presentation showed how some of the special effects and computer animation was done in "The Two Towers", including the battle at Helm's Deep and animating the face for Gollum/Smeagol (including some humorous faces and expressions). They also showed the uncensored clip of Andy Serkis along with Gollum/Smeagol accepting the Best Virtual Performance award at the 2003 MTV Movie Awards. Milton also showed pictures of the Weta datacenter that houses all of the machines used to render the special effects.
Overall, I was fairly pleased with the convention, the tutorials, sessions and keynotes that I was able to attend to (maybe with the exception of one tutorial). The layout of the hotel probably didn't help, making the convention feel a bit cramped and somewhat oddly laid out. Having wireless network connectivity was great for the most part, but the lack of access points at some places and having the network and/or DHCP servers going down sporadically didn't help things too much.
I didn't take any pictures while at OSCON mostly because I'm a lousy photographer and even when I did have a camera in my day bag, I still didn't use it (again, part of it is that I'm not a good picture taker and I forgot it was there part of the time). I also didn't attend any of the off-site sessions, parties and events mostly due to time and didn't exactly need to get plastered before the drive back home ;)
I think the numerous sessions, keynotes and tutorials fit fairly well with the convention's theme for this year. Although most of the sessions and tutorials I attended related most to the Open Source side of things, but there were quite a few others that provided ways to bring Open Source into legacy and non-Open Source environments, and how to utilize it without tearing up the existing infrastructure.
I'm just really glad to have been able to attend OSCON and that it was in Portland, Oregon (which not only helped keep the cost of travel down but also being able to head back home each night). I do hope that O'Reilly decides to bring OSCON back to Portland in the near future (although Seattle wouldn't be too bad either). Thanks to everyone that I met and chatted with at OSCON and those that got me a pass to go to OSCON ;)
Article copyright © 2003–2010 Linh Pham. All rights reserved. Re-production of portions of this work, or its entirety, requires permission of the copyright holder.