
Free "Lisp Hackers" Ebook - daw___
http://lisp-univ-etc.blogspot.com/2013/06/free-lisp-hackers-ebook.html
======
merlincorey
Hacker content on my hackernews? Yep, this is a pretty good book. I've only
just started it but it is enjoyable if you are a Lisper or interested in how
some Lispers tick.

------
mark_l_watson
I bought this a few hours ago and I already finished it: a fun read. If you
are a Common Lisp hacker (or used to be one) you will enjoy reading about 14
hackers, how they use Lisp, got started, etc. I just plugged this book and
Leanpub on my blog. Off topic, but if you are starting a writing project,
check out Leanpub (I am using them for 2 book projects right now).

~~~
hkmurakami
What would you say about the book for those of us who have never touched Lisp,
but perhaps have been interested in it for some time? (me)

~~~
mark_l_watson
I would instead recommend reading a Common Lisp tutorial, installing SBCL, and
start playing. The book is fun, but it won't get you started coding Common
Lisp.

~~~
lelele
Instead of SBCL, I recommend Clozure CL. Apparently, SBCL does not operate
smoothly on all the platforms it supports.

------
contingencies
Vladimir Sedach described dependency injection and test driven development as
"idiotic things". Great to see outspoken opinions!

~~~
sillysaurus
Test driven development is essential for writing reliable distributed systems
programs. Robert Morris' 6.824 class is proof of this. There is a time and a
place for every tool.

~~~
contingencies
I don't really have an opinion either way, having never tried TDD, but I do
write distributed systems and don't see why you can't use post-facto testing
to get the same results. I am interested in your reasoning. (Re: Proof,
[http://pdos.csail.mit.edu/6.824/schedule.html](http://pdos.csail.mit.edu/6.824/schedule.html)
doesn't feature the word 'test' which though circumstantial sort of downplays
the weight of an inextricable link such as that you are supposing.)

~~~
sillysaurus
Download the labs. Don't look at or run the tests.

Carefully implement each lab based on its description alone. Implement until
you're certain you've done it correctly.

Run the tests. Discover that your implementation is far from flawless.

~~~
contingencies
It sounds like the non-test specification is simply poor, and the tests
elucidate parts of the specification that are unclear. This doesn't seem
relevant to the original question of the claimed requisite-level efficacy of
TDD in designing distributed systems.

~~~
sillysaurus
Actually, the specifications are quite clear. The subject matter is just
difficult to implement correctly. I encourage you to try it. It's a lot of
fun.

