The virtue of excellence

Sunday, January 15, 2012

Books I finished this week:

Coercion -- Advertising how they screw you manual.  Some discussion of cults, MLM.  Much detail.  I didn't find the writing compelling, and I didn't really care about the topic. The introduction...first 10 pages or so are great...but after that it's a lot slower.  I had trouble finishing it.

We Are All Weird Now -- Claim:  The bell curve (in 1 dimension) is flattening.   It's becoming awful hard (read: impossible) to find a cultural center at all.  Indeed...wealth creates choices, and when people have choices, they exercise them, and the traditional common culture we often hear wished for not only doesn't exist any longer...it's impossible for a society of rich people.  Really interesting. 100 pages ... ~15 minute read.

The Great Stagnation -- Productivity Growth has slowed.  But the thesis doesn't even resemble the thesis I thought he was thes-ing before I read the book.  The actual claim:  Huge productivity gains on the web have translated into strongly better lives for some but not all people. We're transitioning away from an economy wherein STUFF matters very much.  Japan shows us a path (maybe) to graceful decline.  But fundamentally, we can't afford the government, education, health care we have, and it needs fixed...and if we did that, that might fix more than just those topics.

Groovy in Action -- I should have read this ~3-5 years ago.  I'd identified most of the problems with Java, but Groovy hands me most of the solutions.  I expect I would be just as impressed by Python...but as a Java ecosystem-dweller, I'll probably stick with Groovy.  If anyone is sufficiently into both Python and Groovy that they'd like to explain why Python is really better than Groovy, I'd listen.  Claim:  The proper software learning curve for normal-ish developers goes something like:  Procedural code (C/VB6)...OO code (Java)...Frameworks(Spring)...Test First Development...Patterns...Agile in General...Groovy/Python

Grails in Action -- Great book.  Seems super-simple when you have a background in Java/Spring/ORM/Struts Tiles/Rails/RESTful services.  I suppose that if you didn't this would be complicated.  Book is very well done.  Aretae-approved by-example methodology.

The Lean Startup -- Best book I've read since Kahneman.  May now be my favorite book on Lean/Cyclical processes and the God of the Feedback Loop.  I don't know how much my appreciation of this book comes from having read ALL of the prior writers on the topic.  It really is a marvelous book...and it upped my understanding about how to use the feedback loop in business substantially.  And with characteristic immodesty...that's saying a fair bit.  I read this one slowly (a week or so), even though it was short, in order to let it digest.


6 comments:

simonch said...

Can you suggest a reading list for beginners?

Aretae said...

Simonch,

Have you seen this post? Beginners in what direction? Programming, Lean, Philosophy, ???

simonch said...

Programming and philosophy. I've been trying to improve my thinking with a diet of Taleb, Kahneman and Yudkowsky. I'm a recent electrical engineering grad now working in software engineering, working on large embedded C systems.

Aretae said...

Simonch,

Programming.

Embedded C systems are a very particular corner of programming...wherein the goals are mostly different from the goals everywhere else.

In embedded C systems, the goal is efficiency and memory management. PRIMARY goal in most other modern languages is either "how fast can I write this function (Perl, php, Ruby)" or How maintainable is the system WHEN (not if) the requirements change (Java). Some modern languages do a pretty good job of combining both goals (Python, Groovy).

The easiest intro to Java is "Head First" Java. Easiest because it makes itself easy to read. The best/clearest intro to Java is "Thinking in Java". Teaches you to think right about programming from the Java model.

"Test Driven Design by Example" and "Refactoring" are both phenomenal books for understanding the model of test first.

Aside...I worry here because DOING is essential to the process of learning programming, and reading is simply insufficient.

If you're in Java...chase the Spring framework....the consensus best book is "Spring Recipes".

Also, you should chase patterns. Wikipedia has a better explanation of patterns than anywhere else...though the first chapter of the book "Patterns: Elemensts of..." is awful good. It furthermore helps epistemologically, this book.

I've recently (last week) become a (provisional) Groovy/Grails convert. I think that they make lots of sense after you've been through the other sequence...and given that you read me, Yudkowsky, and such...you probably don't START with Groovy/Grails.

Aretae said...

Simonch,

Philosophy:

Hume is teh winnar. The two indespensables are:

Dialogues concerning Natural Religion
An Enquiry Concerning Human Understanding

My favorite moral philosopher is David Schmidtz (As opposed to my favorite moral psychologist: Jon Haidt).

My top 2 from Schmidt:
Rational Choice and Moral Agency
Elements of Justice -- This one is easier to read.

If you build your intuitions in those places...you're in pretty good shape.

I really want to suggest that you acquire a thinking pattern from Chris Sciabarra's understanding of Hegelian Dialectic. Coming from Yudkowsky and company, you want a different thought-pattern in your toolbox.
Best book? Maybe...
Marx, Hayek, and Utopia.
or
Towards a Dialectical Libertarianism

simonch said...

Thanks! I'll see how I go with your recommendations. Very much appreciated.