9 ms·
Steve Yegge Joins as Head of Engineering of Sourcegraph
- jeffbee 4y agoArticle raises 2 questions for me. 1) How can you write this whole article without saying "Kythe"? 2) How exactly can github search be as bad as it is? With all of Microsoft behind it, you'd think it would be a lot better than it is.
- JonChesterfield 4y agoEspecially given how great Bing is
- amir 4y agocs.github.com is considerably better than regular github search
- yodon 4y agoBased on the URL I thought this was going to be some kind of C#-specific thing. Finding a technology preview for a radically improved cross-language code search capability within GitHub was an unexpectedly nice surprise.
- jeffbee 4y agoAnd it is still garbage. Can it differentiate between the declaration, definition, and calls of a function Foo, versus just substrings "Foo" found anywhere in the file, such as comments? Nope.
- llimllib 4y agoPlus it's still a sea of duplicates, so frustrating
- iamstupidsimple 4y ago> 1) How can you write this whole article without saying "Kythe"? Well, it does discuss Grok (the closed source predecessor) extensively.
- _steve_yegge_ 4y agoKythe was slightly after my time on Grok. It was a side-effort by the Grok team, and it's frankly a miracle they got it out at all. Google only really supports a few big open-source projects - Chrome, YT, k8s. Kythe fell waaaay below the line. I'll be taking another look at Kythe, and reaching out to the current Grok team, as we expand scip. But ultimately it didn't matter what protocol/format we standardize on. We just need to standardize. So it's scip!
- beyang 4y agoSourcegraph CTO here. We're elated to welcome Steve to the team and will be hosting a Twitter live / AMA (https://twitter.com/sourcegraph/status/1577364344056201236 https://twitter.com/sourcegraph/status/1577364344056201236) with him tomorrow at 1pm PT. Join us if you're free!
- JonChesterfield 4y agoThis would be a great ad for compiler devs if you include an opening for them under engineering on the page it links to.
- beyang 4y ago^ Link is broken, but the Twitter Live is still happening at the designated time (tomorrow, Wednesday, 1pm PT)
- beyang 4y agoUpdated link: https://twitter.com/sourcegraph/status/1577420437671190528?s=20&t=c6mbezvNdyPkXAUP_XCzUg https://twitter.com/sourcegraph/status/1577420437671190528?s...
- belfalas 4y agoThe length of the article is how you know it's the real Steve Yegge. :) Youngbloods: if you have not spent time with Steve Yegge's old writings, please go check them out. Much good received wisdom there.
- damontal 4y agoI'm still bummed he never finished his "Programmer's View of The Universe" series
- _steve_yegge_ 4y agoOh, I'm still writing it. The next installment is a novel. Thank you for your interest. :)
- willismichael 4y agoMake sure that your estate planning includes a contract with Brandon Sanderson to finish the series after you die.
- adamkl 4y agoI've always enjoyed this one: https://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html https://steve-yegge.blogspot.com/2006/03/execution-in-kingdo...
- _cbsz 4y agoI loved it when I was younger, but I had trouble recommending it more recently because its tone is adjacent to personally attacking people who like Java.
- adamkl 4y agoAgree, but it helps to remember that it’s a product of its time. Feels like we’re overdue for a similar piece poking fun at Node/JavaScript and all of its foibles.
- wyldfire 4y ago> But you don’t have to join Sourcegraph to be able to party with us. Our code and our development are public Oh cool - AFAICT, that "our code" link is a link to a demo instance of sourcegraph on sourcegraph's code. This looks like an interesting product. And it's open source? What's present in the commercial offering that's missing from the open source one? Just support, or features too?
- beyang 4y agoSourcegraph's licensing is open core (similar to GitLab): https://handbook.sourcegraph.com/departments/engineering/product/process/gtm/licensing https://handbook.sourcegraph.com/departments/engineering/pro.... Our code is public, regardless of whether it is open-source or enterprise licensed. The open source code includes most of the product features; the enterprise code includes things like enterprise AuthN, AuthZ, and admin capabilities that are needed for large companies to use Sourcegraph. Sourcegraph.com/search indexes over 6 million open-source libraries, nearly every github.com repository with at least 5 stars and the most popular projects across NPM, PyPI, Maven Central, and many more independent projects and code hosts.
- deng 4y agoIsn't the main caveat of the OSS version that you can't use any extensions? Last time I checked, most of the stuff that made Sourcegraph actually interesting for me were extensions, so the OSS version was fairly limited in what it could do.
- Maxious 4y agoExtensions are being deprecated anyway https://about.sourcegraph.com/blog/release/4.0#:~:text=Your%20favorite%20extensions%20are%20now%20available%20by%20default https://about.sourcegraph.com/blog/release/4.0#:~:text=Your%...
- yodon 4y agoI can't help but read Steve Yegge's announcement in the context of Novig's Law ("compiler research leads to a doubling of compute power every 18 years")[0]. If his presence and enthusiasm can get the compiler community aiming its collective brain power at real developer productivity problems (the why behind SourceGraph's exponential growth) rather than focused on compiler optimization problems, this is going to be a really great time to be writing software! [0] https://norvig.com/norvigs-law.html https://norvig.com/norvigs-law.html
- jldugger 4y agoSmall nit: if you actually read your citation, it's not Norvig's law, but Proebsting's law[1]. It's a pessimistic spoof of Moore's law, but IMO just reflects how much closer to optimal we started from than the first transistors were. Or maybe how much of a head start we've had doing this on paper for centuries. Like, I would frankly be surprised if we ever got more than one doubling out of Proebsting's law. [1]: https://www.gwern.net/docs/cs/algorithm/2001-scott.pdf https://www.gwern.net/docs/cs/algorithm/2001-scott.pdf
- yodon 4y agoYou're right - Norvig is a much easier name for me to remember than Proebstring, which probably has something to do with why I misfiled the law mentally.
- mandevil 4y agoReading your cite, Norvig's law is different. He credits Todd Proebsting with that observation. (Peter Norvig's law is that something that is at 50% adoption will never double again.)
- bastardoperator 4y agoHow does sourcegraph compare to the new/beta https://cs.github.com https://cs.github.com?
- beyang 4y ago* Full code intelligence platform (not just code search) with Code Insights for tracking trends (https://about.sourcegraph.com/code-insights https://about.sourcegraph.com/code-insights) and Batch Changes for large-scale refactors (https://about.sourcegraph.com/batch-changes https://about.sourcegraph.com/batch-changes) * Precise code navigation (vs. more fuzzy-level nav), powered by SCIP (spiritual successor to Grok, the system Steve built at Google) * More powerful search language beyond regex (supports comby.dev) + user-friendly (smart search) * Works across multiple GitHub instances + other code hosts (GitLab, Bitbucket, Perforce, enterprise Git repositories) * Self-hosted deployment and enterprise scale cs.github.com is a significant improvement over github.com/search—kudos to the team there!—but is about feature parity with something like OpenGrok, Hound, or Google Code Search before Steve built and integrated Grok (primarily cross-codebase regex search).
- themagnum 4y ago> cs.github.com is a significant improvement over github.com/search It's a significant improvement, but still frustrating to use (especially after being spoiled by Google's codesearch). Sourcegraph has been far more pleasant to use in my experience (e.g., faster and more relevant navigation).
- jdorfman 4y agoWe index other code hosts besides just GH. Rust Dependencies (crates.io) Python Dependencies (PyPI) Go Dependencies NPM Dependencies src.fedoraproject.org JVM Dependencies GitLab.com GitHub Public and as of yesterday Savannah/GNU - https://github.com/sourcegraph/community/issues/38 https://github.com/sourcegraph/community/issues/38 More to come.
- criddell 4y agoI'm trying to figure out if Sourcegraph requires git and it's not clear to me. I saw a page about non-git code hosts but it looks like it still builds a git repository to mirror the actual repository. Is that correct?
- ta1993gh 4y agoWeren’t they just laying off a bunch of people? Now on a hiring spree?
- sk55 4y agoDoesn't seem like they're hiring many engineers right now if you check out the jobs page.
- swah 4y agoI haven't finished the article yet but someone please clarify to me: I thought "Language Server Protocol" had solved this?
- beyang 4y agoLSP has addressed the editor code nav problem, but not the "just works in my web browser across all my code and multiple revisions" problem or the "let me build on top of a structured representation of code to enhance all my dev tools" problem. LSP's sister protocol LSIF aims to address the indexed code nav use case, but Steve calls out some of its shortcomings in the post, and these motivated our development of a new protocol, SCIP: https://about.sourcegraph.com/blog/announcing-scip https://about.sourcegraph.com/blog/announcing-scip
- bb010g 4y agoOn SCIP support–is there an index like <https://lsif.dev/ https://lsif.dev/>, <https://langserver.org/ https://langserver.org/>, or <https://microsoft.github.io/debug-adapter-protocol/implementors/adapters/ https://microsoft.github.io/debug-adapter-protocol/implement...> for tooling using SCIP? (It doesn't have to be as fancy as those. A wiki page on <https://github.com/sourcegraph/scip https://github.com/sourcegraph/scip> would be fine.)
- typesanitizer 4y agoCreated a PR to mention tools using SCIP in the README. https://github.com/sourcegraph/scip/pull/101 https://github.com/sourcegraph/scip/pull/101
- dunk010 4y agoLSP was clearly inspired by Grok.
- hankchinaski 4y agoWho is Steve yegge?
- reidjs 4y agoHe wrote this great piece on Google: https://gist.github.com/chitchcock/1281611 https://gist.github.com/chitchcock/1281611
- xapata 4y agoYou could have linked to Yegge's site.
- dunk010 4y agoHe had to take it down. It was only accidentally posted to Google Plus. Though we all benefitted in the end, because it's absolutely excellent.
- fomine3 4y agoBut what if Google+ doesn't exist, possibly some posts aren't written. SNS encourages people to write something. I remember some Linux/Unix developers or Googler wrote good posts on Google+. Perhaps they still write at somewhere but I don't know.
- germanjoey 4y agoIt is interesting reading that second paragraph many years later. Most of the things that Steve Yegge brags about that Google "does right" (e.g. how they do recruiting, their engineering "standards", SREs running products rather than the engineers, their cushy offices and benefits packages, etc) now read to me the opposite of the intended way. As in, they read more like a list of reasons why Google slowly declined from being the shining city on the hill to the dysfunctional embarrassment it is today.
- endtime 4y ago
- dilyevsky 4y agoWhen I investigated sg for former gig I found out that bazel was still not supported. How does uber uses it for their monorepo in that case?
- beyang 4y agoBazel support in what sense? We have basic code nav across every major language, select precise indexers known to work with Bazel (with some degree of work), and we have improved code nav for Bazel files themselves (https://github.com/sourcegraph/sourcegraph/pull/37858 https://github.com/sourcegraph/sourcegraph/pull/37858), too. Search, of course, works across all languages. Happy to chat more about supporting your specific build environment: https://discord.gg/mBVP4JVBcj https://discord.gg/mBVP4JVBcj
- dilyevsky 4y agoNot starlark files but code intel in a Go/C++/Java monorepo managed using Bazel. There’s an open ticket suggesting it’s not supported yet? https://github.com/sourcegraph/sourcegraph/issues/2982 https://github.com/sourcegraph/sourcegraph/issues/2982
- beyang 4y agoHmm, I think we might need to update that ticket. Here's some docs on Bazel support for Java/Scala precise code nav: https://sourcegraph.github.io/scip-java/docs/getting-started.html#bazel https://sourcegraph.github.io/scip-java/docs/getting-started.... Any languages you're looking for in particular?
- dilyevsky 4y agoGo (rules_go) and C++ primarily
- typesanitizer 4y agoFor C++, we do support Bazel via compile_commands.json; we have customers who have used it successfully. Depending on the editor you're using, you probably need to get Bazel to generate a compile_commands.json anyways. So core code navigation functionality ought to work. There are some issues with different language features (macros, newer C++17 and C++20 features), as well as robustness (crashes on indexing certain code) but we're looking into bringing C++ support up to par with other languages.
- dunk010 4y agoI've watched that Grok video a dozen times and drooled at the possibilities if it were available to the world at large. And now it is!! It'll also be nice that people will remember that Grok came long before LSP :P
- fsloth 4y agoWhat a nice read again - haven't had these in a while. I wonder what Mr. Yegge's position on the best language is nowadays.
- softwarebeware 4y agoSomeone help me understand what I'm missing. It sounds like in this article Steve Yegge is describing a tool like Atlassian Fisheye or grepcode and talking about it like it doesn't exist. These tools are out there. I don't see what's missing.
- rfoo 4y agoI've never tried grepcode before it's gone (not a Java guy), but what I miss most is precise reverse search, i.e. "find all reference", instead of "go to definition". For example, try Chromium code search: https://source.chromium.org/chromium/chromium/src/+/main:v8/src/objects/bigint.h;l=207;bpv=1;bpt=1?q=BigInt&ss=chromium%2Fchromium%2Fsrc https://source.chromium.org/chromium/chromium/src/+/main:v8/... Click on the "ToBoolean" function, it brings up all call sites across all Chromium projects.
- beyang 4y agoWe have that! https://sourcegraph.com/github.com/golang/go/-/blob/src/net/http/server.go?L86:6&subtree=true#tab=references https://sourcegraph.com/github.com/golang/go/-/blob/src/net/... * Works cross-repositories, over our indexed corpus of 6M OSS repositories, or your private code * Multi-language (some projects at compiler accuracy, some at CTAGS-level accuracy)
- beyang 4y agoSourcegraph : FishEye :: Google + Chrome : Alta Vista + IE5
- prepend 4y agoBut what is its relationship to Google + IE5?
- dadkins 4y ago"This was the first leadership interview loop in the past 12 months (20+ companies) in which anyone had asked me to write code." Interesting data point for the question: at what point in your career will you stop being asked to write code on a whiteboard to prove you aren't lying on your resume.
- prepend 4y agoI’ve never been through an interview cycle where candidates didn’t lie about this, so I assume pretty high. It always boggled my mind that people would claim programming skills but not be able to write hello world.
- adave 4y agoIf its not the pressure cooker, this is trick question and i am going to blast you for missing the return and void in parenthesis types question then we can partially blame the candidate. Many of us have faltered like this once or twice unless its an outright lie kind of situation.
- prepend 4y agoI’m not a fan of trick questions. It’s usually something as simple as “you have 10 minutes write out a program in any language you like that takes in a string and prints out the reverse.” The idea is just a litmus test and I don’t think it’s useful for filtering anything other than liars. I never had someone completely freeze up.
- deleted 4y ago[deleted]
- thot_experiment 4y agoI'm really curious to see how this plays out. My ex-roomate has a very bad experience working at sourcegraph and the way he was pushed out of the company left a bad taste in my mouth. I'm curious to see if Steve's brand is strong enough that he'll have the power to be able to improve the engineering culture, my fear is that this is a hire primarily for external optics reasons. Anyway, just sharing an anecdote and hope this works out well for all involved.
- prepend 4y agoI really like the idea of sourcegraph but the price seems bonkers. $100/month/user is more than I spend on ides, more than GitHub, the same as GitLab ultimate (that I don’t use because it’s so expensive), more than o365, more than windows, etc etc etc. I want to have source intelligence but I can’t see the biggest chunk of my dev stack to be sourcegraph.
- scarlet_lovah 4y agoI see the Steve Yegge cycle begins anew. 1 Join a company 2 write a lengthy, self-important diatribe/novella about why he joined 3 Write several lengthy, self-important diatribes, often namedropping previous places he worked and/or how he accidentally influenced some C level officer just by dint of his unique persona =) That rascally Steve! 4 Repeat step 3 anywhere between 10-50 times 5 Quit job, write lengthy self-important diatribe about why he left (optionally leaping straight into step 1 again, sometimes with a break inbetween) Should be an interesting 6 months for Sourcegraph, at least! Looking forward to seeing how this progresses.