Dieyuhbiddis, I’m a commin’ fer ya…

Pre-TL;DR – I raised some money. Wanna help me raise some more? I’ll give you a fake mustache if you donate.

DONATE HERE: http://main.diabetes.org/goto/AmericanFryer

Hey, guess what!? I asked people for money, AND THEY GAVE IT TO ME! Well, not to me. That would be foolish. They gave it to people 1,000x times better than me.

So there are at least 9 people in this world that make me think that it’s not all Duck Dynasty and $1.29 items on the dollar menu. You can see them all here, and marvel at their benevolence.

But I think there is more of these benevolent lords and ladies. Loardiesords? Laddiords? Lordies? Yep. Lordies. Thanks for letting me workshop that, WordPress WYSIWYG editor.

Anyway, there’s more of you that want to give $$$ to flip a couple of Upside-Down Gresham Caramel Apples to Diabetes. So here’s my promise to every one of you who donates, and who has donated, from this moment forward, will receive a special gift. What is this gift? Well, lemme tell ya all about it.

I will be riding the “American Fryer” a 1986 Specialized Allez that was featured in the cinematic gem American Flyers. If you know anything about 1980′s bike movies, it’s as bad as you would expect. But if you know anything about Pre-Bull Durham Kevin Costner in this film, you know he sported a LEGENDARY MOUSTACHE in said film. So here’s the deal. If you donate to my effort to fight one of the biggest health threats  facing folks on our pale blue dot, I will do the following:

  1. Affix a high-quality novelty moustache of your choosing from the following set to the tube appropriate to your donation level. $1-$25 = Seat Tube (because you’re supporting me), $25 – $100 = Top Tube (because you’re the Coliseum), and for > $100, you shall be the proverbial hood ornament, ridin’ on the HEAD TUBE!
  2. Route safety permitting (and if I am not to physically devastated to operate a smartphone) I will try to get a glamour shot of your particular bizzaro-Shenandoah.
  3. Upon completion of your moustache’s journey, I shall send you your hair-trophy, via the finest* postal service, to your residence, along with a very official-looking certificate, certifying the credentials of your mustache, and proclaiming your deep, burning hatred of Diabetes.

Do it for Costner. Do it for Brimley. JUST DO IT.™©

Posted in Uncategorized | Leave a comment

Happy America Week. Have a Powershell script on me.

*edit-this looked terrible, copied and pasted from my text editor. I used WP to clean it up, but I’m guessing you’ll have all kinds of shit in it if you copy and paste. All I can say is Notepad++/TextMate (screw you, Atom, you hipster editor), and make sure your encoding is on ANSI.*

—begin scripty stuff. Copy below, save as a .ps1 file, and run in Azure Powershell—

### Derived from/inspired by http://michaelwasham.com/windows-azure-powershell-reference-guide/copying-vhds-blobs-between-storage-accounts/, edited by Tyler Bradford, username:tyler emaildomain:nimbusconsult, a .com|mercial TLD 7-2-14###

$t = $host.ui.RawUI.ForegroundColor

$host.ui.RawUI.ForegroundColor = “DarkGreen”

Write-Output “***Azure Powershell Script to move VHD files from one storage account to another***”

“”

“This script was created 7-2-14 to try to help what really SHOULD be something you can do through the Azure Management Web Portal. All credit should go to Michael Washam http://michaelwasham.com/ who actually wrote the meat of this script here: http://michaelwasham.com/windows-azure-powershell-reference-guide/copying-vhds-blobs-between-storage-accounts/ I just put some prompts and other options.”

$host.ui.RawUI.ForegroundColor = $t

“”

“”

$azSubscrp = read-host -Prompt (“Set your Azure subscription by entering the alpha-numeric subscription ID”) Set-AzureSubscription $azSubscrp

### Source VHD  - authenticated container ###

$srcUri = read-host -Prompt (“Enter the URL of the VHD. You can copy this from Dashboard page of the VM in the Azure Mgmt Portal”)

### Source Storage Account  ###

$srcStorageAccount = read-host -Prompt (“What is the source Storage Account?”)

$srcStorageKey = read-host -Prompt (“Enter the storage key for the account. You can find this in the bottom menu option `Manage Access Keys` in the AMP”)

### Target Storage Account  ###

$destStorageAccount = read-host -Prompt (“What is the destination Storage Account?”)

