<aside> ℹ️ This is a glossary of terms you might hear working at Sourcegraph. Although we try to minimize the use of acronyms, they do appear from time to time and this can be a helpful resource to figure out what people are talking about. In your day to day, try to avoid using them, or at least explain them the first time you use them.

</aside>

Technical Terms

Term Definition
GQL GraphQL (a type of API, sort of like HTTP or Rest APIs)
VSCE VS Code Extension, referring to either the Sourcegraph integration extension for the VS Code IDE, or the Microsoft tool called ‘vsce’ used to publish extensions
Bext Brower extension, sometimes pronounced literally as “bext” or “baxt”
LSIF Language Server index Format, a specification created by Microsoft which Sourcegraph uses to provide code intelligence.
RFC Request for comments
RFH Request for help
RCE Remote code execution (a security vulnerability)
MSP Managed Services Platform. The standardized tooling and infrastructure for deploying and operating managed Sourcegraph services.
SAMS Sourcegraph Accounts Management System. The centralized accounts system for all of the Sourcegraph-operated systems.
SSC Self-Serve Cody. The system that lets PLG customers sign up for Sourcegraph and manage their subscription.
SSRF Server side request forgery (a security vulnerability)
SEO Search engine optimization, making Google understand our web pages better
SSBC Server-side batch changes. Large scale code refactoring that runs as part of the Sourcegraph server, rather than on a developer’s laptop.
POC Proof of concept
PR Pull request, where code is sent to be reviewed before becoming a part of the product
TODO A note left in the code as a comment indicating something we should do
DFS Damn Fine Source code
Easy stamp, stamp please Change that needs approval but not review
CI Continuous Integration, a server that runs our tests and ensures things are not broken. Often stated as “CI is failing” and “CI is slow”
Dogfood Either k8s.sgdev.org (the “dogfood” instance) or just saying “we should try what we built” in general
dev Someone who can barely write code, but does so professionally
k8s Kubernetes, a thing for deploying software across multiple computers. The “8” is because there are 8 characters between the letter K and s. Kubernetes
a11y Accessibility, the “11” is because there are 11 characters between the letter A and Y. accessibility
i18n Internationalization, like having the UI show in multiple languages.
GCP Google Cloud Platform, servers hosted on Google’s cloud
AWS Amazon Web Services, servers hosted on Amazon’s cloud
SMTP Simple Mail Transfer Protocol, email server protocol
IMAP Internet Message Access Protocol, email server protocol
IDE Integrated Developer Environment, the text editor people use to write code
HG Horse Graph
Standup Everyone sits down for 15/30/60m and says what they are doing. Sometimes they just type it.
pgsql/psql Postgres database
MVP Minimum viable product, the bare minimum needed to see a feature working for example. Think “very early stages, experimental”
MVC Model-View-Controller frontend/JavaScript pattern. React. Google “MVC”
TDD Test driven development, you write the tests before you write the code that would pass the tests.
API Application programming interface; like when your browser makes a request to your bank’s web server to send money
DOM Document Object Model, a tree of buttons/text/etc that are displayed in browsers. “The DOM” refers to all the stuff making up the web page.
LOC Lines of code
LOE Level of effort
FSM Finite-state machine. An abstract machine that can be in exactly one of a finite number of states at any given time. See https://en.wikipedia.org/wiki/Finite-state_machine
dotcom Sourcegraph.com
airgapped instance Self-hosted customer instance that does not allow any outbound network requests; offline to any external network requests.
private instance Self-hosted customer instance that does not share telemetry data (to be enforced via license tagging); does allow outbound network requests.
airgapped code host A code host that is physically isolated from the internet. For example, the code host is deployed on hardware (server) that is within the customers’ office/private data center and the only way to connect to this code host is to be physically connected to this air-gapped network; a user has to be within the office and be connected to the air-gapped office network via ethernet cable of wi-fi.
private code host A code host deployed in a private network (for example AWS EC2 instance within VPC).
public code host A code host that is publicly accessible on the internet - a user can CURL it via IP or open the URL in the browser. This also includes a code host with a public interface but restricts access to IP allowlist.
KTLM Keeping The Lights On, time set aside during each product cycle for handling bug reports, user feedback, general maintenance, dealing with tech debt, etc.
PLG Product-Led Growth
CHOP Chat oriented programming.
The name Steve Yegge came up with to describe using LLM's to code. See his blog post, Death of the junior developer for more on this in context.
one box This is the internal term we use at Sourcegraph to describe the single input box (aka “one box”) that users will interact with once we unify code search and Cody into one lovable code intelligence product. See ‣ for more on our strategy to unify the two product.

