Advert TechBookReport logo

Independent developer book reviews by and for practitioners

Tutorials
Introduction to SQL
Excel VBA
File System Object
Agile In 30 Seconds
Apache Derby/Java DB
Standard Deviation In 30 Seconds
JDBC-ODBC - Quick Introduction
Groovy and XML
 
VirtualBox 1.5.6

Gone are the days when VMware was the automatic choice for virtualisation software. Microsoft is still plugging away with its Virtual PC line, but these days there are plenty of other options, including the open source Xen hypervisor, QEMU, Parallels and more. VirtualBox is an open source virtualisation product developed by innotek which is now owned by Sun Microsystems.

Like VMware VirtualBox is a program that runs on the operating system of the machine on which it's installed but which provides a complete virtual environment which enables the creation of virtual machines that run other operating systems. These systems are usually termed guest systems, in contrast to the host operating system which is installed on the real, physical machine. It means, for example, that a host system running Windows XP can have guest systems running Linux, other versions of Windows, Solaris and so on.

In terms of operating systems supported, VirtualBox can be installed on host systems running Linux, Windows, Solaris, Mac OS X and even OS/2 Warp. Once it is installed guest systems that can be installed include Linux, Windows, Solaris, OS/2 Warp and different flavours of BSD.

Installation of VirtualBox is straightforward and compared to VMware it has a smaller footprint - both in terms of disk space and memory requirements. Once installed it's relatively straightforward to create a guest system. Creating a new virtual machine is guided by a wizard which walks you through the process of configuring a new virtual box, starting with picking the operating system you plan on installing in the new machine. Then it's on to how much memory you want to give this new system - and this is normally a limiting factor. [Continued]
Java and SQL

The Java and SQL combination is a fairly widespread development requirement, particularly in the enterprise application space, so it's surprising that there are relatively few books that combine the two topics. While many introductory Java titles will mention Java Database Connectivity (JDBC) to some extent, this is a book that looks in considerable detail are the SQL side of things as well as the Java side.

The first part of the book introduces Java and object oriented development. The author assumes no prior knowledge of either, and so starts from the beginning, including instructions on how to install Java and set up environment variables, how to compile a run a program etc. From this the author guides us through looping, conditional statements, arrays, regular expressions, encapsulation, polymorphism and other elements of object orientation. The material continues on through to a chapter that looks at collections, files and threads.

With that out of the way the book switches to databases with four chapters devoted to key database concepts, SQL, stored procedures and advanced querying. It's important to note that the database that is used for examples is Oracle, though much of the material is independent of database implementation, the are some topics, such as stored procedures which might be of less value to developers using other RDBMS systems.

The final couple of chapters knit the Java and database worlds together by looking at JDBC in some detail. [Continued]
Tutorial: Groovying XML

Younger readers may find this hard to believe, but there was a time before XML hell. There was a time of anticipation and hope, when the idea was that XML was going to solve just about every tricky problem in software development and then some. Problems with swapping data between applications or platforms? No problem, XML would fix that. Need to store complex data structures in a portable format? Hey, this XML stuff can sort that for you? Need a registry, dictionary, serialisation format, properties file… You had a problem and XML was the answer.

And growing up at around the same time was this programming language called Java. Partners in crime, Java and XML have advanced and moved on together, but if we're honest it's never been an easy partnership. You've only got to look at the number of parsers for XML common in the Java world: DOM, JDOM, DOM4J, XOM - and that's just the tree models. Processing XML in Java is a common enough requirement, but it can be extremely verbose, requiring plenty of boiler-plate code and all kinds of extraneous scaffolding that obscures what are often very straightforward functions.

Groovy, as befits a sprightly young scripting language for the Java Virtual Machine, can do XML in a way that is relatively free of bloat and allows the developer to focus on the real problem at hand. In this two part tutorial we'll look at how Groovy can help in reading and writing XML documents. Instructions on installing and running Groovy can be had from the home page at http://groovy.codehaus.org/, or else look at the first part of our Groovy and SQL piece here at TechBookReport. [Continued]
VBA and Macros for Microsoft Office Excel 2007

For Excel users - novices and gurus alike - the 2007 release has been something of a shake-up. As with the other components of Office 2007 there has been a new user interface to contend with, but also major changes in functionality (as well as the unwelcome discovery that things that used to work had been broken in the initial release and are still being fixed in service packs and hotfixes). However, despite the problems and the changes that users have to get used to, Excel 2007 is still the jewel in the crown of Microsoft Office. And, in the right hands, it remains an immensely powerful and creative tool for data analysis and reporting.

The true mark of the Excel super-user is a willingness to get to grips with macros and VBA. It's true that buried under layers of menus, toolbars and obscure options dialogs there is an enormous reservoir of functionality that users can exploit. But it's also true that the user interface can only get you so far, if you truly want to gain super-user status you need to resort to VBA code to get Excel to do the things you want it to. While it's easy to get a fast introduction to Excel VBA from online tutorials such as our own TechBookReport VBA tutorial, to gain an understanding and experience of what's possible a guide book is essential. Which is where this book comes into its own.

The first thing to point out is that this is decidedly not a book that aims at turning the reader into a VBA programmer. [Continued]
Calculus Gems

This is a book in two halves, as is made clear from the subtitle: 'Brief Lives and Memorable Mathematics'. For those afraid that this is actually some kind of calculus book under the covers, relax, this isn't a text book, nor even a populist introduction to the subject. Instead the author treats us to a series of brief biographical sketches of a number of leading mathematical thinkers, followed by an examination of some interesting mathematical topics.

For those who are fascinated by genius, this is a great little book. Starting from the ancient world of Thales, Pythagoras and Archimedes and moving on through to the middle ages and then on and into the 19th century with Gauss, Chebyshev and Riemann we are treated to 33 quick biographies of some truly remarkable individuals. George Simmons focuses on the personalities as well as on the mathematics, producing pen portraits that are engaging and readable. The mathematics is explained in terms of historical context, placing the person and the work into the broader story of the advances in the subject from the early beginnings in Ancient Greece.

Simmons has decided views on his subjects, for example ranking Euler, Gauss and Riemann as the greatest mathematicians of modern times. Or in declaring Euclid's Elements as one of the dullest books ever written. But this engagement with his subjects and the pleasure he derives in writing about their lives and works is evident throughout. [Continued]
Coming Soon...
The Unofficial Lego Mindstorms NXT Inventor's Guide, Groovy Recipes, The Ruby Programming Language and lots more...
Vendor White Papers
Google
Web TechBookReport
Meet Joe Bloggs

Other recent reviews

Site design by viper69 productions-All contents copyright of authors. No copying for commercial use allowed. Site © 1999 - 2008.