Book Report: The Clean series by Robert Martin

I recently finished reading a trio of books of software development best practices by “Uncle Bob” Martin. The books are:

  • Clean Code – this one is about the nuts and bolts of making your code readable and maintainable.
  • Clean Architecture – this is about system-level design; how to modularize systems properly to make them flexible and maintainable.
  • The Clean Coder – how to behave professionally as a programmer, assuming you want to. This was was the most interesting to me, because nobody ever tells you this stuff.

Because I also wanted to turn this into a presentation for my colleagues at work, I’ve taken extensive notes and shared them as a slide deck here.

If you’re interested in knowing what’s in the books but aren’t sure if you want to read them, I encourage you to have a look over my notes. They’re all in order by chapter and summarize what I consider the important points. If they catch your interest, you’ll be able to find the relevant section in the book easily from this.

I agree with much of what Martin says in these books, but by no means all. Architecture and professionalism are areas wherein I want to improve myself, and I intend to continue reading this type of book.

Linear Timelapse Robot v1

Just in case anyone is following me via RSS, I just posted a new static page about my latest electronics project, a prototype motion control robot for making timelapse movies.

HD44780 LCD Interface lib for Teensy++ 2.0

Just a quick post to announce that I’ve posted a new project page to the static part of my site: Teensy++ Interface Library for HD44780-Based LCDs

It’s about a recently completed electronics hobby project.

 

TED second helping

Some more TED talks I’ve enjoyed recently.

Futurism:

Ray Kurzweil on how technology will transform us – Basically a reiteration of the first part of his book The Age of Spiritual Machines.  He lays out his case for the evolution of technology having always been an exponential process, and the near-future implications of that.

Kevin Kelly on how technology evolves – A good follow-on to Kurzweil’s talk.  Here the case is made (something Kurzweil also claimed) that machines are on their way to becoming the 7th kingdom of life, and the progress of technology is actually us bootstrapping the next “meta” layer of evolution.

Psychology:

Derek Sivers: Keep your goals to yourself – Aha.  I always suspected something like this might be true, and I’ve seen the effects in myself.  Good to know.  My world domination plans are now extra-secret.

Michael Shermer on strange beliefs – Hillarious!

Srikumar Rao: Plug into your hard-wired happiness – A better restatement of happiness advice I’ve heard before.

Barry Schwartz on the paradox of choice – Some interesting insight into the glut of similar products we have today and why it might be going a little overboard.

Jeff Bezos: What matters more than your talents – Mostly the standard exhortation to do what you love, but his story about his grandmother really hit home for me.  Being clever instead of kind is one of my major failings that I feel has been getting worse lately.

Diane Benscoter on how cults rewire the brain – In talking about her experiences with the Moonies she makes the interesting point that many humans, especially young ones, have weak memetic immune systems.  This is something we can fix and, I think, are fixing.

Robert Sapolsky: The uniqueness of humans – Some really interesting discussion about behavioral similarities and differences between humans and other animals.

Neuroscience:

Tan Le: A headset that reads your brainwaves – This stuff has come a long way.  I remember one of my classmates when I was taking electronics in college was trying to develop something like this, but filtering out environmental EM noise was a major problem for him.  That makes these recent developments more impressive for me.

Al Seckel says our brains are mis-wired – A bunch of new optical illusions I hadn’t seen before, as well as some old favorites.

Arianna Huffington: How to succeed? Get more sleep – Yup yup.  I also discovered the hard way that sleep is grossly underrated.

Jeff Hawkins on how brain science will change computing – Damn! This is probably the most personally relevant of all the talks I’ve watched.  This guy just saved me a bunch of time in my line of thinking about the nature of mind.  Plus, I want to work on what he’s doing.

Photography:

Miru Kim’s underground art – She seems shy on stage, but obviously she’s got some guts to do what she does.  Great idea though, and I’m not liking it just because of the nudity – I also like urban archaeology photos.

Transhumanism:

Dean Kamen: The emotion behind invention – A bit drawn out and touchy-feely, but the video really drives home the point that cyborgism is here today.  Not sure why Rose Tyler’s father is sitting on the stage though.

Biotechnology:

Paul Root Wolpe: It’s time to question bio-engineering – Wow, lots of stuff here I didn’t realize was going on.  Interesting questions come out of this, as well as fantastic possibilities.

Anthony Atala: Printing a human kidney – Cool! If this ends up working, no more need to grow clones to cannibalize for replacement parts!

Environmentalism:

Stewart Brand proclaims 4 environmental ‘heresies’ – Tons of clue in here, especially about nuclear power.  He also changed my position on GM foods a good bit, though Monsanto is still the face of evil.

Richard Preston on the giant trees – I’ve always liked giant trees, and this talk adds some new information I didn’t know about the redwoods.

Physics:

Brian Greene on string theory – Good general introduction, with visualizations.

HCI:

Pranav Mistry: The thrilling potential of SixthSense technology – Impressive prototype demos, but these things never seem to materialize in production – I think there are still some major problems needing to be solved.

Seth Godin: This is broken – A rant about an older form of defective-by-design.

General:

Becky Blanton: The year I was homeless – A short but interesting recount of a personal experience.

Gever Tulley teaches life lessons through tinkering – I’m glad someone still cares about teaching children useful stuff.

Stewart Brand on the Long Now – Interesting discussion of the search for the location to place their 10,000-year clock.

George Dyson at the birth of the computer – Some amusing computer history anecdotes I hadn’t heard before.

 

 

Unique segments of history

I think there’s a fairly narrow segment of history, relative to the span of recorded history, that the article including this paragraph could have come from:

Next Page »