When things go wrong Devops is one of those important positions where nobody cares what you're doing until things stop working. Along with SRE folks, the position may as well be akin to a firefighter. I know this first hand having been a loaded-title myself. You haven'
People often come to me asking "I love the idea of Clojure, but how do you write code without types?". I struggle to answer this question. I have no idea what they're talking about half the time. The nuance of strong and weak typing, and static
Clojure has two types of publish/subscribe facilities built-in. The first is a watch, quite literally a first-class observer. The second, and the one we'll be using, is built into clojure's core.async library.
This odd thing keeps happening to me where companies reach out to ask if I know of any Clojure developers they can hire instead of just hiring me. I understand why they do this. I am not interested in full-time position, after all. I think most people would bitterly look
the small codebases of microservices provide great refuge for the salaried functional programmer.
For more experienced functional programmers, most of this post will seem introductory, but I introduce some more advanced stuff near the end. Functional Programming over Canadian Programming Lately, I've been thinking about this Functional Programming journey I've been on. I thought it started when I was
What is a transducer anyways? Specifically, from the documentation 'a transducer is a transformation from one reducing function to another'. We can think of a transducer as a context-independent transformation composed of, say, many reducers (like map and filter). If we think of functional programming as a series
I'm sure for some of you Model-View-Controller (MVC) resembles more of an anti-pattern than something to reach for when writing Clojure, but I think it's a great example of what architecture should accomplish, especially what can be accomplished in Clojure. MVC decouples state, state changes, and
One day my squad mate at a Clojure startup committed a macro to the codebase, and I was quick to reprimand them for it as the same functionality could have been implemented with Clojure core functions. Peeling back the decision rationale, I discovered my colleague had never learned the first
Ever since I wrote Clojure needs a Rails, folks reach out to ask for my opinion on their web framework for Clojure. What's clear from these discussions is a lot of software developers have no idea what a framework is.
Janet A Carr - Cognicast Episode 172In this episode, Christian talks to Janet A Carr about her career, writing, and life as a Clojure Consultant.Cognitect.comJaret Binford
we can ship production code with Clojure. A strange bit of grumbling I hear from developers directs their angst toward not having "compile time type checking errors"
This post is the second in a series. You can find the first post in the series here where I covered Null Object, Singleton, Command, Observer, State, Visitor, and Iterator. Patterns * Preamble * Builder * Chain of Responsibility * Proxy * Adapter * Template Method * Flyweight * Strategy Our story continues Edmund, a bright, awkward young
Clojure either directly supports, or easily supports the use of common design patterns like singleton, command, observer, visitor
I think there's another reason this problem persists in Clojure. There's no Rails for Clojure.
Dear Janet, I hope this email finds you well. I know I'm just a fictional character in a fictional email to set up the hook for this blog post, but I was wondering if you could help me speed up our slow library. We use the best algorithms
Turns out, it's a yak barbershop.
If you spend your time digging around clojure.core like I find myself from time to time, you might come across a interesting metadata keyword called :inline. I have never seen :inline in any of the non-core libraries in my career, so I've been digging around to figure
So you finally managed to do it, you started a company after all those water cooler criticisms of your previous employers. You can finally do all those “if it were my company” things. So, after meeting your brilliant co-founder and raising a pile of cash from venture capitalists, you begin