Last Week’s Travels, On Monday @ 2am

The last week has been a lot of fun travels, great meetups, and solid meetings. All focused around several key topics;

  • traveling to nearby cities to speak & present on immutable infrastructure with Terraform and Kubernetes and…
  • meetings to help build next generation applications for medical, personal, and privacy tracking information.

Before rolling into this week I wanted to put together a quick recap of events and meetings.

The travel consisted of an easy trip to Olympia. I always love traveling to Olympia, and in normal Adron fashion I do it my way, which consists of no cars but a lot of other fun stuff. Olympia, you see, isn’t exactly on the beaten path anymore except for auto-travel, and even then it’s off down a dead end Interstate cut off. But I’m sure that this is part of the beauty of this small city. It helps keep it free of arbitrary “pass through” traffic of people who’d not care or just toss their trash randomly about the city.

One can study this phenom with cities in the US which have an Interstate cut through them, with exits, and an Interstate that goes around the city. Massively different results, the later letting a city retain cleanliness and it’s own much better then the aforementioned technique.

Olympia, I might add is one of the few small cities that really retains a lot of the zeal and attractiveness of the gritty northwest vibe of yesteryear. Oly, as it’s oft referred has tons of unique, local, individualistic shops and street culture. One might be amazed to see such a thing in such a small city, but Oly is one of those few places that bats above its weight. It’s definitely worth visiting.

Each visit to Olympia that I’ve taken I stay at a few different places.

  • Sometimes at my buddy Bobby’s house.
  • Sometimes at an airbnb.
  • Regularly at the Governor in downtown.

The Governor in downtown is this classic 50’s era hotel. It faces the old Capital across the park, just near where the new capital is, but the benefit is its even closer to downtown Olympia. Here I’ve scratched a circle around it, where I go to speak just north of the hotel at the South Sound Developers User Group, and then we always retire to the east at Fish Tale Brewing.


The trip to Olympia I enjoy immensely. It all starts with the standard Amtrak Cascades departure from Seattle at King Street Station. The departure was on time, as was the arrival, which is something that is pretty standard on our northwestern Cascades train routes. I don’t always expect them to be, being US trains, but these are pretty reliable here.

After the scenic and relaxing coding session on the train, I arrive at the station in Olympia. This station is a cute little deal, located in the suburbs on the freight line about ~8 miles or so east of downtown Oly. You see, in typical American fashion the state, federal regs, and railroad(s), along with a failure of foresight by previous generations decided they’d tear up the track connection to the station that did exist in Olympia. This station, of course, was built around people traveling from Oly to other places, and was built intelligently, as we tended to do in long lost past decades. But hey, I arrived at the new station and as I generally do, I had a plan already sorted.

I’ve put together a few photos and a video short for the trip too, enjoy.

My path along the Chehalis Trail into Olympia

Looking at the *Old* Tracks in Olympia along Colorful Leaves

There’s a spectacular trail that is very close to the station that I take built upon an old rail line that was abandoned. Here’s a map with the trail highlighted along with the northern and southern connecting routes. At the southern end I’ve circled the Amtrak Lacey Station (Lacey, being where it is actually located, I always call it Olympia though because that’s the distinctively larger city!)


I might muster some time to post the other images and video from the trip later. But for now, this is it. In other news, I’ve got my “Secret Business Brunch n’ Bike” brunch lunch scheduled tomorrow at Hi-Life @ 11, and also beers on Wednesday. Feel free to join me, always hacking, biking, and eating something. Cheers!

Speaking, Coding, and Visiting Salem, Oregon

I like to take a trip down to Salem every now and again. It’s a great chance to break away from the daily grind in the bigger city. When I lived in Portland or now in Seattle, it didn’t matter, still a great small city to go visit. The other cool thing is I can often combine business and taking a break at the same time in Salem.

The City

Even though it’s a small city it bats way above its size when it comes to excellent food, coffee, beer, and related things. This is always nice to combine with that slower pace of things that a small city provides. The downtown is also beautifully walkable and compact. One can walk to any point in the city in a matter of minutes.

The coffee scene there is seriously on point too. With establishments like The Gov Cup and Archive providing premium coffee options in truly relaxed, chill, and comfortable settings it makes doing a little work and enjoying some espresso an easy thing to do.

Combine that with my other requirements of easy to get to, easy to bike, non-hostile drivers, and beautiful parks and natural environments around and Salem is perfect.

The Tech

Mill Creek

Combining all the aforementioned things with some tech makes everything even more fun! In Salem there’s a group I’ve spoken at a few times called Willamette Valley Software Engineers. It’s a solid group of people, where I regularly gather an audience of 40+ people to present to, converse with, and we often continue onward after presentations across Mill Creek to Boon’s Treasury for conversation a round afterward.

Inspired by Bob Ross

This recent trip I presented, with direct inspiration from Bob Ross, on “The Joy of Coding”. It was the first time attempting to put a talk together in this format. Overall, I believe it worked out pretty well, which the audience elaborated on after the talk on ways I can tidy up this or that and really add some “wonderful trees and forests to the grand mountains” of the presentation as a painting. I’ll be presenting this again and hoping to put a video of the talk together soon. So stay tuned to Composite Code and follow me on Twitter @Adron for future dates.

