Sourcegraph

Last updated
Sourcegraph
Company type Private
Industry Information technology
Founded2013
FounderQuinn Slack and Beyang Liu
ProductsCody, Code Search
Website about.sourcegraph.com

Sourcegraph Inc. is a company developing code search and code intelligence tool that semantically indexes and analyzes large codebases so that they can be searched across commercial, open-source, local, and cloud-based repositories. [1]

Contents

The company has two products available: Cody and Code Search. Code Search was initially released in 2013 under the name Sourcegraph, but was rebranded to Code Search when the company unveiled Cody in 2023. Both products support all major programming languages. [2]

History

Sourcegraph Inc. was founded in by Stanford graduates Quinn Slack and Beyang Liu to drive the development of a code search and code intelligence tool, formerly called Sourcegraph. It was first released in 2013 [3] [4] but was rebranded to Code Search in 2023. It was partly inspired by Liu's experience using Google Code Search while he was a Google intern, [5] It was designed to "tackle the big code problem" by enabling developers to manage large codebases that span multiple repositories, programming languages, file formats, and projects. [6]

Code Search was initially self-hosted by each customer on their own infrastructure. [7] Early customers included Uber, Dropbox, and Lyft. [7] [8] In 2016, Code Search was criticized [9] for being provided with a Fair Source License with the developers explaining [10] [11] [5] that "all of Sourcegraph’s [sic] source code is publicly available and hackable" [12] and was intended to "help open sourcers strike a balance between getting paid and preserving their values". [13] In 2018, Code Search was licensed under the Apache License 2.0, [14] [15] and Sourcegraph OSS has since been released under the Apache License 2.0. The commercial version, Code Search Enterprise, has been released under its own license. [16] In 2023, Code Search was criticized [17] for dropping the Apache license for most of its code, leaving it public but only available under its Enterprise license. [18]

In 2019, Code Search was integrated into the GitLab codebase, giving GitLab users access to a browser-based developer platform. [19] In 2021, a browser-based portal became available, allowing users to browse open-source projects and personal private code for free. [7] In 2022, Sourcegraph Cloud, a commercial single-tenant cloud solution for organizations with more than 100 developers, was launched. [20] [7]

Sourcegraph has raised a total of almost $225 million in financing to date. Its most recent $125 million Series D investment in 2021 valued the company at $2.625 billion, a 300% growth from its previous valuation in 2020. [21]

DateFunding TypeMoney Raised (USD)No. of InvestorsLead Investor
July 2021Series D round125,000,000 [21] 4 Andreessen Horowitz
December 2020Series C round50,000,000 [22] 1 Sequoia Capital
July 2020Series B round5,000,000 [23] 1Felicis Ventures
March 2020Series B round23,000,000 [24] 3 Craft Ventures
October 2017Series A round20,000,000 [25] 3Goldcrest Capital, Redpoint

In 2023 Sourcegraph Inc. unveiled their new product Cody, and rebranded Sourcegraph to Code Search.

Products

The company has two major products: Cody and Code Search.

Sourcegraph Cody

Cody is a free and open-source AI coding assistant that can help users write, fix, and maintain your code. It works by understanding an entire codebase and using that knowledge to provide context-aware assistance. including code generation, debugging, commenting, documentation, explaining, and answering questions regarding the code. Cody is available for Microsoft Visual Studio Code and most JetBrains IDEs.

Code Search
Developer(s) Sourcegraph, Inc.
Initial release2013
Stable release
5.2.0 / 3 October 2023
Repository https://github.com/sourcegraph/sourcegraph
Written in Go, TypeScript
Operating system Microsoft Windows, Linux, MacOS
Type Software intelligence
License Proprietary
Website about.sourcegraph.com

Sourcegraph's "universal code search" tool is used to search, explore, and understand code. [3] [26] supports over 30 programming languages and integrates with GitHub and GitLab for code hosting, Codecov for code coverage, and Jira Software for project management. [27] Code Search can be implemented across multiple repositories and code hosting platforms. Searches can be literal, regular expression, or structural. The structural search syntax is language-aware and handles nested expressions and multi-line statements better than regular expressions. [1] Sourcegraph's Code Search uses a variant of Google's PageRank algorithm to rank results by relevance. [28] Code Search can be used to search and analyze all of an organization's code. [4] During search indexing, the platform builds a global reference graph, that maps an entire codebase and enables functionality such as "go to definition". [29] Features include:

