message "This is a set of step-by-step instructions for installing Ruby, Rails, and other important tools on Mac, Windows, or Linux computers. Originally developed for the [Railsbridge Workshops](http://railsbridge.org), it is a community-supported open-source documentation project. If you want to contribute, click the [git] link at the top-right corner of any page and submit your change on GitHub."
message "**You'll repeat all these steps tomorrow, but more slowly so you can better understand what's going on under the hood.** Today we just want to check that everything's set up and ready for tomorrow."
step "Prepare for the Installfest" do
message <<-MARKDOWN
## You must bring:
* **Your laptop.** You need to have a working wifi connection, a browser and an email account you can readily access.
* If you have a choice between a Mac and a Windows laptop, please bring the Mac.
* Linux is an acceptable alternative, but the Installfest is only tested on Ubuntu.
* **Power cord for your laptop**
* If you already have accounts on Heroku or GitHub, make sure you know your username and password.
## Possibly also helpful to bring:
* Extension cord
* Power strip
* Camera
* Snacks
MARKDOWN
end
step "Don't Panic!" do
message <<-MARKDOWN
Even if you get stuck, please go through the rest of the instructions and download all the things you'll need. Bandwidth will be at a premium during the workshop, so it will help immensely to have everything on your laptop already.
There are a lot of steps, and the instructions may seem like they're in a foreign language, but: **don't panic!** By the end of the workshop, you'll know what everything is and how to use it.
MARKDOWN
end
step "Read This Overview" do
message <<-MARKDOWN
Here's a list of tools you'll be installing. As you go through the workshop, we'll explain what each one is for and how to use it.
* **Ruby**. A programming language.
* **Rails**. A framework for making web applications with Ruby. It does a lot of the setting up work for you, which is really handy, but we'll cover this in more detail a little later.
* **Git**. A revision or source control system. It creates a _repository_ (sometimes called a _repo_ for short), which is a complete history of your changes to what you're working on. This means you can undo changes and roll back to previous versions of your work if something has gone wrong.
* **GitHub** (optional). A place to store your Git repository online, so you can access it from any computer.
* **Heroku**. An _application server_, which hosts your application while you're working on it. This allows you to access your app online and interact with it from any browser, instead of just on your local computer.
* **VS Code** (or [some other editor](editors)). To write programs in Ruby, you need a text editor to create, edit and save Ruby files.
* A couple of useful **Ruby gems**. Ruby gems are useful bits of Ruby code that someone has created for reuse, so you don't have to write it yourself.
If you've already installed the above tools and are confident they are setup correctly, skip ahead to the <a href="get_a_sticker">Get a Sticker</a> step.
MARKDOWN
end
next_step "choose_your_operating_system"