Codeweavers Recommended Reading 2016
It’s been just over a year since our last recommended reading list and what better time than just before Christmas to release our recommended reading list for 2016? There are some brilliant books below, so get them on your Christmas Lists and see want Santa delivers!
The last year has been an interesting one for Codeweavers, we’ve grown considerably and learning as we go has been incredibly important. Pretty much every area of our business has changed over the last twelve months, either through growth or changes in techniques and technologies. With that comes lots of learning and plenty of reading for new ideas. Many of the changes have made us go back to the basics, however, and some of the recommended reading below will reflect that. So, without further ado…
Back to Basics
Having the right mindset is crucial at Codeweavers and we’ve been talking about getting back to Agile and The Toyota Way basics recently. It’s not about a particular process or set of tools, it’s about having the right mindset when making decisions that are important to us.
The Goal A Process of Ongoing Improvement – Eliyahu M. Goldratt, Jeff Cox
Of all the books in the office, this is the one with the most copies. It’s rather old now (The first edition was published in 1984 before I was born!) but it’s still incredibly relevant. The ideas and improvements that Alex Rogo (the lead character of the book) and his team implement are simple yet eye opening, underlining the Theory of Constraints that Eliyahu Goldratt developed. This book is probably unlike any other business book you’ve read, it’s essentially a thriller that is packed full of lessons.
The Toyota Way 14 Management Principles from the World's Greatest Manufacturer - Jeffrey K. Liker
What better way to improve yourself and your business than to take on board the 14 principles that Toyota laid down to gain its reputation for quality and reliability. In fact, the value of these principles was highlighted by Toyota’s own admission that they lost sight of their own principles which led to the 2009 vehicle recall. Read this book, adopt their mindset, don’t forget it and you can’t go wrong.
Peopleware Productive Projects and Teams - Tom DeMarco, Timothy R. Lister
Another classic in the business management book sector, Peopleware focuses on management in the Software industry. Many managers in the software world have come from a development background and as such often feel the problem is technical but Peopleware goes out of its way to show that most of the issues are human rather than technical. Implementing some of these ideas isn’t easy but if you can then you’re on the path to success.
The Art of Agile Development - James Shore, Shane Warden
Effectively a handbook for anyone looking to go down or learn more about the Agile route. This book is relevant no matter your role within an organisation. It’s particularly relevant to Codeweavers since the author comes from an XP (eXtreme Programming) background. Got questions about how a part of your current process will fit in with an agile methodology? I can almost guarantee this book will answer it.
We’re still developers!
Well after a section on management and process improvement books, let’s get back to normal. How about a few of our most popular development books that we’ve read this year, as well as some classics that we always find useful to refer to?
Growing Object-Oriented Software, Guided by Tests - Steve Freeman, Nat Pryce
I best open this section with a classic. Talking about Object-Oriented programming isn’t the sexiest thing at the moment (I guess that’d be functional programming) but let’s be honest, most of the code being written is still OO. This book shows you how to build OO software by writing tests to guide you towards a better architecture. Read it, you will be a better developer when you’ve finished.
Working Effectively with Unit Tests – Jay Fields
I heard Jay on the Software Engineering Radio podcast earlier this year and ended up heading over to Leanpub to grab his book. He offers some very strong opinions on the right way to write unit tests and it turns out most of us are doing it completely wrong. Intrigued? You should be. Pick it up, you’ll write better unit tests when you are finished.
## C# 6.0 in a Nutshell The Definitive Reference - Ben Albahari, Joseph AlbahariHardly a nutshell at over 2 inches thick but a valuable book to have around for anyone new to C#. If you are curious about any part of the language, then I can almost guarantee that this book covers it.
C# Smorgasbord - Filip Ekberg
Writing lots of C# and bored of all the usual books and references? This book offers something a little different and covers some aspects of the language that you likely don’t use very often. You might learn a thing or two!
Refactoring Improving the Design of Existing Code - Martin Fowler
Let’s wrap up the development book recommendations with another classic. I feel like this book will always be relevant to anyone who cares about the quality of their code base. Refactoring is an essential part of any developer’s role and should always be considered (I’m looking at you Project Managers), this book will teach you how to do it and hopefully show you the importance of it.
ASP.NET Web API 2 HTTP Message Lifecycle
Sounds a little boring, but it is well worth your time. We use Web API 2 a lot at Codeweavers so this is pretty much essential knowledge. Luckily for you, there is a great breakdown of the poster at Exception Not Found here.
Something a little different
I love reading something that isn’t what you’d normally find on a Software Engineers desk (but you probably should!).
Smarter Faster Better The Secrets of Being Productive in Life and Business - Charles Duhigg
I recommended Charles’ book in last year’s list and here is another one from him. Surely you want to find out the secrets of being productive? Based on Charles’ experience and a host of research this will potentially change your life just as his book on Habits did last year.
Programming Beyond Practices Be More Than Just a Code Monkey - Gregory T. Brown
An interesting set of stories that any experienced developer will find interesting. Most of us can write code (that’s the easy part, right?) but how do we go beyond that? It’ll probably open your eyes to some new ways of working and/or thinking. It’s insightful and easy to read as you become the main character throughout the chapters.
Looking for more and wondering where all the web links are from last year’s list? Well, we’ve revived the developer twitter account and we’re now posting recommended web reading that’s being internally shared on our Slack channels. Check it out and follow us, there are tonnes of great content.
Still not enough?
And if that isn’t enough to fill your stockings, then look at last years recommended reading list, it’s still very relevant. You can find it here