How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
Jez Humble, David Farley
The step-by-step guide to going live with new software releases faster - reducing risk and delivering more value sooner! * *Fast, simple, repeatable techniques for deploying working code to production in hours or days, not months! *Crafting custom processes that get developers from idea to value faster than ever. *Best practices for everything from source code control to dependency management and in-production tracing. *Common obstacles to rapid release - and pragmatic solutions. In too many organizations, build, testing, and deployment processes can take six months or more. That's simply far too long for today's businesses. But it doesn't have to be that way. It's possible to deploy working code to production in hours or days after development work is complete - and Go Live presents comprehensive processes and techniques for doing so. Written by two of the world's most experienced software project leaders, this book demonstrates how to dramatically increase speed while reducing risk and improving code quality at the same time. The authors cover all facets of build, testing, and deployment, including: configuration management, source code control, release planning, auditing, compliance, integration, build automation, and more. They introduce a wide range of advanced techniques, including inproduction monitoring and tracing, dependency management, and the effective use of virtualization. For each area, they explain the issues, show how to mitigate the risks, and present best practices. Throughout, Go Live focuses on powerful opportunities for individual improvement, clearly and simply explaining skills and techniques so they can be used every day on real projects. With this book's help, any development organization can move from idea to release faster -- and deliver far more value, far more rapidly.
MSBuild is more than just a list of source files; it is a declarative programming language, and with the new features in the .Net 4.0 engine, a rather expressive language to boot. This book explores the Microsoft Build Engine used by C#, VB.Net, F# and C++ projects-the 4.0 version shipped with Visual Studio 2010-in depth and in a very practical way, full of examples not covered in the reference material (or in the other book on MSBuild). Inside you'll find: How to unify all your projects How to add help to your build How to simulate loops and data joins How to use inline C# code in project files How to enhance logging ...and over 90 additional tips and tricks, and including some extensive walkthroughs of more advanced topics, like dealing with huge projects and rolling your own tool integrations right in the IDE. You can further explore the content with code samples on the Web. So if you've ever found yourself wondering how to get MSBuild to... Perform some simple arithmetic, or a string replacement (see trick #9) Find a subset of files using a complex expression (see trick #11) Specify the folder where MSBuild.exe resides (see trick #6) Fail the build when your custom task shows an error but the build still succeeds (see trick #2) Get you a list of all the referenced assemblies in your project (see trick #72) Get Visual Studio to stop ignoring your customizations (see trick #82) Search for your customizations, without having to hardcode paths (see trick #16) Allow almost any property to be tweaked (see trick #45) Do something that seems too complex for AfterBuild (see trick #23) Extract the branch name from a path (see trick #99) And don't be put off if you're brand new to MSBuild. If you've ever so much as peeked at the XML in a C# project file, you'll be well served by this book. You'll start from first principals and the most basic mechanisms of MSBuild and the structure of an MSBuild file will be explained. Each trick is small and digestible and presented in a way that you can try out new techniques with just a few lines of MSBuild in a text file. Most of the tricks are things you can copy directly into your own build files and use that day. While many of the tricks stand on their own, the more complex ones are broken down and presented in sequences that progressively build on one another. You won't need any other book on MSBuild! But if you happen to have the other one, MSBuild Trickery will take you far beyond a reference book, providing practical guidance and preparing you for all of those truly unique gotchas that appear when the build runs. With a foreword by Dan Moseley, Microsoft Senior Development Lead for Visual Studio Project & Build.
Managing builds is crucial to the profitable delivery of high-quality software; however, the build process has been one of the least-understood stages of the entire development lifecycle. Now, one of Microsoft's leading software build experts introduces step-by-step best practices for maximizing the reliability, effectiveness, timeliness, quality, and security of every build you create.
The GNU Autotools make it easy for developers to create software that is portable across many UNIX-like operating systems. Thousands of open source software packages use the Autotools, but the learning curve is unfortunately steep, and it can be difficult for a beginner to find anything more than basic reference material on using the powerful software suite. InAutotools, author John Calcote begins with an overview of high-level concepts; then tackles more advanced topics, like using the M4 macro processor with Autoconf, extending the Automake framework, and building Java and C# sources. You'll learn how to: Master the Autotools build system to maximize your software's portability Generate Autoconf configuration scripts to simplify the compilation process Produce portable makefiles with Automake Build cross-platform software libraries with Libtool Write your own Autoconf macros Autotoolsalso includes a variety of complete projects that you're encouraged to work through to gain a real-world sense of how to become an Autotools practitioner. For example, you'll turn the FLAIM and Jupiter projects' hand-coded, makefile-based build systems into a powerful Autotools-based build system.