Jon’s Tumblr Thing-y


  1. Adding the “Princess Sparkle Pony” emoji to my bash prompt might be the most-est awesome-est thing I do all day today.
Also, I know what i’m doing to the Dev team next year for April Fool’s Day.

    Adding the “Princess Sparkle Pony” emoji to my bash prompt might be the most-est awesome-est thing I do all day today.

    Also, I know what i’m doing to the Dev team next year for April Fool’s Day.

  2. “Reconnecting”
Dear Last Sunday of 2012,
You aren’t going to make this easy, are you?
Please Baby Zoraster in a Tree, I’d very much like to be able to talk to this server in our PDX office.
Oy.
Love,
—jon

    “Reconnecting”

    Dear Last Sunday of 2012,

    You aren’t going to make this easy, are you?

    Please Baby Zoraster in a Tree, I’d very much like to be able to talk to this server in our PDX office.

    Oy.

    Love,

    —jon

  3. Mac SysAdmin Thug Life
Doing a wee bit of Mountain Lion (10.8.1) testing and a Lion (10.7.4) (an ancient 1st Gen aluminum Unibody MacBook)) laptop thrown in because I found it under my bed earlier today when I cleaned.
SysAdmins.
We get shit done during the holidays.

    Mac SysAdmin Thug Life

    Doing a wee bit of Mountain Lion (10.8.1) testing and a Lion (10.7.4) (an ancient 1st Gen aluminum Unibody MacBook)) laptop thrown in because I found it under my bed earlier today when I cleaned.

    SysAdmins.

    We get shit done during the holidays.

  4. In Which I Finally, After an Interminable Silence, Break Down and Talk a Bit About Star Wars

    HEY, DON’T RUN AWAY, THERE’S SOME GOOD STUFF IN HERE.

    Last night the boys were driving me slightly bonkers (after an hour, NICE), so I sent them to Best Buy with my credit card to buy the Blu Ray version of the entire Star Wars series.

    $70 well spent?

    Or $70 that proves I’m a bad parent?

    Discuss…

    While you’re doing that. I’ll talk a bit about the Star Wars marathon the boys and I started last night… (I fell asleep during Empire and I doubt the boys lasted much longer, but that’s not the point.)

    We started with Episode IV, naturally. No discussion necessary about why that is the “correct and proper” way to begin a Star Wars marathon. Don’t even talk to me about chronology and story. You always begin a Star Wars marathon with Episode IV. I’m right and that’s all there is to it.

    For the most part, I try to ignore the “prequels” for reasons I refuse to go into here, but I will admit that Ep. III has a few redeeming qualities, I guess (I rather enjoy the final light saber duel between Vader and Obi-Wan, though the “floating on lava” bits are rather overblown), but since I’m all old and decrepit, I have some annoying opinions about Episode IV and I’m tragically willing to share them with you.

    Chewbacca doesn’t get medal at the end of Episode IV. This is bull shit of the highest order. Walking carpets who help the rebellion deserve medals during the denouement of a story, just like the humans do. “THAT’S RACIST” is what I always say during the medal ceremony, much to the detriment of those viewing the movie with me. (I don’t talk during movies, that’s a law with me, but I occasionally can’t help myself and blurt some crap out, OK?) Hell, R2D2 and C3PO should have gotten medals, come to think of it. R2D2 secreted away the plans to the Death Star and the rebels wouldn’t have won without those, right? He should have gotten more than a mere spring cleaning.

    Jonah (the 14YO) came up with a bunch of reasons why Chewbacca might have gotten a medal, but chosen not wear it during the ceremony, “Wookies don’t wear clothes, Dad, so maybe wearing a medal would go against some fundamental wookie-ness? Like, it’s a religious thing for him, you know?” Frankly, this is a level of involved nerdiness I generally shy away from, but I’m letting it go in this case. I’m still calling BS, though. Chewie should have gotten a medal, damn it. Plus, he (Jonah) is only 14, so clearly he’s an idiot for the next few years and is allowed to hold ridiculous opinions. It’s only a problem if he becomes a republican and begins to hold those ridiculous opinions, I suppose.

    Luke is pretty whiney in Episode IV. “But I was going into Tosche Station to pick up some power converters!” Cry me a river, fly boy. Also, power converters? That’s what passes for a good time on a desert planet, I suppose.

    C3PO is the “Jar Jar Binks” of the original trilogy.

    Han Solo is pretty bad ass. (Yes, we paused the movie at the “Han shot first” portion and had a small (though entirely too lengthy) philosophical discussion about editing and art and authorship and how it relates to character development. I won’t regale you with the details, because OY, that would be annoying; though suffice it to say, George Lucas can eat a bag o’ dicks for the simple reason that I only wanted to enjoy a movie and *not* have an extended discussion with my children about “editing and art and authorship and how it relates to character development” in the middle of the damn movie, thank you very much; though because I’m a ginourmous nerd, I simply couldn’t help myself, because I end up feeling a bit strongly about these sorts of things; so fuck you, George L., you neutered one of your main characters with that edit and it’s not about ruining my childhood or some other nerd whine, it’s about you being a piss poor storyteller.) Still, Han Solo, redemptive hero and bad ass and all that.

    I’d have Leia’s babies in a heartbeat, notwithstanding her unfortunate Cinnabon inspired hairstyles. She had me at “Will someone get this big walking carpet out of my way?” What. I love me some snark and sass and an obvious brain at work. What can I say? Make me smile/laugh and laugh at my jokes and I’m yours forever. Screw your gold metal bikinis, I (heart) me some sass. Though the gold bikini scene in Jedi does have a certain charm, I’ll admit. I’m a man of a certain age, after all.

    It’s all about Darth Vader, OK? Ascension. Pinnacle. Fall. Redemption.

    Empire is still my favorite Star Wars movie, though I’ll always have a soft spot for Ep. IV.

    Ellis is at grandma’s for a week or two and we (the boys and I) have decided we’re introducing her to Star Wars as soon as she gets back. She will complain loudly about this at first, I’m sure, but I can also guarantee she’ll love it at the end.

    I just wish I didn’t have to pause during the Mos Eisley Greedo scene.

  5. I believe in simple solutions to dumb problems.