Code search has received adoption by such various sectors as

As of July 2021, Code search customers include Adidas, Lyft, Uber, Yelp, [27] Plaid, GE, Atlassian, [36] Amazon, PayPal, Qualtrics, and Cloudflare. [6]

See also

Related Research Articles

Version control is the software engineering practice of controlling, organizing, and tracking different versions in history of computer files; primarily source code text files, but generally any type of file.

<span class="mw-page-title-main">KDevelop</span> Integrated development environment

KDevelop is a free and open-source integrated development environment (IDE) for Unix-like computer operating systems and Windows. It provides editing, navigation and debugging features for several programming languages, and integration with build automation and version-control systems, using a plugin-based architecture.

<span class="mw-page-title-main">IntelliJ IDEA</span> Integrated development environment

IntelliJ IDEA is an integrated development environment (IDE) written in Java for developing computer software written in Java, Kotlin, Groovy, and other JVM-based languages. It is developed by JetBrains and is available as an Apache 2 Licensed community edition, and in a proprietary commercial edition. Both can be used for commercial development.

<span class="mw-page-title-main">Git</span> Distributed version control software system

Git is a distributed version control system that tracks versions of files. It is often used to control source code by programmers who are developing software collaboratively.

In software development, distributed version control is a form of version control in which the complete codebase, including its full history, is mirrored on every developer's computer. Compared to centralized version control, this enables automatic management branching and merging, speeds up most operations, improves the ability to work offline, and does not rely on a single location for backups. Git, the world's most popular version control system, is a distributed version control system.

In software development, a codebase is a collection of source code used to build a particular software system, application, or software component. Typically, a codebase includes only human-written source code system files; thus, a codebase usually does not include source code files generated by tools or binary library files, as they can be built from the human-written source code. However, it generally does include configuration and property files, as they are the data necessary for the build.

A source-code-hosting facility is a file archive and web hosting facility for source code of software, documentation, web pages, and other works, accessible either publicly or privately. They are often used by open-source software projects and other multi-developer projects to maintain revision and version history, or version control. Many repositories provide a bug tracking system, and offer release management, mailing lists, and wiki-based project documentation. Software authors generally retain their copyright when software is posted to a code hosting facilities.

<span class="mw-page-title-main">Mercurial</span> Distributed revision-control tool for software developers

Mercurial is a distributed revision control tool for software developers. It is supported on Microsoft Windows, Linux, and other Unix-like systems, such as FreeBSD and macOS.

<span class="mw-page-title-main">GitHub</span> Hosting service for software projects

GitHub is a developer platform that allows developers to create, store, manage and share their code. It uses Git software, providing the distributed version control of access control, bug tracking, software feature requests, task management, continuous integration, and wikis for every project. Headquartered in California, it has been a subsidiary of Microsoft since 2018.

Bitbucket is a Git-based source code repository hosting service owned by Atlassian. Bitbucket offers both commercial plans and free accounts with an unlimited number of private repositories.

Assembla is a web-based version control and project management software as a service provider for enterprises. It was founded in 2005 and acquired by Idera, Inc. in 2018. It offers Git, Perforce Helix Core and Apache Subversion repository management, integrations with other collaboration tools such as Trello, Slack, GitHub and JIRA. Assembla also offers integrations with customer's managed private clouds.

Redis is a source-available, in-memory storage, used as a distributed, in-memory key–value database, cache and message broker, with optional durability. Because it holds all data in memory and because of its design, Redis offers low-latency reads and writes, making it particularly suitable for use cases that require a cache. Redis is the most popular NoSQL database, and one of the most popular databases overall. Redis is used in companies like Twitter, Airbnb, Tinder, Yahoo, Adobe, Hulu, Amazon and OpenAI.