$destStorageKey = read-host -Prompt (“Enter the storage key for the account. You can find this in the bottom menu option `Manage Access Keys` in the AMP”)

### Create the source storage account context ###

$srcContext = New-AzureStorageContext -StorageAccountName $srcStorageAccount ` -StorageAccountKey $srcStorageKey

### Create the destination storage account context ###

$destContext = New-AzureStorageContext -StorageAccountName $destStorageAccount ` -StorageAccountKey $destStorageKey

### Create the container on the destination ###

$title = “New container” $message = “Do you want to create a new container for these vhd files in the destination storage account?”

$yes = New-Object System.Management.Automation.Host.ChoiceDescription “&Yes”, ` “Create a new container”

$no = New-Object System.Management.Automation.Host.ChoiceDescription “&No”, ` “Use an existing container”

$options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)

$result = $host.ui.PromptForChoice($title, $message, $options, 0)

switch ($result)

{

0 {$containerName = read-host -Prompt (“Please give the new container a name”)

New-AzureStorageContainer -Name $containerName -Context $destContext

}

1 {$containerName = read-host -Prompt (“What is the existing destination container name?”)

}

}

### Give the new vhd a name ###

$destBlob = read-host -Prompt (“What do you want to call the new vhd file?”)

### Start the asynchronous copy – specify the source authentication with -SrcContext ###

$blob1 = Start-AzureStorageBlobCopy -srcUri $srcUri ` -SrcContext $srcContext `

-DestContainer $containerName `

-DestBlob $destBlob `

-DestContext $destContext

### Retrieve the current status of the copy operation ###

$status = $blob1 | Get-AzureStorageBlobCopyState

### Print out status ###

$status

### Loop until complete ###

While($status.Status -eq “Pending”)

{

$status = $blob1 | Get-AzureStorageBlobCopyState

Start-Sleep 10

### Print out status ###

$status

}

–end–

Posted in Technology! | Leave a comment

FREAKY FRIDAY! + Warm Milk

Preface: I am not a “Oregonian” by many people’s standards. I feel that my decision to be a first wave Portlandia immigrant was dumb luck for a kid who chronically tried to hard to ever be really cool. Regardless, this post will probably  sound like ridiculous hipster navel-gazing and/or ivory tower bullshit. All I can say is I have been living in the post-post-ironic BioDome for over 13 years now, and free range indie folk will eventually get into the brain via osmosis. It’s science, look it up.

I’m 37 today. It’s generally true that birthdays in the latter half of a decade  feel a little flat. But I would put forth that 37 is a remarkably unremarkable birthday. Unless, you know, you’re an amazing person. A number of my friends come to mind. That big hairy weirdo in the green speedo on Twitter certainly has some special sauce.

But really, at 37, my most important task as it pertains to introspection and taking stock is figuring out if I can manage to not be a whiny baby for the next 3 years until I hit the halfway point to the great dirt nap. It’s just not a birthday that brings to mind any kind of existential urgency, socially constructed checkpoints, or grand openings of vast vistas of opportunity. I think I would say that the best thing I can say about turning 37 is that I managed to get life insurance before I hit the big Trevin Sarvbos.

Well, and also, that at this point in my life I’m not afraid to put poorly constructed references in blog posts to the actor who portrayed Hercules on television. Fuck you, Edward Snowden, THAT’S REAL COURAGE.

So anyways, lame birthday. Whatever. But here’s an interesting thing, or at least its interesting to me. I am beginning to find that my capacity for recognizing patterns is getting better as various other parts of me are getting demonstrably worse. Don’t even ask about my knees. But here’s one example; to say that culture and society are cyclical is not really something that’s going to get you any AP credits. However, when reading an article recently about the new JJ Abraham’s directed Star Wars movie I had an epiphany. Geeks and jocks or in their modern incarnation, Bros, have traded places from when I was growing up.

And this is something that has been recognized in popular media for quite a while, but it’s usually framed as the geeks triumphant. Hell, I was involved in starting a organization that basically does just that. Which is weird, since a core component of geek culture seems to be holding onto its marginalized outsiders status. But that’s not exactly what I’m saying. What I’m saying is that the geeks are in the cultural drivers seat, and the bros are in the backseat being told that I WILL PULL THIS CAR OVER IF YOU DON’T STOP PLAYING THAT DISPATCH SONG RIGHT NOW! You see the same introvert/extrovert dominant/passive tick tock all over. Beatniks verses greasers and 50′s football jocks. Hippies versus yuppies. Enlightenment thinking vs romanticism. Etcetera etcetera etcetera.

