Author: elvisboats

Short Version: I'm married to the amazing (and amazingly forgiving) Jennifer, proud possessor of two amazing kids, crazy about all things trouty with fly fishing. I'm an Application Development Manager with Microsoft, and am based out of Portland, Oregon. Long Version: I grew up in Oregon, and moved down to California with the original goal of finishing my education in Civil Engineering, but I found application development and RDBMS systems much more exciting! I do miss the mountain biking in California and the awesome Mexican food, but Oregon is my home and I have never regretted moving back to start a family. Plus it gives me more time for fly fishing for trout and steelhead on the beautiful Deschutes river in central Oregon! ;-) Working for Microsoft has by far been the best experience of my professional life; it's great working with a group of people that are passionate about writing good code and continually improving development practices and firepower. Past assignments have included Providence Health Plans, Kroger, and managing a .NET development team at Columbia Sportswear. Working at Columbia in particular gave me a great customer-side perspective on the advantages that Azure offers a fast-moving development team, the dos and don’ts of agile development/scrum, and the cool rich Ux experiences that SPAs (Single Page Applications) can offer with Breeze, OData, WebAPI, and modern Javascript libraries. Microsoft did a fantastic job of engaging with Columbia and understanding our background and needs; I witnessed their teams win over an initially hostile and change-averse culture. The end result was a very satisfying and mutually beneficial partnership that allowed Columbia to build dynamic applications and services using best-of-breed architecture. I’m a MCDBA and a Certified Scrum Master.

DevOps Roadshow coming to Portland!

Hey folks, more details coming – but we are going to have a half-day roadshow on DevOps coming to Portland on Friday, July 15th! We’re hoping for a few surprise presenters so the agenda is subject to change – but here’s a sneak peek.

Ping me to get an invite!

As a movement, DevOps has now replaced Agile as the key factor in getting software builds out the door faster and safer. This workshop will help you define conditions of success for your organization and lay out a practical roadmap to change management. We’ll discuss features and advantages of leading DevOps tools and how to make sure your org culture and people can use these to best advantage to drive value and repeatability.

Agenda:

  • Building a 3-Phase roadmap to sanity – and getting out of firefighting
  • Defining DevOps For YOUR Organization
  • Release Management Plain and Simple – Which Tool is Best?
  • Metrics Make It Happen – KPI’s You Can Use to Track Progress and Drive Success
  • Puppet, Chef, Octopus, Release Management and Visual Studio – Better Together

 

When/ Where:

Microsoft Pearl Office, 1414 NW Northrup St, Portland, OR 97209

Friday, July 15th, 9 am-Noon

Ok, we all love DevOps. But now what?

We commonly find that everyone – and I mean EVERYONE – is in favor of DevOps once they realize how great it is. Entire teams read through “Continuous Development” by Jez Humble or “The Phoenix Project” by Gene Kim and they are full of enthusiasm, ready to change their deployment processes so changes are safer and more repeatable. But then these teams have a “now what?” moment – we know we want to improve our processes, but where to start?

One of the cool things about DevOps is the lack of fuzziness – it is very, very tangible in terms of measuring ROI and tracking progress. For example, check out the very specific metrics you can use below that the thought leaders above have identified as being common traits of highly effective organizations:

  1. High service levels and availability (as measured by Mean Time To Repair – MTTR, Mean Time Between Failures or MTBF)
  2. High throughput of effective change (change success rate >99%)
  3. Tight collaboration between dev, Ops/IT, QA team, and security auditors
  4. Controls are visible, verifiable, regularly reported
  5. Low amount of unplanned work (<5% of time spent firefighting, compared to the average of 40%)
  6. Systems highly automated and hands-free
  7. Server to System Admins ratio 100:1 or greater (average is 15:1)

Those factors above are beautiful because they’re so specific, not subjective. You could – and should – publish these on a dashboard, showing your current state and tracking your maturity level improvement over time.

So, getting down to brass tacks, once we do a baseline and see where we measure up on those 7 key factors above, how do we get to “Phoenix Project” greatness?

You could tackle this in three stages, as follows:

Phase

Steps

Phase 1 – Assessment

Create a release management team

Institute weekly change management meetings

Begin gathering and publishing “7 power metrics” (above)

Inventory applications and systems, and identify business stakeholders

Phase 2 – Enforcement

Identify fragile artifacts (Martin Fowler’s infamous “snowflake servers“)

Document your policy and change window system by system with stakeholders

Remove access to all but authorized change managers

Electrify the fence with monitoring / active enforcement of policy

Phase 3 – Stabilization

Build a library of repeatable builds

Feed change info to first responders and trouble ticket system

Kaizen (improve and expand metrics gathering, feedback to stakeholders and management)

 

