ClickAider
You are currently browsing the Bogle’s Blog weblog archives.

Berry411 now suggests relevant web links and podcasts

Berry411 version 3.8 now suggests relevant links to mobile web sites (recommended by BlackberryOne, Cantoni.org, Smallsites, and Otweb.com) and podcasts  (provided via Podlinez) based on your yellow pages search;  you can download 3.8 over the air on your Blackberry at http://thebogles.com/berry411.jad.

Here’s how it works.  Suppose you were looking for wine.  As well as suggesting wine related searches, Berry411 suggests links to mobile web pages about wine.  r

   

Clicking on them takes you directly to the site. 

As before, Berry411 yellow page results include inline links to reviews from Yelp and Urbanspoon.

 

So Berry411 can help you both the right wine and the best wine store.

Mobile podcasts are similar.  Suppose you wanted the lastest new from Digg.  Berry411 suggests links to the Digg podcast (Diggnation) as well as the Digg mobile we site.  There are several hundred podcasts are available, including some of my favorites from NPR like “Wait Wait” and “This American Life”.

Update: 3.83 restores the “search history : clear history” menu option.

Google more closed with data than Microsoft is with code?

Google is taking an approach towards search and datamining that is diametrically opposed towards the web search platform and Elastic Computing Cloud of Amazon/Alexa. 

Even as Amazon works to democratize access to web indexes and scalable web services, Google is increasingly becoming a data black hole, collecting and mining data from everywhere for its own purposes but exposes little of what what is mined to other web services.

Google’s Search API was always more of a toy than a real platform– the limit of 1000 queries per day was uselessly small, as was the limitation of only being able to access the first 1000 results of any query.

Recently, Google discontinued support for their Search API, and is no longer issuing new API keys.

What would people say if Microsoft stopped issuing “API keys” and documentation for Windows developers?

A project called EvilAPI aims to be a replacement for the SOAP Search API, and is an expression of the frustration felt by developers left out in the cold.

In response to Google’s discontinuation of support for their SOAP Search API, we have created the EvilAPI. The EvilAPI supports most of the same SOAP calls that Google’s SOAP Search API supports — it just doesn’t use their deprecated API to get the data. Instead, it uses page scraping. Evil? Maybe. But not nearly as evil as providing a powerful development tool for people who are loyal to Google and then discontinuing it without any warning or regard to their users.

Of course Google disallows EvilAPI in their terms of service and can break it at any time they chose.

There’s a clear parallel between Google’s closed approach to data and Microsoft’s closed approach to software, and a clear need for a more open marketplaces for data as pioneered by Amazon. Fortunately, developers do have a choice and a chance to exert market pressure on Google.

The best Rails is a virtual Rails: Virtualization for Mac and Windows

I’ve noticed an interesting trend towards mainstream developer use of virtual machines:  Those of us who develop in Rails in Jobster increasingly do so on Linux, either real or virtualized. 

Linux tends to be better supported than either Windows or OSX when it comes to Rails gems– the libxml gem for instance, is critical for fast XML parsing, but is difficult if not impossible to run on Windows. Linux is also better supported than Intel OSX for things like the closed source (boo hiss) Oracle OCI8 drivers.

There are even performance advantages. Tools like Subversion perform much faster in virtualized Linux than they do in native Windows, and even Rails startup time feels faster.

Virtualized Linux is now fast and affordable– VMWare Server is a free download for Windows, and Parallels workstation for the Mac is only $49.

A typical setup shares out the virtualized drive with the Windows or Mac box so that native development environment can continue to be used.  (The virtual machine host allocates a new dynamic IP address for the virtual machine and transparently bridges traffic to the virtual MAC address, so it truly appears as a separate machine to the local network.)

The last compelling aspect of virtualization is the ability to create a system image with all of the tools and gems a developer needs to be productive.  In a few minutes this image can be copied to a developers machine, be mounted, and running.

(If you use virtualized Ubuntu and want to share system images, you should definitely read this thread about a script to update the cached MAC address when you copy an image, otherwise your eth0 ethernet device won’t work in a cloned machine.)

It’s clearly only a matter of time before virtualization becomes mainstream for all users and not just developers. 

Poll: Berry411 on other phones

I’m taking a poll to see how much interest there is for a version of Berry411 which works with phones other than the Blackberry. Please share your thoughts!

Poll: What other kind of phone should Berry411 work with?

View Results

Loading ... Loading …

S3 + Rake = Easy Rails Backups

Peter Cooper blogs on Easy Backups for SVN Repositories, Databases, and Code using Amazon’s S3 service. 