Now that’s probably all sounds like some pretty pedantic shit writing. To this I say; “Well, if you’re reading this, you read the stuff in italics at the beginning. Its your own fault you moron.” but I would also say that this is an insight that comes from real world experience not just from removed analysis. In retrospect, it makes complete sense that’s a generation raised on Janeane Garofalo and Vincent Gandolfini would obviously create a generation of super-bellybutton-watchers. But at 37 I can confidently say that I’ve lived through the entire transition. When your summer blockbusters for the last 5 to 10 years running have all been based on toys from the 80′s, SciFi reboots from the 80′s, or science fiction books from the 80′s, you’ve gotta get the point eventually. You’re the dominant culture.

This is made it even more apparent by the characterization in popular media of the “geek”. They’re always complex characters, with real emotional depth. Jocks and Bros are left to fill the void of 80′s Poindexter, i.e. two dimensional. Don’t believe me? Just ask Vince Vaughn about the variety of roles he’s offered to play. Even the comedy world of Seth Rogen et al doesn’t rely on its nuanced complexity of motivation. And for those of you who are about to mention Freaks and Geeks, I just want you to try to picture Bradley Cooper talking about getting his dick wet. Unlikely, because he’s a classy guy. But now try imagining that same dialogue coming from Neil deGrasse Tyson. One is a little bit more plausible than the other.

Anyway, now that we fully rambled into astrophysicists dipping their wicks, I’d like to close with this statement; I don’t need any more birthday parties, or at least, not this year. The reason is I’m much happier having the big picture. It’s much more satisfying than the wild night. Having a realization like this, as old, worn, and tattered as it is, is pretty enjoyable on a visceral level. It is a glass of warm milk. I heard an interview with Bob Dole, aka Methuselah, on NPR the other day. It included a bit about how he has an eating regiment of organic milk and cookies, and i found it oldy charming. 2004 me would have scoffed himself into a coma. But I’m beginning to see, via “hands on learning” a point in time in the future when my greatest pleasures are that stupidly simple, and I don’t give a shit what’s on the teevee, because I know in 20 years it’ll go back the other way regardless of whether I’m alive to see it or not.

TL;DR – Bring on the old, the circle of life, & I have a crush on Bob Dole.

Posted in Uncategorized | Leave a comment

30 Days of DevOps, Day 8-lol: An Unholy Creation

Today will NOT be know as Taco Tuesday, but FREEDOM FRIDAY!

…but STILL! ON! A TUESDAY!

-W. Style (aka Lucy)

I! AM! A MASTER BUILDER!

-T. Special (aka Emmett)

If you haven’t seen The Lego Movie yet. I have nothing to say to you. Stop. Stop right now. Turn off your computer/iPhone/Galaxy Tab/Chumby, stop looking at a screen, and go spend too much money to look at a bigger screen, and go see The Lego Movie. All this inanity will be waiting for you when you get back, I promise.

Up to speed? Good.

So the progress on this project has been, well, let us just call it “modest”. But I have been cobbling together an interesting Franken-cloud with the rapidly diminsihing time-based free credits I received on the various cloud platforms I’ve been tinkering with. So I’ve got:

  • Puppet Enterprise running on Azure – Hey, I’ve got the most $$$ on Azure, the Puppet Enterprise trial is good until the end of May, and the whole idea of “The Cloud” is who cares where it’s running, right? *psst, people will still TOTALLY CARE, and I’m sure *nix devs will hate Azure for one reason or another. wha-ERRR* So, with the help of this module, we then go from our Puppet Enterprise Master over to…
  • Google Cloud Platform, more specifically mostly Google Compute Engine. I gotta burn up that $500 credit for signing up by June 1st, so it’s 8 cores from hell to breakfast. Here, I’ve been doing all kinds of whakcadoodle stuff. Poorly. And you’ll never see it, because my VMs don’t even get the courtesy of being taken behind the barn before they get a grossly misplaced 0.228″ ear piercing. It’s all like “Mornin’, Boss. You see the Sox stink it up last whoaWHOAWHATDON’TPOINTTHATINFAC*BLAM*” And yes, it usually happens in the morning, like some kind of Kurtzweilian one night stand, because I was drunk enough to wonder what it would be like to make it with a Docker container.
  • AWS. Ummmmm. Yeah. t1micros are beating out CoverOregon (topical!) for usefulness, but not by much. Mostly, they function as another SSH jumping-off point because every time something doesn’t work as expected, I assume that there’s a MS engineer who got made fun of at some convention by a bunch of DevOps bros that is intentionally fucking with the OpenSSH’s apt-get packages on Microsoft’s default sources.list. Oh, and yeah, that’s weird, to run apt-get update and see urls that start with azure.archive and end with ubuntu.com.

