The Software Craftsman

The Software Craftsman

Author: Sandro Mancuso

Publisher: Pearson Education

Published: 2014-12-14

Total Pages: 285

ISBN-13: 0134052501

DOWNLOAD EBOOK

In The Software Craftsman, Sandro Mancuso explains what craftsmanship means to the developer and his or her organization, and shows how to live it every day in your real-world development environment. Mancuso shows how software craftsmanship fits with and helps students improve upon best-practice technical disciplines such as agile and lean, taking all development projects to the next level. Readers will learn how to change the disastrous perception that software developers are the same as factory workers, and that software projects can be run like factories.


Clean Code

Clean Code

Author: Robert C. Martin

Publisher: Pearson Education

Published: 2009

Total Pages: 464

ISBN-13: 0132350882

DOWNLOAD EBOOK

This title shows the process of cleaning code. Rather than just illustrating the end result, or just the starting and ending state, the author shows how several dozen seemingly small code changes can positively impact the performance and maintainability of an application code base.


Software Craftsmanship

Software Craftsmanship

Author: Pete McBreen

Publisher: Addison-Wesley Professional

Published: 2002

Total Pages: 214

ISBN-13: 9780201733860

DOWNLOAD EBOOK

This book introduces the author's collection of wisdom under one umbrella: Software Craftmanship. This approach is unique in that it spells out a programmer-centric way to build software. In other words, all the best computers, proven components, and most robust languages mean nothing if the programmer does not understand their craft.


Apprenticeship Patterns

Apprenticeship Patterns

Author: Dave Hoover

Publisher: "O'Reilly Media, Inc."

Published: 2009-10-02

Total Pages: 170

ISBN-13: 1449379400

DOWNLOAD EBOOK

Are you doing all you can to further your career as a software developer? With today's rapidly changing and ever-expanding technologies, being successful requires more than technical expertise. To grow professionally, you also need soft skills and effective learning techniques. Honing those skills is what this book is all about. Authors Dave Hoover and Adewale Oshineye have cataloged dozens of behavior patterns to help you perfect essential aspects of your craft. Compiled from years of research, many interviews, and feedback from O'Reilly's online forum, these patterns address difficult situations that programmers, administrators, and DBAs face every day. And it's not just about financial success. Apprenticeship Patterns also approaches software development as a means to personal fulfillment. Discover how this book can help you make the best of both your life and your career. Solutions to some common obstacles that this book explores in-depth include: Burned out at work? "Nurture Your Passion" by finding a pet project to rediscover the joy of problem solving. Feeling overwhelmed by new information? Re-explore familiar territory by building something you've built before, then use "Retreat into Competence" to move forward again. Stuck in your learning? Seek a team of experienced and talented developers with whom you can "Be the Worst" for a while. "Brilliant stuff! Reading this book was like being in a time machine that pulled me back to those key learning moments in my career as a professional software developer and, instead of having to learn best practices the hard way, I had a guru sitting on my shoulder guiding me every step towards master craftsmanship. I'll certainly be recommending this book to clients. I wish I had this book 14 years ago!"-Russ Miles, CEO, OpenCredo


Unit Testing Principles, Practices, and Patterns

Unit Testing Principles, Practices, and Patterns

Author: Vladimir Khorikov

Publisher: Simon and Schuster

Published: 2020-01-06

Total Pages: 460

ISBN-13: 1638350299

DOWNLOAD EBOOK

"This book is an indispensable resource." - Greg Wright, Kainos Software Ltd. Radically improve your testing practice and software quality with new testing styles, good patterns, and reliable automation. Key Features A practical and results-driven approach to unit testing Refine your existing unit tests by implementing modern best practices Learn the four pillars of a good unit test Safely automate your testing process to save time and money Spot which tests need refactoring, and which need to be deleted entirely Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About The Book Great testing practices maximize your project quality and delivery speed by identifying bad code early in the development process. Wrong tests will break your code, multiply bugs, and increase time and costs. You owe it to yourself—and your projects—to learn how to do excellent unit testing. Unit Testing Principles, Patterns and Practices teaches you to design and write tests that target key areas of your code including the domain model. In this clearly written guide, you learn to develop professional-quality tests and test suites and integrate testing throughout the application life cycle. As you adopt a testing mindset, you’ll be amazed at how better tests cause you to write better code. What You Will Learn Universal guidelines to assess any unit test Testing to identify and avoid anti-patterns Refactoring tests along with the production code Using integration tests to verify the whole system This Book Is Written For For readers who know the basics of unit testing. Examples are written in C# and can easily be applied to any language. About the Author Vladimir Khorikov is an author, blogger, and Microsoft MVP. He has mentored numerous teams on the ins and outs of unit testing. Table of Contents: PART 1 THE BIGGER PICTURE 1 ¦ The goal of unit testing 2 ¦ What is a unit test? 3 ¦ The anatomy of a unit test PART 2 MAKING YOUR TESTS WORK FOR YOU 4 ¦ The four pillars of a good unit test 5 ¦ Mocks and test fragility 6 ¦ Styles of unit testing 7 ¦ Refactoring toward valuable unit tests PART 3 INTEGRATION TESTING 8 ¦ Why integration testing? 9 ¦ Mocking best practices 10 ¦ Testing the database PART 4 UNIT TESTING ANTI-PATTERNS 11 ¦ Unit testing anti-patterns


Clean Craftsmanship

Clean Craftsmanship

Author: Robert C. Martin

Publisher: Addison-Wesley Professional

Published: 2021-09-16

