Effective Unit Testing


Lasse Koskela - 2012
    Savvy Java developers know that not all testing is created equal. In addition to traditional functional testing, many shops are adopting developer testing techniques such as unit testing. Specific, automated tests are created to verify the accuracy and function of code while or even before it's written - to catch bugs early.Unit Testing in Java teaches how to write good tests that are concise and to the point, useful, and maintainable. This book focuses on tools and practices specific to Java. It introduces emerging techniques like specification by example and behavior-driven development, and shows how to add robust practices into developers' toolkits.Table of ContentsI. FOUNDATIONS1. The promise of good tests2. In search of good3. Test doublesII. CATALOG4. Readability5. Maintainability6. TrustworthinessIII. DIVERSIONS7. Testable design8. Writing tests in other JVM languages9. Speeding up test executionsAppendix A: JUnit primerAppendix B: Extending JUnitIndex

Japan


David Murray - 1894
    In Toscanelli's map, used by Columbus as the basis of his voyages, “Cipango” occupies a prominent place to the east of Asia, with no American continent between it and Europe. It was the aim of Columbus, and of many subsequent explorers, to find a route to this reputedly rich island and to the eastern shores of Asia. The latitude of the most northern point of Yezo is 45° 35', and the latitude of the most southern point of Kyushu is 31°. The longitude of the most eastern point of Yezo is 146° 17', and the longitude of the most western point of Kyushu is 130° 31'. The four principal islands therefore extend through 14° 35' of latitude and 15° 46' of longitude. The empire consists of four large islands and not less than three thousand small ones. Some of these small islands are large enough to constitute distinct provinces, but the greater part are too small to have a separate political existence, and are attached for administrative purposes to the parts of the large islands opposite to which they lie. The principal island is situated between Yezo on the north and Kyushu on the south. From Omasaki, the northern extremity at the Tsugaru straits, to Tokyo, the capital, the island runs nearly north and south a distance of about 590 miles, and from Tokyo to the Shimonoseki straits the greatest extension of the island is nearly east and west, a distance of about 540 miles. That is, measuring in the direction of the greatest extension, the island is about 1130 miles long. The width of the island is nowhere greater than two hundred miles and for much of its length not more than one hundred miles. The second largest island is Yezo, lying northeast from the Main island and separated from it by the Tsugaru straits. Its longest line is from Cape Shiretoko at its northeast extremity to Cape Shira-kami on Tsugaru straits, about 350 miles; and from its northern point, Cape Soya on the La Perouse straits to Yerimosaki, it measures about 270 miles. The centre of the island is an elevated peak, from which rivers flow in all directions to the ocean. Hakodate the principal port is situated on Tsugaru straits and possesses one of the most commodious harbors of the empire

Science Research Writing for Non-Native Speakers of English


Hilary Glasman-Deal - 2009
    It can also be used by English speakers and is a practical, user-friendly book intended as a fast, do-it-yourself guide for those whose English language proficiency is above intermediate. The approach is based on material developed from teaching graduate students at Imperial College London and has been extensively piloted. The book guides the reader through the process of writing science research and will also help with writing a Master's or Doctoral thesis in English.Science writing is much easier than it looks because the structure and language are conventional. The aim of this book is to help the reader discover a template or model for science research writing and then to provide the grammar and vocabulary tools needed to operate that model. There are five units: Introduction, Methodology, Results, Discussion/Conclusion and Abstract. The reader develops a model for each section of the research article through sample texts and exercises; this is followed by a Grammar and Writing Skills section designed to respond to frequently-asked questions as well as a Vocabulary list including examples of how the words and phrases are to be used.

Head First Ajax: A Brain-Friendly Guide


Rebecca M. Riordan - 2008
    Head First Ajax gives you an up-to-date perspective that lets you see exactly what you can do--and has been done--with Ajax. With it, you get a highly practical, in-depth, and mature view of what is now a mature development approach. Using the unique and highly effective visual format that has turned Head First titles into runaway bestsellers, this book offers a big picture overview to introduce Ajax, and then explores the use of individual Ajax components--including the JavaScript event model, DOM, XML, JSON, and more--as it progresses. You'll find plenty of sample applications that illustrate the concepts, along with exercises, quizzes, and other interactive features to help you retain what you've learned.Head First Ajax covers:The JavaScript event modelMaking Ajax requests with XMLHTTPREQUEST objectsThe asynchronous application modelThe Document Object Model (DOM)Manipulating the DOM in JavaScriptControlling the browser with the Browser Object ModelXHTML FormsPOST RequestsXML Syntax and the XML DOM treeXML Requests & ResponsesJSON -- an alternative to XMLAjax architecture & patternsThe Prototype LibraryThe book also discusses the server-side implications of building Ajax applications, and uses a black box approach to server-side components.Head First Ajax is the ideal guide for experienced web developers comfortable with scripting--particularly those who have completed the exercises in Head First JavaScript--and for experienced programmers in Java, PHP, and C# who want to learn client-side programming.

