Categories
Uncategorized

You build it, you run it

A phrase I have heard thrown around is “You build it, you run it.” Meaning that the team that builds the software, supports the software. I had some thoughts and questions however, like:

  • the business asks for the software and features to be built, don’t they take any responsibility?
  • how can a team support the software when the business product owner is deciding what to work on each sprint?
  • what happens when the team gets pulled apart and re-assigned?

So I did some digging.

The original post is https://queue.acm.org/detail.cfm?id=1142065. It is an interview from June 30, 2006 with Werner Vogels, Amazon CTO.

He talks about:

  • how Amazon is a technology company.
  • they were building a service-oriented architecture.
  • they wanted to scale, and have isolated software components.
  • they wanted clear ownership of systems.
  • all access is through published service interfaces.
  • “Each service has a team associated with it, and that team is completely responsible for the service—from scoping out the functionality, to architecting it, to building it, and operating it.”
  • “Giving developers operational responsibilities has greatly enhanced the quality of the services, both from a customer and a technology point of view.”
  • if they find an idea they like, they prototype it very quickly, then iterate on it until the business problem is understood. They work out at the start what the success criteria are and how to measure them.
  • they can release slowly. They measure how it is going.
  • they try and be very close to the customer.
  • they have small teams (sometimes described as ‘two pizza’ teams).
  • they like their developers to be independent creative thinkers with a strong sense of ownership.

So this is the context around “You build it, you run it.” A small team, who know they will own this service forever, gradually build and measure as they deploy to the customer.

Which means, if you want your software teams to ‘build it and run it’, you need to:

  • have small, autonomous teams,
  • who own the idea right from the start,
  • who know how the success of the service will be measured,
  • who won’t be broken up or moved onto other work,
  • and who have the tools to monitor their work and get feedback from customers.

If you can’t do that then maybe “you build it, you run it” isn’t right for you.

Links

Categories
Uncategorized

Browser compatibility

Recently I was looking at a job website, that shall remain nameless, and I found this beautiful relic from the past:

Whenever I do a search or attempt to register I get a ‘page not found’ error.

This is an unusual problem and should not happen regularly. It could be that you are using a non-compatible browser. The minimum requirements are Microsoft Internet Explorer IE4+ browsers or Netscape 4.08+ browsers. If your browser does not meet the minimum requirements please update.

Withheld out of kindness.

IE4 was released in 1997. It was replaced by IE5 in March 1999. The final version, IE11, will stop being supported in November this year. It has been replaced by MS Edge.
Netscape 4 was released around June 1997. All support was stopped in March 2008.
https://en.wikipedia.org/wiki/Timeline_of_web_browsers

(Don’t miss the Browser Wars if you are interested in your web browser history!)

For some more up to date statistics you can look at W3Schools’ statistics – https://www.w3schools.com/browsers/

Of course, if you are actually running a website then you should be using your web console to get the actual usage statistics for your users.

The device being used is also important now-a-days (i.e. desktop computer vs mobile phone vs tablet) so that is worth knowing as well.

Featured image is from Extreme Tech.

Categories
Uncategorized

Hello world!

Welcome to WordPress. This is your first post. Edit or delete it, then start writing!

“Hello world!” – what’s this? Why does WordPress create this post when you install it?

“Hello world” is a classic program in computer science. It will likely be the first program you write when learning a new programming language. The point is to make sure your environment is set up correctly and you are able to perform the most basic operation of printing to standard output.

Here is a “Hello world!” program in Python:

print("Hello world!")

That is a completely minimal example. You can put it in a file named HelloWorld.py. The ‘py’ file extension is for Python files. If you like you can download Visual Studio Code and check out the Python tutorial where they give a slightly different example that uses a variable.

Bye world!