# Getting Started

Welcome to the Distributed Computer! However you found us, we are glad you're here.

The Distributed Computer is a powerful Javascript framework for parallel computing projects. Using its client, anyone, anywhere, can deploy programs that need the power of a supercomputer with just a few lines of code.

If you have any questions or would like a clarification at any time while you're reading this documentation, our core developers are just a note away on our Slack channel, on Stack Overflow, or by good old-fashioned email at info@distributed.computer. The Distributed Computer is getting better all the time, and we thank you for bearing with us as we work out the kinks!

# DCP First Devs Program

Note: You currently cannot deploy any jobs on the Distributed Computer unless you are part of our beta program, which is open to join below!

As of November 2020, we are inviting a limited set of developers into our beta program called First Developers. If you would like to be part of our "First Devs" cohort, visit https://dcp.dev/ and sign up. We'd love to have you!

# Tutorials

There are two ways to get started, depending on your experience level and preferences:

  1. Developer Guide: For beginners and people who learn more methodically, we have made a comprehensive walkthrough on installing the client for the Distributed Computer, setting up an account, and deploying your first job.
  2. Quick Start: For more experienced developers or people who learn through trial & error. Get writing code ASAP with these steps:
    • Make an account on our portal
    • Download your API keys from the portal (you need two, called "Keystores")
    • Try launching your first job using our JS Fiddle example or GitHub example for vanilla web, or try out our example for Node.js deployments. You can also use a computational notebook like Jupyter, Colab, or VS Code (see Notebooks* below).
    • If you're a Python programmer, you can try an experimental program we're building called Bifrost (see our description here). This enables language-to-language variable sharing, so you can execute JavaScript on the Distributed Computer using a Python script.

Notebooks*: You can use the Distributed Computer in Google Colab, Jupyter, Observable, and any other computational notebook. If you're not familiar with these but would like to try, please check out their own Getting Started documentation (which we also link in our Developer Guide). Google Colab is perhaps the easiest to start using, since you don't need to configure anything on your local environment. Here is a folder with our (growing!) repo of Colab examples for your inspiration!

# Learning the Nomenclature

# The Distributed Computer, DCP, & DCCs

A lot of our documentation refers to "DCP" (short for the "Distributed Compute Protocol") instead of the Distributed Computer. To avoid confusion, the simple answer is to just think "Distributed Computer" wherever you see DCP. Technically, DCP is just a part of the Distributed Computer, which is a much bigger software ecosystem. But just so it's not confusing, just remember that 'DCP = Distributed Computer' in this documentation.

Similarly, we also sometimes refer to credits as "DCCs" (short for "Distributed Compute Credits") or "compute credits". Please note that all of these mean the same thing - the credits that you submit to use the Distributed Computer that come from your Bank Keystores (described in the Developer Guide and First Dev Keystores pages).

# Check Out Our Glossary

Any time you find a term that you're not familiar with, please refer to the Glossary section of the main client page for the Distributed Computer. At any time, you can also search for the definition of a term with the search bar in the top left on all pages under https://docs.dcp.dev/.

# Documentation & Community