PFS! Computer Science

Unit 1 - Introduction

1.1. Overview

In this session we'll be making our introductions, looking at a broad overview of our course, introducing the course website, getting you oriented on your computer, and having you fill out a brief information form.

1.2. Introductions

Welcome!

1.3. The last few years have been a little crazy.

Seriously.

I hope you're doing okay.

1.4. Your computer

You'll need a computer to do the work for this class: you'll definitely have one in here, and maybe you've got one at home. And an internet connection. We need both of those things... and that's about it.

Some reminders:

  1. Your computer has delicate electronics in it, so be careful with it.
  2. Your computer needs power, so keep it charged for classes. Make sure you have a power supply for when the battery runs out.
  3. Make sure you have a wifi connection. You'll know if you don't. If you need help with your wifi, let me know.
  4. Make sure you have backups of the data on your computer. In case you get hacked? In case you spill coffee on the keyboard? In case your computer is lost or stolen?

1.5. What is "Computer Science" anyway?

Computer Science is a confusing term, and its definition has changed over time. Let's look at some of the different things that "computing" can be defined.

  1. Computing - "The study of computers and all the phenomena surrounding them." (Guzdial)
  2. Computer Science - "The study of computation, automation, and information." (Wikipedia)
  3. Computer Science - A new basic skill necessary for economic opportunity and social mobility. (Obama)

    What do coders look like?

  4. Computing for arts & sciences (Guzdial)
    • Computing for Discovery - using data and models

      What do data scientists look like?

    • Computing for Expression - social media, games, animation, movies

      What do creative computing people look like?

    • Computing for Justice - computing systems can be fair or unfair

      What do computer ethicists look like?

In this class, we'll be touching on all of these aspects of computing. Mostly, though, we'll be learning to use the computer as a tool by writing code, both programs and websites.

1.5.1. Two of the challenges in learning computer science

There are lots of ways that technology can be frustrating to work with. In this class there will be two challenges that you'll get to work on:

1.6. Using a browser

You will be using a browser in here to interact with the information in this course. This is not how I would ordinarily teach this course, but it's the best way for us to be able to work this year. Any of these are good:

Your browser has the ability to make "bookmarks" for webpages, so let's go ahead and make bookmarks for the most important pages that you're going to be using in here right now.

  1. www.crashwhite.com/pfscs/ - this website
  2. replit.com/ - Where we'll write code

1.7. The Desktop, Windows, Files, and Folders

Computers can be a bit tricky to work with. Here's everything you need to know to get started with using your computer efficiently.

1.7.1. The Desktop

Your computer screen, when you first log in, shows you a Desktop with a background image of some sort. This is a virtual area where you can temporarily keep files and folders that you're working on.

If you're using a smartphone, a tablet like an iPad, or a Chromebook, you may not be able to see a desktop with files and folders, but they are there on your device. All computing devices use files organized into folders, whether the device allows you to see them or not.

1.7.2. File System - Files and Folders

Your file system keeps track of all of the files that are stored in your computer's memory. You can "see" where these files are stored in a few different ways: they might be on the Desktop, as shown above, or you might open a file system window that will allow you to look through the computer's memory, as shown below.

Files are stored in "folders", or directories so that we can keep things more logically organized. The file system has its own directories that it uses, and you can make your own to more conveniently keep your stuff organized.

1.7.3. Windows

Because we like to think visually, you computer will almost always provide you with a window as part of a "graphical user interface". These windows can be moved and resized by clicking on their frames and dragging the mouse.

Applications typically have windows that you can use to interact with them. If you start Firefox, Chrome, or Safari, those web browsers display a window on the screen that you can use to surf the Internet. If you log into Google and open up a Doc or look at Gmail, the browser window is displaying the digital information there.

You can also minimize a window so that it is temporarily hidden from view. Clicking on the icon for that window will make it reappear on the screen. In order to be as efficient as possible, we're going to arrange our computer windows so that we can better see what's going on.

1.7.4. Working with other computers

Every time you use the Internet, your local computer or smartphone is interacting with computers that are located somewhere else on an extended network.

In this class you'll be interacting primarily with two other computer, in addition to your own, "local" machine.

Course website: student info

We don't have much time together in here and I'm trying to get to know you a little, so please fill out this Student Info form this evening as your first assignment. If you're concerned about your privacy, you can leave blank any address or phone number info, but please let me know as much as you can about who you are.

Thanks!

1.8. Getting your replit account

For our course we're going to be using the replit.com website to write and run our code. Although it's possible to use the website without having an account, you won't be able to save your work there without an account, so let's get you signed up.

Signing up for replit

  1. In your browser, go to replit.com .
  2. Click on the "sign up" button
  3. Use your student@pfspolytechnic.org Google account to sign up.
  4. You're done! We'll figure out how to use the website in another day or two.

1.9. Course Overview

In the next few weeks we'll be focusing on three topics of study:

  1. Computer Science / Computer Programming
    We'll be learning the some JavaScript, one of the three most popular programming languages, and using it to write code.
  2. HTML / CSS
    We'll be learning learning how to use HyperText Markup Language (HTML) and Cascading Style Sheets (CSS) to design a website.
  3. Technology and Society
    We'll be looking at the ways that technology reflects what is happening in society, and how technology can be used to influence society.

Although we'll be working on a number of smaller activities, as well as focusing on two larger projects, both of which consist of building a website.

1.9.1. UN Sustainable Development Goals / Social Justice Website (Static, 3-4 pages)

Your first website will consist of 3-4 pages concerning either one of the United Nations' Sustainable Development Goals, or a Social Justice topic of your choosing. We'll discuss the specifics of this assignment starting the second week of class.

1.9.2. Smaller Assignments/Projects

You'll be completing one or two assignments every day for this course, and making steady progress in your understanding as we go.

1.9.3. Readings and Classroom Conversation

You'll also be reading a few articles and sharing your thoughts and insights as we go.