||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Ruby, Rails, database, web applications
Title: Practical Reporting With Ruby and Rails
Author: David Berube
There are plenty of Ruby books that explain the language or focus on Rails, so it's good to see a book that takes the time to look at how Ruby can be used to create a specific type of application. It's been said that ultimately all applications are about persisting data, which means, if you think about it, that a huge chunk of those applications revolve around producing reports. What David Berube has done is taken a look at how Ruby can be used in a range of common reporting scenarios - and that includes both Rails and non-Rails Ruby applications.
In the real world data sources come in all shapes and sizes, from embedded databases bundled with your application to databases sitting on a server to web-based sources such as Google, Yahoo, eBay and so on. The book looks at quite a range of these, starting with database access using MySQL and Ruby's ActiveRecord (part of the magic that makes Rails so powerful). It's a good introduction to the book, giving the reader a chance to see how things work and showing how it's possible to write code that isn't bound to Rails.
Of course once you've got your data you want to report it in some way. This is covered in three separate chapters that look at charting, desktop reporting (particularly spreadsheets) and making it available via the web (which is where we're back with Rails). In all cases there are useful examples and the code makes use of open source libraries and frameworks. While not complete applications, the sample code is good enough to get you started with producing useful reporting applications. And if your Ruby is only just getting started the sample code is a good way to learn how things are done the Ruby way.
Having established the groundwork in the first few chapters, the book moves on to a part two that looks at specific tasks: tracking auctions on eBay, creating reports with SugarCRM, analysing Apache web logs, creating reports for Microsoft Office and more. Again the emphasis on this section on the book is on practical applications that make use of standard libraries and components to produce working examples. There's a lot that can be picked up quickly by a developer wanting to get started in these areas. It should be noted that the examples are on the brief side of things, there's no huge amount of depth here, but there's enough to produce working, usable code.
Compared to a lot of developer titles, this is a fairly slim little book and it's all the better for it. The author has avoided the temptation to pad the book out, and has produced a really useful set of tutorials - it makes for a great ideas book, particularly for those still on the Ruby learning curve. Recommended.