<span class="mw-page-title-main">Windows Package Manager</span> Official open-source package manager for Windows 10/11

The Windows Package Manager is a free and open-source package manager designed by Microsoft for Windows 10 and Windows 11. It consists of a command-line utility and a set of services for installing applications. Independent software vendors can use it as a distribution channel for their software packages.

<span class="mw-page-title-main">RhodeCode</span> German software company

RhodeCode is an open source self-hosted platform for behind-the-firewall source code management. It provides centralized control over Git, Mercurial, and Subversion repositories within an organization, with common authentication and permission management. RhodeCode allows forking, pull requests, and code reviews via a web interface.

GitLab Inc. is an open-core company that operates GitLab, a DevOps software package that can develop, secure, and operate software. GitLab includes a distributed version control based on Git, including features such as access control, bug tracking, software feature requests, task management, and wikis for every project, as well as snippets.

<span class="mw-page-title-main">Gitter</span> Open source messaging software

Gitter is an open-source instant messaging and chat room system for developers and users of GitLab and GitHub repositories. Gitter is provided as software-as-a-service, with a free option providing all basic features and the ability to create a single private chat room, and paid subscription options for individuals and organisations, which allows them to create arbitrary numbers of private chat rooms.

Perforce Software, Inc. is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle management, web application servers, debugging tools, platform automation, and agile planning software.

Wercker is a Docker-based continuous delivery platform that helps software developers build and deploy their applications and microservices. Using its command-line interface, developers can create Docker containers on their desktop, automate their build and deploy processes, testing them on their desktop, and then deploy them to various cloud platforms, ranging from Heroku to AWS and Rackspace. The command-line interface to Wercker has been open-sourced.

<span class="mw-page-title-main">Netlify</span> American cloud computing company

Netlify is a remote-first cloud computing company that offers a development platform that includes build, deploy, and serverless backend services for web applications and dynamic websites.

Mattermost is an open-source, self-hostable online chat service with file sharing, search, and third party application integrations. It is designed as an internal chat for organisations and companies, and mostly markets itself as an open-source alternative to Slack and Microsoft Teams.

