Getting Psyched for Collaborate 2015

speakingatc15lvIt’s that time again. Collaborate 2015 is fast approaching and, I have to say, I’m pretty damn psyched! This is the first time my personal company, NEXTGRES, will be demonstrating its game-changing database compatibility features to Oracle DBAs, developers, and users. I’d love for anyone reading my blog to drop by, whether it’s just to say “hi” or to see what we’ve been up to; We’re on Main Street at Booth 956. Also, thanks to friend and Oracle performance colleague, Craig Shallahamer, I’ll be presenting a completely revamped version of my Life of an Oracle Query session, Visualizing Oracle Query Execution. That’s right, I’ve come up with a good way to visualize the entire execution of a query in real-time as it flows from the client, to the server, through each component of the server, and is returned back to the client. I look forward to seeing you there!

Level of Detail is Hard

Earlier this week, I attended the 2014 East Coast Oracle Users Conference in Raleigh/Durham, NC. The conference was awesome. It was great meeting new attendees as well as seeing a few of the regular, familiar, faces in our community. That being said, if you’re in the area, I’d certainly recommend attending. Likewise, at the conference, I presented, for the first time, a trimmed-down, intermediate version of my “Life of an Oracle Query” presentation. Given the majority of seats were filled, my session had pretty good attendance: more so, generally, than the advanced version. Those I spoke with after the session, however, expressed their wish that I had gone into more detail. Having spoken with other presenters about this for some time, I know it’s a common theme and it’s in this area where I, and others, find it difficult to figure out the optimal level of detail. This is for several reasons:

  1. The number of advanced presentations a conference will accept is, generally, proportional to the number of attendees at the conference. As a speaker, pitching only advanced sessions puts you into a much smaller category with a lower probability of acceptance.
  2. When you live life in the low-level details of an implementation, converting it into much higher-level generalizations is hard. This is because, when you’re discussing low-level details, there’s not much deeper you can go. Conversely, when you convert those details to higher-level generalizations and abstractions, you’re not sure whether it’s too high-level and people will be bored and/or have to ask questions. While attending OakTable World 2014, Martin Bach started off his talk on Hybrid Columnar Compression internals by discussing his compulsion to create many slides saying, “I’m a geek and I get quite excited about all of this this. You need to now this and you need to know that as well!” I definitely understand and identify with his statement. I’ve always tried to boil-down complex details into simple, concrete, and useful information, but it’s certainly a difficulty for me.
  3. You can’t please everyone. When you do an advanced presentation, people who are into the details will be happy, but you’ll lose those who aren’t at that depth. Conversely, when you do an intermediate presentation, people who are into understanding the basic concepts will be happy, but you’ll lose those who want the details. If anyone knows how to please both in a 45 minute session, related to Oracle Internals, please let me know!

All in all, the feedback I’ve received has been positive and, for those who wanted the more advanced version, I’ve given them a copy of my advanced presentation. I consider these types of challenges good learning experiences, which only help me find new ways to present a wealth of cool Oracle details and share my knowledge with more people. Also, if you attended my session, thank you!

Oracle OpenWorld/OakTable World 2014

Screen Shot 2014-11-06 at 10.43.13 PMThe last OpenWorld I attended was back in 2009, when I was still in my twenties, prior to my several-year-hiatus from the speaking circuit. At that conference, Oracle had accepted my submission to present “The Life of an Oracle Query.” It was fun to present at an actual Oracle conference. What was even better, in addition to the Pythian/OTN blogger meet-up, was attending Oracle Closed World at ThirstyBear, thanks to an invite from Jonathan Gennick, who I’d finally met in-person after communicating with him for several years. This invite also enabled me to meet and talk to several of my long-time idols of the Oracle community, including Graham Wood, Jonathan Lewis, and others. Five years later, while many things have changed, many also remain the same.

This year, Oracle, to the surprise of many, accepted my submission to present, “Demystifying the Oracle Database Network Protocol” and, in an even more awesome turn of events, Kyle Hailey invited me to give a 10 minute TED-style talk at OakTable World on the network protocol work I’ve been doing lately. While there were a few good OpenWorld sessions, I spent the majority of my time at OakTable World, where I’d get to see some of the awesome Oracle hacking and research my colleagues, including friend and fellow enthusiast Tanel Poder, have been up to. It was great to see so many non-OakTable members attending OakTable World as well. After talking to a few, it seemed they were having a great time and learning a ton. Likewise, in his “office,” I finally met Mogens Nørgaard, Kevin Closson, Debra Lilley, and Doug Burns.

In my opinion, the MySQL presence at OpenWorld was also very positive. I even had the chance to catch up with InnoDB/Oracle/Twitter MySQL hacker and former EnterpriseDB colleague, Inaam Rana.

All in all, it was a great time and I hope to be back for Oracle OpenWorld 2015!