Saturday, October 28, 2006

Oracle Open World 2006 - miscellaneous meanderings from a week in San Fran

Oracle Open World (OOW) has become an awe-inspiring event: with the consolidation of annual conferences for Oracle, Siebel, Peoplesoft and JD Edwards, OOW now brings together over 40,000 people, filling all three Moscone Convention Center buildings, plus several hotels. Heck, Oracle even got San Fran to close off the road that runs between North and South Moscone, the first time that was ever done. I imagine that act must have greatly boosted Larry Ellison's popularity with Bay Area commuters.

Awe-inspiring and quite overwhelming: attend OOW and you enter a very unnatural world of harsh lighting, frigid air conditioning, and lots and lots of people walking around with the same bags, the same name badges swinging from their necks, the same look of determination as they make their way either to the next session of interest. And then there is the loud, frenetic exhibition hall (actually, two separate halls this year), where the objective seems to be to gather as many t-shirts, tote bags and a multitude of other throw-away give-aways that companies have deemed will draw participants to their booths. Of course, there are also the magicians, the mugglers, the masseurs, the mini-arcade games, the barristas, and rarely but still occasionally the scantilly clad attractive women who no doubt are also ace PL/SQL developers. It's like a circus for otherwise sophisticated, highly technical people.

For the vendors, it's a numbers game: how many badges can we scan so that we have a fat list of leads to pursue after the show? It is a fairly indiscriminate process. For example, when I was about to do my theater presentation on code testing, the magician Quest hired would do his tricks and then draw people to the booth with the promise of a free t-shirt, and a raffle of $10,000 to take place on Wednesday afternoon (you have to be wearing your shirt to win). Nothing subtle there, and no mention of my name, what I did, what I would talk about. Seemd kind of odd (and for some of my presentations, we did actually let people know I would be speaking),but it works just fine. Anyway, it's not like this isn't an already qualified audience: you wouldn't be walking the floor there unless you had some sort of interest in Oracle technology.

In any case, I think that some graduate students could write some very interesting PhD theses on the human dynamics revealted at this show. I can still recall an OOW from years past, at which a company with the booth next to that of RevealNet was giving out beanie babies in exchange for people filling out a detailed, 6-page personal history for marketing analysis purposes. Attendees were lined up 5 layers deep to hand over their details in exchange for a toy they could buy for $5. Very very strange...

Anyway, Wednesday afternoon rolls around and the crowd assembles for the drawing of three names for three checks ($2500, $2500, $5000 -- and your name goes back into the pot after you win, so you can theoretically win more than once. Forget theoretical! In 2005, a very lucky guy had his named pulled TWICE!): a veritable sea of grey ToadWorld t-shirts. That was incredible and you can get a sense of it by clicking here (watch out: 65MB file).

Well, knowing that this was going to be my universe for the next five days, I started off my trip to the San Fran area by heading outdoors on the Saturday before, in a beautiful park in the San Jose area. I gulped in the very clean air amongst towering redwood trees, along with my sister-in-law, Carmen, and a nephew and niece. I then stayed over at Carmen's place on Saturday night. On Sunday morning, I strolled into the main conference hotel, the Marriott, where the friendly fellow at the front desk told me that I had been scheduled to arrive the night before, so they cancelled my reservation and the hotel was now sold out (as was, likely, every other hotel for the surrounding 10 miles). Not a very nice piece of news, and all my fault! But we worked it out, and I did stay at the Marriott the whole time (thank you, Kathleen, thank you, thank you). Very nice hotel, excellent fitness center, and only one truly bizarre experience:

It was 10 PM on Wednesday night, back from Quest's special premiere event for ToadWorld. I was working on my laptop, with Johnny Cash explaining why he wears black seeping out of my speakers, when I realized that I was also listening to the sounds of a very distressed woman out in the hallway somewhere. Beaten and collapsing, calling weakly for help? Horrible sounds. I grabbed my phone, my card key, opened my door, and looked up and down the hallway, ready to help. No one there. And then I realized that all the noise was coming from the room across the hall. It wasn't a woman in distress I was listening to, it was the sound of a woman pretending to have a really good time. It was the soundtrack of a porno film, with the volume turned up to the max. Argh......

