The source content for blog.juliobiason.me
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
1.7 KiB

+++
title = "Web Development with Clojure: Build Bulletproof Web Apps with Less Code - Dmitri Sotnikov"
date = 2017-06-22
category = "review"
[taxonomies]
tags = ["books", "en-au", "dmitri sotnikov"]
+++
{{ stars(stars=2) }}
First of all, this book suffers from the same mistakes every single Lisp-like language book I've read: They throw a truck at you, then slowly, while you're being crushed by it, explain each part that creates a truck -- In other words, they throw a large piece of code at you and then slowly explain each part of it.
Even worst, in the last parts, it's basically "here is truck, take it" -- very little explanation about the code itself, just "we'll do this" and code. What the pieces of code mean, that's entirely to you.
Another problem: no tests. The author prefers the REPL approach, which is okay for little projects, but for projects that should last longer than a weekend project. No only that, but even the tests are wrong, because it mocks the database -- Database is part of your project so it **should** be tested along all the other tests.
And, on top of that, there is a REST server with sessions, and a lot of code just to keep the frontend session in sync with the server session. That's actually **not** how a REST server works.
And while I usually don't comment the technology behind the book (because it's not the author's creation), I really have to ask if Clojure is the right tool for web servers. I mean, a lot about Clojure is about immutability and a lot about the shown code is forcing mutability -- one function even is composed with nothing but functions that force mutability.
So, not only the book itself doesn't give a clear picture about web development in Clojure, the language itself doesn't appear appropriate for such task.