So what have I learned as I approach the 2/3rds mark? Or pass it? Whatever.

  • Sometimes, if you are really careful not to fork and send a pull request for anything that is remotely critical to a Git repo on github.com, and totally fuck up your commit with your newbitude, people will be far too nice and help you along like a scared, helpless three-legged dog. They will even do a good job of striking that balance of not paying too much attention to your three-leggedness while still treating you like a QuatraCanis. How? Oh, like, throwing a stick really far for you would be a dick move. Instead, they will do something that dogs enjoy that a three legged variant is capable of, like playing tug-of-war with said stick. But not pulling too hard. Because that would also be a dick move. If you are thoroughly confused now, my work here is done. But maybe one day you will read github.com/dotcloud/docker/blob/master/docs/sources/installation/google.md, and you will say to yourself…”How is it that 3-legged mutt isn’t dead yet”?
  • The more HTML5-y a site is for an FLOSS product that is purporting to “Make DevOps/VMs/Containers/Dev Environments/App Deploys/etcetcetc easy!” has a direct inverse relation to the amount of real, useful, actual documentation. Yes, Devs, I know you are all very good at commenting your code. But that is not documentation. PDFs are shitty for restaurant websites, but pretty helpful if you’ve got some crazy Voltron-esque thing made up of the Ruby lion, the LXC lion, the Chef lion, and I’m running out of good FLOSS apps to tie to lions before I commit something to this post that someone will be able to snicker at and say “Puh! Chef and IPython? Fuckin’ idiot” *ed note: refer back to any post that clearly states I have NO IDEA what I’m doing here*. And BTW if you showed a Man page to 99% of the people on earth right now, regardless of language. they would probably kill themselves. So yeah, maybe some good howtos might be nice.
  • Stop. Just… slow down. I can’t… wait. WAIT. I remember that, I saw that a few days ago, maybe I can fix this dependen… NO, I DON’T WANT TO MAKE THIS INSTANCE PORTABLE. God. What? No, I already have a plan for this… oh, well yeah, actually, being able to run two commands to configure everything does sound pretty good. Okay, yeah! Let’s try this. wget, dpkg -i, here we go……. FUCK. FUCK. FUCKFUCKFUCK.
    I love you, crazy Amazon rain forest ecosystem of cloud dev tools. But you are seriously bringing me down with the amount of time I spend chasing my tail, trying to figure out A) what you all do, B) why anyone picks one thing over another, and C) whether it’s worth getting under the hood, or just trying to make it work. You know, like Windows.

So mostly I’ve learned how to complain about the job that I am aspiring to. Which, when you think of what I am trying to get away from, is ironic, to say the least. And now I need to take my leave of you, Internet, and go make myself a t-shirt on CafePress;

AIN’T NO COMPLAININ’
LIKE A SYSADMIN COMPLAININ’
CUZ A SYSADMIN COMPLAININ’

DON’T STOP

Posted in Uncategorized | Leave a comment

30 Days of DevOps, Day 5-7: *insert Goldilocks analogy here*

I bring it to the blues, I pay all my dues
So what’s gone’s dead, let me use my forehead
Easy pack it up man, let me stop stalling
Cause everything I do is like falling

-T. the Dove

A note about a minor adjustment: blog posts and detailed markdown daily logs are nice and all, but probably not as valuable (to me, at least) as actual hands on experience with DevOps tools. That with some other time-wasting bullshit of the profoundly annoying variety* produces the “daily” update schedule you see here. Once again, NOBODY CARES. But I shall persevere in my delusions that someone does.

So Git, you are obviously a awesome tool, but you’re bringing me down. So less gittin’ until there’s actual code.

But more towards the title reference, it’s been back the the *aaSes. Any and all promotions/credits have come through, so it was time to do something with all of these clouds floating around.

So I start off with GCP and at some point during the setup (I forget exactly when right now, but it’s pretty early) you get a choice of 4 languages to enable for a specific project; Java, PHP, Python, or Go.