All in all a great trip. I always enjoy Salem. So until another time, cheers Salem!

Putting Together Medium Lists of Mediums

Recently I tweeted this, mostly in jest of the plethora and confusion of mediums in which to publish content, but also as a kind of reminder to get things straight for myself. Then, by order of that get something written so I could tell others where I put what, and what is what that I publish. Here’s the details.

Medium — i.e. this blog, is a place where I’m going to journal about whatever and I do mean whatever. I might write about cycling, tech, coding, city planning, music, or all sorts of things. No topic is going to be off limits but the one overriding theme here is this will be off the cuff, spontaneous, quickly written and probably completely unedited content that I post. More simply, this is going to be where I write out my stream of consciousness. I have no idea, especially since this is a new effort on my behalf, how frequent it may be. I am guessing I may post 1–4 times per week.

Composite Code — This is my technical blog, with a touch of metal monday, and other things related to my technical interests and my technical work. This is mostly going to include things like conferences, meetups, and where I’ll be speaking, technical docs, write ups on how-tos with languages, tech stack deployments, site reliability engineering, and related material. I post a blog entry here about every ~10–15 days I believe. However I am working on making a much more regular post to this blog to the frequency of about 1–3 times per week.

Twitter— This is my twitter feed, it is indeed merely a twitter feed. It includes a host of tech related things, but also I engage, use it as a primary communication medium with the tech community, and sometimes ramble on about a few other random thoughts or post some solid, brutally awesome, heavy as heavy is, heavy metal. Twitter tends to be my highest volume medium in which I post things to, at about 25–30 tweets per day.

Thrashing Code News — This is my newsletter. I use this to get subscribers first details on upcoming conferences I may be involved in organizing, or conferences that I find that are must attend events. I also post some minor summaries of blog entries for the month (sometimes) and also post about upcoming meetups I’ll be speaking at or other travels out and about where we may be able to meetup, hack some code, enjoy a coffee, have a round of beer, eat, or otherwise get together and nerd on tech, code, and related things. I generally publish a new newsletter every 40–60 days. It’s very low volume!

LinkedIn — I don’t really do much here besides receive emails from tons of random recruiters who 94.6% of the time never actually read my profile, but send me stuff for jobs like “C# Code Janitor” and “Trash Fire Putter Outterer”. My real use for LinkedIn tends to boil down to two specific things: one is a place to put work and resume descriptions and such, and two I use it as an way to manage some auth and interactions. I check this about once every 4–20 days.

Just Another Sunday

I sit here at the moment watching two Kubernetes Clusters build. One is building on Azure and one on Google Cloud Platform (GCP). I’ve got a presentation coming up this Tuesday and Thursday, both I’ll be digging into Kubernetes, Terraform, and a number of other technologies. Those are the two hot technologies for the talks though. Albeit, the continuous integration, languages, and tooling that Terraform builds via configuration and Kubernetes runs in containers is what is actually the meat of this whole sandwich. Which is where I ponder what all of this goo is that wires together things in this virtual programmatic realm in which I’ll build something on top of.

It seems messy from inception. But then of course, all programming and related ecosystem elements in which programming takes place is a messy bag of guts.

Here I sit then, waiting the rather unknown pseudo random amount of time for the Kubernetes Clusters to finish building. A few moments pass and sure enough, as always, very inconsistent build times. The Azure Kubernetes Cluster took 7 minutes to build and the GCP Kubernetes Cluster took just 4 minutes. Last night the Azure cluster was taking 20 minutes or more while the GCP cluster was consuming about 3–4 minutes to build. I’m not sure, as I’ve not dug into the matter deep enough, but something seems awry within the way Azure needs to build out its instances, networking, and related cluster mechanisms. I’m not surprised though, Azure has always behaved and felt slow and cumbersome during the build out of infrastructure. GCP on the other hand clearly comes from Google’s thoroughbred engineering focus on things. It generally builds in a much smaller range of time, consuming much less time overall.

As I build all of this, to work out what will and won’t be in the demo, I find myself next fiddling with presentation material. I really don’t even like to have presentation material, I’d much rather have an interesting enough talk and respective code, samples, and demo to just show the whole thing. Presentation slide decks always fell like, and almost always are, just a crutch for the inability to form ideas, show concepts, or otherwise actually engage the audience around what is being presented. It’s a frustrating dichotomy to say the least. Eventually, with these latest efforts, I actually intend to get down to two slides: one for my information when ending the talk, the requisite contact information and such, then two would be the intro slide with a fancy title for whatever the meat of the talk will be about.

All of this work however is going to be interrupted by the dramatically more important bike ride I’ll take later to clear my thoughts and get the blood flowing through my veins. As things go, I actually dislike sitting still for more than a few hours. I like to chunk my time into brackets, get the work done, and then go for a ride, walk, or something to get my mind cleared back up. I hear it’s healthier for us humans too, but I’ve not set the research to memory to make that argument.

