Yep, fair, "axes" / "dimensions" was overstating - they're not all actually all orthogonal (all models are wrong, some useful, etc.). Mature engineering discussions have plenty of examples of those tensions, e.g. is it more important for this system to be available or consistent?
Again, thanks for the article. The framing was unique in my experience, and the idea that "quality" isn't easily defined or built needs to be hammered on regularly.
You are correct - not every aspect of quality is in tension with some other aspect(s), and mature discussions would include the idea of axes or tension or "pick two" aspects, and the idea that some clusters of aspects go together for very little development effort. But unfortunately, very few seem to acknowledge or believe those things.
Right, this needed to be cleaned up and clarified. The only thing you have to do is `lein koan run`, which was listed as an option but the ordering was confusing. I've reworked it a bit now, but feel free to open an issue/PR if things are still hazy: https://github.com/functional-koans/clojure-koans-web
Yeah, I hear you. There's definitely room for improvement here. I'm not sure what you mean by not greppable - the file is listed, as is the name of the particular koan. If there's a way to get line numbers displayed here that would be great.
I agree it does make it easier to solve when you can see what you're trying to evaluate to. It was actually a conscious decision to make that not be the case, because it seemed too easy to just fill in the blanks without thinking about what should go there.
Yeah, thought about it (Gosu was great for getting started), but decided I wanted to get back to fundamentals and switch to a slightly lower level framework to aid my understanding of what's really going on under the hood.
The Joy of Clojure - Michael Fogus and Chris Houser (http://www.manning.com/fogus/) Riveting look at the language and functional programming - covers edge cases, gives lots of idiomatic examples, and goes deep into the really interesting parts.