We like reading books and we read a lot because we can convert the knowledge we get from them into our skills and the latter is what makes our business run. A good book may be worth weeks and months of the trial and error experience, it may bring to light many essential things which you would hardly be able to notice yourself. Below are some of the books we read and which in our opinion bear a lot of worthwhile information.
Books On Common Topics
- My Life & Work — Memoirs of a famous engineer and a great businessman Henry Ford. Although this book has been written years ago it contains plenty of remarkable ideas applicable to almost any type of business.
- Why We Buy: The Science Of Shopping — A book by Paco Underhill devoted to researches in the field of shopping with plenty of information about how and why people shop, what makes them purchase products and why merchandising can be way more important than marketing. The book contains a lot of interesting examples we face but don’t notice every day
- Freakonomics: A Rogue Economist Explores the Hidden Side of Everything — A book by Steven Levitt and Stephen J. Dubner applying economic theory to diverse subjects not usually covered by “traditional” economists; has quite a few interesting ideas and research results.
Books For Geeks
Design
- Universal Principles of Design, Revised and Updated: 125 Ways to Enhance Usability, Influence Perception, Increase Appeal, Make Better Design Decisions, and Teach through Design, William Lidwell, Kritina Holden, Jill Butler — A great book about how to design things properly. A lot of useful observations and interesting conclusions.
Project Management
- Peopleware: Productive Projects and Teams — A classical book from Tom DeMarco and Timothy Lister about project management, building teams, organizing working environments.
- The Mythical Man-Month: Essays on Software Engineering — A famous book by Fred Brooks proving that involving more programmers to a project running behind schedule will make it even later (Brook’s law).
- The Deadline: A Novel About Project Management — A fiction by Tom DeMarco narrating about many aspects of project management by example of the main character experience.
- Joel on Software — Blog of Joel Spolsky with plenty of interesting and useful articles related to programming.
Web Development
Common Practices
- Clean Code: A Handbook of Agile Software Craftsmanship. Robert C. Martin — A great book for anyone who writes code. Although all samples in the book are written in Java they are relevant for any other similar programming language. The book is very beneficial for developers who work in groups.
- Head First Design Patterns. Elisabeth Freeman, Eric Freeman, Bert Bates and Kathy Sierra — One of the best books for mastering design patterns. It’s easy to read and perfect to get started before proceeding with more sophisticated practices like those from GoF. The book is really cool because you can both read it and review as a comic book. All code samples are written in Java but if you’re interested you can easily find related samples in C++, C#, and PHP on the Internet.
- Design Patterns: Elements of Reusable Object-Oriented Software. Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides — A classical book by the famous Gang of Four. It is a good reading for professionals and a good reference book that can be helpful in your daily work.
- Refactoring: Improving the Design of Existing Code. Martin Fowler, Kent Beck, John Brant and William Opdyke — This is a must read for all developers who want to write clean, flexible, and reusable code. Read it to be proud of the code you produce.
- Troubleshooting Techniques Of The Successful Technologist. Steve Litt — This book describes various methods of finding flaws in different systems including software. Useful to broad your outlook.
- UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition). Martin Fowler — Another classical book that is necessary to understand modern approaches to object-oriented analysis and design. It briefly explains the essence of the UML and utilization of this language in the process of modern software development. The book provides information about all basic types of UML diagrams, for what they are, and what annotations are used while creating and reading them. Domain Logic Patterns, Data Source Architectural Patterns, Object-Relational Behavioral Patterns, Object-Relational Structural Patterns, Object-Relational Metadata Mapping Patterns, Web Presentation Patterns, Distribution Patterns, Offline Concurrency Patterns, Session State Patterns, Base Patterns.
- Mastering Regular Expressions, by Jeffrey E.F. Friedl — A regular expression is a very useful tool helpful for many projects. Nonetheless many programmers are not comfortable with this technique. The book assists with profound understanding of regular expressions mechanisms and provides a lot of good samples comparing them in different languages (Perl, Java, TCL, etc.). If you are afraid of regular expressions this book is definitely for you.
PHP
- Zend PHP 5 Certification Study Guide. Second Edition — A book written for those who are going to get Zend PHP Certificate; a good book to start studying PHP or to refresh it mind.
- Guide to PHP Security — A great book by Rasmus Lerdorf (creator of PHP) about various security related issues in PHP. Understanding of security issues covered in the book is a must for any web programmer.
- PHP Objects, Patterns, and Practice. Second Edition. Matt Zandstra — A very useful book for advanced PHP programmers, great code samples with relevant comments. It can become a valuable add-on to the information you can find in any classical book about OOP.
- PHP and MySQL Web Development (4th Edition) — A very good book for beginners and developers of intermediate level. Everything is very clear and up to the point. The book was released in 2009 but is still of current importance. One of the best.
- PHP and MySQL Phrasebook (Developer’s Library). Christian Wenz — The book depicts usage of PHP and MySQL for development of reliable projects. It consists of a bunch of ready solutions. The author introduces all his ideas in the form of code with detailed description of all necessary actions and recommendations for solving similar tasks. The book also includes very interesting suggestions for processing forms.
- Yii Application Development Cookbook. Second Edition. Alexander Makarov — A great and useful book about one of the most popular modern PHP frameworks called Yii. The book will be helpful for those who only starts learning this framework as well as for experience developers in the form of a reference book.
SQL
- MySQL (5th Edition) (Developer’s Library). Paul DuBois — The book provides plenty of information about SQL syntax, installation and administration of MySQL, optimisation of queries and tables, access to database management system using PHP, C, and Perl. The book is interesting and easy to read. It’s good as both a manual and a reference book and will be useful for an administrator and a programmer.
Ruby
- The Ruby Way, Second Edition: Solutions and Techniques in Ruby Programming (2nd Edition) by Hal Fulton — A very good book to start working with Ruby. It’s already a bit outdated since it’s based on a 5 years old Ruby but still allows to understand the essence and spirit of Ruby.
JavaScript
- JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides) — by David Flanagan — The best book about JavaScript. You’ll be amazed how easy it is to read and understand. It also includes description of ECMAScript 3 and 5.
- Pro JavaScript Design Patterns — A book about OOP and various sophisticated patterns in JavaScript. Very useful for JavaScript programmers who want to enhance their knowledge.
- JavaScript Patterns — by Stoyan Stefanov — A nice book that shows how to apply design patterns in JavaScript. This is a very important topic taking into account a vast number of OOP based JavaScript frameworks available these days.
- Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript — by David Herman — A must read book for anyone who works with JavaScript. The book describes a lot of internal aspects of the languages, provides plenty of examples that are helpful for both experienced developers and those who only take their first steps in programming. This book will definitely increase your level of understanding of JavaScript.
- Pro jQuery — by Adam Freeman — This book will quickly help with mastering the craft of web-development using jQuery. The authors explain all main approaches to proper usage of jQuery, describe jQuery UI and jQuery Mobile in details.
- Mastering Web Application Development with AngularJS — by Pawel Kozlowski and Peter Bacon Darwin — A superb book written using simple and clear language. It shows the full development cycle: coding, testing, debugging, deployment.
CSS
- The Book of CSS3: A Developer’s Guide to the Future of Web Design. Peter Gasston — A very serious book about CSS3. It’s worth mentioning that the book requires knowledge of CSS2.1 and this is a book for experienced developers. The material is well structured and there are plenty of good examples with browser compatibility notes. The descriptions and the samples are rich in content and at the same time everything is up to the point.
Administration
- UNIX and Linux System Administration Handbook (4th Edition) — Evi Nemeth, Garth Snyder, Trent R. Hein, Ben Whaley — A perfect reference book for administrators and usual users of Linux and Unix. A lot of helpful relevant information starting from the very first page.
- Mastering Nginx. Dimitri Aivaliotis — This is a very detailed manual about fine tuning of NGINX in various cases. The author provides information on how to configure the server, prepare an SSL-certificate for traffic encryption, cache and compress responses, set up log files, and how to work with many other crucial elements of the server.