SQL Rap Contest Results!

Wow! We ended up with 19 SQL rap submissions! The response was more than I could’ve hoped for. Parodies ranged from Coolio to Beyonce, Akon to home-spun rhymes, and everyone single one was awesome. Brent, Ward, and I have closely reviewed each and every submission. We laughed, and then we laughed some more, and now we’re ready to name a winner.

But first… did you know that GoDaddy.com is hiring? I’ve been working for this company for 2 years, and I *love* it. Truly. I can honestly say it’s the best place I’ve ever worked. If you’re looking for a challenging job and a great work environment, go take a look at some of the open positions at GoDaddy.com/Jobs. [/shameless plug]

And now… the winner of the 32GB iPod Touch, generously donated by GoDaddy.com for this silly little contest, is… Steve Jones! Steve’s rap, DBA’s Delight, is set to the tune of ‘Rapper’s Delight’ by The Sugarhill Gang and has so many SQL features dropped it’s almost educational. Almost.

THANK YOU to everyone who submitted a rap! Hopefully you had as much fun writing them as we had reading them. I’ll be following up in the next few days with a full listing of all SQL raps, once I figure out how to organize it! If you’ve posted it to your blog, please leave me a comment with the URL. And if for some reason, you don’t want me to post your submission, that’s okay too, just let me know.

Oh, what’s that? You want to see Steve’s winning entry NOW? Oh, if you insist…

DBA Delight” by Steve Jones
(This is set to the tune of “Rapper’s Delight” by The Sugarhill Gang. If you’re not familiar with the song, go to Playlist.com and search for it; it really adds to the whole experience!)

Now what you hear is not a parse
I’m rapping to the code
’cause me, my tweeps, and the devs
are gonna try to gen a load.
See I am the D-B-A
and I’d like to say hello
to the devs, the PMs, and the boss
that make me want to explode

But first I gotta, query, query
with intellisense and a brand new de-bug-ger
Say lock, don’t block,
with the hints to make those latches stop
Well so far you’ve seen me code, but I brought 2 men along
And next on the mic is dev Mike
C’mon Mike, show those keys

Check out the C-L-R, and the C-T-E,
and the rest is S-Q-L
you see I go by the link “Code-2-Supreme”
and now I’ll show you why
You see I know my keys
and identities, both char and I-N-T
I got primary and foreign keys
and DDs to back them up.
I got Assemblies, Partitioned entities
And a queue to make to grin
I’ve got a package I can integrate
to find that MAX or MIN!
Master PM, am you on?
It’s now your turn to spin a yarn

Well it’s locks and it’s blocks and it’s mis-matched socks
and the delays don’t stop until I take stock
I’m the PM you hate, when you’re late
I’ve Project and Excel
I’ve got every estimate that you made
Before this project went to hell!
So get to work, and get it done
Server, instance, database, too
I need them all up running, humming along
and returning results so true.
DBA, it’s on you
Show us what you gonna do!

I got a new quad core
sixty-four bit bits
and memory up to the rim
Gonna add some S-S-Ds for speed
and pile on the load for all my sims.
Got Agent jobs, A DR plan,
and procedures for every ‘ject
No access I don’t let you have
and auditing you won’t expect.
Clus-ter-ing, Log shipping,
mirroring across the land
I’ve got Queues in place, just in case
You break some fiber strands

Have you ever went over a friend’s shop to work
and the code just ain’t no good?
The cursors are slow, the procedures long
and a box you wouldn’t patch if you could!
So he asks what to do, to speed things up
and you sit stunned for a sec
The boss wants to help, a little consult
for some work without a spec.
Then you say, that’s it, I got to leave this place,
Don’t care what these people think
I’m just asking for trouble without benefits
and a database on the blink
So you bust out the door, hit the road
go back to your own job
check your server, see green lights
stop that head before it throbs
you text your friend two weeks later
to see how he has been
He says sorry about that job
but DBA, we’re still friends.

User Groups Are Like Guilds…

(channeling “Forest Gump”)… you never know what you’re gonna get. Ack! Sorry, I just can’t help myself sometimes. Moving on…

I was recently discussing guilds with my gamer husband and he commented how much running a user group sounds like running a guild. For those of you who aren’t already aware, before I traded my gaming addiction for a SQL one, he and I ran a guild together with around 140 members.

The Guild
Not sure what a guild is? Check out the The Guild, a popular, very humorous, and only slightly exaggerated web series.

The more I’ve thought about what my husband said, the more I realized how right he is. Allow me to share my (questionable) thoughts on the subject:

Guild Masters

Some guild masters are great leaders and others are just very dedicated; the same is true with user group leaders. If you spend all day trolling forums and working on maxing your DPS, you’re probably a good gamer but it doesn’t necessarily make you a good guild master. Similarly, being a SQL samurai does not necessarily prepare you to lead a user group. A handful of people are just naturally good leaders; most everyone else has to acquire the skill, often through painful experience. Before starting a guild or user group, you should ask yourself the following questions:

  • Are you in the market for an unpaid part-time job?
  • Do you like to alphabetize your DVD collection?
  • Do you enjoy helping n00bs (junior admins)?
  • Have you ever led an anti-social, semi-violent mob before?

If you answered “no” to any of those questions, don’t worry, it doesn’t necessarily mean you should not start your own guild or user group. But you may want to consider first joining an existing group to ensure you’ll enjoy the experience. Either way, you’ll quickly find out how important it is to have…

Officers

You can’t do it alone. Well, you can try, but don’t expect the 40-man heroic raid you scheduled to start on-time or run smoothly. Every guild and group leader needs supportive and dedicated officers. If it’s your first time leading a group, try to recruit someone who has leadership experience but perhaps doesn’t have the time or energy to be El Jefe; this person can be an invaluable resource for you. And if you have run a group before, you still want officers to help distribute the workload. Officers can help with a variety of tasks, from managing supplies to organizing major events. Lastly, they’re also a great point of contact for your…