Note: It’s written as “one box” not “OneBox” or “One Box” because it is just a place holder term, not a proper noun or approved brand. | | Noodle | The code name we used internally at Sourcegraph for the tiger team who worked on early iterations of the unified product (where there's one box for search and chat) as more and more of EPD department work on that one box, this team will disband. |

Teams and Titles

Term Definition
EPD Engineering, Product, Design - refers to the department that includes those three teams.
AE Account executive - responsible for maintaining an enterprise customer account and our relationship with them
CE Customer Engineer, e.g. pre-sales engineer
IE Implementation Engineer
TA Technical Advisory, e.g, post-sales customer success
SE Support engineer
PS Professional Services (our IE and RA teams)
RA Resident Architect, part of our PS team. An offering we provide to Enterprise and Strategic customers
SDR Sales Development reps - focused on reaching out to customers, determining if they’re good leads to follow up on
GTM Go to market
EM Engineering manager
PM Product manager
TPM Technical Program Manager
PD Product designer
IC Individual contributor, not managing other people. Still works on a team with other ICs.
Releases team (formerly Release Guild) A captain of releasing the product, drives releases, gathers and informs others about the release, helps test the release, fixes and discovers issues in the release before it goes out.
DevRel Developer relations, they post on Hacker News, Reddit, and Twitter about how cool we are. They give talks and go to conferences
DevInfra Developer infrastructure, improving lives of devs working on sourcegraph
People ops The HR department, scheduling interviews etc.
Biz ops Business operations, like financial modeling, managing legal aspects, etc
IT tech ops IT team, if you have laptop issues or need to order a computer
Ops Operations (includes Finance, Accounting, Legal, People, Data & Analytics, Strategy, and Tech Ops)

Business Terms

Term Definition
PO Purchase order
DRI Directly responsible individual, the “one true owner” of something
ARR Annual Recurring Revenue
iARR Incremental Annual Recurring Revenue
CAR Completion Acceptance Rate
DAU Daily Active User
WAU Weekly Active User
MAU Monthly Active User
SMB Small-to-Medium Business; for us this is companies with less than 100 developers
MM Mid-Market; for us this is companies with 100 - 500 developers
MBA Master of Business Administration - a degree, not to be confused with the NBA which is a basketball team

General Terms

Term Definition
PTAL Please take a look
LGTM Looks good to me
SGTM Sounds good to me
IIUC If I understand correctly
ICYMI In case you missed it
NBD No big deal / not a big deal
AFAIK As far as I know
LFG Looking for Gutekanst - sometimes Looking for Group; alternatively, Let’s…Go!
YAGNI You aren’t gonna need it
ACK Acknowledged
OOTB Out of the box

Developer lingo for non-developers: a guide

This guide is made to define and explain many of the terms that are commonplace in conversations at the Sourcegraph office but not necessarily outside of it. The goal of this guide is to break down these terms in a way that your average person can comprehend, at least at a very high level. Think of this as an "intro to dev-speak" :)

