Live data from Hacker News

Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

tzx.notion.site

11–20 of 53 posts

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#11
It's somewhat ironic that the author advocates for keeping it simple and using pgvector but then buries a ton of complexity with an API server, auth server, Cloudflare workers, and durable objects. Especially given

> Supabase easily the most expensive part of my stack (at $200/month, if we ran in it XL, i.e. the lowest tier with 4-core CPU)

That could get you a pretty decent VPS and allow you to coassemble everything with less complexity. This is exemplified in some of the gotchas, like

> Cloudflare Workers demand an entirely different pattern, even compared to other serverless runtimes like Lambda

If I'm hacking something together, learning an entirely different pattern for some third-party service is the last thing I want to do.

All that being said though, maybe all it would've done is prolong the inevitable death due to the product gap the author concludes with.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#12
I started a quick weekend project to do just that today: index my OSS project's [1] issues & discussions, so I can RAG-ask it to find references when I feel like I'm repeating myself (in "see issue/PR/discussion #123", finding the 123 is the hardest part).

This article might be super helpful, thanks! I don't intend to make a product out of it though, so I can cut a lot of corners, like using a PAT for auth and running everything locally.

[1] https://github.com/47ng/nuqs

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#13
> When using Cloudflare Workers as an API server, I have experienced requests that would “fail silently” and leave a “hanging connection”, with no error thrown, no log emitted, and a frontend that is just loading. Honestly, no idea what’s up with this.

Yikes, these sorts of errors are so hard to debug. Especially if you don't have a real server to log into to get pcaps.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#14
Great write up, especially agree on pgvector with small (ideally fine tuned) embeddings. There’s so much complexity that comes with keeping your vector db in sync with you main db (especially once you start filtering with metadata). 90% of gen AI apps don’t need it.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#15

> When using Cloudflare Workers as an API server, I have experienced requests that would “fail silently” and leave a “hanging connection”, with no error thrown, no log emitted, and a frontend that is just loading. Honestly, no idea what’s up with this. Yikes, these sorts of errors are so hard to debug. Especially if you don't have a real server to log into to get pcaps.

Cloudflare workers are not amazing in terms of communicating problems. The errors you get can also be out of sync with the docs and the support doesn't have access to poke at your issues directly. Together with the custom runtime and outdated TS types... it can be a very frustrating DX.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#16
Am I misunderstanding what is meant by semantic code search? I thought the idea was that you run something like a parser on the repo to extract function/class/variable names and then allow searching on a more rich set of data, rather than tokenizing it like English.

I know github kind of added this but their version falls apart still even in common languages like C++. It's not unusual for it to just completely miss cross references, even in smaller repos. A proper compiler's eye view of symbolic data would be super useful, and Github's halfway attempt can be frustratingly daft about it.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#17

> When using Cloudflare Workers as an API server, I have experienced requests that would “fail silently” and leave a “hanging connection”, with no error thrown, no log emitted, and a frontend that is just loading. Honestly, no idea what’s up with this. Yikes, these sorts of errors are so hard to debug. Especially if you don't have a real server to log into to get pcaps.

Cloudflare workers are not amazing in terms of communicating problems. The errors you get can also be out of sync with the docs and the support doesn't have access to poke at your issues directly. Together with the custom runtime and outdated TS types... it can be a very frustrating DX.

We’ve tried, but it’s hard to imagine any real production system using Cloudflare Workers..

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#18
This seems pretty similar to something that the ManticoreSearch team released a year ago

https://manticoresearch.com/blog/manticoresearch-github-issu...

You can index any GH repo and then search it with vector, keyword, hybrid and more. There's faceting and anything else you could ever want. And it is astoundingly fast - even vector search.

Here's the direct link to the demo https://github.manticoresearch.com/

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#19

Earlier quoted context omitted.

Cloudflare workers are not amazing in terms of communicating problems. The errors you get can also be out of sync with the docs and the support doesn't have access to poke at your issues directly. Together with the custom runtime and outdated TS types... it can be a very frustrating DX.

We’ve tried, but it’s hard to imagine any real production system using Cloudflare Workers..

I've done it, but: enterprise support helps a lot, multiple extremely annoying tickets were required, I did find multiple issues - some fixed, some worked around. And overall, the fewer people use CF (or another provider of their size) the better.

Re: Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed

#20
post #5
post #2

Author here. Over the last few months, I have built and launched a free semantic search tool for GitHub called SemHub ( https://semhub.dev/ ). In this blog post, I share what I’ve learned and why I’ve failed, so that other builders can learn from my experience. This blog post runs long and I have sign-posted each section. I have marked the sections that I consider the particularly insightful with an asterisk (*). I h…

SST: https://github.com/sst/sst - vaguely similar to CDK but can also manage some non-AWS resources and seems TypeScript-only

Apparently they started on top of cdk - then migrated to pulumni adding support for terraform providers.

Looks like one of the more interesting deploy toolkits I've seen in a while.

Post reply on HN