I called the front desk and asked them to deal with it. Ten minutes later, a security guard was knocking on my neighbor's door. "Sir? Sir? You must turn down the volume on your TV." He said this and knocked loudly several times. I went over to the keyhole to watch. For the next 5 minutes or so, he pleaded with the person in the room to turn down the TV, but there was no response. Finally he opened the door, peeked in, quickly came back out, again calling "Sir? Sir?" Then he finally called someone on his phone, probably his superior. "The customer is lying on the bed, knocked out," he says in a hushed voice, "and completely exposed." Silence as he listens. Then: "Yes, yes, what do you think I'm going to do? I'll go in there and turn it off." And finally, he did. Ah, the joys of attending Oracle Open World.

OK, enough of my meandering thoughts, here are some of my highlights from the show:

* Quest announced availability of Toad 9.0, a substantial upgrade to the 8.6 version, with a powerful single editor that replaces the SQL editor, Proc Editor and Offline Text Editor. They crammed something like 153 separate enhancements into the product. I continue to be amazed at the pace with which the Toad development team can add solid, useful, well-designed features to what was already the best PL/SQL IDE on the planet.

* Live penguin steals Larry's show. Larry Ellison's keynote was, I thought, mostly a rehash of previous keynotes (Unbreakable Linux, grid, RAC, finally got it right, really cool stuff, etc.). Then he announced his cleverly masked plan to squash Red Hat by offering support for Linux at half the Red Hat price. And to celebrate, out came a live penguin. Aw, it was so cute. That deeply educational moment was followed by quick videos of each CEO of the major sponsoring companies (AMD, HP, IBM, Sun, etc.) telling us how fantastic Oracle technology was and how much it had helped them. I was totally convinced. But mostly what I thought was: Wow, Larry didn't really have all that much to say this year, if he needed to fall back on live animals and video clips of talking heads. Regardless, he is still my hero. After all, without Larry and PL/SQL, I would be, let's see, well, maybe I would have written a popular book about Java. Probably did in some alternative universe, where I am the Guru of Squiggly Brackets.

* This was the best and more important OOW for me in many years. Quest announced availability of Quest Code Tester for Oracle, the testing tool on which I have been working hard, really hard, extra super-duper hard, for the last year.
Quest Code Tester 1.2.5.5 is a completely free version, with commercial, trial and freeware versions arriving in February 2007. You can download it from www.ToadWorld.com (click on the Downloads tab). This is one very cool piece of technology. If you write PL/SQL code, I strongly suggest you check out Code Tester. I did a bunch of theater presentations on the tool and received lots of very positive feedback (or maybe they were just all excited about their t-shirts).

* Beyond Code Tester, I did four presentations, including two back-to-back talks
on Thursday morning on error management and test driven development. Very friendly and appreciative audiences. I also was the recipient of the Oracle Magazine PL/SQL Developer of the Year for 2006, which means I will soon receive a very tasteful piece of nicely engraved Lucite. I will be honored to place it next to the Oracle Magazine PL/SQL Developer of the Year for 2002 piece of Lucite on the shelf in my office. No, truly, it is quite an honor and I very much appreciate the support and recognition I have received from Oracle Magazine and Oracle Technology Network over the years. On Sunday night, OMag sponsored a dinner for awardees, Oracle ACEs and others. I met Eddy Awad (OMag Blogger of the Year!) for the first time, saw Tom Kyte again (met him for the first time just a week or two ago at the KC OUG conference) and reconnected with a whole bunch of other top notch technologists, in particular the illustrious Bryn Llewellyn, PL/SQL Product Manager.

* Other exciting announcements at the show: Quest has launched ToadWorld, mentioned above, which is a fantastic portal for all things Toad, plus a ton of resources for anyone writing PL/SQL code. I've got an Experts Corner, as well as a blog, at ToadWorld, so come and visit: www.ToadWorld.com.

And that's not all!

