Clustering your data on the Map. What should you use?


Web mapping services are become more popular as more applications are required to display a considerable amount of data on a map. Applications use a map view most of the time to show single points but clusters of data are becoming more popular.

Before moving forward with any of the web mapping services, it is better to understand what the application really needs from the map provider. In this case our system needs just two features:

·      Clustering data
·      Showing a single marker on the map

Custom log files in Rails 3


In addition to outputting lots of useful information, the Rails logger can be a useful debugging tool.  But debugging with the log file can become frustrating as it will be cluttered with default content.  The solution to this problem is to create a custom logger and log file for such output.

The easiest way to do this is to create a global log function, enable it in your development environment, and make sure that calls to it don’t do anything in other environments.

A Quick Reference on Box-Shadows


Every few months I come across the need to add shadows to frontends, and it seems each time I have to go back and look up how these things work.  I always take to the internet for a brush up on box shadows, but I seem to find more information than I’m looking for – I just want a quick cheat sheet, not the War and Peace of box-shadowing.  So here’s the cheat sheet I’ll be using from now on to create the shadows I need.

HTML 5: Now With More Method to the Madness


Up to now, many people have regarded HTML coding as simply a matter of making the content fit together and look pretty on your browser the way you want, via CSS formatting of various <div> regions.  Not true anymore with HTML5, which not only introduces new content element tags but also a new algorithm that renders the contents of a web document in outline form.

JQuery DataTable Plugin Pagination


One of the most common tasks when displaying data through an HTML table is to allow the user to manipulate data within the table. Displaying data on a grid can involve many different operations (retrieving, sorting, live editing, search). Using AJAX to dynamically fill the table requires even more work since the application (in this case, javascript code) has to convert JSON/XML/TEXT data to an HTML element. Each of these tasks can involve more or less time in order to be completed, and of course, tested.

Twitter Stock Ticker


Last night I was rummaging through some of my past projects doing a little winter cleaning, and I stumbled upon this jQuery plugin that I wrote a while back. I ran the code to see if it still functions (it was using jQuery  1.3). And to my pleasant surprise, the code still runs like a charm. So, I just want to take the time to share it with you all.

Solving the Firefox Ellipsis Problem


On a recent project for a client, I was asked to make the CSS style “text-overflow: ellipsis” work on FireFox browsers, which has never supported this style. This style basically truncates text and adds an ellipsis (…) when the length of the text overflows the container. Supposedly FireFox 7.0 will correctly this issue, but I’ll believe it when I see it.

Which is the best Enterprise CMS?


I’m am working on a project currently that is leveraging an Enterprise CMS. At the outset, I did an analysis of existing CMS systems to select the one that best fit our clients needs. That turned out to be Magnolia (

However, another one of our clients is using the Alfresco CMS for their business. I reviewed it over the weekend and was impressed by the slick and intuitive user interface. The creators of Alfresco come from Documentum and Interwoven.

Three OCR Software Vendors Compared


I recently evaluated three vendors of OCR technology for a C# .NET desktop app. Basically the software needed to accurately read and report the results of scanned “bubble” tests – the kind that you took as a kid for your Iowa tests (yes I’m from the midwest) and SAT’s. In addition to reading bubbles, the software needed to accurately read barcodes, OCR or printed characters (the test takers name) and ICR or hand-written characters (for hand-written answers).