Jay Pipes is the Community Relations Manager for North America at MySQL. He joined MySQL in January, 2006, and is co-author of Pro MySQL (Apress, 2005). Frequently speaking at conferences about MySQL, Jay lives in Columbus, Ohio, with his wife Julie, and his extremely needy two cats and two dogs.
Robin Schumacher recently gave us an excellent rundown on sessions at the upcoming MySQL Conference and Expo (April 23-26th in Santa Clara) for DBAs. As a proud developer I wanted to make sure that our enormous developer community had a similar guide. Now, developers will encounter the same problem that Robin pointed out: with so many excellent sessions, you'll be required to make some difficult choices sometimes in what sessions you attend. This guide will hopefully allow you to navigate the waters. I've broken the guide down into a general section and also into programming language specific sections.
The following sessions are all given by experts at the top of their game, and all represent material or topics than any developer will find valuable.
First, for those of you who will be attending the tutorial day on Monday, I highly recommend Brian Aker's morning tutorial. "MySQL 5.1 In-depth" is an excellent way to get up to speed on the newest features of MySQL 5.1, including partitioning and events.
On Tuesday, April 24th, there are a number of killer sessions you won't want to miss. Leading this line-up is Julian Hyde, creator of Mondrian, who is presenting an hour-long session called "Building Scalable OLAP Applications with Mondrian and MySQL". During the same time slot, Giuseppe Maxia, the Data Charmer, will be covering how to write stored procedures for MySQL administration. This is a great session for the large group of you who fall into that category of both developer and DBA.
Later on that day, I would recommend catching Bill Karwin (product manager at Zend) talk about "SQL Anti-patterns". Bill recieved excellent reviews on his talks last year and at OSCON, and this session will be a good language-agnostic look at the absolute worst SQL coding techniques. The fun, of course, is then seeing which of these patterns you yourself have let creep into your own work!
On Wednesday, there are a number of really neat sessions I want to recommend. Beat Vontobel and Jacob Nikom are doing two sessions at the same time which will be the hardest for me to decide between. Both are great speakers, and both are presenting very interesting material, and both are doing so between 11:50am and 12:35pm on Wednesday. Argh. The pains of scheduling! Beat Vontobel is presenting a session entitled "The Declarative Power of Views", which should be awesome, and Jacob Nikom (from MIT/Lincoln Labs) is presenting the very-cool "Using MySQL as Active RDBMS for Monitoring Applications". I have already seen Jacob's slide deck (complete with sound effects...) so I already know how cool the presentation is!
For those performance-oriented developers among us, you won't want to miss Peter Zaitsev's "MySQL Performance Cookbook" on Wednesday, between 4:40 and 5:25pm in Ballroom E. A word of warning: this session will be standing room only. Get there early.
PHP continues to be the most popular programming language for developing MySQL-backed applications, though Ruby is certainly cutting into the PHP scene as of late. There are a host of PHP sessions that you will want to catch...
Creator of PHP, Rasmus Lerdorf, will be presenting "PHP Security and Debugging, which will cover XDebug, Callgrind, and combatting security holes like cross-site scripting (XSS). The session is 60 minutes long (10:45-11:45am on Tuesday morning) and you can bet it will be standing room only, so get there early if you can!
Laura Thomson, from OmniTI, follows Rasmus' session with a presentation entitled "PHP and MySQL Web App Security". Unlike Rasmus' session, which focuses on the toolset involved in security and debugging, Laura will focus on best practice guidelines for securing PHP and MySQL-based web applications. During this same time slot, Eli White and Tim Ellis from Digg.com will be presenting slides which describe the digg.com platform, which is all PHP and MySQL. It will be a tough choice between Laura's session and the digg.com session. My advice: if you are working for a startup that likely will experience massive growth, the digg.com session is likely to be a good bet, but make sure you grab Laura's slides after the conference is over!
Later on Tuesday afternoon (4:40-6:15pm), George Schlossnagle will be presenting his "PHP Performance and Scaleability Best Practices" session. It's a must-see for any PHP developer in the business of making high-performance web applications (hey, aren't we all?). I had a chance to see this presentation at OSCON last year, and I would highly recommend it.
On Wednesday, we've got a back-to-back-to-back trifecta of PHP sessions for you, all in the same Ballroom B. The block of sessions starts at 3:35pm with presentation "The State of PHP", followed by Mike Ho's "Four Line Web Services for Your PHP/MySQL Applications", and finally Bill Karwin's "Using MySQL with the Zend Framework". Of course, these sessions have some pretty stiff competition from Timour's always-popular session on the MySQL optimizer and Jim Starkey's session "Inside Falcon: MySQL's Newest Storage Engine"...
Finally, on Thursday, between 11:50am and 12:35pm, Lukas Kahwe Smith will be presenting what's up and coming with PHP6 in his session "PHP6: The Next Level."
On tutorial day, Joe O'Brien will be delivering "Vital Rails". For anyone just getting started with Ruby on Rails, this tutorial is an excellent primer, and I would highly recommend attending it if you want to get the most out of the other Ruby/MySQL sessions at the conference.
On Wednesday morning, from 10:45-11:45am, we've got Hampton Catlin presenting a very interesting topic: "Versioning your MySQL Schemas with Ruby on Rail's Migrations", and on Thursday morning during the same time slot, Evan Henshaw-Plath presents "Ruby on Rails and the ActiveRecord ORM". In Ballroom F, from 11:50am-12:35pm, Matt Pelletier is presenting what should be a really cool look at the ways in which Rails facilitates mashups, with his session "Mixing and Mashing Up with Rails"
Got .NET? Reggie Burnett's sessions are a must-see, then. Reggie, who develops the Connector/.NET library, is giving two sessions at this year's conference. The first is on Tuesday, between 2:30 and 3:15pm, in Ballroom C. He will be covering the future of ADO.NET and MySQL. On Wednesday, he will be focusing specifically on the Visual Studio development environment, and the VS Plugin for MySQL, in a session called "Developing for .NET Using Visual Studio". Also, there are two birds of a feather sessions on Wednesday evening that .NETters will enjoy. One, called All Things .NET is hosted by Reggie, and the other is hosted by ActiveGrid and focuses on Migrating Access to MySQL applications.
Mark Matthews sessions have been some of the most well-reviewed presentations in past conferences, and this year, there's no doubt his two sessions will attract a large number of Java programmers. Mark is a development lead for our Connectors team, and does the majority of development on the Connector/J library. He is giving two sessions. The first, on Tuesday, between 4:40 and 5:25pm in Ballroom C, focuses on JDBC 4.0 and MySQL. It immediately follows Jess Balint's session on J2EE, Spring and XA with MySQL, which is a must-see for enterprise developers using Java and MySQL.
Still on Tuesday, Java developers will want to catch Julian Hyde and Matt Caster's sessions on data warehousing application development using Mondrian and Kettle/MySQL 5.1, Java BI libraries incorporated into the Pentaho framework. Roland Bouman's session on Wednesday takes a step further and covers Pentaho, BIRT, and Eclipse Java development with MySQL.
Mark's second session is on Wednesday, between 3:35 and 4:35pm in Ballroom D, and covers the always-popular topic of scaling with Java and MySQL. This is another of those sessions to which I would get there early; it will likely be very full.
Brian Aker's second (afternoon) tutorial, "Writing Your Own Storage Engine" is definitely not for the weak of heart, and hardcore C/C++ developers will get a real kick out of the in-depth material Brian is presenting.
On Tuesday, there are a wealth of sessions tailored to the C developer. Start off with Johan Andersson's session entitled "Implementing Nested Loop Join Using Cluster Direct API (NDBAPI)". Very meaty stuff. Mmm. Tasty. Next, head on over to either Ballroom D or F, where you can choose the somewhat less-technical "Understanding MySQL's Pluggable Engine API" with Brian Aker, or the more technical, "Implementing a MySQL Client Library" with Konstantin Osipov (or Kostja for short), one of MySQL's development leads.
Thursday has a number of expert-level sessions designed for embedded and C/C++ developers. These sessions are all in Ballroom E, and all one after the other, so if you are an OEM or embedded developer, now you know where to camp out!
Mike Kruckenberg starts things off with a 60 minute session on building new INFORMATION_SCHEMA tables (10:45 to 11:45am). Immediately afterwards, Jess Balint, Gerardo Narvaja, and Anders Karlsson will present a little less-technical, but still engaging session entitled "Primetime ODBC: Constructing ODBC Applications and the ODBC 5.0 Roadmap". Then, after lunch, MySQL engineer Chuck Bell tackles the expert-level discussion of "Embedded MySQL Applications", followed immediately by JasperSoft CTO Barry Klawans talking about integrating Jaspersoft and MySQL for Enterasys.
Well, that's just a quick rundown for developers. Clearly, there wasn't enough time or room to cover all 140 tutorials and sessions, and you'll definitely run into the problem of not knowing which of two or more great sessions to attend. But, remember that all the slides will be available after the conference, so even if you miss a session, you can grab the slides. See you next week!
The MySQL User's Conference (http://www.mysqlconf.com/) will be held April 23-26 in Santa Clara, California.
Thanks, as always, for supporting MySQL!