Book picks similar to
Beginning Object-Oriented Analysis & Design with C++ by Jesse Liberty
archieved
author
business
computer-science
The Pragmatic Programmer: From Journeyman to Master
Andy Hunt - 1999
It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how toFight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies,
The Pragmatic Programmer
illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.
An Elegant Puzzle: Systems of Engineering Management
Will Larson - 2019
Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions of complex management challenges can make the difference between fulfillment and frustration for teams, and, ultimately, the success or failure of companies. Will Larson's An Elegant Puzzle orients around the particular challenges of engineering management--from sizing teams to technical debt to succession planning--and provides a path to the good solutions. Drawing from his experience at Digg, Uber, and Stripe, Will Larson has developed a thoughtful approach to engineering management that leaders of all levels at companies of all sizes can apply. An Elegant Puzzle balances structured principles and human-centric thinking to help any leader create more effective and rewarding organizations for engineers to thrive in.
Working Effectively with Legacy Code
Michael C. Feathers - 2004
This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
Joel on Software
Joel Spolsky - 2004
For years, Joel Spolsky has done exactly this at www.joelonsoftware.com. Now, for the first time, you can own a collection of the most important essays from his site in one book, with exclusive commentary and new insights from joel.
Managing the Software Process
Watts S. Humphrey - 1989
Emphasis is placed on the basic principles and priorities of the software process. Sections are organized in a natural way for managers and professionals to implement improvement activities.
The Business of LIFE: How You Can Prosper In The Information Age
Chris Brady - 2004
Mastering Bitcoin: Unlocking Digital Cryptocurrencies
Andreas M. Antonopoulos - 2014
Whether you're building the next killer app, investing in a startup, or simply curious about the technology, this practical book is essential reading.Bitcoin, the first successful decentralized digital currency, is still in its infancy and it's already spawned a multi-billion dollar global economy. This economy is open to anyone with the knowledge and passion to participate. Mastering Bitcoin provides you with the knowledge you need (passion not included).This book includes:A broad introduction to bitcoin--ideal for non-technical users, investors, and business executivesAn explanation of the technical foundations of bitcoin and cryptographic currencies for developers, engineers, and software and systems architectsDetails of the bitcoin decentralized network, peer-to-peer architecture, transaction lifecycle, and security principlesOffshoots of the bitcoin and blockchain inventions, including alternative chains, currencies, and applicationsUser stories, analogies, examples, and code snippets illustrating key technical concepts
Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation
Jez Humble - 2010
This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-- sometimes even minutes-no matter what the size of a project or the complexity of its code base. Jez Humble and David Farley begin by presenting the foundations of a rapid, reliable, low-risk delivery process. Next, they introduce the "deployment pipeline," an automated process for managing all changes, from check-in to release. Finally, they discuss the "ecosystem" needed to support continuous delivery, from infrastructure, data and configuration management to governance. The authors introduce state-of-the-art techniques, including automated infrastructure management and data migration, and the use of virtualization. For each, they review key issues, identify best practices, and demonstrate how to mitigate risks. Coverage includes - Automating all facets of building, integrating, testing, and deploying software - Implementing deployment pipelines at team and organizational levels - Improving collaboration between developers, testers, and operations - Developing features incrementally on large and distributed teams - Implementing an effective configuration management strategy - Automating acceptance testing, from analysis to implementation - Testing capacity and other non-functional requirements - Implementing continuous deployment and zero-downtime releases - Managing infrastructure, data, components and dependencies - Navigating risk management, compliance, and auditing Whether you're a developer, systems administrator, tester, or manager, this book will help your organization move from idea to release faster than ever--so you can deliver value to your business rapidly and reliably.
The Unwritten Laws of Business
W.J. King - 1944
The Unwritten Laws of Business is such a book. Originally published over 60 years ago as The Unwritten Laws of Engineering, it has sold over 100,000 copies, despite the fact that it has never been available before to general readers. Fully revised for business readers today, here are but a few of the gems you’ll find in this little-known business classic: If you take care of your present job well, the future will take care of itself.The individual who says nothing is usually credited with having nothing to say.Whenever you are performing someone else’s function, you are probably neglecting your own.Martyrdom only rarely makes heroes, and in the business world, such heroes and martyrs often find themselves unemployed.Refreshingly free of the latest business fads and jargon, this is a book that is wise and insightful, capturing and distilling the timeless truths and principles that underlie management and business the world over.The little book with the big history.In the summer of 2005, Business 2.0 published a cover story on Raytheon CEO William Swanson’s self-published pamphlet, Swanson’s Unwritten Rules of Management. Lauded by such chief executives as Jack Welch and Warren Buffett, the booklet becamea quiet phenomenon. As it turned out, much of Swanson’s book drew from a classic of business literature that has been in print for more than sixty years. Now, in a new edition revised and updated for business readers today, we are reissuing the 1944 classic that inspired a number of Swanson’s “rules”: The Unwritten Laws of Business. Filled with sage advice and written in a spare, engaging style, The Unwritten Laws of Business offers insights on working with others, reporting to a boss, organizing a project, running a meeting, advancing your career, and more. Here’s just a sprinkling of the old-fashioned, yet surprisingly relevant, wisdom you’ll find in these pages:If you have no intention of listening to, considering, and perhaps using, someone’s opinion, don’t ask for it.Count any meeting a failure that does not end up with a definite understanding as to what’s going to be done, who’s going to do it, and when.The common belief that everyone can do anything if they just try hard enough is a formula for inefficiency at best and for complete failure at worst.It is natural enough to “look out for Number One first,” but when you do, your associates will be noticeably disinclined to look out for you.Whether you’re a corporate neophyte or seasoned manager, this charming book reveals everything you need to know about the “unwritten” laws of business.
The Art of Computer Programming, Volume 1: Fundamental Algorithms
Donald Ervin Knuth - 1973
-Byte, September 1995 I can't begin to tell you how many pleasurable hours of study and recreation they have afforded me! I have pored over them in cars, restaurants, at work, at home... and even at a Little League game when my son wasn't in the line-up. -Charles Long If you think you're a really good programmer... read [Knuth's] Art of Computer Programming... You should definitely send me a resume if you can read the whole thing. -Bill Gates It's always a pleasure when a problem is hard enough that you have to get the Knuths off the shelf. I find that merely opening one has a very useful terrorizing effect on computers. -Jonathan Laventhol This first volume in the series begins with basic programming concepts and techniques, then focuses more particularly on information structures-the representation of information inside a computer, the structural relationships between data elements and how to deal with them efficiently. Elementary applications are given to simulation, numerical methods, symbolic computing, software and system design. Dozens of simple and important algorithms and techniques have been added to those of the previous edition. The section on mathematical preliminaries has been extensively revised to match present trends in research. Ebook (PDF version) produced by Mathematical Sciences Publishers (MSP), http: //msp.org
Akka in Action
Raymond Roestenburg - 2012
Akka uses Actors-independently executing processes that communicate via message passing—as the foundation for fault-tolerant applications where individual actors can fail without crashing everything. Perfect for high-volume applications that need to scale rapidly, Akka is an efficient foundation for event-driven systems that want to scale elastically up and out on demand, both on multi-core processors and across server nodes.Akka in Action is a comprehensive tutorial on building message-oriented systems using Akka. The book takes a hands-on approach, where each new concept is followed by an example that shows you how it works, how to implement the code, and how to (unit) test it. You'll learn to test and deploy an actor system and scale it up and out, showing off Akka's fault tolerance. As you move along, you'll explore a message-oriented event-driven application in Akka. You'll also tackle key issues like how to model immutable messages and domain models, and apply patterns like Event Sourcing, and CQRS. The book concludes with practical advice on how to tune and customize a system built with Akka.
Shape Up: Stop Running in Circles and Ship Work that Matters
Ryan Singer - 2019
"This book is a guide to how we do product development at Basecamp. It’s also a toolbox full of techniques that you can apply in your own way to your own process.Whether you’re a founder, CTO, product manager, designer, or developer, you’re probably here because of some common challenges that all software companies have to face."
NoEstimates: How To Measure Project Progress Without Estimating
Vasco Duarte - 2016
I wrote it because I believe we can do better than the accepted "status quo" in the software industry. It took me years to learn what I needed to learn to come up with my version of the #NoEstimates approach. You can do it in weeks! The techniques and ideas described here will help you explore the #NoEstimates universe in a very practical and hands-on manner. You will walk through Carmen's story. Carmen is a senior, very experienced project manager who is now confronted with a very difficult project. One would say, an impossible project. Through the book, and with the help of Herman, Carmen discovers and slowly adopts #NoEstimates which helps her turn that project around. Just like I expect it will help with the project you are in right now. The book also includes many concrete approaches you can use to adopt #NoEstimates, or just adopt those practices on their own.
The Guru's Guide to Transact-Sql
Ken Henderson - 2000
Beginners and intermediate developers will appreciate the comprehensive tutorial that walks step-by-step through building a real client/server database, from concept to deployment and beyond -- and points out key pitfalls to avoid throughout the process. Experienced users will appreciate the book's comprehensive coverage of the Transact-SQL language, from basic to advanced level; detailed ODBC database access information; expert coverage of concurrency control, and more. The book includes thorough, up-to-the-minute guidance on building multi-tier applications; SQL Server performance tuning; and other crucial issues for advanced developers. For all database developers, system administrators, and Web application developers who interact with databases in Microsoft-centric environments.
Python 3 Object Oriented Programming
Dusty Phillips - 2010
Many examples are taken from real-world projects. The book focuses on high-level design as well as the gritty details of the Python syntax. The provided exercises inspire the reader to think about his or her own code, rather than providing solved problems. If you're new to Object Oriented Programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply Object Oriented Programming in Python, this is the book for you. If you are an object-oriented programmer for other languages, you too will find this book a useful introduction to Python, as it uses terminology you are already familiar with. Python 2 programmers seeking a leg up in the new world of Python 3 will also find the book beneficial, and you need not necessarily know Python 2.