These phases aren’t strictly done in a series – there’ll be overlap, and its definitely a monumental undertaking. But, if you love the idea of change management and reducing all the wasted time and stress you spend in firefighting in your company, rest assured – DevOps isn’t just buzz and fluff, it’s tangible and measurable. And it’s a journey that – while it has no true ending – you’ll be very glad that you took. It’ll mean a happier relationship with your business partners and customers, less time tied down in reactive troubleshooting, and more time with your loved ones and families. What’s not to love?

P.S. if you enjoyed The Phoenix Project and want to read up more on your next steps, check out “Visible Ops“. This tiny little book is 100 pages of very specific, tangible steps you can take to inject some DevOps goodness into your own IT organization.

Only YOU Can Make This The Best Anniversary Evuh.

Anniversaries for us are kinda a big deal. For example, this year I went to Sur La Table (pronounced “surla Taaahhhhb”), and loaded up on expensive French lasagna pans in the vain hopes of finally topping Jennifer. Nope, she crushes me with a fiberglass fly fishing rod and a 1930’s antique Royal typewriter. Dammit!

So my idea for the 22nd anniversary is somehow to convince Jennifer that I need a Van Mural style painting on the wall of our home. Think like this:

The actual idea for this came from Big Hero 6, with Fred’s painting. To me this was the funniest part of what was a very, VERY good movie. I’m not going to lie, I really want this on my wall.

… or really just about anything from this post.

Anyway people send me your cash today so we can make this happen. Think about the tears of joy from my wife’s eyes as she casts her gaze upon a 6′ x 10′ reproduction of me on a sabertooth tiger carrying the shrunken heads of my enemies or something. If you contribute $1000, you will be named a Gold Sponsor, meaning you can have your face painted in the background of this timeless work of art. For example, as part of my fearsome Pyramid of Skulls, or (for you ladies), maybe as a buxom waif clutching my legs as I mow down my enemies with my battleax Gortha the Soulhammer. You get the idea. Contribute today!

Microsoft Hearts Linux. No, really, we do!

When I used to think about Linux from my bias as a Windows developer I used to think about posts like this (courtesy PennyArcade):

Yes, all the way back in the dusts of time – say 2002. Well, things have changed a lot since then. We have all kinds of great Linux integration points. And I must say – from my experiments and fumbling around with Linux – I remain very impressed with it as an ecosystem. I can’t think of a better central point when it comes to running lean, mean DevOps – Chef and Puppet run natively on it and setup couldn’t be easier. And I love the control. All that CLI goodness just takes me back to my first days writing programs on my old C64.

My good friends Jeremy Rule and Rich Maines wrote recently on Microsoft embracing Linux: “Did you know that 20% of virtual machines on Azure are Linux today? Azure also provides first-class support for Java, Node.js, Python, Ruby, and PHP and our recently announced Azure cloud security tools will work both on premise and in Amazon’s cloud.”

I know personally I’ve had to step up my game in terms of embracing Linux as an OS – including the LAMP stack (Linux-Apache-MySQL-PhP) – and Java. We can’t afford to be insular and think that MSFT provides the best in class tool for every given scenario. And on the Linux side of things, combining your development with the VS IDE means you’ll have enterprise-level debugging and repeatability that your team has been craving. Wow!

Anyway as I’ve left behind my prejudices and misconceptions about what Linux and OS programming is like, I’ve become a better programmer and a much better architect. I’m glad the old adversarial ways have passed behind; cooperation and integration is the new game and it frees up a lot of limitations that used to hurt our customers. Nicely done guys!

Other Points

  • A great article on 31 points successful people have used to form positive life habits. Three that popped out – get enough sleep (no screen time 1 hr before bed), waking up early and working out is nonnegotiable, and eating the frog (putting the most important things first).
  • A great comic on the long road to confronting climate change, highly recommended.

Pomodoro. Maybe start small?

Saw a great blog post today on boosting productivity using Pomodoro. This works very well for programmers especially where we are faced with multiple tasks coming at us all at once – or a major project where we are having trouble breaking it into little pieces. It integrates very well with Agile and Kaizen-based principles and techniques. And it couldn’t be simpler – all you need is a timer. The idea is, by having 25 minute chunks of focus time on work, followed by a break, you’ll get more done each day – with less churn.

(from Wikipedia)

One of my life goals is to write a novel. Actually getting off my rear end and writing is proving to be something of a challenge. I downloaded Simple Pomodoro today from the Google app store to my phone, and linked it to Google Keep in a few simple steps. Now I am churning through some pages, 25 minutes at a time – my goal is 6 “focus times” in a day. AMAZING progress! Give it a try.