One of the biggest advantages to cloud computing is the ability to quickly react to an unknown system load. A well-known pattern within AWS is to make use of the Auto Scaling feature and adjust total computing capacity accordingly. That sounds great, but how do you go from this concept to an actual, working application? How do you deploy changes? Most important of all, how do you automate this process once you understand the architecture?
Read more →
I got my first real exposure to cloud architecture a couple years ago. I was a contractor and the client wanted to track usage of Amazon Web Services(AWS) across different internal teams for financial reasons. They also realized the potential for automating infrastructure using the AWS API and wanted us to explore the numerous options while working with system administrators to define behavior. It was here that I got first-hand experience on how the cloud computing model enabled building and scaling systems where capacity is largely unknown.
Read more →
In a couple weeks, I will be participating in The Nerdery’s Overnight Website Challenge and I have been designated as the team’s DevOps. We’ve picked Git/GitHub for source control and I’ve been asked to give a quick demonstration on how we can be a more effective team by using it. Many sources online are targeted for individual developers working on personal projects or teams of developers collaborating on big projects (and rightly so).
Read more →
A common database maintenance scenario is the need to purge unneeded or expired data after a period of time, such as log messages or perhaps sensitive user data. With MongoDB, this can be easily accomplished with a built-in process. By creating a specialized index, we can make use of Mongo’s TTL feature. This feature allows us to either purge documents at a specific date or specify an amount of time before the document expires.
Read more →
I used to say that Dictionary <TKey, TValue> was my favorite C# feature. Dictionary offers great speed and versatility, but there are a few drawbacks that don’t make it fit every situation:
Attempting to add a key-value pair of an existing key throws an ArgumentException, causing the need to check first with ContainsKey() Sometimes I only want a collection of unique things, not key-value pairs of things HashSet is so appealing to me because it has the speed and uniqueness of Dictionary, but with added flexibility with fewer lines of code.
Read more →