← Back to all articles
Data ScienceMay 25, 2020Arash Farahani

Code Smells! Clean Code

Published on May 25, 2020
Code Smells! Clean Code

“Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.” (Source: Clean Code)

Planning to study “Clean Code”, I invited my colleagues to for a study group. It was a great learning experience, so I’d like to share the same with you.

The Book is Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin aka Uncle Bob

From the Author:

“What kind of work will you be doing? You’ll be reading code–lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.”

The book is for any developer, data scientist, software engineer, project manager, or system analyst with an interest in producing better code. Although the code used is Java, don’t let that discourage you. The principals are the same.

Here’s a video intro: Robert C. Martin Talks About his Book Clean Code

Some resources:

  1. The [ebook of Clean Code: A Handbook of Agile Software Craftsmanship] (https://www.safaribooksonline.com/library/view/clean-code/9780136083238/) is accessible through safaribooksonline (you/your company may have access)

  2. The Pluralsight Course: “Clean Code: Writing Code for Humans”: This is a separate course that summarizes quite a few books including Clean Code. We used it to review the materials in our study group meetings.

  3. Clean Code (Video Series): These are Uncle Bob videos that go with the book chapters. In these, he delivers the materials in the same style that John Oliver delivers the news. If that’s not your style, just forward the video: the material is actually good. If you don’t have access to safaribooksonline, the videos are also available for purchase from cleancoders.com. There are a few free videos on cleancoders.com.

  4. Clean Code Applied (Video Series): This is another series by Uncle Bob. Again, also available for purchase from cleancoders.com

Study Group Experience

I highly recommend forming a study group. When I was do so, I solicited advice from anyone I could find who’d studied the book as I was promoting the study group. (you’ve found me!) I came across a team who’d made the study group mandatory for their team: “we pay you to write good code, and we’re investing in you doing so”. Participating in our study group was voluntary.

I feel like the voluntary nature of our group lead to engaging discussions. These discussions helped me internalize the concepts. For example, we sometimes had diverging opinions on whether we agreed about certain suggestions of the book. In these cases, the study group brought forward the different perspectives in such cases.

It also really helped to have developers who work in different environments/languages and data scientists in the group. For example, someone suggested On Writing Software (well?) , which is “Ruby/Rails but still easy to follow.”

Share this piece
PostLinkedIn

Substack & Newsletter Syndication

Enjoyed this piece? This post is syndicated to Substack and RSS. Subscribe directly or follow the live feed to receive new deep-dives in your inbox.

Follow RSS FeedContact Arash