By Developers, For Developers
Start with Practical Programming to get the fundamentals of software development down pat. Next, take on efficiency and performance with A Common-Sense Guide to Data Structures and Algorithms. Finally, learn to create software that end users love with Designed for Use.
In Design and Build Great Web APIs you’ll dive into the plumbing that’s essential to modern, distributed applications. Practical Microservices will get you thinking about a whole new approach to software architecture. And Design Patterns for Express.js will bring it all together with one of today’s most popular JavaScript-based frameworks.
Begin your survey of the data revolution with Data Science Essentials in Python. Once you’ve got a handle on network analysis, natural language processing, and visualization, you’ll be ready to take on a real-world application in Programming Machine Learning. Finally, wrap things up at the intersection of the natural and artificial worlds with Genetic Algorithms and Machine Learning for Programmers.
Demystify the complexity and confusion around security with a down-to-earth exploration of core concepts in Practical Security. Next, learn how to identify anomalies and make sense of networks (both hardware and human) in Complex Network Analysis in Python. Finally, learn to avoid and mitigate incorrect and dangerous queries at the heart of so many security flaws with SQL Antipatterns.
Get complete coverage of the core Elixir programming language with Programming Elixir 1.6. Learn all about the web framework even non-Elixir developers envy in Programming Phoenix 1.4. And, push production to its limits with Real-Time Phoenix.
Play and experiment as you discover a whole new type of fun in The Ray Tracer Challenge. Go on a mind-bending and thought-provoking adventure with Mazes for Programmers. And learn to see everyday programming challenges in a whole new light with Exercises for Programmers.
In The Nature of Software Development, learn to find simplicity to produce a significantly better end result. Then, discover how to reduce the risk associated with building software, in Beyond Legacy Code. Finally, quantify the whole process using statistics and data science to uncover both problematic code and behavioral patterns, in Software Design X-Rays.
Amplify your impact, influence, and reach by following the step-by-step plans in Technical Blogging. Join a community of like-minded people and make your mark with Forge Your Future with Open Source. Become an effective and supportive team leader that your staff will look up to in Become an Effective Software Engineering Manager.