* ODTUG (Oracle Developer Tools User Group) announced OPP2007, the second nothing-but-PL/SQL conference ever to be held. I sponsored the first one back in November 2005 (organized by the wonderful folks at Your Conference Connection) and it was so popular, ODTUG agreed to take over the main sponsorship of future, annual PL/SQL conferences. This pleases me to no end. I have tremendous respect for ODTUG, and much admiration for the hard work of its volunteer board. It is going to be held on February 28-March 1 out in San Mateo. I'll be there, as will Bryn Llewellyn and Christopher Racicot, Development Manager for Oracle PL/SQL, along with many other excellent PL/SQL educators. I hope you can join. Click here for more information and to register.

* As always, the best part of OOW was meeting people who had read my books or attended my trainings and felt that my work had made a big difference in their professional careers. I don't mind helping companies improve their software quality and perhaps even make more money, but I am most jazzed about helping individual programmers lead better and more satisfying lives. Also very gratifying: after my talk on error management on Thursday morning (8-9 AM!), the young guy taking care of the audio visual equipment told me that he'd done some programming in the past. He'd also been listening to talks all week long and this was the first presentation that he could actually understand and get something useful from. Very cool.

* I decided on the spur of the moment during one of my talks to launch a global Campaign to Implement a Boolean Overloading for DBMS_OUTPUT.PUT_LINE (CIBODOPL). Sure, it is a bit silly, but silly can be good in our often all-too-serious jobs, and such an effort might actually move this enhancement request towards the top of the list and just get it done (in Oracle12, anyway). I can't imagine it is going to take much of an effort on the part of the PL/SQL development team. So soon, soon (not yet) you will be able to visit CIBODOPL.net or some similar location and add your name and support to this campaign. You can also tell us on this website what small, annoying feature or lack thereof is on the top of your list to fix/add to PL/SQL.

Thursday, October 05, 2006

The life of a (well, this) software developer

It's 1 Am and I sit at my laptop, typing away. Happily. I haven't been blogging much lately. I am rather insanely busy getting Quest Code Tester for Oracle ready for its preview release at Oracle Open World in a little over two weeks.

I would like to say that everything is pretty much done and I am coasting to the finish line, but that is not the case. Instead, we are working extremely hard to pack in as much functionality (and the fewest possible bugs) into what I believe will be a truly revolutionary killer app for PL/SQL developers.

Here is what my day looks like in this race to the finish line (which is not really any sort of finish. Software is never really finished. It is "just" a release. As soon as it goes out, we get back to work improving the tool):
  • Try to get up at 6 AM. Usually that is possible.
  • Work work work all day long (my office is in my home), with regular breaks, stretching, situps, lots of water, too much coffee. Communicate with my developers in Russia, Ohio and across my office space. Respond to bugs entered by beta testers and our full time QA resource in Alisa Viejo, CA.
  • At around 7 PM, my co-worker Leonid (who comes to work with me here in my home office) heads home (where he apparently takes a short break and gets back to work!).
  • At 7:30 or 8, I have dinner with my wife, Veva, and our house-mate, Ying - both of whom are amazing cooks. So I eat well, and mostly vegetables.
  • Between 8:30 and 10:00, I head to the basement for 45-60 minutes of exercylcing (finally broke down and got a decent Diamondback model, cause I realized that I wouldn't give myself the time to head to the fitness center during the week), and then some weight lifting, more situps (best way to avoid lower back pain, I have found).
  • At 10 PM, I join Veva for a half hour of the best comedy, satire and news on television: the Comedy Central's Daily Show.
  • At 10:30 PM, I yank myself away (I don't find the Colbert Report quite as enjoyable, but still it exerts its pull) and back to work.
  • Try to work till 1 AM.
  • Reward myself with bed and sleep.
So, yes, I sure am working really long hours, but I intersperse the work with lots of breaks and I just absolutely love what I am doing. For example, I just spent about 2 hours implementing fairly complex validation of outcomes (individual tests of a program), ensuring that if you are going to compare a table to a query or a cursor variable to a table, that the select lists of each is compatible. Cool-o, neat-o.

I am also extremely happy that Quest Software is investing in this tool to bring it to maturity so much faster than would otherwise have been possible.

Time for bed.