What do I need to know, understand and do to be prepared for this class?
Part of being a computer scientist is using the right tools. You need the right tools for the job. Learning how to correctly use your tools is an important part of becoming a computer scientist or programmer.
When you first start using a new tool it can feel confusing, overwhelming or weird. Don't worry! This topic is concerned with the very first steps of setting up your tools. The more you use a tool, the better you become.
There are two parts of getting setup in this course:
Both of these parts are detailed in this getting started guide: https://computersciencewiki.org/index.php/Getting_started
The major tools we use in almost all courses are:
GitHub is a distributed version control system. As a beginning programmer, you should think of github as a really smart place to save your code, track changes, and manage your code when multiple people are working on it. You must always be very careful about never using any personally identifiable information when you register, and please ensure all your github repositories are private (not public).
Chrome (Chromium) is a web browser. This browser has tools that can really make life easier for a web programmer. To be fair, other web browsers also have good toolsets. Because I know a whole lot about Chrome, you can get support with issues in google chrome, but might not get good support with other browsers.
iTerm is a terminal replacement for the default OS X terminal. Most of you use a graphical user interface (GUI). GUI's have little icons for folders and files, and make using your computer easier, but they also tell little lies that can be annoying. You can think of a terminal as a different view of your computer. As computer scientists, we are very interested in how something really works, and a terminal is a good tool for that. We will occasionally use terminal and command line interfaces and when we do, you will be happy we are using a good one.
Visual Studio Code is a powerful code editor which we will use daily for our coding. We will use many extensions in vscode, and learn to appreciate how a good code editor can save a lot of time and frustration. You will quickly learn to love syntax highlighting, code folding, bracket matching, and error catching. Oh, and then there are cool themes that you can customize to your hearts content!
Sublime is a powerful text editor. If you ever want to waste a bunch of time in class, ask me why I hate word processors so much. Sublime allows for excellent text-editing, text replacement, has really good find-and-replace, and also has syntnax highlighting. If we need to "do stuff" to a large text file, we often turn to sublime. Please don't ever, ever, ever use Windows built-in-text editor notepad or OS'x built-in text editor, Text Edit for anything ever. Ok?