Adam Greene has put together a great set of Rake tasks that use the Amazon S3 file storage service (and Amazon’s own Ruby API) to make backing up your Rails application’s code and databases easy. All it takes is a single call to Rake and you’re backed up on Amazon’s redundant, secure systems.

(Discovered via the Ruby Advent Calendar.) 

acts_as_ferrett: easy, efficient full-text search for Rails applications

Based on a tip from Russell Williams, I’ve played a little bit with acts_as_ferret and like what I see so far.   

Ferret is a port of the Lucene full-text engine for Ruby, and acts_as_ferret is a plugin for Rails that makes it easy to make any ActiveRecord model full-text searchable. 

Roman Mackovcak provides a set of ferret recipes, including how to do pagination, which is not supported out of the box. 

Ferret supports the same rich query syntax that Lucene does and can read files created using standard Lucene without conversions. Some of the supported query syntax options include wildcard searches (te?t matches test), fuzzy matching based on Levenshtein distance (dictonary~ matches dictionary), proximity searches, range searches, keyword weight, and boolean operators.

Update: Dion notes that Ferret no longer uses the Lucene file format, unfortunately.. The file format was changed in order to improve performance.

Hibernates loves Spring?

To accompany the rumored renewal of affections between Brad and Jen, eWeek is reporting a thaw in the chill between Hibernate and Spring:

Despite an often tense relationship between leaders in their respective open-source communities, the Spring and JBoss leaders are now talking about a truce.

Rod Johnson, chief executive of Interface21, the company that maintains the Spring Framework, told eWEEK that he would welcome an opportunity to work with JBoss. Johnson spoke with eWEEK just weeks after JBoss leader Marc Fleury told eWEEK he was open to working with the Spring community in some fashion.

The apparent thaw in the often chilly relationship could signal a big boon to Java developers who use the Spring Framework with JBoss’ Hibernate technology. Spring is a lightweight Java application framework that helps developers avoid the complexity of the Java 2 Platform Enterprise Edition (J2EE), while Hibernate is an object/relational persistence and query service for Java.

Reporting the conflict from the frontlines was Jobster’s senior war correspondant Scott Haug: 

The height of the friction between the two camps was perhaps best captured in a blog post from last year by Scott Haug, a developer at Jobster, entitled “Hibernate Hates Spring.”

However, many developers who posted comments to Haug’s post said they use both Spring and Hibernate, and many called for a truce.

Berry411 Search enhanced with 250,000 word autocomplete dictionary

Berry411 version 3.73 is now available over-the-air from http://thebogles.com/berry411.jad, as described on the Berry411 home page.

The major new feature is an autocompletion dictionary that includes over 250,000 business searches, sorted by popularity. The dictionary is stored on the Berry411 server and grows in size and relevancy as more users use the system.

(Recently, for example, over a million houses in the Seattle area lost power. Puget Sound Energy hotline was already in the dictionary when I went to find their number on my Blackberry.)

The autocomplete dictionary has been prepopulated with the names and 1-800 numbers of popular travel related business like car companies, airlines, and hotels. (For example, if you type Hertz, the phone number is suggested directly as a completion and can be dialed directly without even searching.)

Adding multiple addresses to the Blackberry address book from any web page

As described previously Berry411 provides the ability for any web page to add addresses to the Blackberry address book. This post describes how to add arbitrarily many addresses and navigate to the web page of your choice after the address book update is complete. Berry411 defines a simple XML based scripting language that is interpreted when linked to by the browser. The key operations are illustrated in the example below. You’ll want to define a similar document on your site, substituting the values appropriate for your application. Then direct the user’s browser to “http://berry411.com/berry/handle_script?url=YOUR_URL”, where YOUR_URL is the URL-encoded URL to the XML document you created.


<?xml version=”1.0″ encoding=”UTF-8″?>
<actions>
  <add_contact firstname=”foobar” lastname=”barbar”>
    <address type=”home” street=”31 Example Street” city=”Bogusville” state=”NY”\
zip=”01239″/>
    <phone type=”home” value=”4255551212″/>
  </add_contact>

  <add_contact firstname=”foobar2″ lastname=”barbar2″>
     <address type=”work” street=”12 Sample Street” city=”Bogusville” state=”WA” \
zip=”01239″/>
    <phone type=”home” value=”2065551212″/>
  </add_contact>

   <navigate href=”http://mobile.answers.com”/>
</actions>

BerrySearch 0.9 with Wikipedia and Google Autocomplete

BerrySearch v0.9 is now available for free over-the-air download. BerrySearch is the only mobile search application that features interactive autocomplete for Google, Wikipedia, and Dictionary searches– the autocompletions in each mode are suggested based on the particular content of that site.