Image for post
Image for post
Photo by Tobias Jelskov on Unsplash

One of the most well-known principles in the field of software development is “Don’t Repeat Yourself”. Commonly referred to using the “DRY” acronym, its message is quite simple: avoid duplication within a system at all costs.

The DRY principle was introduced by Andy Hunt and Dave Thomas in their 1999 book titled ’The Pragmatic Programmer’. Within, the authors state:

“Every piece of knowledge must have a single, unambiguous, authoritative representation within a system”

While it was the authors' belief that DRY should apply to everything ranging from database schemas and application code to documentation, the question of how strictly it should be followed is hotly debated within the software development community. Oftentimes, the answer differs on a case-by-case basis depending on where logical abstractions make sense for the greatest good of the system. It’s not my goal within this post to try and answer this question or attempt to sway you one way or another. …


Image for post
Image for post
Photo by Nathanial Dahan on Unsplash

A well-architected multi-account strategy is the foundation of any enterprise-scale AWS environment. Taking a multi-account approach enables an organization to isolate AWS resources utilized by separate product teams and developers, while also making it easy to consolidate and centrally manage core functionality (billing, security, logging, etc.)

Presented within this highly informative session from re:Invent 2018, the structure shown in Image 1 illustrates an example enterprise-scale account strategy that allows the effective separation of AWS resources.


Image for post
Image for post

AWS’s annual conference, re:Invent, sets the stage for product releases and announcements that continually push the boundaries of what’s possible on their platform. This year’s event was no exception, with a staggering 147 product releases in a number of trending technology areas such as Machine Learning, Blockchain, IoT, and Serverless Computing. However, it was announcements in the networking space with the release of AWS Transit Gateway and the introduction of Shared VPCs that particularly caught my attention. …


Comparing bandwidth speeds between regions connected through VPC Peering and Software VPNs

Image for post
Image for post

As organizations make a focused effort to migrate workloads to AWS, something that many of them s̶h̶o̶u̶l̶d may be considering is the use of multiple AWS regions for hosting resources. Utilizing multiple AWS regions provides benefits when you:

  1. Have globally distributed end users and want to provide them with low latency access regardless of their location
  2. Want to build a highly-available system immune to the effects of regional AWS failure

At the time of writing, the AWS cloud spans 18 geographically distinct regions (orange circles in Image 1), with plans announced for 4 more (green circles in Image 1) in the near…


Image for post
Image for post

Examine many modern IT job postings and you are likely to find prior experience with a public cloud provider listed among the requirements. With the future of many IT capabilities lying in cloud technology, employers want to ensure they are hiring the type of talent that will enable them to be successful. As the undoubted leader in the infrastructure-as-a-service (IaaS) and public cloud market, the demand for personnel with experience using Amazon Web Services (AWS) is at an all-time high.

As the popularity and adoption rate of its technology grew, AWS launched their Global Certification Program in April 2013. …


Image for post
Image for post

Most of you familiar with AWS will have heard or worked with Lambda, its event-driven compute platform designed to let you run code without provisioning or managing servers. The term “serverless” has been coined to describe this capability, which enables you to focus on building the business logic within your application without worrying about the underlying infrastructure that it runs on. Since its introduction to the AWS ecosystem in early 2015, Lambda has revolutionized the way organizations execute a wide variety of tasks. One of the major driving factors behind its widespread adoption has been the potential for cost reduction as you are only charged for compute time while your code executes. …


Image for post
Image for post

AWS CloudFormation and HashiCorp’s Terraform are two popular tools in the space of automated infrastructure. In this session I discuss the key features of each, as well as consider the pros and cons as you look to create programmable and repeatable infrastructure in the cloud.


Image for post
Image for post

Before introducing any piece of code into a live environment, I’m sure we can all agree on the importance of testing it thoroughly to ensure it behaves as expected. By subjecting newly developed code to various types of testing, we can push it to any instance with a high degree of confidence. It seems simple — who wouldn’t want to be confident in their deployments?

Chef cookbooks are often treated differently when it comes to testing, but this doesn’t have to be the case. The recipes, libraries, attribute files and other configurations you create should be handled just like any other piece of application code. Chef offers a number of tools within its Development Kit (ChefDK) that make it possible to develop a thorough and consistent testing strategy for your cookbooks. …

About

Bruce Cutler

Solutions Architect @SlalomBoston

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store