At KLAS Research I had one of my employees recommend that we get a bunch of copies of the book Clean Code by Robert C. Martin and give them out to all of the software developers on the team. Having never read the book, I picked up a copy from Amazon and it arrived at my house that very evening. I didn't even have to go to the local bookstore, which actually is one of my favorite activities. I wanted to read it before I recommended that the company purchase the $50 book.
I immediately started reading it and felt it had some great ideas that every software developer should learn. I recommended it to one of my engineers and she checked it out from the library before I even made the decision if it is worth getting for everyone. She found value and wisdom within its pages.
Ultimately I decided not the purchase copies for everyone on the team because it had a number of ideas that I disagree with. The book uses Java for almost all of the coding examples. It then goes on to say that there are very few differences between computer programming language choices and the principles in the book can be applied to the vast majority of them. I completely disagree. I am not a fan of Java because I think it requires too many lines of code to do anything useful. You can do so much more with Python in significantly fewer lines. Furthermore, while some of the suggestions in the book will help with Java, they are not needed for Python.
Computer programming languages all have their pros and cons, which is why there are so many of them. When it comes to data science, which is what I am doing now at Sony, most people choose between Python or R. Even then R is better for statistical computations while Python is better for machine learning and general-purpose programs. Java has its place too, but I wouldn't use it for data science as it is too cumbersome.
Going back to the book, Clean Code. I found it to be very helpful and it outlined a lot of concepts that will help you become a better coder. It talks about tried-and-true things like self-documenting variables and that if you have to use extensive comments to describe what your code is doing, you may want to rethink what you wrote. I also like the concept of when you fix bugs, to take that time to make the code simpler and easier to read. If you are looking to improve your own coding skills or are just getting into coding, the book will help you a lot. I'm not sure I can justify the high price for the book though and recommend finding it at the library or looking for a great deal on a used copy.
No comments:
Post a Comment