Where’s Ruby? :(

Now, to be clear, I still know bupkis for Ruby at this point. But, I do know how often it is mentioned in job postings. I was also able to find out fairly quickly that this used to be an issue, but not so much now. However, I’m already being slightly obtuse by not starting with AWS, so at this point I decided to do just that, and check out AWS.

Whelp, the thing I have been most excited for with AWS was the native Chef integration for automated deploy/provisioning. And since AWS seems to do a lot less handholding at the outset, I decided this would be a good place to start. So I create a Rails App Server layer (with only vaguely understanding what that it), define an instance, and fire it up.

And it runs out of virtual memory and fails the setup. Because it’s a t1.micro instance. *sigh*

This is exactly why I didn’t pick AWS. As little as I understand in this arena, I have a pretty good sense of how a software vendor is relating/selling to their customers based on their market position. I mentioned my 13 free GApps domains before. Remember when you couldn’t buy GApps? Like, it was free-only? And now, not so much. If you are going to provide me with free tools to try out the service, Amazon, you probably shouldn’t make them so gimped that they can’t even run.** So I’m pretty sure AWS is in the “Yeah, free tier, blah blah, wevz” phase of their marketshare/product lifecycle.

So, who’s left?

Yes Microsoft, I see your hand is up. Calm down, you’re gonna rupture something with all that frantic hand waving.

So over to Azure, with my BizSpark! subscription (somewhere a junior marketer in Redmond just flashed back to the time his Azure developer engagement pitch got passed over, and a little part of him died that day). Much like AWS+Chef, I was excited to try the Puppet+Azure integration that was announced recently. So I did that. And it was a snap!

So I ran away.

I really do like software that “just works”. I like Active Directory, because I’d rather just get a new employee up and running, rather than bash my head against Open Directory/LDAP+Kerberos+CALDAV+Postfix+etc. But that shit was seductively easy. And this is a learning exercise, and I learned absolutely nothing from firing up that Enterprise PuppetMaster instance on Azure.

Soooo…..  back to GCP. I don’t know Java, Python, PHP, Go, or Ruby, so why do I care?

At the outset Google gives you two options for a jumstart;1 – A preconfigured”photofeed” app using GAppEng+Gloud*** DB backend, SQL-esque or Not-so-SQLy, and a chunk of Gloud Datastore for blobs of the photos, and 2 – A mobile backend stack for Android/iOS development. I’m going to try the latter, and see what I get in a few days.

I’m sure it will “change everything”. X-D

*Oregon UI Dept, I am sorry that I sound so mad when I call you. I’m not mad at you. You’re no roadrunner, but it’s not your fault that certain people can justify lying so easily.

**To be fair, I tried to launch that instance again, and it started. But it seems clear that t1.micro instances are going to be a pain to deal with.

***Yep, came up with this while typing, and it shall be the new shorthand for the GCP. Because it has more letters. That makes sense, right?

Posted in 30 DoDOs | Leave a comment

30 DoDOs – Day 3/4: Maintenance Window/Taking a mulligan

Some of the worst mistakes of my life have been haircuts
-J. Morrison

Showing up every day isn’t enough. There are a lot of guys who show up every day who shouldn’t have showed up at all.
-J. Caan

All it took was 1/2 a week for daily nonsense to derail this silly little project. *Slow clap*

But the thought of writing a post owning up to this failure in the first 1/10th of the undertaking was slightly more palatable than having 3 posts that were supposed to be 31, so here we are. And I’m going to turn lazy into lazyade here with the following takeaway;

I read a lot/often about how DevOps/Lean Startup/Cloud Computing/etc is a revolution in tech. And it certainly is quite a shift, although I find that some of the sentiments along these lines are often somewhat hyperbolic. One time I read a post that DevOps is a “socio-political movement”. This prompted me to go read the wikipedia entry for Political Sociology, just to make sure I wasn’t taking crazy pills. But I certainly agree that the shift DevOps heralds is a fundamental one, and it’s one that puts the developer center-stage.

Did I mention before I’m not a developer? Pretty sure I did.

But this made me think about something that I’ve noticed, which is that DevOps/Iterative Development/CI/Least Viable Product/etc are all about continuing to take steps forward, no matter how small. Also, “forward” can  be repositioned at regular intervals. But it’s basically about movement, adjustment, and feedback from every new point in space you find yourself at.

Traditional IT is not that. At least, not in my experience. Traditional IT is about the big push, the mass deploy, the PROJECT, and the subsequent constant vigil over what you’ve built. If the new paradigm if DevOps is setting a Guinness World Record for longest domino train, then IT is setting the record for the longest motorcycle  jump over school busses.

So I guess I need to work on my domino train skills. Or my blogging skills. Yep, in re-reading this post, definitely my blogging skills.

Anyway, things accomplished in Day 3/4:

  • Some Git repo cleanup
  • Some more reading on the basics of Git
  • Looking at JSON (as the cookbook file format for Google Cloud deploy automation)
  • Dealing with the nuts and bolts of getting the AWS/AWS Activate/Google Cloud Platform/Google Dev Credit for GCP set up. Nothing running yet, tho.

So, onward. Possibly upward. No guarantees, though.

Posted in 30 DoDOs | Leave a comment

30 DoDOs – Day 2: Git it? NOPE.

But I’m tryin’ real hard, Ringo.
-J. Winnfield

Tyler B’s Quick Pain Cake Recipe

  • Take half-baked project idea, born of equal parts curiosity, fear, procrastination, and excessive free time
  • Add software tool developed personally by the father of the Linux kernel. DO NOT gently add, with good basic understanding of version control principles, centralized or distributed, as that would seriously detract from the delicious pain. Throw that shit in there all at once.
  • Add a fancy desktop UI app. This will make your pain batter look like it’s not painful at all, but never fear, the pain lurks below.
  • Add one tablespoon of StackOverflow post for advanced functionality giving commands-only (NOT the kind with descriptions/explanations of the commands, that’s like Splenda™).
  • Stir vigorously, with your eyes half-closed. Swear. Give up. Realize you are doing all this with the whole world possibly watching. *pssst* nobody’s watching at all lololol Go out and RTFM. Realize you are a dumb-ass.

Enjoy the pain! Good thing you’re cooking for one!

So yeah, Git. Github. Looks really simple. Guess what? Not so simple. And doing this before I had any idea what I was doing was unwise.

So yesterday was spent A) wasting time writing overly long blog posts, B), doing stuff to actually make some money, and C) coming to terms with how much I am not a developer, or have basic understanding of dev tools. But after reading some very helpful online documentation at the tail edge of my ability to stay awake, I began to get it.

