Scroll up or hover over the breadcrumbs to view the navigation bar

Tools of the Trade

You know what a developer does now but you'll also want to familiarize yourself with the basic tools of the trade:

  • Computer -- Okay, this one should be obvious. But get a Unix (Mac) or Linux system if you're able to make things a bit easier on yourself (obviously biased in the Ruby/Rails community). If you are on Windows we have provided some suggestions about how to run linux along side your Windows operating system in the installations project in the next course, Web Development 101.
  • Google -- Really? YES! You will get stuck. Repeatedly. You'll get incredibly good at identifying the error message and Googling the heck out of it. Don't underestimate how often professional devs use Google... we're in an industry where you never know everything and it's constantly changing so seeking help online is an art and a science all in one.
  • Text Editor -- The text editor is where you'll spend most of your time actually writing code, so pick one you like. If you're just starting out, they probably all seem the same but there's a big difference between, for instance, a command line editor like Vi (which doesn't let you use the mouse at all!) and a GUI-based one that feels more like what you're familiar with from writing essays in school. We strongly recommend beginners getting a free GUI-based text-editor like Sublime Text, Text Wrangler, TextMate, Atom, or Notepad++ (Windows only) and not getting caught up in the Vi vs Emacs wars.
    Why are the GUI editors we recommend different from using a text editor like Microsoft Word? For starters: they let you view full directories and open files in different tabs, navigate easily using keyboard shortcuts, highlight different bits of syntax in many languages (very helpful) and have efficiency-gaining code snippets you'll get more familiar with over time.
  • Command Line Interface (CLI) Shell -- For most people, this is just the Terminal (mac) or the MS-Dos Command Prompt (Windows) but sometimes people will use their own version. The shell is your window into your operating system (which we'll talk about a bit more in the next unit) where you type in commands and navigate in a text-based way through directories on your hard drive. Think of it as your mini command center where you'll save your files to a version-control system, deploy onto the web, test out code snippets in Ruby, and interact directly with your database.
  • Stack Overflow -- By extension, most Google queries lead to Stack Overflow, an online question-and-answer community that has high quality responses to thousands of the questions you'll search for.
  • Git -- Git is a version-control system. You will love it, then hate it, then praise it. But you must know it. Git is one of those things that non-developers either haven't heard of or don't understand and it's a dividing line between hobby hacking and using industry best-practices to keep your code base safely version-controlled and stored in the cloud.
  • Github is the place where copies of your code files will be stored. Your github account is more important than your resume. It holds the record of all the code you've written, which open-source projects you've contributed to and how. Your github account is your developer portfolio.

From the creators of The Odin Project...

The Viking Code School
Viking ad 180x150