OR:
How I won a Nexus 7 without much teeth gnashing.
OR:
How to make your fellow nerds upset at you.
So, a couple of weeks ago, SCALE 11x happened. As usual, the SCALE team pulled off a GREAT expo - I can’t rave more about the job these guys do. If you’re ever considering attending their show do it. Spend the weekend, soak up the geek vibe. Lots of good knowledge, and a bunch of good people. However, this post isn’t about SCALE per se, it’s more about an attitude and credo I try to live by.
I’ve always told my kids that you can achieve whatever you set your mind to, and I try to embody that example. I’m not perfect, by any means but I try to strive for my own personal, unique, brand of awesome. By and large, I think I succeed. This came into play during SCALE in a very strange way. The folks at Rackspace were holding their annual break/fix contest at SCALE again this year. If you’re not familiar with the concept of a break/fix contest, it’s simple: they break a server in a way known to them, and then they time you while you fix it. Assuming you fix the server correctly, Rackspace will award prizes to the first, second, and third fastest repair times. The prizes this year were:
- First place: 320GB OCZ Solid-State Disk
- Second place: Nexus 7 tablet
- Third place: Arduino Kit
I’ve been seriously thinking of the hackery I could do with a Nexus 7 tablet for some time, but I never could justify the money to buy one. However, when I saw that they had one in the contest, I scopelocked on that bad boy like a rabid ferret going into a tube full of meat. I decided to hold off on tackling the contest until near the end of the conference, where I had a better idea of what times were in what position. My plan was to stack the deck in my favor so I could slide right into second place and get that tablet. By waiting till the end of the conference, I figured I’d have a fighting chance at establishing a position just behind the leader.
So, on Sunday, right before I left the conference, I decided to plant my butt down at the Rackspace booth and give this thing a whirl. I asked the folks running the booth what the fastest time was. 9 minutes, 35 seconds, was the reply. I grinned and nodded, and told them to start the clock as I cracked my knuckles and began shoving manager-Bill to the backseat so that engineer-Bill could drive this racecar to just outside the winner’s circle.
First problem: Get Apache on the virtual server in question running. No problemo, man. A quick sudo /etc/init.d/httpd start to see where the feathers on this Injun were missing, and bam, I had the answer. There was a typo in the httpd config file. Flew into vim, fixed the typo, and had Apache running. NEXT!
Second problem: Get the correct index.html to show up when you hit http://vhost1.local. This hurdle was also cleared in fairly short order, this time by looking at the access logs and config again - this time the guys got sneaky and put an .htaccess file in the directory. Moved that thing out of the way, and onto the next thing
Third problem: The Apache server had to respond properly to a phpinfo.php page. Checked it out, it was the phpinfo() command was administratively disabled in the /etc/php.ini file. Commented that line out, restarted Apache, checked the URL with cURL, and whammo! Looked at the clock, and I still had three minutes to tie the first place guy. Perfecto - I’m right on pace to come in second, as planned.
Fourth problem: The Apache server had to answer to a second virtualhost (http://vhost2.local) and respond with data from a local MySQL database. Ah, LAMP, how I haven’t really missed you. Shouldn’t be too hard so I dug into it. Turned out that the password for the database wasn’t right in the config file, so I edited it and it still didn’t work. Crap, I’d have to change the breakfix user on the MySQL database to get the thing to work right, and I can NEVER remember the syntax on the MySQL commands for that kind of thing. I looked up at the test guy and asked, Hey, is it cool if I google for a couple of things? He replied with You don’t have internet access on that VM, dude. I said, Yeah, but my smartphone DOES have access. He shrugged and said, Sure, it’s not a closed-book test. AWESOME. A spot of AT&T imitation 4G later, and I had the syntax for the command at hand, and changed the breakfix user in the MySQL DB to match what I’d plugged into the PHP configuration file, and did another cURL to verify my work. And then
I looked at the clock. 9 min, 30 seconds. I grinned, and restarted Apache for good measure, then double-checked the other answers. Only then did I say, DONE. Came in at ten minutes flat and won second place. THE TABLET WAS MINE.
Rackspace made good on that contest, and the Nexus 7 arrived in the mail a couple of days ago.
So, kids, once again, listen to Uncle Billy. You CAN achieve anything you put your mind to, even if that’s second place. Second place may be first loser, but if that’s where you want to be, then you’ve won.