Then I woke up at 5:23 AM, excited to try stuff in Git. Oh my god. am I becoming a developer? HAHA no. But I do find it funny how there’s a lot of “register for Developer access” out there, which has about as much background checking as registering for a RiteAid frequent shopper card.

So yeah, I will put an actual list of stuff accomplished in a Git branch on the 30Dodos repo, and link to it later. But for now, I feel a little bit like a certain country boy you might be familiar with.

Posted in 30 DoDOs | Leave a comment

30 Days of DevOps, Day 1: Battle of the *aaS-es

Since it costs a lot to win, and even more to lose
You and me bound to spend some time wonderin’ what to choose.

-R Hunter

Platform matters. Infrastructure matters. These choices are not single choices. Your first choice in a project is actually a whole long series of choices that you make then you “break ground”, as it were, and start getting your hands dirty. So this first choice is a big one, a serious one, an important choice.

Or it isn’t.

It seems like the more things change, the more they stay the same. So my choices are Windows, OS X, or Linux. No, wait, it’s Exchange, Novell, or DIY Postfix+ClamAV+LDAP, Oops, sorry, I meant it’s either Blogger, WordPress, or TypeKit.

Ginger, Mary-Ann, or….. Mrs Howell? Jeez, with these cultural references, I’ll be lucky if anyone but the AARP hires me.

These choices matter, but often for reasons that aren’t really good ones for the primary goal. Or rather, once you start to really look at this first choice you begin to realize what your real priorities are. And I have found out, after looking at the ins and outs of the three major cloud IaaS / PaaS providers, that I have a slightly different #1 priority that I thought. Specifically, I’d really like to learn the best platform, which will give me the most job opportunities/increase my skill set/have the most resources re: training, reference, community, etc, but what I need is to make sure that my already sad looking bank account doesn’t get sadder. 

So here’s the breakdown, quick and dirty. If you’re interested, you can read some of the more in-depth pros and cons on the github repo for the 30 Dodos here.

Amazon Web Services:

