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 ...
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. ...
SQL: A Beginner's Guide, 3rd EditionWritten to the SQL:2006 ANSI/ISO standard, this easy-to-follow guide will get you started programming in SQL right away. You will learn how to retrieve, insert, update, and delete database data, and perform management and administrative functions. SQL: A Beginner's Guide, Third Edition covers new features, including SQL/XML, and is loaded with updated SQL examples along with notes on using them with the latest RDBMS software versions such as MySQL 5.0, SQL Server 2008, and Oracle Database 11g. ...
Automation through Chef OpscodeAutomation through Chef Opscode provides an in-depth understanding of Chef, which is written in Ruby and Erlang for configuration management, cloud infrastructure management, system administration, and network management.
Targeted at administrators, consultants, and architect, the book guides them through the advanced features of the tool which are necessary for infrastructure automation, devops automation, and reporting. The book presumes knowledge of Ruby and Erlang which are used as reference languages for creating recipes and cookbooks and as a refresher on them to help the reader get on speed with the flow of book.
The book provides step by step instructions on installation and configuration of Chef, usage scenarios of Chef, in infrastructure automation by providing common scenarios like virtual machine provisioning, OS configuration for Windows, Linux, and Unix, provisioning and configuration of web servers like Apache along with popular databases like MySQL. ...
Pro Single Page Application DevelopmentOne of the most important and exciting trends in web development in recent years is the move towards single page applications, or SPAs. Instead of clicking through hyperlinks and waiting for each page to load, the user loads a site once and all the interactivity is handled fluidly by a rich JavaScript front end. If you come from a background in ASP.NET development, you'll be used to handling most interactions on the server side. Pro Single Page Application Development will guide you through your transition to this powerful new application type.
SPA development also comes with its own particular challenges, including tracking history, user interface performance, and how to handle search engine optimization. In the final chapters, the authors guide you through some of these issues and advanced techniques and finish by showing you how to deploy your application. ...
Learn Raspberry Pi Programming with PythonLearn Raspberry Pi Programming with Python will show you how to program your nifty new $35 computer to make a web spider, a weather station, a media server, and more. You'll learn how to program in Python on your Raspberry Pi with hands-on examples and fun projects.
Even if you're completely new to programming in general, you'll figure out how to create a home security system, an underwater photography system, an RC plane with a camera, and even a near-space weather balloon with a camera.
You'll learn how to make a variety of fun and even useful projects, from a web bot to search and download files to a toy to drive your pets insane. You'll even learn how to use Pi with Arduino as well as Pi with Gertboard, an expansion board with an onboard ATmega microcontroller. ...
Beginning T-SQL, 3rd EditionBeginning T-SQL is a performance-oriented introduction to the T-SQL language underlying the Microsoft SQL Server database engine. T-SQL is essential in writing SQL statements to get data into and out of a database. T-SQL is the foundation for business logic embedded in the database in the form of stored procedures and functions. Beginning T-SQL starts you on the path to mastering T-SQL, with an emphasis on best-practices and sound coding techniques leading to excellent performance. This new edition is updated to cover the essential features of T-SQL found in SQL Server 2014, 2012, and 2008.
Beginning T-SQL begins with an introduction to databases, normalization, and to SQL Server Management Studio. Attention is given to Azure SQL Database and how to connect to remote databases in the cloud. ...
Mastering the Raspberry PiYou probably already know that the Raspberry Pi is an excellent teaching tool. If you want to teach Linux basics or Python programming or basic electronics, it's a great place to start. But what if you are an electronics engineer or a Linux systems administrator or a very experienced maker? You want to know all of the details and inner working of the Raspberry Pi -- how to (figuratively or maybe even literally) make it get up and dance without wading through basics and introductory material.
If you want to get right into the pro-level guts of the Raspberry Pi, complete with schematics, detailed hardware explanations, messing around with runlevels, reporting voltages and temperatures, and recompiling the kernel, then Mastering the Raspberry Pi is just the book you need. Along with all of the thorough explanations of hardware and operating system, you'll also get a variety of project examples and explanations that you can tune for your own project ideas. ...
Energy Efficient ServersEnergy Efficient Servers: Blueprints for Data Center Optimization introduces engineers and IT professionals to the power management technologies and techniques used in energy efficient servers. The book includes a deep examination of different features used in processors, memory, interconnects, I/O devices, and other platform components. It outlines the power and performance impact of these features and the role firmware and software play in initialization and control. Using examples from cloud, HPC, and enterprise environments, the book demonstrates how various power management technologies are utilized across a range of server utilization. It teaches the reader how to monitor, analyze, and optimize their environment to best suit their needs. It shares optimization techniques used by data center administrators and system optimization experts at the world's most advanced data centers. ...
Expert F# 4.0, 4th EditionLearn from F#'s inventor to become an expert in the latest version of this powerful programming language so you can seamlessly integrate functional, imperative, object-oriented, and query programming style flexibly and elegantly to solve any programming problem. Expert F# 4.0 will help you achieve unrivaled levels of programmer productivity and program clarity across multiple platforms including Windows, Linux, Android, OSX, and iOS as well as HTML5 and GPUs.
F# 4.0 is a mature, open source, cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable, and robust code. ...