Also, *one* bad port out of 96 ports on two stacked 48 port switches combined with stupid, partially labeled wiring is annoying as hell to figure out.
Remind me to re-label the world when I have a free moment, please.

    I believe in simple solutions to dumb problems.

    Also, *one* bad port out of 96 ports on two stacked 48 port switches combined with stupid, partially labeled wiring is annoying as hell to figure out.

    Remind me to re-label the world when I have a free moment, please.

  6. A couple folks asked about the hosting/set up for the MarryBacon site, so here’s bit of nerdery for anyone who cares.
How to Build a Site That Will Stay Up When Introduced to the World in a Super Bowl Commercial
Step 0: Hire astonishingly good designers and devs to build it.
Step 1: Keep it simple. Like, really simple. The site we built is essentially a single static semantic HTML file. Nothing is dynamically generated. It never hits a database. All the fancy-pants div-moving and opening is done through javascript wizardry.
Step 2: Use a Content Delivery Network. Our whole setup ran through a RackSpace Cloud Managed Service account. The CSS, the creepy BaconBaby maker Flash thing, lovely webfonts, javascripts and images all load from the RackSpace CDN. We also squeezed and optimized the hell out of the images to make them as small as possible. Side note: purging the CDN cache is *really* painful on RackSpace. Use version numbering (timestamps in the file names are a great option here (e.g., base_02-06-2012.css) in your file names, so you can make sure the end client gets the latest version of your file(s). You can purge via the CloudFiles API, but it can *still* take up to four hours for a purge to propagate through their network. Blargh. Also, the default TTL (Time to Live) for a CloudFiles container is 72 hours. We dropped the TTL for our main assets container down to an hour for the launch.
Step 3: Github for version control. We pushed and pulled from our private repository on Github. We used Deploy Keys in order to push code updates to staging boxes and eventually to production servers. (Though personally, I’m a huge fan of “Let’s do it live!” but thankfully, no one listens to me on that score. :-] )
Step 3: QA Test. Use Apache Benchmark (or Siege) to beat the crap out of the thing as much as possible. We used nginx as a web server because it’s incredibly light and fast. And since we are using “cloud” servers, we (well, the client) gets charged based on CPU usage, storage and bandwidth. Using nginx instead of apache also helps keep that cost down.
Step 4: Spread the load. We originally had two 4GB servers behind a dedicated Load Balancer. On Sunday morning, someone got a wee bit paranoid and/or panicky and spun up four more servers behind the load balancers. Honestly, with the leanness of the code and the CDN, I believe the site could have run on a just single server, but the overkill of servers was cheap, all things considered (~$100).
Step 5: Monitoring. We used Scout. Fun charts and notifications! Yay! The real time feature was fun to watch as well. I could tell when the west coast saw the ad, because the graphs spiked up, along with my pulse rate. Also, the Scout guys were incredibly responsive to support requests. The default nginx monitoring plug-in didn’t work with .htaccess password protection (so we could password protect the site while it was still in dev), and within an hour, they had not only responded with a workaround, but were offering to modifying the plug-in’s code to suit us. Nice. 
Step 6: Guinness and mini bagel pizza bites are not acceptable food choices when you haven’t eaten all day because of all the freaking out.
(Yes, we put “Marry Bacon” ASCII art in the HTML source. :-] )

    A couple folks asked about the hosting/set up for the MarryBacon site, so here’s bit of nerdery for anyone who cares.

    How to Build a Site That Will Stay Up When Introduced to the World in a Super Bowl Commercial

    Step 0: Hire astonishingly good designers and devs to build it.

    Step 1: Keep it simple. Like, really simple. The site we built is essentially a single static semantic HTML file. Nothing is dynamically generated. It never hits a database. All the fancy-pants div-moving and opening is done through javascript wizardry.

    Step 2: Use a Content Delivery Network. Our whole setup ran through a RackSpace Cloud Managed Service account. The CSS, the creepy BaconBaby maker Flash thing, lovely webfonts, javascripts and images all load from the RackSpace CDN. We also squeezed and optimized the hell out of the images to make them as small as possible. Side note: purging the CDN cache is *really* painful on RackSpace. Use version numbering (timestamps in the file names are a great option here (e.g., base_02-06-2012.css) in your file names, so you can make sure the end client gets the latest version of your file(s). You can purge via the CloudFiles API, but it can *still* take up to four hours for a purge to propagate through their network. Blargh. Also, the default TTL (Time to Live) for a CloudFiles container is 72 hours. We dropped the TTL for our main assets container down to an hour for the launch.

    Step 3: Github for version control. We pushed and pulled from our private repository on Github. We used Deploy Keys in order to push code updates to staging boxes and eventually to production servers. (Though personally, I’m a huge fan of “Let’s do it live!” but thankfully, no one listens to me on that score. :-] )

    Step 3: QA Test. Use Apache Benchmark (or Siege) to beat the crap out of the thing as much as possible. We used nginx as a web server because it’s incredibly light and fast. And since we are using “cloud” servers, we (well, the client) gets charged based on CPU usage, storage and bandwidth. Using nginx instead of apache also helps keep that cost down.

    Step 4: Spread the load. We originally had two 4GB servers behind a dedicated Load Balancer. On Sunday morning, someone got a wee bit paranoid and/or panicky and spun up four more servers behind the load balancers. Honestly, with the leanness of the code and the CDN, I believe the site could have run on a just single server, but the overkill of servers was cheap, all things considered (~$100).

    Step 5: Monitoring. We used Scout. Fun charts and notifications! Yay! The real time feature was fun to watch as well. I could tell when the west coast saw the ad, because the graphs spiked up, along with my pulse rate. Also, the Scout guys were incredibly responsive to support requests. The default nginx monitoring plug-in didn’t work with .htaccess password protection (so we could password protect the site while it was still in dev), and within an hour, they had not only responded with a workaround, but were offering to modifying the plug-in’s code to suit us. Nice

    Step 6: Guinness and mini bagel pizza bites are not acceptable food choices when you haven’t eaten all day because of all the freaking out.

    (Yes, we put “Marry Bacon” ASCII art in the HTML source. :-] )