Ferret
Dev tools
search library
SHOW HN2013
How HN took it
3 positive, 11 neutral or asking, 0 mixed, 8 critical, out of 22 comments about the project. Thread score -0.24.
Idea: 2 for, 2 againstPricing: 0 for, 3 againstExecution: 1 for, 2 againstPerformance: 0 for, 1 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Go is a good fit for a small, efficient search library
From 2 comments
Very cool. Considering that the core functionality you want is done in less than 500 LOC (https://github.com/argusdusty/Ferret/blob/master/ferret.go) it seems a great way to go…
fspeech on HNnice. I've been waiting to see some full-text search engine in Go for a while to compete with the omnipresent Lucene. Things like Go's low memory footprint could give it an…
drsintoma on HN
Suffix arrays used in practice is interesting
From 1 comment
It's nice to see suffix arrays being used in the real world. For anyone who is interested in suffix arrays, the following to papers are recommended: * Suffix arrays: A new method…
danieldk on HN
Objections
Lucene or Elasticsearch would have been a simpler choice
From 1 comment
This is cool. However, I wonder why the author didn't switch to a Lucene-based server such as Elasticsearch or Solr, for which you can find decent Go clients (or use the REST api…
diego on HN
Hosting cost and engineering time are not worth it for a small startup
From 3 comments
$150/month can buy you a very very good dedicated server. http://www.hetzner.de/en/hosting/produkte_rootserver/ex10
rorrr2 on HNWhat are you valuing your time at? That sounds like shaky logic at best, especially considering how much work it sounds like this took.
thedufer on HNThis is cool. However, I wonder why the author didn't switch to a Lucene-based server such as Elasticsearch or Solr, for which you can find decent Go clients (or use the REST api…
diego on HN
Lacks phonetic or spelling-agnostic matching
From 2 comments
I'd say having spelling agnostic search would be crucial. I searched yesterday on google play music for an artist I'd heard of that sounded something like "n door" so I typed…
damian2000 on HNThere are two methods that are more typically known in the context of substring search that may help you get something even better than your prefix + Levenshtein distance 1…
DrJosiah on HN
Requests
Add phonetic matching module
From 1 comment
This is a good idea :) I'll probably add in a module for phonetic matching when I get the time.
argusdusty on HN
Questions
Why not use a trie or Boyer-Moore instead
From 2 comments
4MB? Wouldn't boyer-moore, or a trie be very efficient for this?
fleitz on HNI don't understand why the trie would take quadratic memory. I would expect it to be high-constant linear. Can you explain?
thedufer on HN
Alternatives named
Lucene, Elasticsearch, Solr
From 2 comments
This is cool. However, I wonder why the author didn't switch to a Lucene-based server such as Elasticsearch or Solr, for which you can find decent Go clients (or use the REST api…
diego on HNThings like Go's low memory footprint could give it an important advantage in this area. You know that there is a C++ version of Lucene? http://clucene.sourceforge.net/ There's…
danieldk on HN
CLucene, Xapian, Sphinx, Apache Lucy
From 3 comments
Things like Go's low memory footprint could give it an important advantage in this area. You know that there is a C++ version of Lucene? http://clucene.sourceforge.net/ There's…
danieldk on HNI hadn't realized that CLucene was still active, thanks! Apache Lucy is another option that might appeal if you consider Lucene bloated. It's written in C, and while there aren't…
nkurz on HNAs for other non-Java Lucene alternatives, Sphinx works great, is compact and the C++ code is fairly easy to pick up enough of to make modifications if needed:…
vidarh on HN
Metaphone and Double Metaphone for phonetic matching
From 1 comment
There are two methods that are more typically known in the context of substring search that may help you get something even better than your prefix + Levenshtein distance 1…
DrJosiah on HN