Nobody Told Me Minitest Was This Fun

An Explanation of Minitest features through the eyes of a RSpec user.

Testable Examples in Go

Official blog post explaining how testable examples work in Go.

NO D***HEADS! A Guide To Building Happy, Healthy, and Creative Teams.

Very interesting article about culture and keeping a healthy team. It’s targeted to design companies but not exclusive to it.

Library Patterns: Why Frameworks Are Evil

The difference between library and frameworks and why frameworks can be a problem.

Remote Code Execution in Elasticsearch - CVE-2015-1427

This article explains an exploit for Elasticsearch that exposes interesting information about its internals.

Code Review Best Practices

This is a really good write-up of how to code review, what to look for, and how to be good at it.

Problems with Nil and How to Avoid Them

An object oriented approach for handling nil objects in Ruby. It implements a similar approach to newer languages which dropped support for null values implement.

The Failure of Agile

Andy Hunt – one of the agile “creators” – talks about what’s wrong with agile today and how most organizations are not really doing agile.

A Week with a Rails Security Strategy

This post presents a mini-habits based practice for continuous review of Rails applications security.

High Cohesion, Loose Coupling

A good explanation of what cohesion and coupling really mean, the benefits, and how to achieve high cohesion and loose coupling.

Keynote: Architecture the Lost Years

This is a really good talk from Uncle Bob Martin about architecture.

The DRY Obsession

The Don't Repeat Yourself principle is important. But it's not the only important principle or consideration for software design. Like all good things, it should be used with caution and forethought.

Elements of Scale: Composing and Scaling Data Platforms

Very good write-up about how memory hierarchy is important when designing data platforms and how that impacts performance.

CraftConf 2015 – did someone say microservices?

Some notes around all the microservices-related talks at CraftConf2015. You can also check out the videos for all talks on http://craft-conf.com/2015.

An Introduction to JavaScript-based DDoS

Cloudflare explains how JS-based DDoS attacks work and how to mitigate them.

The Architecture Twitter Uses To Deal With 150M Active Users, 300K QPS, A 22 MB/S Firehose, And Send Tweets In Under 5 Seconds

The article is a basic list of bullet points, but it explains in a high-level how twitter handles its scale.

Ruby Hash Initializing – Why Do You Think You Have a Hash, But You Have an Array

Interesting insight into Ruby’s hash implementation.

Libraries & Tools

Lotus

Lotus is a new Ruby framework with a focus on architecture and code de-coupling. It really shines on separating domain/business logic from the framework and delivery system. I think it’s an interesting idea and I’d keep an eye on it.

Caddy Server

New modern zero-conf HTTP server that supports HTTP/2.0 with a focus on modern web applications.

Ramjet

HTML elements morphing JS library. It’s pretty cool.

A Pragmatic Guide to Backbone.js Apps

This is a very interesting series of articles about a proper usage Backbone.js. I especially like the “Using events like a boss” section.

3 Ways to Do Eager Loading (Preloading) in Rails 3 & 4

This post explains the different ways of preloading data using ActiveRecord.

To Understand Code You Have to Build a Mental Model

How to become a better programmer by learning how you understand code.

The http.HandlerFunc Wrapper Technique in #golang

A good explanation and examples of how to achieve a middleware stack with Go’s plain net/http stdlib.

The Log: What Every Software Engineer Should Know About Real-Time Data's Unifying Abstraction

This is an older article but it’s really good. It explains the Log data structure, when it’s useful, and how LinkedIn used it internally to scale their system and continues to use it. It’s worth mentioning that this later resulted in the Kafka project.

Call Me Maybe: MongoDB Stale Reads

Aphyr is one of the leading experts in distributed systems, specifically databases. The focus of the article is MongoDB’s flaws in data consistency, but it comes with a lot of good explanation and examples on the subject.