Term Definition
Editor A code editor is a text editor program specifically made for editing code of computer programs by developers. It may be a standalone application or it may be built into an integrated development environment (IDE) or web browser.
Basically, it's the environment where developers write code. Similar to how someone can use Google Docs or Microsoft Word to write and edit an essay.
Binary The simplest form of computer code or programming data. It is a series of 1s and 0s that makes up the “language” that computers understand. It's also used to refer to a pre-compiled executable program. Source code is generally compiled into a binary to be executed on specific operating systems.
Code The fundamental component of a computer program that is created by a developer. It can be read and understood by a human and then translated into machine language (binary machine code).
Humans don’t usually write in the language that computers understand since it’s just a series of 1s and 0s. Instead they write in different programming languages that can be “translated” to instructions a computer can understand.
Programming language Language used by developers involving certain vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. (examples: Go, JavaScript, Python, and many more). Basically, it's a type of language used by developers to make a computer do what they want.
Compiler A compiler takes computer programs written in a programming language and converts them into machine language that a computer can understand and run.
For example, if you’re traveling to France, but you only speak English, you will have to figure out how to communicate in French. You will probably need some sort of translator (a friend, a book, an app, etc.) to translate your words from English to French. Compilers “translate” what developers write in a programming language to binary– a language that computers understand.
Open Source In software, open source code is any publicly accessible code/project/design that can be read and modified and redistributed for any personal, commercial or educational use.

For example, if you have a recipe for cookies that you want to share with others, so you share it in a public blog– anyone now has the ability to read it, make it, and modify it for whatever they want. | | IDE (Integrated Development Environment) | A software development tool that is similar to an editor, but has other necessary tools (debugger, tester, compiler, etc.) integrated. Imagine a Google Doc that has tools built in for error detection, previews, and language translation. | | Code Host | A service like GitHub, GitLab, or Bitbucket which provides storage and remote access to code. It's basically where your code lives. | | Version Control | A system that tracks changes to a document or project over time in an orderly and systematic way. This is similar to how a Google Doc allows you to review a document’s history (see what changes occurred, who made which changes, etc.) Version control provides the ability to “time travel” and restore previous versions of the document in case something went wrong with one of the changes. | | Git | A version control system, developed for the maintenance of code with particularly strong support for simultaneous efforts by many developers. | | README | This is the file outlining the project and is written by the project developers for others to read. It is comparable to a “front page” of a project, where the project is outlined and described by those that worked on it. | | Issue | A report of a possible problem with a project or piece of software. (Just like a real issue!) It is something of concern that you want to flag so it can be corrected. | | Pull Request (AKA "PR") | A request in GitHub for someone else to review your work for any possible errors or flaws before finalizing changes. For example, if you had written an article, and you were almost ready to publish it but first you wanted someone else to review it. They would have the option to provide feedback through comments or approve it for publishing. | | Merge | The act of taking a series of changes in a document or project (commits, for Git) in a branch and applying them to the existing repository. Generally, merging happens once your pull request has been approved. | | Commit | In Git, a single set of changes. This is how you store changes in your repository. | | Repository (AKA "repo") | A collection of (usually related) source code and other files, plus the history of those files. It is a location for your project, similar to a Google Drive folder that stores related documents in one place. | | Branch | A specific series of changes in a repository, usually used to isolate changes during their development. Branching lets you make changes, test them in a staging area, then merge them into the “main branch” (the “live” part of your code). | | Main Branch | The primary branch of a repository, usually holding the actively-developed product and working of features (non-working versions tend to stay in branches). This is the “live” part of a project that can be viewed by the public. Sometimes referred to as the "master" branch. | | Clone | A copy of a repository, including its full history. Similar to a copy of a Google Doc with all its revision history. | | Fork | Making of a new repository which starts as a clone of an existing repository. Usually used to create changes for submission back to the repository, but also used to make a version that has changes that the original repository’s owner won’t include.

For example, if you took a Google Doc template and made a copy of it so you could use it and edit it, but you also altered the original template to add things the original template didn’t include. | | Ship | A word which simply means that you make a feature or product available to customers. | | Dogfood | A word to describe the act of using your own feature or product. Software is often deployed internally for employees to use before going live for customers. | | Markdown | A text markup language to allow plain text to convert to styled text using common conventions, such as _ italics _ or ~~ strikethrough ~~ It's just a shortcut to edit text (bolding, italicizing, underlining, etc.) without having to click the buttons on a toolbar. | | Command Line (AKA "terminal") | A text-based interface for controlling computers by issuing textual commands. Basically, it's a place where you can enter commands for your computer to execute. |