Hippocratic Oath of Software: Don’t Make It Worse!

Some of you may be familiar with the Hippocratic Oath common in the medical field, often paraphrased as “Do no harm.” In a light-hearted casual conversation with a colleague the other day, I realized that we need a similar oath in the field of software development: “Don’t make it worse.”

Read more
Branch pattern for importing complicated codebases from Subversion to Git

  I’m currently working on a project where we are migrating from SVN to Git. There are a bunch of large applications with fairly complicated build processes that are going to have to be adjusted as we transition from SVN to Git. Because of this, I cannot easily just “import code and throw the switch” […]

Read more
Hacking Jenkins Header for Temporary Custom Style

I often find myself in a position where I have multiple Jenkins servers that are almost clones of each other. In many cases, this is because I run a “test” Jenkins where we develop jobs, test them, then promote them over to our “prod” Jenkins server. Because the servers look identical, I’m always afraid I might […]

Read more
Toy Project: Unity3d Game managed with Github

As an academic adventure, a few of us at Coveros decided to come up with a toy software development project we could do to learn more about programming in C# while doing something fun and different. We voted, then two of us ram-rodded our choice down everyone else’s throats and decided on building a game […]

Read more
Self-contained Puppet Modules in Git

I started playing with Puppet recently in an effort to write some “self contained” installation scripts that didn’t require a lot of infrastructure to support them. I ended up developing a pattern of code that allowed me to bundle the entire set of scripts, properties, and even protected encryption keys into a single Git repository. […]

Read more
Bootstrapping a SonarQube + MySQL server with Puppet

I recently went through an effort to launch a SonarQube server in our AWS development environment. I know I’m going to have to re-launch more of these in the future, so I took a little time and puppet-ized the installation. In my case, the basic environment is RedHat Enterprise Linux 6.5 (RHEL). Assumptions before you […]

Read more
Auto-commit Jenkins configuration changes with Git

In my previous post, I described a technique for putting your Jenkins server configuration under version control. It’s a great way to ensure that your changes are always tracked and that you can recover if/when things get out of whack. However, if it requires you to regularly log onto the Jenkins box and manually run […]

Read more
Version control your Jenkins server configuration with Git

I’ve worked on a variety of continuous integration and continuous delivery projects. We frequently use Jenkins as our platform for driving all build, provisioning, and deployment activities. As part of this, we have a lot of fairly complicated jobs in Jenkins that we are constantly modifying. As a version control pundit, one of my goals […]

Read more
Zero to Continuous at the speed of Jenkins

I recently gave two versions of a talk at Jenkins User Conference 2015 World Tour in Washington, D.C. Here are the slides for anyone who wants to review them: JUC Zero to Jenkins. That talk comes in two forms which you will notice from two cover pages. Zero to Federated at the Speed of Jenkins – […]

Read more
X