CI process - the developer perspective

So far in the blog series about CI/CD, we have looked at the personas involved in CI/CD and the benefits of using Docker containers to create a consistent environment for developers and Devops engineers. In this blog, I will show you how I use Docker and the make utility to execute the CI related steps for my hugo based blogs. Specifically we will see how code is built and tested as a developer. Writing and publishing a new blog is similar to coding and releasing a new feature in a software product. And I will highlight the similarities in this article from the perspective of a developer.

Developer experience and CI using Docker containers

In the blog titled Understanding CI/CD Personas of the series, I highlighted the importance of providing all developers with the same environment to build and test their code. This environment should also be used in the CI systems such as Jenkins for consistent software build generation. In this blog we will see how Docker containers can be used to accomplish this. I will demonstrate how I use Docker for testing my blogs and generating the static HTML files. Note: this blog assumes that you have a basic idea about Docker.

Blog series on CI/CD

If you or your team is trying to adopt CI/CD and struggling to understand what CI/CD is all about, then you are not alone. CI/CD stands for Continuous Integration and Continuous Delivery. In a cloud environment CD also encompasses Continuous Deployment because you deploy code as soon as it is ready. If you aspire to be agile, then you need to embrace CI/CD wholeheartedly.

I will share a couple of great articles that introduce CI/CD. Instead of me providing yet another defintion, I recommend that you read these articles. But here is what I will do. Using a series of blogs, I will take you through a journey of CI and CD using my blog as an example. Along the way I will also share how the process is applicable for software projects in corporate environments.

Three books for new college graduates

If you are associated with the high technology (Software) area, you know the importance of reading and practising new technologies. This is all the more important for new college graduates. With that in mind, I am recommending a three books to new college graduates who aspire to succeed in the technology industry. I have read these books and I feel they can be useful at any time in your career.

Git Branching Insights

Git is the most popular version control system and in this blog, I will be sharing some insights of using Git in a professional environment. I will review two branching strategies and share additional insights in connection with Continuous Integration and Continuous Delivery/Deployment.