Guildies

Guildies (members) are the fine men and women who have entrusted you to lead them into battle (provide stimulating meetings). Without them, you would have no guild (user group). They have joined for any number of reasons: some are new to the game and want to learn (junior DBAs), some are interested in meeting new people with similar interests, and others are just there for the free food.

Over time, you’ll find membership waxes and wanes; people switch servers (move to a new city), trade in gaming for a more boring hobby (switch from DBA to sysadmin), or just run out of time in the day. There’s little you can do to change this, so you’ll inevitably have to do some new-member recruitment. However, if you’ve got a good group, you’ll find much of your advertisement is by the word-of-mouth of current members. Still want to recruit new members? Try throwing some big…

Events

Whether it’s an end-of-game dungeon or a SQL Saturday, everyone loves a good event. There’s a couple of things you should be aware of, though. First, always, ALWAYS plan for people to not show. Don’t take it personally; life just happens. I’ve heard that 70% of registrants is a good estimate of how many people will actually show up.

Secondly, while everyone loves to attend events, not many people want to actually help organize one. If you’re lucky enough to get volunteers, treat them very well! You’ll quickly find out a good volunteer is worth his or her weight in…

Loot

Just as dungeon bosses drop loot (prizes) both good and bad, so do sponsors. Very few guildies are motivated solely by loot, and loot is not absolutely necessary for a successful event. Still, everyone likes to win, and there’s really nothing like the joy of rolling a perfect 100 to score that epic dagger (erm… I guess the best translation for this one is having your ticket drawn to win a copy of Quest’s Capacity Manager).

PvP

One of the most popular event types is a PvP (player vs. player) raid. This is where your guildies attack members of opposing factions, just for fun and bragging rights. To help make user groups even more guild-like, I’m currently organizing raids against the local Oracle and mySQL user groups. We hope to use the element of surprise to really lay into ‘em. I’ll let you know how it turns out.

All jokes aside, guilds and user groups may not be _exactly_ the same, but there are certainly a surprising amount of similarities. If nothing else, both definitely involve a lot of time, effort, and dedication, and I think many of the leadership and organizational skills learned in a guild are truly transferable to the “real world.”

Hopefully by now you’re either feeling motivated to start a user group, or you’re off to the store to stock up on Cheetos and Mt. Dew, the sustenance of choice for most gamers, so you can survive the weekend locked in the basement playing PC games. Whatever the case… have fun!

Ward’s RAP

Ward Pond has been talking about RAP all day today on Twitter. I’m not normally one to RAP, but I’ve been inspired to put out a little lyrical verse in Ward’s honor.

[ahem]

Ward’s RAP:

My name is Ward, last name Pond
SQL Server is of what I’m fond
I like my data relational
and my processes transactional
(say what?)
If you don’t know about t-logs
Then you best be reading my blogs
‘Cause I’m a real SQL master
I knows how to make the SQL go faster
Command line is my only tool
Not like that SSMS junkie, SQLFool
So don’t mess with me, or you’ll be TechEd skooled

Word. And I don’t mean Office.

[/pain]

Interview with SQLBatman

Recently, SQLBatman asked me for an interview via e-mail. Why the Dark SQL Knight would want to interview me is anyone’s guess. But I agreed, hoping for a chance to meet and defeat the SQL Joker, my arch nemesis (on principle, of course). Alas, the SQL Joker did not make an appearance and continues to be the bane of my existence. But for those interested, you can find the details of the interview at the SQLBatCave.

Forget SQL Server, Excel is the Answer

I had the strangest dream last night. It started with me being chased around the Microsoft campus in Redmond (which I’ve never been to) by Godfather-esque midgets with machine guns. Yeah, I know… I don’t know what to make of it, either. But when I woke, it hit me like birdshot from Dick Cheney’s hunting rifle: Forget SQL Server, Excel’s the answer.

The more I thought about it, the more sense it made. I mean, really, what can SQL Server do that Excel cannot?

Store Large Amounts of Data
Sure, SQL Server may be able to hold billions upon billions of rows of data, but who really stores that much data? And even if you ARE storing that much data, then chances are you aren’t really *using* all of it. Scale down, and use Excel. Did you know Excel 2007 can now hold 1 million rows per worksheet? It’s true. And if you have 2 million rows to store, you can always just create another worksheet.

Manage Relational Objects
Pfft, have you ever tried to get data out of a normalized table? You have to do all of these annoying joins. But now that Excel supports up to 16,000 columns, I can just flatten out my tables into one easy-to-use worksheet. Why query when you can filter?

Provide High Availability and Redundancy
Sure, you *can* create a highly available and redundant system in SQL Server, but do you know how much time and money that takes? Plus, do you know how many people create backups without ever testing them, only to find out in the midst of a critical restore that their backup strategy doesn’t even work? It happens all the time. Really, the whole backup process is overly complicated, what with full, differential, and transaction log back-ups, simple and full recovery modes. In Excel, you can just right-click, copy, and paste.

Perform Extensive Analysis and Data Mining
Two words for you: Pivot Table.

It seems like such an obvious answer, I don’t know why I didn’t think of it years ago! Ah well, I think it’s time to cut my losses and start moving my 2 TB’s worth of data into Excel. Be sure to keep an eye out for my new site, ExcelFool.com, coming soon!

Note: Yes, this is just an April Fool’s Day post. I love SQL Server almost as much as I love my husband and my iPhone.

Source: http://sqlfool.com/2009/04/forget-sql-server-excel-is-the-answer/