News for hackers. Stuff that matters.
Re:Writing a document database from scratch in Go: Lucene-li... by metadat on Monday March 28, 2022 @06:50PM (#30836553)
That's kind of a nasty bait and switch, definitely not from scratch if you pick the indexer core up from GitHub on the way home after work.

Phil, I'm a bit disappointed in you. This hasn't been the sort of thing I've observed from your (excellent) prior writings.

Re:Writing a document database from scratch in Go: Lucene-li... by eatonphil on Monday March 28, 2022 @07:01PM (#30836658)
You people are harsh! :)

I'll put it this way: I only write about stuff that I think is interesting. And I don't believe my title is clickbait.

If you read the article and still think it's not interesting or not my normal level of educational, well then I'll be surprised.

Re:Writing a document database from scratch in Go: Lucene-li... by metadat on Monday March 28, 2022 @07:01PM (#30836663)
It is interesting. If the indexer is being imported, it's also not "from scratch", at all. The two are not mutually exclusive.

Your piece will stand on it's own, perhaps call it something like:

Implementing The Elasticsearch Backend Myself in Go

Phil, your editorial honesty, integrity, and accuracy will be appreciated by me and others. <3

Re:Writing a document database from scratch in Go: Lucene-li... by bogomipz on Tuesday March 29, 2022 @12:34AM (#30838796)
I thoroughly enjoyed this post! I also didn't perceive the title as any kind of attempt at "clickbait." Thanks for sharing. I would like interested in seeing more installments of developing this Elasticsearch style API too :)
Re:Writing a document database from scratch in Go: Lucene-li... by hombre_fatal on Monday March 28, 2022 @07:40PM (#30836936)
I don't get the emotions.

How you save/retrieve bytes isn't the interesting part of this blog post as it's elementary. He could have just defined an interface { save(id, doc), get(id) } and moved on.

If anyone seriously wanted to try to follow along with this code, googling how to use the filesystem in Go isn't beyond them. They'd have their own implementation from scratch just as the blog promises.

Re:Writing a document database from scratch in Go: Lucene-li... by kreeben on Monday March 28, 2022 @07:50PM (#30836994)
>> How you save/retrieve bytes isn't the interesting part of this blog post as it's elementary

I do not have a beef with the author, at all, in any way, but, LOL, that is anything but elementary.

Furthermore,

>> this post will not implement full text search.

...makes their solution or specifically, their index, not very "Lucene-like". Which is why I had objections to their title, not their blog post. Their blog post is fine :)

Storage is one of the problems you'll need to solve, when doing "Lucene from scratch". Indices are another. Full-text indices implemented from scratch: hard and interesting.

Re:Writing a document database from scratch in Go: Lucene-li... by hombre_fatal on Monday March 28, 2022 @07:55PM (#30837019)
> LOL, that is anything but elementary.

Like most tutorials, surely it's a simple implementation that breaks things down into simple code so that you can see how things work at a more fundamental level and follow along, not something that's going to satisfy ACID properties and compete with Lucene.

Way too much guff in these comments.

Re:Writing a document database from scratch in Go: Lucene-li... by kreeben on Monday March 28, 2022 @08:00PM (#30837054)
It's a very good run-through but it's not at all from scratch. That's my sole point. Didn't mean to be harsh, but their title is click-bait.
Re:Writing a document database from scratch in Go: Lucene-li... by jandrewrogers on Monday March 28, 2022 @08:28PM (#30837249)
Storage engines are far from elementary. It is one of the most complex and subtle parts of a database implementation, especially if you care about reliability, scalability, or performance. The term "from scratch" usually does not denote outsourcing all of the hard parts of a database implementation to an external library.

I think people were just disappointed that the article was more about writing a database-like API than an actual database.

Re:Writing a document database from scratch in Go: Lucene-li... by bradhoffman on Monday March 28, 2022 @08:36PM (#30837315)
I’ll be anxiously awaiting your “from scratch” tutorials :)

Edit: not facetious. I very much enjoy reading your blog posts and HN comments.

Re:Writing a document database from scratch in Go: Lucene-li... by kungfufrog on Monday March 28, 2022 @07:01PM (#30836661)
Did you read the article? He addresses your point directly. Your criticism sounds a little petty, but, perhaps you're being flippant and it's lost on me..
Re:Writing a document database from scratch in Go: Lucene-li... by metadat on Monday March 28, 2022 @07:08PM (#30836706)
I most certainly did, eatonphil's articles are always cool, in fact I wonder if he has a mailing list?

Anyhow, importing the indexer disqualifies the "from scratch" quality.

This doesn't mean there's anything wrong with importing it, only calling it "from nothing" when this isn't the case. Such language sets improper expectations in the reader and may even reduce reader engagement, since article content diverges from what the title claimed to offer.