Growing Object-Oriented Software, Guided by Tests
Steve Freeman - 2009
This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this simple idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and "grow" software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you'll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD--from integrating TDD into your processes to testing your most difficult features. Coverage includes - Implementing TDD effectively: getting started, and maintaining your momentum throughout the project - Creating cleaner, more expressive, more sustainable code - Using tests to stay relentlessly focused on sustaining quality - Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project - Using Mock Objects to guide object-oriented designs - Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency
Learning PHP 5
David Sklar - 2004
Offering a gentle learning curve, PHP is an accessible yet powerful language for creating dynamic web pages. As its popularity has grown, PHP's basic feature set has become increasingly more sophisticated. Now PHP 5 boasts advanced features--such as new object-oriented capabilities and support for XML and Web Services--that will please even the most experienced web professionals while still remaining user-friendly enough for those with a lower tolerance for technical jargon.If you've wanted to try your hand at PHP but haven't known where to start, then Learning PHP 5 is the book you need. If you've wanted to try your hand at PHP but haven't known where to start, then Learning PHP 5 is the book you need. With attention to both PHP 4 and the new PHP version 5, it provides everything from a explanation of how PHP works with your web server and web browser to the ins and outs of working with databases and HTML forms. Written by the co-author of the popular PHP Cookbook, this book is for intelligent (but not necessarily highly-technical) readers. Learning PHP 5 guides you through every aspect of the language you'll need to master for professional web programming results. This book provides a hands-on learning experience complete with exercises to make sure the lessons stick.Learning PHP 5 covers the following topics, and more:How PHP works with your web browser and web server PHP language basics, including data, variables, logic and looping Working with arrays and functions Making web forms Working with databases like MySQL Remembering users with sessions Parsing and generating XML DebuggingWritten by David Sklar, coauthor of the PHP Cookbook and an instructor in PHP, this book offers the ideal classroom learning experience whether you're in a classroom or on your own. From learning how to install PHP to designing database-backed web applications, Learning PHP 5 will guide you through every aspect of the language you'll need to master to achieve professional web programming results.
The Forensic Casebook: The Science of Crime Scene Investigation
Ngaire E. Genge - 2002
. . A forensic entomologist discovers insects in the grill of a car and nails down a drug dealer’s precise geographical path . . . A gluttonous criminal’s fingerprints are lifted from a chocolate truffle. . . . Filled with these and many other intriguing true stories, and packed with black and white illustrations and photographs, The Forensic Casebook draws on interviews with police personnel and forensic scientists—including animal examiners, botanists, zoologists, firearms specialists, and autoposists—to uncover the vast and detailed underworkings of criminal investigation. Encyclopedic in scope, this riveting, authoritative book leaves no aspect of forensic science untouched, covering such fascinating topics as:• Securing a crime scene• Identifying blood splatter patterns• Collecting fingerprints—and feet, lip, and ear prints• Interpreting the stages of a body’s decay• Examining hair and fiber evidence• Trace evidence from firearms and explosives• “Lifting” DNA prints• Computer crime and forensic photography• Career paths in criminal scienceLucidly written and spiked with real crime stories, The Forensic Casebook exposes the nitty gritty that other books only touch upon. Here is a reference book as addictive as a page-turning novel of suspense.
Numbers Don't Lie: 71 Things You Need to Know About the World
Vaclav Smil - 2020
There's a wonderful mix of science, history and wit, all in bite-sized chapters on a broad range of topics.Urgent and essential, Numbers Don't Lie inspires readers to interrogate what they take to be true in these significant times. Smil is on a mission to make facts matter, because after all, numbers may not lie, but which truth do they convey?'The best book to read to better understand our world. Once in a while a book comes along that helps us see our planet more clearly. By showing us numbers about science, health, green technology and more, Smil's book does just that. It should be on every bookshelf!' Linda Yueh, author of The Great Economists'He is rigorously numeric, using data to illuminate every topic he writes about. The word "polymath" was invented to describe people like him' Bill Gates 'Important' Mark Zuckerberg, on Energy 'One of the world's foremost thinkers on development history and a master of statistical analysis . . . The nerd's nerd' Guardian 'There is perhaps no other academic who paints pictures with numbers like Smil' Guardian 'In a world of specialized intellectuals, Smil is an ambitious and astonishing polymath who swings for fences . . . They're among the most data-heavy books you'll find, with a remarkable way of framing basic facts' Wired 'He's a slayer of bullshit' David Keith, Gordon McKay Professor of Applied Physics & Professor of Public Policy, Harvard UniversityVaclav Smil is Distinguished Professor Emeritus at the University of Manitoba. He is the author of over forty books on topics including energy, environmental and population change, food production and nutrition, technical innovation, risk assessment and public policy. No other living scientist has had more books (on a wide variety of topics) reviewed in Nature. A Fellow of the Royal Society of Canada, in 2010 he was named by Foreign Policy as one of the Top 100 Global Thinkers. This is his first book for a more general readership.
This Is How They Tell Me the World Ends: The Cyberweapons Arms Race
Nicole Perlroth - 2021
One of the most coveted tools in a spy's arsenal, a zero day has the power to silently spy on your iPhone, dismantle the safety controls at a chemical plant, alter an election, and shut down the electric grid (just ask Ukraine).For decades, under cover of classification levels and non-disclosure agreements, the United States government became the world's dominant hoarder of zero days. U.S. government agents paid top dollar-first thousands, and later millions of dollars- to hackers willing to sell their lock-picking code and their silence. Then the United States lost control of its hoard and the market. Now those zero days are in the hands of hostile nations and mercenaries who do not care if your vote goes missing, your clean water is contaminated, or our nuclear plants melt down.Filled with spies, hackers, arms dealers, and a few unsung heroes, written like a thriller and a reference, This Is How They Tell Me the World Ends is an astonishing feat of journalism. Based on years of reporting and hundreds of interviews, The New York Times reporter Nicole Perlroth lifts the curtain on a market in shadow, revealing the urgent threat faced by us all if we cannot bring the global cyber arms race to heel.
Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency
Tom DeMarco - 2001
That principle is the value of slack, the degree of freedom in a company that allows it to change. Implementing slack could be as simple as adding an assistant to a department and letting high-priced talent spend less time at the photocopier and more time making key decisions, or it could mean designing workloads that allow people room to think, innovate, and reinvent themselves. It means embracing risk, eliminating fear, and knowing when to go slow. Slack allows for change, fosters creativity, promotes quality, and, above all, produces growth. With an approach that works for new- and old-economy companies alike, this revolutionary handbook debunks commonly held assumptions about real-world management, and gives you and your company a brand-new model for achieving and maintaining true effectiveness.
Wordpress for Beginners - A Visual Step-by-Step Guide to Creating your Own Wordpress Site in Record Time, Starting from Zero! (Webmaster Series)
Andy Williams - 2012
Not any more. Wordpress makes it possible for anyone to create and run a professional looking website.While Wordpress is an amazing tool, the truth is it does have a steep learning curve, even if you have built websites before. Therefore, the goal of this book is to take anyone, even a complete beginner and get them building a professional looking website. I'll hold your hand, step-by-step, all the way. As I was planning this book, I made one decision early on. I wanted to use screenshots of everything, so the reader wasn't left looking for something on their screen that I was describing in text. This book has screenshots. I haven't counted them all, but it must be close to 300. These screenshots will help you find the things I am talking about. They'll help you check your settings and options against the screenshot of mine. No more doubt, no more wondering if you have it correct. Look, compare and move on to the next section.With so many screenshots, you may be worried that the text might be a little on the skimpy side. No need to worry there. I have described in the minutest detail, every step on your journey to a great looking website. In all, this book has over 35,000 words. This book will cut your learning curve associated with WordpressEvery chapter of the book ends with a "Tasks to Complete" section. By completing these tasks, you'll not only become proficient at using Wordpress, you'll become confident & enjoy using Wordpress.
The Design of Everyday Things
Donald A. Norman - 1988
It could forever change how you experience and interact with your physical surroundings, open your eyes to the perversity of bad design and the desirability of good design, and raise your expectations about how things should be designed.B & W photographs and illustrations throughout.
More Programming Pearls: Confessions of a Coder
Jon L. Bentley - 1988
These techniques deal with real programs and they are realistically illustrated, using the C and Awk languages. Bentley also provides the reader with some tricks of the programmer's trade, like a collection of rules of thumb and hints for finding simple solutions to hard problems.These essays also originally appeared in the author's column in Communication of the ACM, and have been substantially revised, incorporating new sections, problems, and reader comments.
Coders at Work: Reflections on the Craft of Programming
Peter Seibel - 2009
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: http://www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 16 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 hackerWhat you’ll learn:How the best programmers in the world do their jobWho is this book for?Programmers interested in the point of view of leaders in the field. Programmers looking for approaches that work for some of these outstanding programmers.
Code Complete
Steve McConnell - 1993
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
Artificial Intelligence and Intelligent Systems
N.P. Padhy - 2005
The focus of this text is to solve real-world problems using the latest AI techniques. Intelligent systems like expert systems, fuzzy systems, artificial neural networks, genetic algorithms and ant colony systems are discussed in detail with case studies to facilitate in- depth understanding. Since the ultimate goal of AI is the construction of programs to solve problems, an entire chapter has been devoted to the programming languages used in AI problem solving. The theory is well supported by a large number of illustrations and end-chapter exercises. With its comprehensive coverage of the subject in a clear and concise manner this text would be extremely useful not only for undergraduate students, but also to postgraduate students.
Power-Up: How Japanese Video Games Gave the World an Extra Life
Chris Kohler - 2004
Just some of the features readers will find in this book include:Profiles of some of the most fascinating Japanese video game designers in the industry, along with a critical look at Japanese video games from their earliest beginnings to new, exciting trends that ride the bleeding edge of popular culture.Explanations on why Japanese video games are unique and why they resonate so well with young American players.Fresh insight into classic Japanese video games and the elements that made them so different from American games, the origin of Nintendo, Japan's oldest and largest video game producer, Japanese Role-Playing Games, and much more!In addition, the future of the Japanese gaming industry is also explored.This product is available for sale worldwide.
How To Start A Profitable Authority Blog In Under One Hour: Write About What You Love, Create A Website, And Make Money
Passive Marketing - 2015
6 months later, his first blog was earning more than his retail job which he decided to quit and focus on blogging.These results are not typical, but this book will go over the complete steps to setting up a profitable authority site which you can use to creating your first website and earning supplemental income.*Who was this book written for?*This book is written for people who are looking to start blogging and those people looking to create a website. It will also be helpful to those who are already blogging but not making money from their efforts.*Who this book is not for:*If you are looking to start a website and get rich overnight, look elsewhere. You will need to be dedicated and work hard to achieve desirable results.While this book gives valuable information to those who are already making money blogging, if you making thousands of dollars a month, it was not written for you and might move a bit slow.*Topics covered in this book:*•Who Am I?•Step 1: Picking A Niche•Step 2: Keyword Research•Step 3: Setting Up Your First Website•Step 4: Writing Content For Your Website•Step 5: Collecting Emails•Step 6: Content Promotion]You will learn how these 6 steps to starting a blog can be done in under an hour while learning about the basics of blogging in WordPress. You will also get access to the exact tools that are used every day by websites across the world.Learn how to start your blog today, get started, and within the next 60 minutes, you should have a fully functioning website. This is the most comprehensive book about how you can start a blog which will hold your hand every step of the way.
The God Formula: A simple scientifically proven blueprint that has transformed millions of lives (The Path of Freedom Series)
Jeffery A. Martin - 2011
The research (conducted by the Center for the Study of Intent) uncovered a new dimension of human development and has revolutionized the way personal growth, meaning, happiness, and ultimately advanced spiritual topics such as ‘enlightenment’ are understood. The results, if you let them, will transform the quality of your life in ways you currently cannot even imagine as possible. During the research a formula was uncovered that is so effective at producing what seems like miracles in people’s lives it began to be referred to as the “God Formula” among participants and researchers. This book outlines that formula, and is the final version of the highly successful training material that was used with research participants. These researchers became the first scientists to successfully experiment with this new developmental continuum. The result has been the discovery of a series of techniques that lead from everyday consciousness to increased daily happiness and satisfaction, and finally to enlightenment and beyond (yes, there is a beyond!). This book covers the first stages of this process. You can view a summary of the results from the research phase that related to it, and later ones at: CenterForIntent.org/freedom. This book covers three primary components that combine to form a complete system of person growth, and an assortment of techniques for each component. While it provides the components, how they need to come together for maximum effectiveness will be unique to you. You’ll need to experiment with various combinations of these techniques until you find the one that works best for you. This may sound unusual. You’re probably used to reading books where the authors assert they have the one answer for everyone. The researchers at the Center tested an enormous number of techniques but didn’t find a single one that was helpful to more than a handful of individuals…when it was beneficial for anyone at all. However, they learned that there are a relatively small number of techniques that can be combined in ways that are incredibly effective. You just have to find the unique combination of these techniques that works for you right now. This book provides the distilled down wisdom from all of that testing. They were able to successfully identify core components from the methods that proved themselves. However, no one can tell you how to combine those components to get them to work best for you. People are simply too different for that to be possible. So, you’ll have to join the team, be your own scientist, and experiment! The good news is that the researchers spent an enormous amount of time and money narrowing down the possibilities for you. Most of the research participants were able to use this book to find the combination that worked for them quite quickly. It is likely the same will be true for you.It’s important that you not take the information this book contains lightly. Unlike other personal growth and self help books, this one is driven by a vast amount of actual research into what works. It was revised continually based on research participant feedback, so it’s very simple and easy to understand and use. But don’t let this simplicity fool you. Every line is there for a reason. This material has changed a lot of lives, if you’ll let it…yours can be next.