Reliable JavaScriptReliable JavaScript demonstrates how to create test-driven development for large-scale JavaScript applications that will stand the test of time and stay accurate through long-term use and maintenance. Taking a test-first approach to software architecture, this book walks you through several patterns and practices and explains what they are supposed to do by having you write unit tests. Write the code to pass the unit tests, so you not only develop your technique for structuring large-scale applications, but you also learn how to test your work. You'll come away with hands-on practice that results in code that is correct from the start, and has the test coverage to ensure that it stays correct during subsequent maintenance. All code is provided both in the text and on the web, so you can immediately get started designing more complete, robust applications.
JavaScript has graduated from field-validation scripts to full-scale applications, but many developers still approach their work ...
Agile Performance ImprovementAgile Performance Improvement demonstrates the mutual benefits that accrue to the worlds of performance consulting and agile software development when the values and principles of both are blended synergistically under the guidance of practitioners skilled in both. The agile performance improvement model blends the principles of human performance technology with the frameworks and practices of Agile. The result is an approach that maximizes the value of interactions among the consultant, the work team, and the customer. Unlike traditional end-to-end waterfall processes, agile performance improvement delivers value continuously and in small increments, relentlessly focusing on outcomes of value to the customer. Building on structures of Agile that are used in software development, such as Scrum, the agile performance improvement model considers the human component of holistic solutions in establishing a continuous stream of value. ...
Building a Home Security System with Raspberry PiThe Raspberry Pi is a powerful low-cost credit-card-sized computer, which lends itself perfectly as the controller for a sophisticated home security system. Using the on-board interfaces available, the Raspberry Pi can be expanded to allow the connection of a virtually infinite number of security sensors and devices. The Raspberry Pi has the processing power and interfaces available to build a sophisticated home security system but at a fraction of the cost of commercially available systems.
Building a Home Security System with Raspberry Pi starts off by showing you the Raspberry Pi and how to set up the Linux-based operating system. It then guides you through connecting switch sensors and LEDs to the native GPIO connector safely, and how to access them using simple Bash scripts. As you dive further in, you'll learn how to build an input/output expansion board using the I2C interface and power supply, allowing the connection of the large number of sensors needed for a typical home s ...
Building Business Websites with Squarespace 7This practical guide walks you through the various steps involved in building a website for your business with Squarespace. You will learn how to use all of the tools provided by Squarespace to control the layout, appearance, structure, and functions of your website, starting from the inception stage, all the way to monitoring your site after it has been launched.
This is much more than just a how-to book for the Squarespace system: it's filled with helpful advice that will help you improve your website's visibility in search engines and tailor your site for your customers. Moreover, it provides dozens of other business-oriented tips to help your website stand out from the crowd. If you have used Squarespace 5 or other website builders/CMSes, this book will help you understand the key differences and teach you how to do things based on the new features of Squarespace 7. ...
ArcGIS for JavaScript Developers by ExampleThe book starts by explaining the basics of the ArcGIS web mapping ecosystem. The book walks you through the development of six major applications, covering a wide variety of topics such as querying, rendering, advanced data visualization and performing map analytics. It also emphasizes on writing modular code using pure dojo, which is the preferred platform for developing web GIS applications using ArcGIS JavaScript API.
By the end of the book, you will have gained enough practical experience to architect a robust and visually powerful mapping application using the API. ...
Learning VMware App VolumesApp Volumes provides a virtualized, real-time application delivery engine for virtual desktop infrastructure and is designed to enable VDI deployments to ensure greater flexibility, agility, and cost reduction.
This book starts with an in-depth overview of the architecture and components used to design an optimized solution. We then show you how to install and configure App Volumes for different use cases such as VMware View integration, using VMware ThinApp, Citrix XenApp, and more.
Throughout the chapters, we provide hints, tips, and tricks as well as best practices. By the end of the book, you will have built a working App Volumes environment and acquired the skills to build and run a production environment. ...
Internet of Things with PythonInternet of Things (IoT) is revolutionizing the way devices/things interact with each other. And when you have IoT with Python on your side, you'll be able to build interactive objects and design them.
This book lets you stay at the forefront of cutting-edge research on IoT. We'll open up the possibilities using tools that enable you to interact with the world, such as Intel Galileo Gen 2, sensors, and other hardware. You will learn how to read, write, and convert digital values to generate analog output by programming Pulse Width Modulation (PWM) in Python. You will get familiar with the complex communication system included in the board, so you can interact with any shield, actuator, or sensor.
Later on, you will not only see how to work with data received from the sensors, but also perform actions by sending them to a specific shield. You'll be able to connect your IoT device to the entire world, by integrating WiFi, Bluetooth, and Internet settings. With everything ready, you ...
Mastering Linux Shell ScriptingShell scripting is a quick method to prototype a complex application or a problem by automating tasks when working on Linux-based systems. Using both simple one-line commands and command sequences complex problems can be solved with ease, from text processing to backing up sysadmin tools.
In this book, you'll discover everything you need to know to master shell scripting and make informed choices about the elements you employ. Get to grips with the fundamentals of creating and running a script in normal mode, and in debug mode. Learn about various conditional statements' code snippets, and realize the power of repetition and loops in your shell script. Implement functions and edit files using the Stream Editor, script in Perl, program in Python – as well as complete coverage of other scripting languages to ensure you can choose the best tool for your project. ...
The Web Startup Success GuideThe Web Startup Success Guide is your one-stop shop for all of the answers you need today to build a successful web startup in these challenging economic times. It covers everything from making the strategic platform decisions as to what kind of software to build, to understanding and winning the Angel and venture capital funding game, to the modern tools, apps and services that can cut months off development and marketing cycles, to how startups today are using social networks like Twitter and Facebook to create real excitement and connect to real customers. ...
Learning Behavior-driven Development with JavaScriptJavaScript is not only widely used to create attractive user interfaces for the Web, but with the advent of Node.js, it is also becoming a very popular and powerful language to write server-side applications. Using behavior-driven development and some common testing patterns and best practices, you will be able to avoid these traps.
This book will show you how to do BDD in a practical way. We will start with a basic introduction of what BDD is and why the classical approach to testing has failed. Afterwards, we will dive directly into an introduction to Node.js, Mocha, and Sinon.JS. Finally, we will cover more advanced subjects such as how to write a fast and effective test suite for a RESTful web API, and how to do the same with a rich UI using Cucumber.js and Protractor.
This book will give you great insight into how to architect your system to make it more testable and modular, but at the same time avoid the nightmare of abusing mock objects. ...