The first step of becoming a full-stack developer is learning the tools of our trade.
We've defined the following objectives:
After this chapter, students will...
- understand the value of keyboard commands
- understand basic OS X commands
- understand basic Unix commands
- install Sublime Text
- understand basic Git commands
- link Git with Github
You'll quickly learn that the primary tool of our trade is the keyboard. This tool is so valuable to us that we use it as much as possible. If there's a keyboard command that we can use instead of a trackpad or mouse, then we'll prefer the keyboard. This reality may shock you, especially the thought that you may have to become highly proficient using the keyboard. There's a reason, however, why you should embrace this practice: Keyboard commands make us more efficient.
Learning a single keyboard command, such as opening Spotlight, can save you seconds from clicking and scrolling through several items. If we consider that a developer will open Spotlight dozens of times on a typical day, we'll notice that the seconds from this one shortcut will save us minutes. Imagine the amount of time you would save if you learned more commands. Those extra minutes, and eventually hours, could be spent on something better, such as raiding the pantry!
In the rest of this document, you'll be introduced to the keyboard commands that will save you a lot of time during your daily workflow at gSchool.
The following commands are some of the most useful you can learn:
-
opening Spotlight
- ⌘ + Spacebar
-
opening Terminal
- Spotlight
- "ter" + Enter
-
opening Sublime
- Spotlight
- "subl" + Enter
-
opening Chrome
- Spotlight
- "chr" + Enter
-
taking a screenshot
- ⌘ + Shift + 4
- drag your cursor over the desired section of your screen
-
changing tabs of a browser window
- ⌘ + Option + ◀ (or) ▶
- ⌘ + Option + [the position of the tab in your browser window]
-
creating the Apple Logo
- Option + Shift + K
Every developer will perform certain tasks--navigating a file system, viewing files of a directory, etc. The following commands will help you complete these tasks.
To use Unix commands, you'll need to open a command-line interface, such as the Terminal.
- Navigating through a directory
cd [argument]
- Viewing files and directories
ls [flag]
- Creating a file
touch [filename]
- Creating a directory
mkdir [directory]
- Reading a file
cat [filename]
- Opening a file or directory
open [filename or directory]
- Deleting a file
rm [filename]
- Deleting a directory
rm -rf [directory]
Be sure to read over this quick tutorial to learn even more useful commands.
Every web developer needs a text editor; it's a developer's most dangerous weapon. The text editor of choice, especially for new developers, is Sublime Text. We can understand the rationale: it's easy to use, it provides core functionality, such as syntax highlighting, and it can be further customized. For this reasons, we want you to install it.
In the most simplistic of terms, Git manages different versions of files. Git does this amazingly well, and it's the reason why most web-based companies use Git to manage their codebases.
In this section, we'll introduce two of the most popular resources for learning Git: Code School's Try Git and Atlassian's Getting Started
Git repositories can be stored online using Github, an extremely popular hosting service. To deploy your Git repositories to Github, please follow these steps:
- Create a Github account
- Generate an SSH key
- Create a Github Repository
- Go through this tutorial to learn about the Pull-Request workflow: https://github.com/asmeurer/git-workflow
Additional Resources: Atlassian's Collaborating
You've done it! You've acquired the basic tools of a web developer. We're ready to take the next step of the pre-course: Chapter 2: HTML.