Obviously, the industry leader. With 29 different services, ranging from VPCs to DNS Servers to Petabyte Data Warehousing, AWS has it all. And they have a free tier that offers quite a bit to get started. If my #1 goal, as I thought it was when I started this, was to make me look better to employers, then there would be no questions, AWS would be the winner. It’s the industry standard, has been in the game the longest, has the most functionality. But here’s the rub; AWS charges you once your usage exceeds the free tier, whether you want/can pay or not. It also bills in 1 hour increments for time-based resources, such as CPU usage. Apparently, managing I/O is tricky as well if your app/cloud infrastructure is public-facing. And although they do offer AWS Activate, which gives more training/support freebies, you would have to me in a Tech Incubator/Seed Fund to get the $1,000 credit for AWS services. :( . Still, I was leaning towards AWS, and was just going to be really diligent about watching usage metrics.

Google Cloud Platform:

Aw hells naw. You know Google ain’t gonna let the J. Bezoeezy have all these stacks (of cloud vms). Of course Google is going to be in the I/PaaS market. In typical Google fashion, they rolled out their cloud platform in a way that didn’t really look like a platform until all of a sudden BAM! check it out, cloud platform. First was Google App Engine in 2008, then BigQuery for TB datasets & Google Cloud Storage in 2010, Google Cloud SQL in 2011, Google Compute Engine in 2012, oh we have a full cloud stack to rival Amazon’s now? How did THAT happen? And, as I am typing this, Google has announced that they are making Andromeda, their SDN product to their US Central and EU West zones. So they are making moves like Jordan. In addition, they are offering “Developers” a $500 credit, to be used over 3 months. I applied yesterday for said credit, and was approved for it within about 6-8 hours. *psssst* I’m not a developer AT ALL.

Microsoft Azure:

Look, I tried Windows 8/8.1. Windows Phone 8. Actually, I really like  Server 2012 R2, particularly the Enterprise version for it’s unlimited VMs in Hyper-V. And MS is really trying to listen to it’s customers and get Azure to a place where it is a compelling product in the cloud provider space, which it seems to be for large enterprise customers that want to move their on-premise infrastructure into the cloud for greater availability/failover capabilities. But fool me once, shame on…wait, how does this go again? Help me, Ghost of Dubyah. However, MS does have the most compelling offering to save $$$, namely $200 just for signing up, and their BizSpark plan, which gives you $150/month, every month. But I need to expand my horizons here, so although I will probably sign up just to get into the BizSpark plan, it’s time to say goodbye (for now) to MS.

Final Choice: Google Cloud Platform

I will certainly create accounts with each provider and poke at each one, but it seems like Google is charging into this space right now, and the corresponding freebies that Google tends to give away when doing so (I still have about 15 grandfathered Google Apps domains at the free tier. It’s getting to be a hassle keeping them active) will make this project pretty easy to manage from the cost-perspective. Plus, SDN is way cool. Since Gmail  came out I have drank the Mt. View kool-aid pretty hard, so it will  be an easy world to live in, as I’m very familiar. And the Android integration makes the possibility that this project might actually produce a useable Android App is a very nice upside as well.

So there we go. Off to the races with GCP. Which is oddly similar to the MCP.

END OF LINE

Again with the decade-old cultural references. *sigh*

Posted in 30 DoDOs | Leave a comment

30 Days of DevOps: From newb to ?

*Edit* First day’s accomplishments can be found here: Daily.log for 4/2/2014

Well that was fast. It seems like just yesterday I was learning the 5 components needed for POST. Or how subnetting works. Or bumping up against Active Directory for the first time. Or building a 2U 3TB RAID5 file server to host a backup snapshot repository. Or doing disaster recovery planning for the first time.

Then I woke up one morning less than two weeks ago and I was filing for unemployment for the first time, a little more than a month shy of my 37th birthday. And as I go job hunting, I see the words “Engineer”, “Ruby”, “Agile”, “Jenkins”, etc etc etc…

But the one I keep seeing more and more of is DevOps. And the one that is disappearing faster than polar bears  is SysAdmin.

Guess which one I am?

It shouldn’t be that surprising, I guess. IT has always been a churn. I’m pretty sure I could find the point in my father’s sales career when his experience at IBM and Prime Computers didn’t seem to land him the same caliber of jobs. He certainly kept up and worked hard, but I suppose it is somewhat inevitable that as you get older it’s going to get harder to keep pulling your feet out of the tar pit. The whole system is geared towards constant acceleration, and I’m pretty sure I’m not Benjamin Button, so staying on top of the churn is probably an unreasonable project.

