Rapid Android Development – Using Processing to build apps fast – #programming #bookreview

Rapid Android Development

Build Rich, Sensor-Based Applications with Processing
Daniel Sauter
(Pragmatic Bookshelfpaperback)

The main goal of Daniel Sauter’s nicely written new book is to help you learn “how to develop interactive, sensor-based Android apps” quickly.

At first glance, you may question how “quickly” you can go through 13 chapters with a total of 363 pages, including the index.

But there’s good news here, particularly if you are not a patient programmer. The book is divided into five parts, all structured to serve as “self-contained mini-courses.” And the author has geared his text toward six semi-specific categories of readers.

Sauter, by the way, is an artist and educator with some eight years’ experience teaching Processing. Processing is a free “award-winning, graphics-savvy” programming language and development environment that can be used to work with Android devices and software.

Let’s go to the six reader categories first. Rapid Android Development is aimed at:

  1. Readers with at least “a basic understanding of programming concepts….”
  2. Intermediate Processing users “looking to create Android apps from within the Processing IDE….”
  3. “Educators who teach courses on mobile technologies” and need “a free tool that does not require developer licenses or subscriptions.”
  4. Java and Android developers who want to use Processing to leverage “a host of libraries for productivity gains.” (Java developers will quickly see that Processing builds on Java.)
  5. JavaScript and Web developers who want to use Processing.js syntax to help them create “JavaScript-powered web applications that can run inside browsers without plugins or other modifications. Processing.js also takes advantage of WebGL hardware acceleration.”
  6. Arduino users and hobbyists, particularly those “interested in adapting Android phones or tablets for use as sensing devices, controllers, or graphics processors.”

Now let’s look at the five parts of Rapid Android Development.

  • Part I focuses on installing Processing and the Android SDK but also looks at touch screens and Android sensors and cameras.
  • Part II is devoted to “working with the camera and location devices found on most Androids.”
  • Part III’s emphasis is on peer-to-peer networking, including Wi-Fi, Bluetooth and Wi-Fi Direct, plus Near Field Communication (NFC), which is “expected to revolutionize the point-of-sale industry,” Sauter notes.
  • Part IV “deals with data and storage,” he adds, “as all advanced apps require some sort of data storage and retrieval to keep user data up-to-date.”
  • Part V examines 3D graphics and cross-platform apps.

You will need several software tools and at least one Android device to work with the code examples in this book. (The book lists several Android phones and tablets that have been tested with the code examples, which are available online.)

If you want to do some work in Part III, you will need at least two Android devices (so your peer can have a peer). And if you have absolutely no programming experience, you should get some first. Sauter, an associate professor of New Media art at the University of Illinois–Chicago School of Art and Design, offers some suggestions for good sources.

His new book seems a bit light on illustrations. But its well-displayed, well-explained code examples and clear how-to paragraphs keep the reader moving and making progress.

If you are a creative coder looking for some new skills, projects and challenges, check out Rapid Android Development, ASAP.

Si Dunn 

Advertisements

OpenGL ES 2 for Android – A fine quick-start guide for new developers – #android #programming #bookreview

OpenGL ES 2 for Android

A Quick-Start Guide
Kevin Brothaler
(Pragmatic Bookshelf – paperback)

Yes, the timing might seem a bit strange, releasing an OpenGL ES 2 book in early July, 2013, barely a month before the August release of OpenGL ES 3.

However, OpenGL ES 3 is backward-compatible with OpenGL ES 2. And the steps and techniques you can learn in this Open GL ES 2 book for Android are forward-compatible to OpenGL ES 3. Many also are applicable to iOS WebGL or HTML5 WebGL.

This “quick-start guide” assumes you have some experience with Java and Android, and it quickly jumps into creating OpenGL applications for Android. You install software tools such as the Java Development Kit (JDK) and the Android Software Development Kit and create a simple test project. Then you dive into developing and enhancing a 3D game project —  “a simple game of air hockey” — for the remainder of the book.

OpenGL ES 2 for Android is nicely illustrated, well-written, and cleanly organized with short paragraphs and short code examples that clearly have been tested. It is a fine quick-start guide, particularly for developers looking into OpenGL for the first time.

Some math skills are required to develop the air hockey game. But the author does a nice job of explaining and illustrating the math examples, as well.

Kevin Brothaler has extensive experience in Android development. He founded Digipom, a mobile software development shop, and he manages an online set of OpenGL tutorials for Android and WebGL: Learn OpenGL ES.

Si Dunn

WebGL: Up and Running – 3D Web graphics for the beginner, with expert guidance – #bookreview

WebGL: Up and Running
Tony Parisi
(O’Reilly,
paperbackKindle)

“WebGL,” Tony Parisi notes, “brings 3D to the browser, providing a JavaScript interface to the graphics hardware on your machine.”

Parisi is co-creator of the VRML and X3D languages which have become ISO standards for networked 3D graphics. So he knows a bit about using WebGL (Web Graphics Library) for low-level 3D renderings on the Web. If you are ready to give Web 3D graphics a try, you need WebGL: Up and Running.

Parisi’s new book is a well-written “quick introduction” to 3D programming. It has 211 pages and numerous code examples and screen shots. And it is organized into eight chapters and an appendix that provides links to several WebGL resources.

The first two chapters offer an overview of the WebGL API and Three.js, the open source JavaScript library that is used in the programming examples.

Chapters 3 through 6 focus on “the details of programming graphics, animation, and interaction” and explore “WebGL’s breakthrough capabilities for integrating 2D and 3D into a seamless user experience.”

Chapters 7 and 8 look at “real-world WebGL production topics, from authoring tools and file formats to building robust and secure WebGL applications.” Also in`Chapter 8, Parisi shows how to build a full WegGL application, a racing game.

You will need some familiarity with HTML, CSS, JavaScript, jQuery and Ajax to use this book. But you won’t need prior 3D graphics experience. The author’s goal is to get you up and running well enough that you can start using WebGL and learning as you go.

Still, “even the 3D graphics expert will learn something new” from this how-to guide, promises Ken Russell, the Khronos Group’s WebGL Working Group chair, in the Foreword to WebGL: Up and Running.

Si Dunn