At KEYSYS we know software & technology are ever-evolving landscapes. That’s why we started the KEYSYS Development Book Club to help our team grow and improve in our core values of Knowledge, Constant Improvement, & Collaboration.
Each Wednesday our development team meets together to discuss a chapter in the book they’re reading and work through examples together. These meetings have really helped our team and culture grow as everyone has the chance to improve together.
The developer book club at KEYSYS is finishing the final chapters of A Common-Sense Guide to Data Structures and Algorithms by Jay Wengrow. Some people might wonder if we are being “too academic.” Wouldn’t it be more practical to read the latest book on React (which we did) or MongoDB? After all, you don’t need a Computer Science degree to be successful in the software industry these days.
Fundamentals like data structures and algorithms help us understand how our tools work, which allows us to use them more effectively.
For example, we can solve some problems using either a list or a hash set, and the performance difference may be negligible. But in other cases, the wrong choice could lead to minutes of additional loading time. As a user of software applications, I understand the value of users’ time. As a developer, I would rather use the correct tool the first time than be woken up at night to troubleshoot an avoidable problem.
You might ask, “Isn’t that over-engineering, or gold-plating?” Actually, no!
More often than not, if you know how the data structures work, you can just as easily choose the optimal tool as the suboptimal tool. Typing HashSet<string> instead of List<string> takes the same amount of time and doesn’t hurt code readability.
More and more clients are moving their solutions to the cloud, where pricing can vary dramatically based on resource consumption. “Throwing more hardware” at a problem may work in some cases, but the proper use of data structures and algorithms in code can save thousands of dollars a month.
At KEYSYS, we seek to be good stewards of our clients’ money, which includes writing code and architecting solutions in a cost-effective way. We hope this gives our clients confidence that we make the most of the money you invest in building solutions.
For other developers in the community, we think A Common-Sense Guide to Data Structures is a great introduction, and refresher, on fundamentals that will make you better at your craft.