Fortunately for me, I have a moronic affinity for unreasonably difficult projects. Just ask my wife about my ’86 VW Vanagon.

So here’s the deal: 30 days, with at least 2 hours a day dedicated to learning DevOps tools, principles, and platforms (I did mention that I’m unemployed, right? That mortgage ain’t gonna get paid with blog posts, so some job hunting will have to get done). Even if a job comes along, I’ll see it through to the end. And at the end, there will be:

A Web-Based app running on an IaaS/PaaS that has the details of it’s construction (both the stack and the app) in a public revision control system. In addition, the app/stack will be managed by a configuration management tool, and have some form of event-driven functionality. Also, learn some Java and Python already, fer christsakes.

I’ll also detail my journey here daily, possibly with long rants on what I’m encountering, or possibly just link to a page on github. But either way, my plan/hope is twofold; 1 – get a working knowledge of these tools, and 2 – show other SysAdmins that you don’t have to let yourself be discarded by the machine that brought you Flappy Bird. We survived Windows Vista, we can do this.

So, as my cursor drifts towards the “publish” button, it’s 5 til 10:00 AM, PST. I’m gonna go get another cup of coffee, clear my mind, and jump in.

Wish me luck.

You’re gonna need it. -H. Solo

 

Posted in 30 DoDOs | Leave a comment

Parental interlude

So as she is wont to do, Kelly Hogaboom posted a beautiful, touching, nuanced blog post about mother/parenthood and her daughter over at one of her blogs. Now I’m a pretty weak-sauce also-ran in the blogosphere when it comes to putting myself next to K-Boom, but I feel like you can’t really hold me at fault when I want to ride her coattails and post a vignette of my own when she is so goddamn inspiring.

So the other night was day 3 of Beth being down in Ashland, Orygun on a 2.5 week stint, getting ready to lay down some serious Britten Screw-Turning. I’m holding it together with the amazing help of good friends and an amazing community. But it’s hard. It’s always hard, for obvious reasons of time and logistics. But it’s also hard going through the motions with a Beth-shaped hole in my day. It fucks with my program. This is good, as there is nothing better to develop appreciation of a thing than it’s complete absence, but all the same; hard.

So, it’s 11:50PM,  and Nate’s urgent pee-break from sleep at the end of the first REM cycle* pops up like clockwork. But tonight is more subdued. It’s not accompanied by cries of unintelligible fear and distress, which will be dispelled by taking a whizz. There’s just some shuffling, the pad of footsteps, a pause at my door, and a very sleepy request;

“Daddy, I’m thirsty”.

He continues to the bathroom, Bachman Turner Overdrivin’ it, and trusting I will do the same. I should be asleep now, but as I said before, No-Beth is fuckin’ up my Christmas, so I hop right out of bed and go to the kitchen to get a sippy cup of water. But as I pass the bathroom, door open, light on, I pause. He’s standing there, swaying slightly. He reaches up, unsnaps the top of his footy pajamas, unzips, sighs once, and begins the evacuation.

And I start to cry.

He does not look 4 years & 11.5 months. He looks like he is 16. He looks like myself, in my minds eye, during innumerable midnight urinations. In control, but only bringing the barest necessary level of consciousness to the task at hand, which is little. But he doesn’t deface the seat/floor. He knows the drill, but he’s already thinking about getting back to that dream he was having (his dream recall is far superior to what mine ever was).So, dig if you will a picture, of a Dad watching his almost 5-year-old pee, while he cries in the hallway. Poetic, eh?

I did say that Beth being gone is hard on me.

We will go to The Circuit rock climbing gym this coming weekend and celebrate 1/2 of a century of his existence. It will be fun, or possibly not. Most likely it will be fun, but we’ve fully entered the phase where sometimes you can’t stop the trainwreck. But odds are, fun will be had. There will be cute pictures. There will be pictures that are cute, but also shocking, as the will show his rapidly advancing development. He’s gonna be freakin’ rock climbing, and 6 months ago getting him to wipe his own ass was like arguing with a Global Warming denier. I will watch with pride, love, and amazement.

But I won’t cry. I’ve already taken care of that.

 

Posted in Uncategorized | Leave a comment
  • Leitmotifs

  • Golden Oldies