Sourcegraph: Difference between revisions

Content deleted Content added
OSS was dropped
Copyediting.
Line 23:
 
== History ==
Sourcegraph was developed by [[Stanford University|Stanford]] graduates Quinn Slack and Beyang Liu and was first released in 2013.<ref name="vb1">{{Cite web |last=Sawers |first=Paul |date=2020-03-03 |title=Sourcegraph raises $23 million to bring universal code search to all developers |url=https://venturebeat.com/business/sourcegraph-raises-23-million-to-bring-universal-code-search-to-all-developers/ |access-date=2022-11-18 |website=VentureBeat}}</ref><ref name="at">{{Cite web |last=Salter |first=Jim |date=2020-10-01 |title=Sourcegraph: Devs are managing 100x more code now than they did in 2010 |url=https://arstechnica.com/gadgets/2020/10/sourcegraph-devs-are-managing-100x-more-code-now-than-they-did-in-2010/ |access-date=2022-11-18 |website=Ars Technica}}</ref> Partly inspired by Liu's experience using [[Google Code Search]] while he was a Google intern,<ref name="cl">{{Cite podcast |url=https://changelog.com/podcast/217 |title=Sourcegraph the 'Google for Code' |website=Changelog |host=Adam Stacoviak |date=2016-08-16 |access-date=2022-11-21 }}</ref> Sourcegraph was developeddesigned to "tackle the big code problem" by enabling developers to manage large [[codebase]]s that span multiple repositories, programming languages, file formats, and projects.<ref name="vb2">{{Cite web |last=Sawers |first=Paul |date=2020-12-03 |title=Sourcegraph raises $50 million to tackle 'big code' problems with universal search |url=https://venturebeat.com/business/sourcegraph-raises-50-million-to-tackle-big-code-problems-with-universal-search/ |access-date=2022-11-21 |website=VentureBeat}}</ref>
 
Sourcegraph can be used to search and analyze all of an organization's code.<ref name="at"/> During search indexing, the platform builds a global reference graph, whichthat maps an entire codebase and enables functionality such as "go to definition".<ref>{{Cite web |url=https://thenewstack.io/google-that-code-how-sourcegraph-simplifies-development/ |title=Google That Code: How Sourcegraph Simplifies Development |last=Ramji |first=Sam |date=2022-12-22 |access-date=2023-02-20 |website=The New Stack}}</ref>
 
Sourcegraph software was initially self-hosted by each customer on their own infrastructure.<ref name="vb4">{{Cite web |last=Sawers |first=Paul |date=2021-08-19 |title=Sourcegraph plans to index the entire open source web |url=https://venturebeat.com/business/sourcegraph-plans-to-index-the-entire-open-source-web/ |access-date=2022-10-03 |website=VentureBeat |language=en-US}}</ref> Early customers included [[Uber]], [[Dropbox]], and [[Lyft]].<ref name="vb4"/><ref>{{Cite web |url=https://about.sourcegraph.com/blog/enterprise-cloud |title=Sourcegraph Cloud: secure, scalable, dedicated instances for enterprises |last=Slack |first=Quinn |date=2022-09-27 |access-date=2022-11-21 |website=Sourcegraph Blog}}</ref>
 
In 2016, Sourcegraph was criticized<ref>{{Cite web |url=https://www.techrepublic.com/article/fair-source-licensing-is-the-worst-thing-to-happen-to-open-source-definitely-maybe/ |title=Fair Source licensing is the worst thing to happen to open source-definitely maybe |last=Asay |first=Matt |date=2016-04-01 |access-date=2022-11-21 |website=TechRepublic|archive-url=https://web.archive.org/web/20211107170119/https://www.techrepublic.com/article/fair-source-licensing-is-the-worst-thing-to-happen-to-open-source-definitely-maybe/ |archive-date=2021-11-07 }}</ref> for being provided with a Fair Source License with the developers explaining<ref>{{cite report |first=Nadia |last=Eghbal |date=2016 |title=Roads and bridges. The Unseen labor behind our digital infrastructure |url=http://brochures.sisalp.fr/roads-and-bridges-the-unseen-labor-behind-our-digital-infrastructure.pdf |pages=94–95 |access-date=2022-12-14}}</ref><ref>{{Cite web |title=Fair Source License |url=https://fair.io/?a |access-date=2022-11-21 |website=Fair Source License official website}}</ref><ref name="cl" /> that "all of Sourcegraph’s source code is publicly available and hackable"<ref>{{Cite web |title=The Sourcegraph developer release: A better way to discover and understand code |url=https://about.sourcegraph.com/blog/the-sourcegraph-developer-release-a-better-way-to-discover-and-understand-code |date=2016-05-30 |access-date=2022-11-21 |website=Sourcegraph Blog |language=en}}</ref> and was aimedintended to "help open sourcers strike a balance between getting paid and preserving their values".<ref>{{Cite magazine |url=https://www.wired.com/2016/03/former-open-sourcers-ask-companies-pay-fair-share/ |title=One Startup's Heretical Plan to Turn Open Source Code Into Cash |last=Finley |first=Klint |date=2016-03-29 |access-date=2022-11-21 |magazine=Wired}}</ref> In 2018, Sourcegraph was licensed under the [[Apache License|Apache License 2.0]].,<ref name="dc">{{Cite web |last=Schmidt |first=Julia |date=2018-10-02 |title=Sourcegraph pulls back the curtain, becomes open source project |url=https://devclass.com/2018/10/02/sourcegraph-becomes-open-source-project/ |access-date=2022-11-21 |website=DevClass}}</ref><ref>{{Cite podcast |url=https://futureofcoding.org/episodes/032.html |title=Basic Developer Human Rights: Quinn Slack |website=Future of Coding |host=Steve Krouse |date=2019-10-24 |access-date=2022-11-21}}</ref> and Sourcegraph OSS has since been released under the Apache License 2.0. while theThe commercial version, Sourcegraph Enterprise, has been released under its own license.<ref>{{Cite web |title=Licensing |url=https://handbook.sourcegraph.com/departments/engineering/product/process/gtm/licensing/#sts=Talking%20about%20license,%20plans,%20users |access-date=2022-11-21 |website=Sourcegraph Handbook}}</ref> In 2023, Sourcegraph was criticized<ref>{{Cite web |title=Seriously, don't sign a CLA |url=https://drewdevault.com/2023/07/04/Dont-sign-a-CLA-2.html |access-date=2023-07-05 |website=drewdevault.com}}</ref> for dropping the Apache license for most of its code, leaving it public but only available under theirits enterpriseEnterprise license.<ref>{{Cite web |title=relicense all paths other than MIT licensed code, client/cody*, jetbr… · sourcegraph/sourcegraph@3cd931e |url=https://github.com/sourcegraph/sourcegraph/commit/3cd931ef54407c966fc3a5940a06f0b95a7aadd0 |access-date=2023-07-05 |website=GitHub |language=en}}</ref>
 
In 2019, Sourcegraph was integrated into the [[GitLab]] codebase, giving GitLab users access to a [[Web browser|browser]]-based developer platform.<ref>{{Cite web |title=Native code intelligence is coming to GitLab |url=https://about.gitlab.com/blog/2019/11/12/sourcegraph-code-intelligence-integration-for-gitlab/ |access-date=2022-10-03 |website=GitLab |language=en}}</ref>
 
In 2021, a browser-based portal became available, enablingallowing users to searchbrowse open-source projects and personal private code for free.<ref name="vb4"/>
In 2022, Sourcegraph Cloud, a commercial single-tenant cloud solution for organizations with overmore than 100 developers, was launched.<ref>{{cite web |last=Slack |first=Quinn |date=2022-08-27 |title=Sourcegraph Cloud: secure, scalable, dedicated instances for enterprises |url=https://about.sourcegraph.com/blog/enterprise-cloud |access-date=2022-12-05 |website=Sourcegraph}}</ref><ref name="vb4"/>
 
== Applications ==
In research, Sourcegraph has been appliedused to develop [[data mining]] methods for [[Downstream (software development)|downstream]] [[Coupling (computer programming)|dependencies]]<ref>{{Citation |last1=Thiede |first1=Christoph |last2=Limberger |first2=Daniel |last3=Scheibel |first3=Willy |last4=Döllner |first4=Jürgen | contribution=Augmenting Library Development by Mining Usage Data from Downstream Dependencies | year=2022 |title=17th International Conference on Evaluation of Novel Approaches to Software Engineering |publisher=ENASE | contribution-url=https://www.scitepress.org/PublicationsDetail.aspx?ID=cXF3UOIDuTY=&t=1}}</ref> and to aidassist in the refactoring and translation oftranslating a program into its equivalent in a differentanother programming language.<ref>{{Cite thesis |type=MSc |last= Haavisto |first= Juuso |date=2020 |title=Leveraging APL and SPIR-V languages to write network functions to be deployed on Vulkan compatible GPUs |publisher=Université de Lorraine |url=https://hal.inria.fr/hal-03155647/document |access-date=2022-12-15}}</ref>
 
Sourcegraph is used in the [[CERN]] Accelerator Control software community to index code, quickly search through it, and creategenerate statistics on code.<ref>{{cite journal |last1= Voirin |first1=R. |last2=Vanden Eynden |first2=M. |last3= Oulevey |first3=T. |date=2022 |title=The State of Containerization in CERN Accelerator Controls |url=https://cds.cern.ch/record/2809570 |journal=JACoW |volume=ICALEPCS |issue=2021 |pages=829–834 |doi=10.18429/JACoW-ICALEPCS2021-THBL03 |access-date=2022-12-15}}</ref>
 
In [[Computer security|cybersecurity]], Sourcegraph has been used forto gain better insightsinsight into source code during penetration teststesting.<ref>{{cite book |last=Rehberger |first=Johann |year=2020 |title=Cybersecurity Attacks – Red Team Strategies: A practical guide to building a penetration testing program having homefield advantage |publisher=Packt Publishing Ltd |pages=216–224 |isbn=9781838825508}}</ref>
 
As of July 2021, some of Sourcegraph's customers include [[Adidas]], [[Lyft]], [[Uber]], [[Yelp]],<ref name="auto5">{{Cite web |date=2020-04-03 |title=Q&A: Sourcegraph's Universal Code Search Tool |url=https://spectrum.ieee.org/sourcegraph-universal-code-search-tool |access-date=2022-10-03 |website=IEEE Spectrum |language=en}}</ref> [[Plaid (company)|Plaid]], [[General Electric|GE]], [[Atlassian]],<ref name="tc">{{Cite web |last=Miller |first=Ron |date=2021-07-13 |title=Sourcegraph raises $125M Series D on $2.6B valuation for universal code search tool |url=https://techcrunch.com/2021/07/13/sourcegraph-raises-125m-series-d-on-2-6b-valuation-for-universal-code-search-tool/ |access-date=2022-10-03 |website=TechCrunch |language=en-US}}</ref> [[Amazon (company)|Amazon]], [[PayPal]], [[Qualtrics]], and [[Cloudflare]].<ref name="vb2" />
 
== Core features ==
Code can be searched and navigated fromthrough the Sourcegraph web [[User interface|UI]] or usingthrough browser and [[Integrated development environment|IDE]] extensions and [[text editor]] plugins.<ref name="lwn"/> Sourcegraph supports over 30 programming languages and integrates with GitHub and GitLab for code hosting, Codecov for code coverage, and Jira Software for project management.<ref name="auto5"/>
 
=== Code Search ===
Sourcegraph's "universal code search" tool is used to search, explore, and understand code.<ref name="vb1"/><ref>{{Cite web |last=Liu |first=Beyang |date=2020-01-15 |title=Sourcegraph: Universal code search and intelligence |url=https://www.infoworld.com/article/3514213/sourcegraph-universal-code-search-and-intelligence.html |website=InfoWorld |access-date=2022-12-05}}</ref> SearchThe search can be implemented across multiple repositories and code hosting platforms. SearchSearches can be [[Literal (computer programming)|literal]], [[regular expression]], or structural. StructuralThe structural search syntax is language-aware and handles nested expressions and multi-line statements better than regular expressions.<ref name="lwn"/> Sourcegraph's Code Search uses a variationvariant of Google's [[PageRank]] algorithm to rank results by relevance.<ref>{{Cite web |last=Yegge |first=Steve |date=2022-11-08 |title=Rethinking search results ranking on Sourcegraph.com |url=https://about.sourcegraph.com/blog/new-search-ranking |website=Sourcegraph |access-date=2022-12-06}}</ref>
 
=== Code Navigation ===
Line 55:
 
=== Batch Changes ===
Sourcegraph's Batch Changes feature allowsenables developers and companies to automate and track large-scale code refactorsrefactoring, security fixes, and migrations across repositories and code hosts.<ref>{{Cite web |date=2021-03-24 |title=Sourcegraph Batch Changes Offers Automation for Large-Scale Code Changes |url=https://www.dbta.com/Editorial/News-Flashes/Sourcegraph-Batch-Changes-Offers-Automation-for-Large-Scale-Code-Changes-145930.aspx |access-date=2023-02-08 |website=Database Trends and Applications |language=en-US}}</ref>
 
=== Code Insights ===
Sourcegraph's Code Insights feature extracts data from a codebase to provide detailed analytics and visualizations to track the statehealth and progress of a code project.<ref>{{Cite web |last=Sawers |first=Paul |date=2022-03-10 |title=With Code Insights, Sourcegraph gives developers a better understanding of their codebase |url=https://venturebeat.com/dev/with-code-insights-sourcegraph-gives-developers-a-better-understanding-of-their-codebase/ |access-date=2022-10-03 |website=VentureBeat |language=en-US}}</ref>
 
== Ownership ==
The software is developed by a company of the same name and has raised a total of almostnearly $225 million in financingfunding to date.{{Citation needed|date=May 2023}}
 
== See also ==