A few years back, I presented on a topic near and dear to my heart: software abstractions. I think it is critically important to take a pragmatic and critical view of software abstractions and I feel this well represents my views. I hope you enjoy this as much as I did sharing it with the wonderful audience at CraftConf.

Continue reading

I haven’t talked much publicly about libmtev, but I think it might be about time to start. The C programming language isn’t going to die anytime soon and it has some distinct performance over some of the more populate emerging languages: the compilers are the most mature and there is no garbage collection{% sidebar-link gc %} (so no GC pauses). Alas, this isn’t about C as a language, but about the library that I started (within another project) in 2007.

Continue reading

Open plan offices are bad. Breaking my concentration is wasteful. You hired me to code, so don’t interrupt me. I keep reading statements like this and feel compelled to supply a counterpoint. It isn’t that these are lies, it is that the are immature perspectives on a complex set of circumstances that clearly only represent a certain type of coder. In fact, I’ll claim that “coder” is either junior or selfish or both: immature.

Continue reading


Defining the term: I recently used a term and was hit with a lot of out-of-band requests for explanation. It’s a good one and excellent food for thought. ywahusty (yuh-wuh-hus-tee): you will always have users smarter than you. This basic concept is one of sound, pragmatic systems engineering that might appear to fly in the face of traditional product engineering… but doesn’t. In traditional product engineering, there is a goal to produce a product that is both accessible and useful to the largest subset of the predefined audience of the product.

Continue reading

Why JSON sucks.

JSON sucks. Don't get me wrong, I love the simplicity of it. It's simple, it's easy, it's portable, it's ubiquitous at this point. None of that means it doesn't suck. Outside of Javascript (hence the portability), JSON itself is limited to native types in the grammar: null object (like a hash) array string integer (signed 32bit) number (double) boolean Really? It's 2010 and we're all flocking to a grammar where we can only accurately represent integers up to 231-1.

Continue reading

Plan Wagon

What does it mean to architect a system? It means you solve problems. While that might seem simple, I am absolutely dumbfounded by the number of people that attempt to solve their problem by simply applying the solution to someone else's problem without any sort of reasonable thought process. Let me tell you all about "Plan Wagon." Bob's a great parent. In fact most people that know Bob are extremely impressed by Bob's parenting skills.

Continue reading

Author's picture

Theo Schlossnagle

Distributed Systems, Scalability, and Operations. read more

CEO - Circonus

Maryland, USA