Total Pages: 510

ISBN-13: 0136915833

DOWNLOAD EBOOK

How to Write Code You're Proud of . . . Every Single Day ". . . [A] timely and humble reminder of the ever-increasing complexity of our programmatic world and how we owe it to the legacy of humankind--and to ourselves--to practice ethical development. Take your time reading Clean Craftsmanship. . . . Keep this book on your go-to bookshelf. Let this book be your old friend--your Uncle Bob, your guide--as you make your way through this world with curiosity and courage." --From the Foreword by Stacia Heimgartner Viscardi, CST & Agile Mentor In Clean Craftsmanship, the legendary Robert C. Martin ("Uncle Bob") has written the principles that define the profession--and the craft--of software development. Uncle Bob brings together the disciplines, standards, and ethics you need to deliver robust, effective code and to be proud of all the software you write. Robert Martin, the best-selling author of Clean Code, provides a pragmatic, technical, and prescriptive guide to the foundational disciplines of software craftsmanship. He discusses standards, showing how the world's expectations of developers often differ from their own and helping you bring the two in sync. Bob concludes with the ethics of the programming profession, describing the fundamental promises all developers should make to their colleagues, their users, and, above all, themselves. With Uncle Bob's insights, all programmers and their managers can consistently deliver code that builds trust instead of undermining it--trust among users and throughout societies that depend on software for their survival. Moving towards the "north star" of true software craftsmanship: the state of knowing how to program well Practical, specific guidance for applying five core disciplines: test-driven development, refactoring, simple design, collaborative programming, and acceptance tests How developers and teams can promote productivity, quality, and courage The true meaning of integrity and teamwork among programmers, and ten specific commitments every software professional should make Register your book for convenient access to the book's companion videos, updates, and/or corrections as they become available. See inside book for details.


Coders at Work

Coders at Work

Author: Peter Seibel

Publisher: Apress

Published: 2009-12-21

Total Pages: 619

ISBN-13: 1430219491

DOWNLOAD EBOOK

Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words “at work” suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 15 folks who’ve been kind enough to agree to be interviewed: Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow Joe Armstrong: Inventor of Erlang Joshua Bloch: Author of the Java collections framework, now at Google Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger Douglas Crockford: JSON founder, JavaScript architect at Yahoo! L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1 Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal Dan Ingalls: Smalltalk implementor and designer Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler Donald Knuth: Author of The Art of Computer Programming and creator of TeX Peter Norvig: Director of Research at Google and author of the standard text on AI Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress Ken Thompson: Inventor of UNIX Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker


Code Complete

Code Complete

Author: Steve McConnell

Publisher: Pearson Education

Published: 2004-06-09

Total Pages: 952

ISBN-13: 0735636974

DOWNLOAD EBOOK

Widely considered one of the best practical guides to programming, Steve McConnell’s original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices—and hundreds of new code samples—illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking—and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor—or evolve—code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project


The Clean Coder

The Clean Coder

Author: Robert C. Martin

Publisher: Pearson Education

Published: 2011

Total Pages: 247

ISBN-13: 0137081073

DOWNLOAD EBOOK

Presents practical advice on the disciplines, techniques, tools, and practices of computer programming and how to approach software development with a sense of pride, honor, and self-respect.


Clean Agile

Clean Agile

Author: Robert C. Martin

Publisher: Prentice Hall

Published: 2019-09-12

Total Pages: 342

ISBN-13: 013578199X

DOWNLOAD EBOOK

Agile Values and Principles for a New Generation “In the journey to all things Agile, Uncle Bob has been there, done that, and has the both the t-shirt and the scars to show for it. This delightful book is part history, part personal stories, and all wisdom. If you want to understand what Agile is and how it came to be, this is the book for you.” –Grady Booch “Bob’s frustration colors every sentence of Clean Agile, but it’s a justified frustration. What is in the world of Agile development is nothing compared to what could be. This book is Bob’s perspective on what to focus on to get to that ‘what could be.’ And he’s been there, so it’s worth listening.” –Kent Beck “It’s good to read Uncle Bob’s take on Agile. Whether just beginning, or a seasoned Agilista, you would do well to read this book. I agree with almost all of it. It’s just some of the parts make me realize my own shortcomings, dammit. It made me double-check our code coverage (85.09%).” –Jon Kern Nearly twenty years after the Agile Manifesto was first presented, the legendary Robert C. Martin (“Uncle Bob”) reintroduces Agile values and principles for a new generation–programmers and nonprogrammers alike. Martin, author of Clean Code and other highly influential software development guides, was there at Agile’s founding. Now, in Clean Agile: Back to Basics, he strips away misunderstandings and distractions that over the years have made it harder to use Agile than was originally intended. Martin describes what Agile is in no uncertain terms: a small discipline that helps small teams manage small projects . . . with huge implications because every big project is comprised of many small projects. Drawing on his fifty years’ experience with projects of every conceivable type, he shows how Agile can help you bring true professionalism to software development. Get back to the basics–what Agile is, was, and should always be Understand the origins, and proper practice, of SCRUM Master essential business-facing Agile practices, from small releases and acceptance tests to whole-team communication Explore Agile team members’ relationships with each other, and with their product Rediscover indispensable Agile technical practices: TDD, refactoring, simple design, and pair programming Understand the central roles values and craftsmanship play in your Agile team’s success If you want Agile’s true benefits, there are no shortcuts: You need to do Agile right. Clean Agile: Back to Basics will show you how, whether you’re a developer, tester, manager, project manager, or customer. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.