Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Checking 320M passwords in milliseconds with serverless bloom filters (github.com/jthomas)
33 points by thomasj on Aug 15, 2017 | hide | past | favorite | 8 comments

"found password in bloom filter:..." is sort of a misleading message. Bloom filters don't tell you that something is present. They can tell you either that something is not present, or that it is likely to be present.

Good point! I'm planning to write a blog post about this and I'll be clearer on this.

Interesting, but you probably didn't need to write your own filter :). Google's Guava library has the best designed and performing Bloom filter I've ever seen. Lockless concurrency, extremely fast hashing function.

I didn't :) I used this package: https://github.com/willf/bloom as I wanted to use Go.

Ah, good :) . No wheels invented today

There are many benefits to reinventing wheels, though. Often the benefits outweigh the costs.

Said everyone trying to reinvent the wheel ever :) . I would replace that with "rarely". Sometimes it's obviously optimal to roll your own thing but in almost every case it wasn't.

My bar is pretty high. Unless you can write an academic paper on the thing you just invented you should try what's out there first.

That first line is a little flippant.

And the rest is opinion, not fact.

It really depends on the particulars and the benefits of each path. When you build your own ("invent" is disingenuous and "reinvent" seems pejorative, so going with a more neutral phrasing) you own the result, you own the intermediate steps, you learn more, and you have more flexibility in thinking of new tweaks.

It may take more time, but the investment of time pays dividends.

Wheels themselves are one of the best examples of something that has benefited from repeated "reinvention," to use the flawed term, over the last few thousands of years. I don't think you'll find a Maserati wheel on a Tesla, and it's not because Maserati wheels are bad, or because somebody cared about your bar or academic papers.

Applications are open for YC Winter 2024

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact