Keep Calm and Learn Golang

  • gowritego - A tool for converting golang source to markdown

    This is the main file for gowritego, a simple tool that reads special comment blocks like this in a golang program to allow. This handy tool let me begin this article about the tool (how meta!) by simply adding an enhanced multiline comment block to the main program file. For more information, see the full code and the readme at

    Read more…
  • Useful Docker Commands

    These were just some useful docker commands I thought I’d jot down so I wouldn’t forget them. This is a fairly short list, so fair warning: I’m publishing it to embarrass myself into making it longer and more useful.

    Read more…
  • Simple Vagrant Ansible Local Example

    I recently worked on a project showing how to install and configure a complete Pentaho Server instance with a back-end data repository housed in Postgresql. I wanted to select a provisioner for this work that would be easy to use to deploy the server either as a single instance VM, as an Amazon AMI, or as a set of docker containers. As I was setting up the first such target I wanted to support – a VirtualBox VM – I noticed that the examples and documentation for using Vagrant’s ansible-local provisioner were a bit sparse.

    Read more…
  • How to Easily Create Region Maps for AMIs in CloudFormation Templates

    If you’ve worked with CloudFormation longer than a few hours, you’ve probably wondered how to easily create RegionMaps without manually looking up AMI Image IDs in multiple regions. This article introduces ami_lookup, a tool to do it for you. CloudFormation is an powerful tool developed by Amazon to implement the DevOps vision of “infrastucture as code” in an AWS environment. One of the best practices for CloudFormation templates is to implement templates that are portable across regions, using a RegionMap to look up the correct Amazon Machine Image (AMI) for a given region.

    Read more…
  • AWS Certified Developer - Associate

    I’m pleased to share that as of Monday, May 7, 2018 I became an AWS Certified Developer - Associate. This is part of the DevOps and Cloud-specific training that I’m taking to round out my twenty years of software development experience. Why do so much training at this point in my career? Well, the point is to begin to offer Cloud Development and DevOps services to Charlotte area businesses.

    Read more…
  • Java Beginner Tutorial - Downloading and Installing Tools for Java Development

    This video tutorial for beginners in Java shows you how to install and configure the tools you’ll need to get started in Java development. You’ll download a Java Development Kit, JDK, version 7, and the free community edition of IntelliJ Idea. The total time for this tutorial is 15 minutes.

    Read more…
  • Using TestNG with Spring

    Although there aren’t too many examples to be found about it, using Spring’s AbstractTestNGSpringContextTests turns out to be really easy! We walk you through it in this brief tutorial Testing Spring in JUnit is fairly simple given the test runner support. Using TestNG is a little bit more complex, but this tutorial will quickly get you up to speed. Table of Contents Moving to TestNG from JUnit Setting Up The Maven Dependency for TestNG Some Simple AbstractTestNGSpringContextTests Examples

    Read more…
  • Spring Security - Part I: Spring Authentication and Authorization Basics

    In the first of a multi-part series on Spring Security, we’ll examine how to set up a really basic MVC app with Spring Security by relying on IntelliJ idea project generation. We’ll examine the code and discuss how it can be improved, and how you can use Spring security features both in the controller layer and the view layer. Table of Contents Introduction – My Scandalous Confession Generating a Spring Security Project The Security Configuration Files Spring’s StandardPasswordEncoder Using Security in the View Layer – The Spring Security Tag Libraries

    Read more…
  • Configuring Spring for Test versus Production

    In this tutorial, we’ll discuss some different ways to configure Spring for different environments such as test, production, etc., You’ll also learn how to configure spring properties at runtime using the PropertyPlaceholderConfigurer class, and how to test your Spring configuration using JUnit.

  • A Simple Hibernate, MySQL, and JUnit Tutorial

    In this tutorial we’ll set up some simple Hibernate entities in a non-Spring, POJO (Plain Old Java) environment. We’ll explore how to configure Hibernate to work with MySQL, and how to write unit tests for Hibernate entities. Table of Contents Getting Started with Hibernate and MySQL Configuring MySQL Configuring Hibernate Minimizing Setup Time A Simple Hibernate Entity A Hibernate Generic Entity Storage Class The JUnit Test Getting Started With Hibernate and MySQL In this tutorial, we’re once again going to use JUnit as a learning tool for exploring various Java technologies – in this case Hibernate.

    Read more…