Autonomy – Taking the wheel

I remember when the Product Owner stepped into our room with a new user story. He asked if we could make a minor change to one of our web pages. What he did not know is that nobody understood the code, nor the ancient documentation that was written for this webpage.  After running a few tests we even discovered that half of the features did not even work. We made a proposition: we implement this user story if we get three extra weeks to rebuild this page and rewrite the documentation. Luckily our awesome Product Owner understood our situation and we managed to get these extra weeks.

Read more →

Running Kubernetes locally with Docker on Mac OS X

Fast feedback loops are instrumental to gaining confidence in changes and achieving a steady pace of delivery. In many teams, Docker has been an important force behind removing delays in the pipeline to production. Taking control of your environments is a powerful move to make as a scrum team.

Seeing that Kubernetes appears to be becoming the leading orchestration platform, chances are that the containerized applications you and your team are working on will land on a Kubernetes cluster. That is why I was excited to see that in the latest version of Docker it is now possible to run a local Kubernetes cluster. In this blog you will learn how to start a local Kubernetes cluster with the latest Docker version.

Read more →

Mastery - being the best version of yourself

I was 21. I just graduated from MBO college, it was night and I was strolling around town with a couple of friends. We just celebrated our graduation and did not want to go home. After a few hours, we got lost and arrived at this big haunted mansion. We saw a sleek figure standing at the entrance. He was looking directly at us, and asked: “Would you like a tour?”, inviting us in. For a second we looked at each other and then we succumbed to our curiosity, following the man into the mansion. With no idea what could happen next.

Throughout my life, I have done several stupid things like the example above. And I knew these were not my brightest moments, but my curiosity simply took over. I wanted to explore or discover something (and I also love to get a good story out of it).

But whether you love taking risks and doing stupid things, or you prefer to dive into books and study in a safe zone, we all have the same internal drive to learn, to grow and to become the best version of ourselves. This is called ‘mastery’ and it is the subject of this blog post.

Read more →

Version control strategies and Continuous Delivery

Continuous delivery is a software development practice in which a team or a company strives to keep their software in a deliverable state at all times. Closely related is continuous deployment, in which the software itself is actually released to production as often as possible. Continuous delivery is a prerequisite to continuous deployment. From a business point of view, continuous delivery allows a company to quickly adapt to changing market developments, respond to user feedback, etcetera. However, what is in my opinion a much stronger argument in favor of CD is that it enforces a large number of software development practices; it’s a core principle which can be referred to when making decisions about the practice of software development, ranging from how version control is handled, test and release automation, etcetera.

In this post I’ll go into the software development practice of version control, and discuss a number of strategies in the context of continuous delivery.

Read more →

The behavioural economics of bugs in robots

All contending teams, without exception, experience a moment at which all members are standing around the table, looking at the robot; this is not what’s supposed to happen. Shouldn’t be a surprise, we told them in advance there would be bugs. Unfamiliar with the codebase and the hardware, it is now their job to find the bugs and fix them. They do know what the robot should do: ‘it should follow the black line, once you press the start button’.

We have been doing these robot challenge workshops for a while now. They’re great fun, for creating a shared understanding between business and IT, or experiencing an acceptance test-driven approach to software development. The mBot robots bring a highly visible aspect to the software’s behaviour.

Read more →

This one crazy DevOps language you should learn (during Advent Of Code)

Random bits I learned about an underappreciated language by having fun during Advent Of Code.

This Friday the 2017 edition of Advent Of Code started, a daily treat of small programming puzzles for the holidays. Kudos to Eric Wastl for creating such a fun competition!

Last year I wanted to add a DevOps theme to my participation, so I choose to write solutions in the most important DevOps language. No, not Go. No, also not Python. Definitely not Java. Number one of course is… Bash: present in all Linux systems, almost all Docker containers, heck, even in Windows now. Gluing together systems for almost 30 years. [More...]

Refactoring to Microservices – Introducing Docker Swarm

In my [previous blog] I used local images wired together with a docker-compose.yml file. This was an improvement over stand alone containers. Networking is now more robust because code in images uses names instead of IP addresses to access services. This time my goal is to introduce Swarm so I can distribute components over multiple hosts and run more instances if necessary. Next, I'll describe step one: migrate the docker-compose-single-host setup to a Docker Swarm multi-host version. [More].

Deploying Kong API gateway configurations with AWS CloudFormation

With AWS CloudFormation it is easy to deploy your applications with AWS Elastic Container Service. However, if you want to provide access to your applications through the Kong API Gateway, you are left with one additional step in the deployment process: configuring the Kong gateway. With the Custom CloudFormation Resources for the Kong API Gateway we can deploy both the application and the Kong API Gateway configuration in one go!

Read more at https://binx.io/blog/2017/11/03/deploying-kong-api-gateway-configuration-with-aws-cloudformation/

 

What are we doing? And why?

What are we doing? Why are we implementing this sorry excuse of a user story? What will this user story achieve in the bigger picture? Is there even a bigger picture?

I have attended several refinements as a coach, where I was waiting for those questions to arise... Unfortunately, they are rarely asked. Usually, because there is no easy answer to these questions. The difficult truth is that we all like to please others, so we would rather stick our heads in the sand and hope everything will turn out fine.

And that is exactly what we get. Instead of having an awesome job, doing cool stuff and making a difference: our job will be just that, it will be fine. And it could be so much better, with some practises I will share in this blog.Read more →

Share This