Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Building Sourcegraph, a large-scale code search engine in Go (sourcegraph.com)
53 points by geetarista on July 14, 2014 | hide | past | favorite | 11 comments


I've used the "first" (?) version of Sourcegraph and now this new one, and I have to say I'm a huge fan. I'm learning Go in the evenings and I was struggling to grasp some of the concepts in Go and how to use the Gorilla package. Personally, I learn better after I skim the API, look at an example and rinse/repeat as needed. For me, Sourcegraph is a great way to help speed up that process of finding that one example that helps make whatever it is "click".

I've been using their Chrome Extension because it injects their stuff right onto Github pages. Now all they need to do is make one for Firefox, so I can go back to Firefox.

Disclaimer: I meet Quinn at GopherCon and we talked about Sourcegraph. I loved the idea then, and I still do now.


This looks very nice; automated access to and analysis of the huge amounts of source code on the Internet could be a game changer for programmers everywhere.

As an aside, when I saw Google in the URL I thought that this was a rebranding of Steve Yegge's "Grok"[0] project. Does anyone know what's happened to that?

[0] https://www.youtube.com/watch?v=KTJs-0EInW8


Oh, thanks for posting this! I'm the author (and one of the co-creators of Sourcegraph at https://sourcegraph.com), and I'm happy to answer any questions anyone has here.


Can you share the technology & methods sourcegraph use for syntax/semantic analysis?

If there is a brief comparison of tools you have tried and abandoned it would be really really helpful.

The accuracy of whatever working behind the scene is simply amazing.


Yeah, it's almost all open source now and we're releasing the last bits (plus the coordination code) between now and next week.

We will post another article when it's ready next week. Email me at sqs at sourcegraph.com in the meantime if you are too curious to wait. :)


What made you/your team decide to do this in Go?


We chose Go because it offers amazing facilities for introspecting its own source code, such as go/doc (http://golang.org/pkg/go/doc/ and https://sourcegraph.com/code.google.com/p/go/.GoPackage/go/d...) and go/types. So, it was the obvious choice to use to prototype Sourcegraph. The reputation of the core team and our initial experience learning it were also factors.


IMO this kind of projects/applications is where Go really shines.


"Here are the techniques and glue code we use to make it all work in the absence of a framework."

Well, there's your framework...


Does anyone here use Sourcegraph? It would be extremely useful to easily find example uses of libraries etc.


I use it to study Go projects source code, powerful than all the other IDE/editors.




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

Search: