WEEK: 1
Active: August 19th - August 23rd
Work Due: August 24th @ 11:59PM

Your Computer Environment

Computer Environment Video

As a creative technologist and developer, you will need to take control of your computer. You should start to consider your computer as an instrument or an innovative tool that serves as an extension of yourself.

To be effective, you need to be comfortable with your computer and know your computer.

There are two different ways to find things on your computer.

  1. Through the graphical user interface
  2. Through the command-line interface

We will go through the graphical user interface, and I will discuss the command line interface. If you are interested in further exploring the command-line, I will give you more information, but it will not be the focus.

We need to define what a directory is and what a file is.

What is a directory?

  1. A directory is a folder. It's just a fancy word for the folder. Remember, we are mimicking the physical desk. That's why we have a desktop, folders and files. It's so we can relate to them.
  2. Files are what we are storing. Maybe they are pictures, videos, text documents, music, and more.

Why do we care?

We care because we want to organize our folders/directories and the files within them so that we can find them again. Yes, we have a search bar that helps us, but it's much better to store our files in an organized way.

How do we access our folders?

  1. In Windows, you can click on the Start or Search and then look for This PC.
  2. On Mac, click on Finder and then go through the folders.

Let's do some hands-on work here.

Go into your Documents folder regardless if you are on Windows or Mac and create a new Folder. How do we do that?

  1. Right-click and choose New Folder.
  2. Rename the folder MART 120.
  3. Inside that folder, create a new folder called My Best Folder.
  4. Inside of that folder, create a new file by opening TextEdit on a Mac or Notepad on Windows and place your name in it.
  5. Save the file and close it.

I recommend creating a new folder for each homework, and then you can save all your projects in there. We will do this inside your GitHub repository after we practice here in the Documents folder. These skills will come in handy in your other classes too!

Note: "Directories" and "Folders" are the same thing. These will be interchangeable throughout this course.

Command-line Interface Video

One of the most basic ways of working with your computer is through a command-line interface (CLI).

example image of terminal.app

Although such programs can appear intimidating to a beginner user, these command-line programs remove are simple applications that allow for full control of the OS. These programs will enable a user to accomplish many of that same tasks that they are used to completing with a mouse through text-only commands. One reason to use such a program is to speed up the development process and display more information than is typical of a traditional "graphical user interface" (GUI; pronounced 'gooey') based environment.

One advantage of a CLI over a GUI-based file browser is quicker manipulation of files and directories. The manipulation of files and directories will be a widespread activity for you in this course. As such, please take a moment to read the following Wikipedia page describing 'directories' and make sure you understand what a directory is, as well as its related terminology.

Unix

Unix operating systems refer to both macOS (formerly OS X) and Linux. These OS's will use similar commands within their CLI's. On macOS, the default CLI is terminal.app. However, there are many CLI's that can be downloaded and used in Unix-based operating systems.

For those of you who are unfamiliar with using the terminal in Unix operating systems, you should work through the following book.

Unix for the Beginning Mage

This resource walks you through the basics of using terminal via a 'cutesy' story. (Sorry if this is not your thing. Unfortunately, it is an excellent resource.)

NOTE: If you do not have Xcode.app installed on your Mac, you should do so. We will not be using Xcode. However, it installs additional command-line tools that we will use. Install Xcode via the Mac App Store. After installing Xcode, open it once, close it, and forget about it for the time being.

Windows

Windows users have a couple of options when it comes to CLI. Traditionally, Windows has utilized a program known as Command Prompt for decades. This program is a relative of MS-DOS, an old operating system, and a precursor to Windows. In recent years there has been a move within the development community towards Window's newer PowerShell CLI. However, there is also a step towards a Bash-like or pure Bash (the Linux and macOS CLI) program for windows.

I am going to suggest you utilize the last of these options. Unfortunately, a Bash shell does not exist by default on Windows yet. You have two options to get one.

  1. Windows now include a "Linux Environment" in the Windows Features.
  2. A more straightforward solution (and the recommended one for this course), is to install a Bash-like CLI.

    The disadvantage of this solution is the lack of integration as the "Windows Subsystem for Linux." However, for the CLI work you will do in this course, it works just fine.

To get a Bash environment, windows users should install Git. Download Git below:

https://git-scm.com/download/win

After downloading the program, right-click the install executable and select "Run as Administrator." (THIS IS IMPORTANT You must run as administrator to give Git Bash necessary permissions.)

Install Git as Administrator

This file installs a program known as "Git," along with one called "Git Bash." You can now open "Git Bash".

Git Bash

After installing either "Windows Subsystem for Linux" or "Git Bash", you should work through the Unix for the Beginning Mage book.

Here is a CLI activity for you to practice.

Be capable of performing the following actions via command line.

  • Navigate between and around directories.
  • List the contents of directories. (Including 'hidden' files')
  • Be able to change a file's name.
  • Be able to create an empty file.
  • Be able to create a new directory.
  • Be able to move a file/directory.
  • Be able to delete a file.
  • Be able to delete a directory.
  • Understand what a 'superuser' is. (Unix only)
  • Understand what file permissions are, how to view them, and how to change them. (Unix only)

Previous section:
Next section: