Last night I had the pleasure of attending the very first HackCoMo meetup at Bambinos and thought I’d share the experience. For those of you who don’t know, HackCoMo is a weekly meetup to get together and just hack at various projects or ideas. All in the company of really cool geeks local to Columbia, MO while enjoying some beer and appetizers.
First, it was pretty awesome to be exposed to what others were working on. Ted was working on some DropBox integration for DocumentCloud, Bryan was hacking at some imap webhook type integration, and various other people I could see some ruby code + rvm type magic in their terminals.
For me, I decided to hack on something relevant to one of my side projects that I had been meaning to look into for awhile: using elasticsearch with mongodb. I already had mongodb populated with the enron email corpus (around 500K records) so it was the perfect opportunity to try pushing it into elastic search. Why? Well out of the box mongodb doesn’t have any world class full-text searching and ranking and I want the ability for users of an app to do a full text search across multiple fields in a mongodb document. Ranking is very important. Also, I need synonym based results (for example “Truck License”, “Auto License” and “Car License” should all match results for an Automobile License).
As I started coding the first thing I discovered that it was going to take awhile to import all 500K records. I could have scaled out to multiple processes but that would lose focus of what I was trying to accomplish, so I capped the number of records to 10K. I used the elastical node.js module (only for the reason it was the first thing I saw) and it was okay but there were a couple times I just made REST calls to elasticsearch myself. You can see the results of my 2 hours of coding here.
Overall it was a fun night and in addition to hacking I got to help someone else out with node.js while enjoying some good music, food, and conversation. It’s definitely a great addition to our growing tech community here in Columbia.
If you’re free on Tuesday night, join us!