bash Pocket Reference


Arnold Robbins - 2010
    Updated for the most recent version of bash, this concise little book puts all of the essential information about bash at your fingertips. You'll quickly find answers to annoying questions that always come up when you're writing shell scripts -- What characters do you need to quote? How do you get variable substitution to do exactly what you want? How do you use arrays? -- and much more.If you're a user or programmer of any Unix variant, or if you're using bash on Windows, you'll find this pocket reference indispensable. This book covers:Invoking the ShellSyntaxFunctionsVariablesArithmetic ExpressionsCommand HistoryProgrammable CompletionJob ControlShell OptionsCommand ExecutionCoprocessesRestricted ShellsBuilt-in Commands

Alice in Quantumland: An Allegory of Quantum Physics


Robert Gilmore - 1994
    Through the allegory of Alice's adventures and encounters, Gilmore makes the essential features of the quantum world clear and accessible. It is a thrilling introduction to some essential, often difficult-to-grasp concepts about the world we inhabit.

Test-Driven JavaScript Development


Christian Johansen - 2010
     Test-Driven JavaScript Development is a complete, best-practice guide to agile JavaScript testing and quality assurance with the test-driven development (TDD) methodology. Leading agile JavaScript developer Christian Johansen covers all aspects of applying state-of-the-art automated testing in JavaScript environments, walking readers through the entire development lifecycle, from project launch to application deployment, and beyond.Using real-life examples driven by unit tests, Johansen shows how to use TDD to gain greater confidence in your code base, so you can fearlessly refactor and build more robust, maintainable, and reliable JavaScript code at lower cost. Throughout, he addresses crucial issues ranging from code design to performance optimization, offering realistic solutions for developers, QA specialists, and testers.Coverage includes - Understanding automated testing and TDD - Building effective automated testing workflows - Testing code for both browsers and servers (using Node.js) - Using TDD to build cleaner APIs, better modularized code, and more robust software - Writing testable code - Using test stubs and mocks to test units in isolation - Continuously improving code through refactoring - Walking through the construction and automated testing of fully functional softwareThe accompanying Web site, tddjs.com, contains all of the book's code listings and additional resources.

100 Ideas for Secondary Teachers: Outstanding Lessons


Ross Morrison McGill - 2013
    However, the integrity of an outstanding lesson will always be the same and this book attempts to bottle that formula so that you can recreate it time and time again.In his first book, Twitter phenomenon and outstanding teacher, Ross Morrison McGill provides a bank of inspirational ideas that can be picked up five minutes before your lesson starts and put into practice just as they are, or embedded into your day-to-day teaching to make every lesson an outstanding lesson! In his light-hearted and enthusiastic manner Ross guides you through the ideas he uses on a daily basis for managing behaviour, lesson planning, homework, assessment and all round outstanding teaching. Whether you are an experienced teacher or someone who has little practical teaching experience, there are ideas in this book that will change the way you think about your lessons.Ideas include: Snappy starters, Open classroom, Smiley faces, Student-led homework, Monday morning mantra and the popular five minute lesson plan.The 100 ideas series offers busy secondary teachers easy to implement, practical strategies and activities to improve and inspire their classroom practice. The bestselling series has been relaunched with a brand new look, including a new accessible dip in and out layout. Features include: Teachers tips, Taking it further tips, Quotes from the Ofsted framework and teachers, Bonus ideas, Hashtags and online resouces.

Speccy Nation


Dan Whitehead - 2012
    The British games industry would go on to create such hits as Tomb Raider and Grand Theft Auto, our innovation and imagination the envy of the world, our programmers the most sought after talent in the fastest growing entertainment medium in history.And it all started here.Welcome to the Speccy Nation.Join veteran games journalist and author Dan Whitehead on a journey through fifty games that helped to define the golden age of British gaming. From the timeless classics to unlikely cult favourites, and even the games so eccentric they could only have come from Britain in the 1980s.Part nostalgic look at the past, and part critical eye on the present and future, Speccy Nation is essential reading for all retro gaming enthusiasts.Includes a foreword by Your Sinclair's Phil "Snouty" South.

