Top 10 developer reasons for procastination

It is so easy, especially in recent years, to not get to it on the code you mean to write. Without further ado, the top excuses:

Special Mention: “Just waiting for the tests to finish” — This one probably accounts for as much time as any, but the alternative (“Uh, I didn’t run the tests”) is worse. So I’m leaving it aside. You all know, though, that adding one comment is not an excuse to run 20 minutes of unit tests…again.

  1.  “Meeting time”
  2. “E-mail/Slack/IRC”
  3. “Github (or internal source code control system) is down”
  4.  “Installing…”
    • “Operating system updates”
    • “Visual Studio/Eclipse/Xcode”
    • “Latest SDK/Compiler/Runtime”
    • “Slack/Teams/IRC”
    • “Docker update”
  5. “Waiting for an answer on Stackoverflow”
  6. “The build is broken (not me!)”
  7. “Compiling”
  8. “Need to fix this one (low priority) bug first”
  9. “Just a quick peek at Hacker News” and of course…
  10. “Gonna need some caffeine before I start!”

btw — The answer for me today is “installing Visual Studio 2017!”

Living in a world of Science Fiction

Have any of noticed that we now basically live in a world of Science Fiction? We’ve got electric cars, and self-driving cars; we have private companies building space craft and planning trips to Mars; we have the Pluto probe; we have drones…when I drive home on the freeway at night, I see drones flying over Lake Washington. Look at the advances in machine learning, voice recognition, image recognition…you can log into your computer using your fingerprint or by having the computer recognize your face. We have virtual reality and augmented reality. And of course we have the smart phone, which is basically the old Star Trek communicator…except much more advanced.

I’ve talked to a lot of my friends, and even my young friends…10-20, feel the rate of change has picked up in the last few years. I asked my 89-year old mother what was the biggest technological change she had seen in her lifetime. “Indoor plumbing” she answered.  But after that, she said it was the cell phone. My mom does not use a cell phone. But her little-old lady friends and their kids and their kids all do, and mom thinks it has changed how people behave, how they interact with each other, more than any other technology she has seen in her lifetime.

About me (2017 edition)

I am an architect in the Azure Core team. Basically the Azure Core team writes the software the runs the Azure data centers, from low-level things like firmware for NICs to the basic fabrics for compute, networking and storage up to the public APIs for these most basic layers of the cloud…the IaaS layers basically. The APIs that let you create VMs, networks, blobs, and manage the infrastructure. The Azure Core team does build some verticals (like IoT), but generally, other teams in Azure build higher level, more vertical services on top of our horizontals: unsurprisingly the SQL team builds the Azure SQL service; another team in our database group builds our HDInsight Hadoop/Spark service; other teams build services for web sites and mobile backends; etc. all built on top of the low-level infrastructure services built by Azure Core.

So if Azure Core is the bottom of the stack, I work on the top of the bottom of the stack. I helped standardize our REST APIs, and was the architect for Azure Resource Manager, the latest version of our control plane APIs, as well as helping design the public APIs for some of our compute services. More recently, I have been focused on getting non-Microsoft technologies to work well on Azure: so I work with the Linux vendors to make sure Red Hat and Ubuntu work well Azure, and I’ve worked with Puppet, Chef, Docker, Hashicorp, Pivotal and others so that those systems can be used with Azure.

 

Keeping up with the cloud

The pace of change in the cloud business is incredible. There is significant news about basic technology, products and the state of the business almost every day. It’s a lot of fun and makes for the most interesting job I’ve ever had. I try to spend a minimum of one hour in the morning just reading about the latest. Here’s a set of links I visit:

Hacker News is a little hipster at times, but something worthwhile almost every visit

DataTau is “Hacker News for data scientists” though far less active

Ars Technica covers a wide range of topics and has some of the best writers working in the business

Techmeme is a more mainstream aggregator

High Scalability regularly provides reports on interesting large scale systems, and their “Stuff the Internet says about scalability” reports always contain interesting links

I spend a lot of time working with containers and dev ops technologies, and for this the best daily source is The New Stack

The Register delivers great stories overlaid with a healthy (usually) degree of snark

For keeping track of Linux news, nothing beats LWN.net

Docker Scoop-It! aggregates Docker related stores

Trending projects on Github is a good way to catch a new project early

In my current job I am highly focused on non-Microsoft technologies, but the easiest way to keep my finger on the pulse of .NET and related topics is The Morning Brew

And of course there is Scott Hanselman’s blog

With the rapid pace of change in cloud computing, big data systems and machine learning, the lines between basic research, applied research, advanced development and product development are very blurred. I find it very useful to keep track of the research literature in a way I haven’t since I left university (a *long* time ago).

The read I most look forward every day is Adrian Colyer’s The Morning Paper.

Adrian introduced the concept of reviewing a paper a day here. As he says there, it is a cumulative thing. At first the papers (even Adrian’s summaries) can be tough going. But quickly the context builds. New papers start to refer to old papers you’ve already read and the connections start becoming apparent. Then suddenly, something you thought was theoretical and cutting edge comes up in a practical work problem. I highly recommend this investment of time.

If you enjoy Adrian’s stuff, you may also like Murat Demirbas’s blog

 

There are a lot of other sites in my bookmarks, but most of them either aren’t as relevant or don’t update as often. If you follow the above links every day, one or more them will very often lead to new posts on other sites and blogs.

Introduction

How did famously cloudy, rainy Seattle get to be known as the home of Cloud Computing? The obvious answers are that Amazon and Microsoft are based here. But why did these two companies and this city become the pioneers of cloud computing when so much else in the tech world revolves around Silicon Valley and the many companies based there?

I can’t answer these questions, but I do have some thoughts. I grew up in the area, embedded in Seattle culture. My father lived here in the 1930s (which is not long long by some standards, but means my family has lived here about half the time since Seattle’s founders arrived in 1851) and worked on the B-17 production line in the early 40s.

It seems to me the public cloud is a bizarre cross between the cultures of several Seattle born companies, ultimately expressing themselves in another. Boeing is a huge engineering company operating at world-scale. Nordstrom is famously service obsessed and takes the “customer is always right” motto to an extreme.

Cloud computing brings to my mind two images: the service obsessed staff at Nordstrom transformed into online experiences, and the giant airplane hangers of Boeing transformed into enormous data-centers. The analogy is imperfect and almost certainly false: the real world is vastly more complex and origin stories are famously applied retroactively. But it seems equally unlikely that the Amazon and Microsoft employees working on the Amazon Store and Microsoft Search in the early 2000s weren’t influenced consciously or unconsciously by the cultures and every day presence of these iconic Seattle companies.

I don’t expect this blog to offer much more speculation in this vein. I intend to talk about my thoughts about working in the center of the cloud computing world, and the rapid changes I see every day in the technology and business. This is more a culture blog than a technical blog, but I will point out interesting technology I am working on as well as broader trends. We’ll see how it evolves. Thanks for reading this far!