Until later… fini.

The Developer Advocates – Observations on Microsoft’s New Competence

racoonRecently a whole slew of people got hired at Microsoft. Many of us have taken notice. It’s left a lot of people with questions like:

  • Why would Erik, Ashley, or Jesse work at Microsoft?
  • Doesn’t it seem suspicious?
  • I wonder what kind of cash they allocated to that payroll budget?
  • Does Microsoft hire anybody that actually uses Microsoft tooling anymore?
  • I’m confused, what is even going on?

The answers may be more obvious for those of us that have kept an eye on Microsoft. There has been this grand upheaval and cultural change that has occurred. CEO Satya Nadella has legitimately shifted the culture in a way that much of the company has wanted to go. Somehow, he’s also managed to start changing the culture even for those that weren’t sure or didn’t want to go.

Satya has taken what core individuals like Scott Guthrie, Scott Hanselman, and many others have hoped for and pushed for over the years and started to enable the people within Microsoft to make this happen. You can read plenty about how Microsoft has gotten it’s groove back, and about the work the Scotts and others have done to get that groove going. But I’m not particularly writing about that, but it has inspired this article in a big way. I’m going to elaborate on what I’ve observed and what I know to make a strong, effective, useful, and community focused developer advocate and developer advocates team.

The developer advocate team over at Microsoft is led by Jeff Sandquist, Brian Liston, and a few others. They’re solid individuals with good ideas about how to build and have an advocate team contribute effectively to the community in which it works. Here are the top three obvious things they’ve done that have made the team effective, relevant, intelligent, and useful.

  1. The team is diverse. I’m not even going to play around, diverse teams with many ideas and a range of people do better. End of story, it really ought not to be complicated these days. But one can’t just start a team and say “I want my team to be diverse”. That’s a start, but the important part is does one know how to build a diverse team? In technology, if one doesn’t have insight into actual human begins this doesn’t pan out so well. One has to have the ability to communicate effectively to people out of the tech nerd guy stereotype trope in order to actually build this type of team. Jeff, Brian, and crew appear to have this ability. I’ll write more on this later, but suffice it to say, this is a top skillset of a developer advocate team’s leadership.
  2. The team has to be skilled at a variety of complementing technologies. If someone knows X, and the next person knows X, and nobody knows Y, then the team is going to be fairly weak and likely broken in representing and providing value around Y, and in some sense even around X. At this point the Developer Advocates that have been introduced have some pretty extensive skillsets around key technologies that the Microsoft Technical Evangelists have traditionally been extremely weak in. This current team has some skills in the Windows space, but there’s been a big focus in filling the massive skills gap around Linux, cloud technology (ironic there’s traditionally been such a gap on the cloud team), non-MS languages like Go, distributed systems, data analysis and intelligent (or data science or whatever one may call these roles), and more. The Advocate team (also not called evangelists anymore, finally) is finally in a good position to actually start doing advocacy around actual cloud technology. I’m excited for the potential of the prospects!
  3. The third thing that has stood out, is that they’ve hired people that know how to do the advocacy thing already. They’re not trying to define or redefine it on Microsoft’s terms but instead have brought people onboard that are already natural advocates of things they find interesting. Take Erik St Martin (@erikstmartin) for example; co-authored a book, “Go in Action“ with Brian Ketelsen (@bketelsen), co-hosts Go Time FM. That brings up another great example with Brian Ketelsen. Both of these guys are hug advocates in their own right, without connection to any specific big company or what not. These are the types of people that bring huge strength to a team with already proven ability to delivery. Then there’s Jesse Frazelle, but seriously, I really don’t even need to mention the work she’s done with containers (cough cough, docker, etc). Another person you should be watching is Anthony Chu (@nthonyChu), who’s been a steady Azure and great technologies advocate over the years, also joined up. You can read more about the individual team members here, and I hear through the secret grapevine that there are more en route to join. Simply put, Microsoft isn’t pulling their punches!

Before a lot of the Microsoft team had been formed into the epic legion it is today, there were a number of articles pointing to this rebirth into a newly relevant organization. One that was solid is Ars Technica’s “Microsoft’s renewed embrace of developers, developers, developers, developers“ by Peter Bright (@drpizza). One of the first, as anyone who reads & subscribes to [Red Monk] analysis would suspect, was published by James Governor (@monkchips) with “On Hiring Jesse Frazelle: Microsoft’s Developer Advocacy Hot Streak Continues“. The writing has been on the proverbial wall.

So now what?

Now the thing to wait and see is if the team and the team’s leadership can direct all of this energy into their respective efforts. The team is big, lots of people, lots of focus points. How will they use each others’ strengths while building up along core competencies? How will they provide value without detracting from product and push product without losing community value? There are a lot of questions to be answered and I’ll be keeping a close eye on their efforts. As I do with all of the advocacy teams I find fellow interests in. The advocacy, effectiveness, and reasons for it all has been an interest of my own for some time. So much so you can expect more than a few more articles on this topic, until then, cheers!