References

  1. 1 2 3 4 Hoyt, Ben (2020-08-17). "Searching code with Sourcegraph". LWN.net. Retrieved 2022-10-03.
  2. Slack, Quinn (2019-02-08). "Announcing Sourcegraph 3.0". Sourcegraph official website. Retrieved 2022-11-18.
  3. 1 2 Sawers, Paul (2020-03-03). "Sourcegraph raises $23 million to bring universal code search to all developers". VentureBeat. Retrieved 2022-11-18.
  4. 1 2 Salter, Jim (2020-10-01). "Sourcegraph: Devs are managing 100x more code now than they did in 2010". Ars Technica. Retrieved 2022-11-18.
  5. 1 2 Adam Stacoviak (2016-08-16). "Sourcegraph the 'Google for Code'". Changelog (Podcast). Retrieved 2022-11-21.
  6. 1 2 Sawers, Paul (2020-12-03). "Sourcegraph raises $50 million to tackle 'big code' problems with universal search". VentureBeat. Retrieved 2022-11-21.
  7. 1 2 3 4 Sawers, Paul (2021-08-19). "Sourcegraph plans to index the entire open source web". VentureBeat. Retrieved 2022-10-03.
  8. Slack, Quinn (2022-09-27). "Sourcegraph Cloud: secure, scalable, dedicated instances for enterprises". Sourcegraph Blog. Retrieved 2022-11-21.
  9. Asay, Matt (2016-04-01). "Fair Source licensing is the worst thing to happen to open source-definitely maybe". TechRepublic. Archived from the original on 2021-11-07. Retrieved 2022-11-21.
  10. Eghbal, Nadia (2016). Roads and bridges. The Unseen labor behind our digital infrastructure (PDF) (Report). pp. 94–95. Retrieved 2022-12-14.
  11. "Fair Source License". Fair Source License official website. Retrieved 2022-11-21.
  12. "The Sourcegraph developer release: A better way to discover and understand code". Sourcegraph Blog. 2016-05-30. Retrieved 2022-11-21.
  13. Finley, Klint (2016-03-29). "One Startup's Heretical Plan to Turn Open Source Code Into Cash". Wired. Retrieved 2022-11-21.
  14. Schmidt, Julia (2018-10-02). "Sourcegraph pulls back the curtain, becomes open source project". DevClass. Retrieved 2022-11-21.
  15. Steve Krouse (2019-10-24). "Basic Developer Human Rights: Quinn Slack". Future of Coding (Podcast). Retrieved 2022-11-21.
  16. "Licensing". Sourcegraph Handbook. Retrieved 2022-11-21.
  17. "Seriously, don't sign a CLA". drewdevault.com. Retrieved 2023-07-05.
  18. "relicense all paths other than MIT licensed code, client/cody*, jetbr… · sourcegraph/sourcegraph@3cd931e". GitHub. Retrieved 2023-07-05.
  19. "Native code intelligence is coming to GitLab". GitLab. Retrieved 2022-10-03.
  20. Slack, Quinn (2022-08-27). "Sourcegraph Cloud: secure, scalable, dedicated instances for enterprises". Sourcegraph. Retrieved 2022-12-05.
  21. 1 2 Miller, Ron (2021-07-13). "Sourcegraph raises $125M Series D on $2.6B valuation for universal code search tool". TechCrunch. Retrieved 2022-10-03.
  22. Sawers, Paul (2020-12-03). "Sourcegraph raises $50 million to tackle 'big code' problems with universal search". VentureBeat. Retrieved 2022-11-21.
  23. "Sourcegraph Raises Additional $5M in Series B Funding". FINSMES. 2020-07-15. Retrieved 2022-10-03.
  24. Sawers, Paul (2020-03-03). "Sourcegraph raises $23 million to bring universal code search to all developers". VentureBeat. Retrieved 2022-11-18.
  25. "Sourcegraph Raises $20M in Series A Funding". FINSMES. 2017-10-06. Retrieved 2022-12-05.
  26. Liu, Beyang (2020-01-15). "Sourcegraph: Universal code search and intelligence". InfoWorld. Retrieved 2022-12-05.
  27. 1 2 "Q&A: Sourcegraph's Universal Code Search Tool". IEEE Spectrum. 2020-04-03. Retrieved 2022-10-03.
  28. Yegge, Steve (2022-11-08). "Rethinking search results ranking on Sourcegraph.com". Sourcegraph. Retrieved 2022-12-06.
  29. Ramji, Sam (2022-12-22). "Google That Code: How Sourcegraph Simplifies Development". The New Stack. Retrieved 2023-02-20.
  30. "Sourcegraph Batch Changes Offers Automation for Large-Scale Code Changes". Database Trends and Applications. 2021-03-24. Retrieved 2023-02-08.
  31. Sawers, Paul (2022-03-10). "With Code Insights, Sourcegraph gives developers a better understanding of their codebase". VentureBeat. Retrieved 2022-10-03.
  32. Thiede, Christoph; Limberger, Daniel; Scheibel, Willy; Döllner, Jürgen (2022), "Augmenting Library Development by Mining Usage Data from Downstream Dependencies", 17th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE
  33. Haavisto, Juuso (2020). Leveraging APL and SPIR-V languages to write network functions to be deployed on Vulkan compatible GPUs (MSc). Université de Lorraine. Retrieved 2022-12-15.
  34. Voirin, R.; Vanden Eynden, M.; Oulevey, T. (2022). "The State of Containerization in CERN Accelerator Controls". JACoW. ICALEPCS (2021): 829–834. doi:10.18429/JACoW-ICALEPCS2021-THBL03 . Retrieved 2022-12-15.
  35. Rehberger, Johann (2020). Cybersecurity Attacks – Red Team Strategies: A practical guide to building a penetration testing program having homefield advantage. Packt Publishing Ltd. pp. 216–224. ISBN   9781838825508.
  36. Miller, Ron (2021-07-13). "Sourcegraph raises $125M Series D on $2.6B valuation for universal code search tool". TechCrunch. Retrieved 2022-10-03.