In this book we set out to investigate some of the most difficult problems that
software engineering faces. Although a young discipline, it nonetheless faces
the most difficult challenges, as software is the most complex artefact ever
crafted by humankind. As such, many of the problems can be traced to
inadequate abstraction....
You have just bought your new Windows Phone 7 device and would like to start developing applications. You need to know the device’s hardware characteristics such as screen resolution and memory capability—but also which sensors and services it provides. Finally, you need to understand what the Windows Phone 7 operating system...
Foundations of SQL Server 2008 R2 Business Intelligence introduces the exciting gamut of business intelligence tools included with SQL Server 2008. Microsoft has designed SQL Server 2008 to be more than just a database. It’s a complete business intelligence (BI) platform. The database is at the core, and surrounding the...
MongoDB, a cross-platform NoSQL database, is the fastest-growing new database in the world. MongoDB provides a rich document-oriented structure with dynamic queries that you’ll recognize from RDBMS offerings such as MySQL. In other words, this is a book about a NoSQL database that does not require the SQL crowd to re-learn how the...
Building WPF and Silverlight applications can be challenging, especially for those new to
the technology. Building clean, maintainable, extensible, testable, loosely coupled ones—
with no idea where to start—is close to impossible. In late 2007, I was privileged to get a
call from Glenn Block at Microsoft asking if I was...
Open Source GIS (Geographic Information Systems) is a growing area with
the explosion of Google Maps-based websites and spatially-aware devices and
applications. The GIS market is growing rapidly, and as a Python developer you
can't afford to be left behind. In today's location-aware world, all commercial Python
developers can...
The need for this project was born of frustration while working towards my
PhD. I was investigating optimization algorithms and was implementing
a large number of them for a software platform called the Optimization
Algorithm Toolkit (OAT)1. Each algorithm required considerable effort
to locate the relevant source material (from...
Every high-quality animated production begins with an idea and ends with a series of rendered frames. Getting
from the idea, to the finished product, involves many different stages that are often handled by various specialists
throughout a studio.
Each step along the way contributes to the final image in some way. The concept...
Whether it's tapping, flicking, pinching, or stretching, the vocabulary and gestures of user interfaces have changed a lot in the past year. Multitouch surfaces are now common across almost all platforms and device types. The new Windows Touch API, along with innovations from the Surface project, make it easier than ever to build...
When I was about nine years old, I had an Acorn Electron, a home computer developed
by Acorn Machines and one of the major precursors to modern home computing. It
was tiny by today’s standards, having just 32K of RAM, a 2MHz CPU, and with the
staggering ability to store a massive 360 Kb on the 3 inch Amstrad disks I was using...
JavaFX 2.0 is Java’s next generation graphical user interface (GUI) toolkit for developers to rapidly build
rich cross-platform applications. Built from the ground up, JavaFX takes advantage of modern GPUs
through hardware-accelerated graphics while providing well-designed programming interfaces enabling
developers to...
This book is broken into three parts. The first introduces the three projects that will be
used throughout this book, the second introduces some of the most common themes
in creating interaction in designs and applications, and the third introduces some of
the more advanced topics that you may want to explore further. Also...