Surprise birthday party, wow!
As I stumbled my way into the weekend feeling sick and hacking up a lung from this nasty cold. I thought the weekend would be a no frills, real simple, lay on the couch and get better stretch. Weeks ago Lauren invited a friend from out of town, Brandy, and she told me we would be celebrating her birthday. Naturally, I felt obliged to go along and drag myself off the couch for whatever plans they had lined up for Saturday evening. So as Saturday evening rolled around I thought to myself that I better not go out and just stay home. Lauren insisted that I get it together, get dressed, because we were going to dinner and then bowling. Bowling? I will just go casual, t-shirt and jeans ought to do the trick. As I presented myself as ready, Lauren insisted that I wear a button shirt or something nicer. Huh? That’s where I drew the line. I basically thought we are bowling, I am sick, and this as good as it gets. So we drove north for about 20 minutes to some place called Pinstripes. A quick search revealed that it as an upscale bowling, bocce, and bistro. Bocce? Bistro?
As we pull up to the front, this place looks really nice. When we walk in, I was taken aback. Fancy bar, wine cellar, live jazz & blues band, bowling, bocce, and a really nice restaurant attached. Super upscale. I would of never guessed. Lauren was right, maybe I should of worn a button shirt. As I was just taking the place all in, Lauren insisted that I hurry up and make my way in her direction. Uh, bossy? Very unlike her, but I dismissed it. We walked through a room that connected what looked to be the bocce ball area, and then everyone yelled SURPRISE! Not thinking, but how cool we surprised Brandy. How nice. Milliseconds passed and held on like hours, slow motion set in. Why are some of my family members here? Why are all my friends here? Why is everyone looking at me crazy? It can’t be for me, my birthday is 5 or 6 weeks away. Wait, is it November or December? How much of that NyQuil did I take? Did I go through some time space continuum and miss a month? I mean I’ve been working hard, but I am that out of touch? Panic sets in. Feeling faint. Processing too many crazy questions at once, trying to keep my composure. Holy freaking _explicitive_! It is for me! I can’t believe this is real. Nobody has ever thrown a party solely on my behalf. I am speechless, dumbfounded, and overwhelmed with emotion. My wife has pulled off the biggest secret surprise party ever, and I didn’t have a clue. Not even a little one. Saying that she is awesome would be an understatement. The whole night was surreal, and I figured it would end somehow by me waking up on the couch realizing it was all a dream. There had to be 30 people there, maybe more. Open bar for everyone, great food, and a super delicious birthday cake. I never played or understood bocce, but what a great drinking game! Everyone looked to be having a fantastic time. But wait there’s more. There was a table of birthday presents! Seriously, wow. Lauren and I exchange gifts for our birthdays and my immediate family recognizes it in conjunction with the Christmas holiday but this was too much. What did I do to deserve all of this? I feel so blessed. I have such an amazing and loving wife, such a loving set of family members and friends. I love you Lauren! Thank you all so very much for coming out and celebrating. I am still caught in the moment trying to comprehend it all. My regret is that I was sick and I hope that at any moment there wasn’t a question of how thrilled I was. It will be something I will always remember.
magic_meta_methods
Update: I’ve made magic_meta_methods a gem available at http://rubygems.org/gems/magic_meta_methods
A while back I wrote a plugin for Rails that serializes text and data structures into a singular column called magic_meta_methods on an ActiveRecord. The plugin then makes the data readable and writable through meta-programmed methods and allows the user to save the ActiveRecord just as they would if they were modifying regular attributes. I’ve found this particularly useful for when there isn’t a need to store data that has to be queried or when you want to keep a data structure in tact like an array or hash. By reducing the number of columns and clutter on the table, you can keep the migrations to a minimum. As always I like to hear what the community thinks about it, or what types of improvements would make it more useful.
Rails Lectures at Depaul

Last semester at Depaul University I had the opportunity to give 2 lectures on Ruby on Rails. The topics were “Rails Hosting & Deployment” and “Rails Security”. It was an awesome experience and really rewarding to talk about something that I am passionate about. A big thanks to Igor Polevoy who introduced and recommended me to the Depaul staff.
Here is a copy of the PowerPoint I used on the lecture for Rails Hosting & Deployment.
jruby-quartz 1.1 released
Update: jruby-quartz is a gem at http://rubygems.org/gems/jruby-quartz
I just released jruby-quartz 1.1 on github. Notable changes include support for programmatically firing a job from the base job scheduler instead of relying solely on the scheduled job pool. As a side note, I just realized that github has temporarily stopped building gems since they’ve moved to Rackspace. So if you’re looking to use gem install, you are out of luck until they re-write that system.
MySQL fix for activerecord-jdbc-adapter 0.9.2
About 2 months back I was working on getting a db dump on my current project. I noticed a bunch of the primary keys were missing from tables in the dump file. Irked, I observed that many of tables we hook up to have residual Java Hibernate-isms with non-standard primary keys, basically not ‘id’.
After some digging I found a little problem with activerecord-jdbc-adapter, so I submitted a patch. The good news is that my patch has been included in the latest release. Thanks to Nick Sieger and the gang for including it.
== 0.9.2- The main, highly awaited fix for this release is a solution to therake db:create/db:drop issue. The main change is a new 'jdbc' railsgenerator that should be run once to prepare a Rails application touse JDBC. The upside of this generator is that you no longer willneed to alter database.yml for JDBC. See the README.txt for details.- Cleanup and reconnect if errors occur during begin/rollback(Jean-Dominique Morani, Christian Seiler) ...- Fix for mysql tables with non standard primary keys such that the schema dump is correct (Nick Zalabak)
Follow me on Twitter
My github repository
My LinkedIn Profile