The Year of Sharing


Harry Gilbert - 1995
    Written for Learners of English by Harry GilbertRichard is bored with the quiet life of his village. He would like to have a motor-car and drive it . . . very fast. But Richard lives in a future world where there are no cars, only bicycles and small villages and green forests.And now he is twelve years old, and like the other children, he must do his Year of Sharing. He must live alone in the forest with the wild animals. He must learn to share his world; he must learn how animals live and eat and fight . . . and die.

Fundamentals of Computers


V. Rajaraman - 2011
    

Hacking Electronics: An Illustrated DIY Guide for Makers and Hobbyists: An Illustrated DIY Guide for Makers and Hobbyists


Simon Monk - 2012
    Packed with full-color illustrations, photos, and diagrams, Hacking Electronics teaches by doing--each topic features fun, easy-to-follow projects. Discover how to hack sensors, accelerometers, remote controllers, ultrasonic rangefinders, motors, stereo equipment, microphones, and FM transmitters. The final chapter contains useful information on getting the most out of cheap or free bench and software tools. Safely solder, join wires, and connect switches Identify components and read schematic diagrams Understand the how and why of electronics theory Work with transistors, LEDs, and laser diode modules Power your devices with a/c supplies, batteries, or solar panels Get up and running on Arduino boards and pre-made modules Use sensors to detect everything from noxious gas to acceleration Build and modify audio amps, microphones, and transmitters Fix gadgets and scavenge useful parts from dead equipment

API Design for C++


Martin Reddy - 1996
    It is the only book that teaches the strategies of C++ API development, including interface design, versioning, scripting, and plug-in extensibility. Drawing from the author's experience on large scale, collaborative software projects, the text offers practical techniques of API design that produce robust code for the long term. It presents patterns and practices that provide real value to individual developers as well as organizations.API Design for C++ explores often overlooked issues, both technical and non-technical, contributing to successful design decisions that product high quality, robust, and long-lived APIs. It focuses on various API styles and patterns that will allow you to produce elegant and durable libraries. A discussion on testing strategies concentrates on automated API testing techniques rather than attempting to include end-user application testing techniques such as GUI testing, system testing, or manual testing. Each concept is illustrated with extensive C++ code examples, and fully functional examples and working source code for experimentation are available online.This book will be helpful to new programmers who understand the fundamentals of C++ and who want to advance their design skills, as well as to senior engineers and software architects seeking to gain new expertise to complement their existing talents. Three specific groups of readers are targeted: practicing software engineers and architects, technical managers, and students and educators.

VMware vSphere 5 Clustering Technical Deepdive


Frank Denneman - 2011
    It covers the basic steps needed to create a vSphere HA and vSphere DRS cluster and to implement vSphere Storage DRS. Even more important, it explains the concepts and mechanisms behind HA, DRS and Storage DRS which will enable you to make well educated decisions. This book will take you in to the trenches of HA, DRS and Storage DRS and will give you the tools to understand and implement e.g. HA admission control policies, DRS resource pools, Datastore Clusters and resource allocation settings. On top of that each section contains basic design principles that can be used for designing, implementing or improving VMware infrastructures and fundamental supporting features like (Storage) vMotion, Storage I/O Control and much more are described in detail for the very first time. This book is also the ultimate guide to be prepared for any HA, DRS or Storage DRS related question or case study that might be presented during VMware VCDX, VCP and or VCAP exams.Coverage includes: HA node types HA isolation detection and response HA admission control VM Monitoring HA and DRS integration DRS imbalance algorithm Resource Pools Impact of reservations and limits CPU Resource Scheduling Memory Scheduler DPM Datastore Clusters Storage DRS algorithm Influencing SDRS recommendationsBe prepared to dive deep!

Guerrilla Home Recording: How to Get Great Sound from Any Studio {No Matter How Weird or Cheap Your Gear Is}


Karl Coryat - 2004
    The revised edition is updated with a greater focus on digital recording techniques, the most powerful tools available to the home recordist. There are chapters devoted to instrument recording, humanizing drum patterns, mixing with plug-ins and virtual consoles, and a new section on using digital audio skills. And since, many true "Guerrillas" still record to analog tape, we have retained the best of that world. This edition features many more graphics than in the original edition, further enforcing Guerrilla Home Recording's reputation as the most readable, user-frienly recording title on the market.