Quickstart: BasicsDate: 2022-02-18
Table of Contents
- (Windows users only) Operating system
- Command Line
- Text editor
- (macOS users only) Package manager
- Version control
Last updated: 2022-02-21
This post contains ‘quickstart’ instructions for setting up a software development environment and learning basic skills such as working with the command line and using the Vim text editor, all of which you will need to do if you are working with me on research projects. Feel free to skip any material that you are already familiar with.
(Windows users only) Operating system
If you already have macOS or Linux on your laptop, you can skip this section.
Since I am not familiar with programming on Windows, and have run into numerous issues in the past while trying to help students develop software on their Windows machines, I now ask students who don’t have a macOS or Linux laptop to install Ubuntu on their laptop in a dual-booting setup. Ubuntu is a popular, relatively user-friendly flavor of Linux that I recommend for people who are new to Linux. Follow the instructions here to install Ubuntu.
- Page xvi: Why use the command line?
- Pages 2-3: Terminal emulators, command history, cursor movement
- Chapter 2: Navigation
- Pages 25-33: Manipulating files and directories
- Chapter 6: Redirection
- Pages 68-70: Expansion
- Pages 73-78: Quoting
- Pages 128-134: Environment
- Pages 141-143: Motivation for learning
viand some background.
Make sure to try all the commands in the examples, in order to develop some muscle memory for them. The goal is not to memorize all the commands immediately, but to get a sense of what is possible when interacting with the computer via the command line, and to be able to look up stuff later when you need - that is, to create a mental index for quick information retrieval.
In pages 141-143 of The Linux Command Line (see above), you briefly encountered the Vim text editor. In my personal opinion, if you think you will spend a substantial amount of time in your career writing documents and/or programs on a computer, learning a bit of Vim will pay off handsomely. Here are my recommended steps for doing so.
vimtutorat the command line and go through the tutorial.
- Read through my slides on Vim that I presented at the IVILab Summer 2020 Bootcamp, and practice the commands in them.
When we are going over your code together (either in person or via Zoom screen sharing), it is useful for me to be able to reference line numbers. To enable showing line numbers in Vim, add the following line to your Vim configuration file (
(macOS users only) Package manager
You will need a package manager to install libraries and programs required for software development.
Having tried both, I vastly prefer MacPorts. Follow the instructions here to install it.
We will use
git for source code management and version control. If you are on macOS,
git will be installed as part of the Xcode Command Line Tools (part of the MacPorts installation process).
We use Github to host our git repositories and collaborate on developing software. Send me your Github username (if you don’t already have a Github account, create one) so that I can add you to any relevant project-specific repositories.
Additionally, please set up an SSH key to use with Github, following the instructions here.
- Install a LaTeX distribution on your computer - see Step one here for instructions.
- Go through the Learn LaTeX in 30 minutes tutoral. You can use
vimas a text editor for LaTeX1.