D. Nixon: CS 12 > Week 1

Home (CS 12) | Assignments | Tutorials | Examples | Quizzes & Exam | Other Info | Chat

Computer Science 12


Week 1




Sunday, February 2, 2020



Assignment 1 (see distinct due dates for each part)

  1. Paper on problem-solving, part 1 (due Sunday, March 1, 2020; preliminary email due ASAP NEXT WEEK)
  2. Scratch assignment (due before next class, February 9)
  3. Excel (in-class demo only)
  4. Powerpoint slide show, part 1 (due Sunday, February 23)

  1. Paper on problem-solving, part 1 (due Sunday, March 1, 2020; preliminary email due ASAP NEXT WEEK):
  2. The paper on problem-solving is a multi-part term project. The first four parts will count as normal homework assignments, and then the final version will count 4% of your total score.

    Your paper will discuss the process of figuring out how to solve various problems in Excel. For some examples of such discussions, see:

    Note how that second page first discusses several simpler related problems, and also presents a mistaken attempt at a solution, explaining what the error is, before presenting the complete correct solution. Often, when figuring out how to solve a problem, it is helpful to consider simpler variants of the problem first, and/or to divide the problem into smaller parts and solve each part separately, as is done in the "jet ski" problem in the GCF video. The process of figuring out how to solve problems in Excel also requires the same skills needed to solve math word problems, about which see some relevant tutorials listed here.

    The first part of your paper will involve a problem chosen by you and approved via email. The problem may involve any topic that interests you, within reason. The first step is for you to find some problem relevant to any one of the following: your career goals, your current job, your major, your hobbies, or your life in general, e.g. a budget plan or diet plan. Your problem should have roughly the same (or slightly greater) level of difficulty as next week's Excel assignment, which will entail (1) a grade roster spreadsheet (including a quiz average with lowest score dropped) and (2) a spreadsheet which computes an invoice for several products sold in a store (with sales tax).

    Please choose a problem ASAP. Once you have at least tentatively chosen a problem, email me for approval, to ensure that the problem you have chosen is neither too easy nor too hard. Your email must be sent to the following email address:

    cs12-hw@nyclocal.net

    with a SUBJECT line like the following:

    HW 1 problem-solving lastname firstname

    replacing "LastName" and "FirstName" with your own actual last and first names.

    Please be sure to follow these insructions regarding the subject line of your emails, to help me keep track of your homework.

    The email is due next week, but it is strongly recommended that you send it sooner, in case your proposed problem is rejected as either too trivial or too complicated. If your problem is not too complicated but does require you to learn one or more Excel functions or features that are not taught during the first three weeks of the course, you will be referred to relevant tutorial material.

    Part 1 of the problem-solving paper itself will be due Sunday, March 1, 2020. The paper must be written using Microsoft Word, about which see this week's provided tutorial material.

  3. Scratch assignment (due before next class, February 9):
  4. Below, you are asked both to (1) go through Scratch's built-in "Getting started with Scratch" tutorial during the classroom lab session (or at home, if you missed the first class), and then (2) create an additional file, using variations on the same features covered in the tutorial, as a homework assignment. The file you will be creating during the classroom lab must NOT use sound, whereas the one you create at home WILL be required to use sound as instructed in the tutorial.

    1. Preliminary tutorial exercise:
    2. Open Scratch. (If you are doing this at home, you will need to download and install the Scratch offline editor first.  IMPORTANT NOTE:  We are still using Scratch version 2 this semester. The latest version of Scratch is Scratch 3, which came out only in January 2019. We have not yet updated our assignments and tutorial material to be compatible with Scratch version 3. Furthermore, Scratch 3 itself appears to be somewhat buggy (as new major software versions often are) and is not yet accompanied by adequate tutorial material. Therefore, do NOT use Scratch version 3, which is incompatible with Scratch version 2.)

      On the right side, near the top, is a question mark in a circle. Click the question mark to make a collection of "tips" appear, including a list of step-by-step tutorials. (If you don't see the question mark, another way to make the list of step-by-step tutorials appear is by clicking the "Tips" menu at the top left.) Then click on the first tutorial, "Getting started with Scratch."

      Follow that tutorial exactly, EXCEPT for the following: (a) If you are doing this during a classroom lab session, don't use sounds, but use another block instead, as detailed below. (b) When you are finished with your project, don't "share" the project, but save it to a file on your local machine instead.

      When you get to the "Add a Sound" step, don't add a sound when doing this assignment in the classroom lab. Instead, click "Control" and then drag the "wait 1 secs" block to fit just below "move 10 steps." Then click on the "1" in "wait 1 secs" and edit it to change it to 0.1 instead of 1 (so it will wait just a tenth of a second). Then double click on the set of two blocks that you just now put together, and see the cat move. (But you won't see the effect of the wait until you do the next step.)

      Then, in the next step, "Start a Dance," again use a "wait 1 secs" block instead of the drums. This time, edit the number in "wait 1 secs" to change it to 0.2 or 0.3 instead of 1. Then double click on the set of four blocks that you just now put together, and see the cat move. (You won't see the effect of the this second wait until you go on to the next step.)

      Complete the rest of the tutorial exactly as instructed, except for the following:

      In the "Explore!" step, if you are doing this in the classroom lab, skip the sound part, but do the animation part. (Note: the "next costume" block can be found in the "Looks" submenu under "Scripts".)

      Also, skip the very last step for now, "Share your project." Instead of "sharing" it, save your project by clicking on the "File" menu and selecting "Save As." Use whatever filename you like; you won't be submitting this first version as homework, except to send the practice email below.

      Make sure you can find the file on your machine, outside of Scratch itself, and email it to the following address:

      cs12-hw@nyclocal.net

      Give your email message the following subject line:

      Prelim Scratch LastName FirstName

      replacing "LastName" and "FirstName" with your actual last and first name.

      Then, in Scratch, go to the "File" menu again and select "New" to make this project disappear from your Scratch window. Then go to the "File" menu again and select "Open" and open the file that you just saved, to verify that you saved it correctly. Then make this first version of the project disappear again by clicking "File" and "New" again.

      Now for the part of this assignment you will be graded on.

    3. Homework assignment:
    4. Download and install the Scratch offline editor if you have not done so already.

      Create another project similar to the one above, but with three dancers instead of two. Use all the same features you used in the previous project, but use them in somewhat different ways, e.g. by varying the timing, the number of repetitions, the content of the "say" block, other effects besides just changing color, etc. Also, try using a few additional blocks to see what they do. Have fun!

      (Note: We will not grade on quality of creativity, just on whether you customized your project enough to show that you understand the basics of Scratch.)

      If you are doing this at home, don't refrain from using sounds. Use the sounds as asked for in the tutorial.

      Then go to the "File" menu, select "Save As" and save your project with a filename in the following format:

      • lastname-firstname-dance-1.sb2

      replacing "lastname" and "firstname" with your actual last and first name. (Note: ".sb2" is an extension that is automatically appended to Scratch project filenames, just as "*.xlsx" is automatically appended to Excel filenames.)

      Then email the file with the following subject line:

      HW 1 Scratch LastName FirstName

      replacing "LastName" and "FirstName" with your actual last and first name.

    If you are unable to complete the assignment at home and need help after our next class session, please bring headphones, so that you can play the sounds without disturbing other students.

  5. Excel (in-class demo only):
  6. No Excel assignment this week. However, if you missed the first class, you should look at this week's Excel tutorials and experiment with various techniques described.

  7. Powerpoint slide show, part 1 (due Sunday, February 23):
  8. Your PowerPoint presentation will be a multi-part term project. The first two parts will count as normal homework assignments, and then the final version will count 4% of your total score.

    The first part of your PowerPoint presentation will compare at least two of the paint/drawing/graphics/art tools of PowerPoint itself with the corresponding paint/drawing/graphics/art tools of Scratch.

    Scratch's paint tools will be covered in class next week.

    In the meantime, you should spend some time getting familiar with PowerPoint's drawing and graphics tools, using this week's tutorial material on PowerPoint. You should also spend some time getting familiar with PowerPoint more generally, if you're not already familiar with it. In particular, make sure you know how to create a series of PowerPoint slides, each slide containing one of the following: (1) a brief introductory sentence followed by a list of bullet points; (2) a table (very useful when summarizing comparisons); and (3) a picture with a caption, where the picture may be either one of your own drawings or an imported graphics file. Make sure you know how to create slides with all these kinds of content.

    More detailed instructions for the PowerPoint project, including submission instructions, will be provided next week.


To all information for Week 1  |  To all homework assignments



Excel tutorials

Problem-solving in Excel:

On the use of formulas:

On cell references, absolute vs. relative:

General tutorials on Excel 2007 and later versions:


To all information for Week 1  |  To all tutorials about Excel



Scratch download link, and some info about Scratch

Scratch is a multi-purpose tool that enables a gentle introduction to programming, suitable for middle-school children, and which also makes it easy to create animations and games. Recently it has become fashionable to try to teach basic programming concepts to children in an age-appropriate way. (There is even a Scratch Junior, aimed at kindergarteners.)

Why should adults too learn Scratch and similar tools? So that (1) you can know what your kids are learning in school, (2) you too can be introduced to basic programming concepts as painlessly as possible, and (3) you and your kids can have fun creating animations and games. If you happen to be an aspiring professional artist, Scratch may be of professional interest to you as well.

IMPORTANT NOTE:  We are still using Scratch 2 this semester. The latest version of Scratch is Scratch 3, which came out only in January 2019. We have not yet updated our assignments and tutorial material to be compatible with Scratch 3. Furthermore, Scratch 3 itself appears to be somewhat buggy (as new major software versions often are) and is not yet accompanied by adequate tutorial material. Therefore, do NOT use Scratch 3, which is incompatible with Scratch 2.

If you already installed Scratch 3, please uninstall it as follows, to ensure that it does not interfere with Scratch 2:

  1. Open the Windows Start menu.
  2. Right click on the scratch-desktop application in the Start menu.
  3. Select uninstall.
  4. When the unistaller window opens, make sure that "scratch-desktop" is selected in the window and then click on "unistall".


To all information for Week 1  |  To all tutorials about programming (very basic intro)



Tutorials on Powerpoint and related topics

Below are some general tutorials on Microsoft PowerPoint:

Below are some tutorials on bullet points in PowerPoint:

Below are some tutorials on tables in PowerPoint:

Below are some tutorials on PowerPoint's drawing and graphics tools:

In your PowerPoint assignment, you will be asked to compare at least two of PowerPoint's drawing tools with at least two of Scratch's drawing tools. Regarding Scratch's drawing tools, see: Paint Editor, including 9. Bitmap Tools and 10. Vector Tools.

For more information about vector graphics (a.k.a. "object-oriented" graphics) vs. raster graphics (a.k.a. bitmap graphics or pixel-based graphics), see also:.

Note that PowerPoint has a separate set of "ink" tools as well as "drawing" tools. The "ink" tools -- which pertain to all Microsoft Office applications, not just PowerPoint -- are discussed in tutorials below:

PowerPoint's "drawing" tools can be used with an ordinary old-fashioned keyboard and mouse on a desktop or laptop, whereas the "ink" tools are intended to be used with a touch screen with pen input on a tablet. Your slideshow should be primarily about the "drawing" tools, NOT the "ink" tools, although, if there happen to be any "ink" tools similar to the particular "drawing" tools you've chosen, you should briefly mention the relevant "ink" tools too, clearly distinguishing between each "drawing" tool and its corresponding "ink" tool.

(Because this course requires you to use a desktop or laptop, but not a tablet, you are NOT required to learn how to USE the "ink" tools, but only to be aware of their existence.)


To all information for Week 1  |  To all tutorials about PowerPoint



Tutorials on Microsoft Word

Below are some general tutorials on Microsoft Word:


To all information for Week 1  |  To all tutorials about Word



Tutorials on miscellaneous topics: Problem-solving techniques (math word problems)

Solving math word problems:

The following tutorials review the skills needed to solve math word problems. These same skills are needed when writing Excel formulas, and also when writing programs (including very short, simple programs of the kind you've been exposed to in this course).

Note: You will need to develop, through practice, the methodologies that work best for you personally. Some of the above tutorials contradict each other on various issues. Experiment with different approaches and use what works best for you.


To all information for Week 1  |  To all tutorials about miscellaneous topics



Course information (syllabus, grading, etc.)

General info about this course:

The official course description of CSCI 12 says:

Concepts of thinking computationally and the technical tools to function effectively in the digitally-connected world. Hands-on introduction to computers, computation, the Internet, and the basics of computer hardware and software. Students will have experience during the instructed computer lab with a number of software environments including an operating system, a word processor, a presentation tool, a spreadsheet, and a database system. The course will focus on problem solving and programming within the context of a wide range of applications, and prepare students for further study in a variety of majors and minors. In addition, students will acquire the skills needed to learn other similar tools on their own.

Important notes:

  1. Although programming concepts will be introduced throughout the course, CSCI 12 is not a programming course per se and will not teach you much about how to program. The skills taught will involve primarily the use of common business software such as Microsoft Office. The main emphasis in lecture will be on figuring out how to solve problems using the software (especially Excel).
  2. Although Computer Science 12 is an introductory course, it is a college-level introductory course -- not a remedial course. Hence, not a lot of time will be spent on the basics of how to use a personal computer, which the vast majority of students have already learned in high school or earlier.
  3. Nevertheless, computer use experience of any kind is not an outright prerequisite to this course. We do aim to make this course accessible to the few students who have had little or no computer use experience whatsoever, but such students will need to work extra hard. It is strongly recommended that such students allow time in their schedules to (1) stay after class, up to an hour as needed, and/or (2) see the Computer Science department tutors (available on weekdays only).
  4. CSCI 12 is NOT intended for computer science majors and cannot be used to fulfill any of the requirements for a computer science degree, not even as an elective. But it is the first course of the separate Information Technology minor offered by the Computer Science department.
  5. CSCI 12 is one of two courses that accounting majors can use to fulfill their Excel requirement. The other such course is CSCI 48, Spreadsheet Programming, which goes deeper into Excel than CSCI 12 does. However, even CSCI 12 emphasizes Excel to a greater degree than the course description alone would indicate. Excel is emphasized both for the sake of the accounting students and because Excel is a very good fit for the course's problem-solving focus. (Please note that Excel can be very useful to non-accountants too.)
  6. In most sections of CSCI 12, including this one, the topic of presentation tools (e.g. PowerPoint) is relegated mostly to independent study using provided tutorial materials. In this section, the more basic features of Microsoft Word are treated similarly. (You will be asked to write a paper using Microsoft Word, and you will be asked to create a PowerPoint slideshow.) Requiring students to learn the easier topics primarily outside of class will, we hope, help them to "acquire the skills needed to learn other similar tools on their own," as the course description says. Classroom time will be spent mainly on the more challenging topics, which the majority of students are not already familiar with and cannot be expected to pick up just from tutorial material.
  7. Because this course teaches skills, not just facts and ideas, it has a relatively high workload -- especially for the few students with little or no experience using desktops or laptops, but also for the more experienced students too. Please plan your schedule accordingly.

Topics covered:

For a more complete overview of many (but not all) of the topics covered, see last semester's quiz study guides. Note, however, that this semester's covered topics may vary slightly from last semester's.

Quizzes and exam:

Every week starting in the fourth week of the semester, there will be a quiz at the beginning of each class session. Study guides for both the quizzes and the final exam will be posted here.

At least 85% of the final exam will consist of problems similar to those on the quizzes. The final exam will be approximately equal in length to 6 or 7 quizzes.

For this section of the course, both the quizzes and the exam will be on-paper only. (Actual computer use will be featured in homework assignments and lab work.) Among other things, this means you must be able to hand-write Excel formulas on paper, as well as use them in Excel itself. It is hoped that this requirement will help you think more abstractly about Excel formulas and problem-solving with Excel.

Grading scheme:

The grading scheme will be somewhat flexible, but in general you can count on the following weights:

If you do better on the final exam than on the quizzes, the final exam may be counted more (maximum 50%) and the quizzes less (minumum 15%). However, the fraction of the grade based on homework and papers will NOT be increased to compensate for bad quizzes and exam.

The extra credit items on the above list will be weighted on a sliding scale, with greater benefit to those students who are otherwise not doing well. A perfect score on all extra-credit items will add a total maximum of between 7% and 14% to your final score, as follows: (1) If your final score without the above extra credit items is 60 or below, the maximum extra credit will be 14 points. (2) If your final score without the above extra credit items is 100 or above, the maximum extra credit will be 7 points. (3) If your final score without the above extra credit items is between 60 and 100, the maximum extra credit will be a linear interpolation between 14 and 7. For example: If your final score without extra credit items is 80, the maximum extra credit will be 10.5 points.

The quizzes will typically have extra-credit problems, typically an extra 2 points out of 10. Thus, if you get perfect scores on all quizzes, including extra-credit problems, and if you do everything else perfectly too, including the maximum extra credit for class participation plus extra-credit assignments, your maximum total percentage score is 113.

Because of the large amount of extra credit possible, and because of the abnormally high resulting maximum percentage score, letter grading in this course will be stricter than normal at the high end (B+ and above), as follows:

ScoreGrade
0 to 59F
60 to 66D
67 to 69D+
70 to 72C-
73 to 76C
77 to 79C+
80 to 82B-
83 to 86B
87 to 90B+
91 to 94A-
95 to 99A
100+A+

At the same time, the large amount of extra credit makes it possible for students who would otherwise be failing (but not too far below 60) to get a C-, without applying a curve. Therefore, grades will NOT be curved.

Important: Extra credit for good class participation is NOT given automatically. In addition to whatever you've done to earn the extra credit during a given class session, you must also put your name on an extra-credit signup sheet at the end of the class session. You will earn the maximum class participation extra credit points only if your name is on the extra-credit signup sheets for at least 10 of the class sessions. If your name is on less than 10 extra-credit signup sheets, you will earn 10% of your maximum class participation extra credit per signup sheet.

Textbooks vs. online tutorials and lecture:

Because many students have complained bitterly about how expensive the textbooks used by other sections of this course are, this section uses a variety of free online tutorials instead of textbooks. Note, however, that most of the tutorials are not quite as good as the textbooks, nor are most of the tutorials tailor-made for this (or any) course. Therefore, this section of the course will be somewhat harder than the other sections.

Also, it will be even more important in this section than in the other sections that you be able to attend class regularly. Please note that, in ALL sections of this course, lecture attendance is crucial in order for you to have all the information needed; you cannot rely solely on the reading material of whatever kind.

Recommended (but not required) textbooks:

  1. Exploring Microsoft Word by Grauer and Barber
  2. Exploring Microsoft Excel by Grauer and Barber
  3. Exploring Microsoft Access by Grauer and Barber
  4. Jerry Waxman's course notes - available at the Copy Center under Gino's Pizza, across Kissena Blvd from QC

REQUIRED COURSE MATERIALS (which you must obtain if you don't have them already):

Although you don't need to spend money on textbooks for this course, you might need to spend money on a computer (either a laptop or a desktop -- a tablet will NOT do) if you don't have one already. You will be required to install Microsoft Office, including Word, Excel, and Access, if they are not installed already. If you already have Microsoft Office on your computer, make sure you have version 2010 or later.

You will also be asked to install the following free software on your computer: (1) Scratch, (2) either WinSCP (if you have a Windows machine) or Cyberduck (if you have a Mac), (3) either Putty (for Windows or for Mac OS X) or some other SSH (Secure Shell) client program, and (4) Python ("Latest Python 3 release" for Windows or for Max OS X).

You will also be asked to bring an old-fashioned paper notebook with you to class, for distraction-free note-taking.

Week-by-week syllabus (approximate):

Because the course has recently been rearranged, the following week-by-week syllabus is not yet set in stone. Some topics may take longer or shorter than expected.

Assignments marked "in-class" must be done as homework if you miss the lab session, or finished as homework if you are unable to complete them during the allotted lab time.

Week #Lecture topicsAssignments
1 Administrivia.
Excel miscellany.
Scratch intro.
Scratch (begun in class, continued as homework).
Problem-solving paper preliminaries (homework).
PowerPoint preliminaries (homework).
2 Excel miscellany.
Scratch (and PowerPoint) drawing tools.
Graphics intro.
Excel (begun in class, continued as homework).
Scratch (begun in class, continued as homework).
PowerPoint presentation, part 1
(independent study; due week 4).
Problem-solving paper, part 1 (due week 5).
3 Excel miscellany.
Number bases.
Excel (begun in class, continued as homework).
Scratch (homework).
PowerPoint presentation, part 1, due next week.
4 Data types and their binary
representations.
Excel IF functions.
Scratch variables and
if/then/else.
Excel (in-class).
Scratch (begun in class, continued as homework).
Problem-solving paper, part 1, due next week.
5 Excel: Formulas with multiple
IF functions (including nested IF),
AND and OR functions.
Review of dates.
Problem-solving techniques.
Excel (in-class).
Scratch (homework).
Problem-solving paper, part 2 (due week 7).
6 Databases: Brief intro.
Excel: More about formulas with multiple
IFS function and more about nested IF,
AND and OR functions.
Access (in-class).
Scratch (homework).
Problem-solving paper, part 2 due next week.
7 Databases: brief intro, continued.
Excel: COUNTIF, SUMIF, AVERAGEIF.
String concatenation.
WinSCP brief intro.
WinSCP login (in-class).
Excel (in-class, continued as homework).
Wordpress (in-class, continued as homework).
Scratch (homework).
Extra-credit assignment on computer security
(maximum 2 to 4 points of final grade).
8 HTML: intro.
Databases: Multi-table.
HTML (in-class and homework).
Access (in-class and homework).
Scratch (homework).
Problem-solving paper, part 3 (due in week 11).
PowerPoint presentation, part 2
(independent study; due week 12).

9 Python, brief intro.
Excel: SMALL and LARGE functions,
array functions (brief overview),
Goal Seek,
Solver tool (brief overview).
Python (in-class).
HTML (in-class, continued as homework).
Wordpress (homework).
Extra-credit assignment
on Excel array constants and array formulas

(maximum 1 to 2 points of final grade).
Extra-credit assignment
on Excel Solver tool

(maximum 2 to 4 points of final grade).
10 Excel: VLookup.
WinSCP and file permissions
Website upload via WinSCP (in-class).
Excel (in-class).
Problem-solving paper, part 3, due next week.
11 Excel: Financial functions.
Components of a website, part 1
Wordpress (homework).
PowerPoint presentation, part 2, due next week/
12 Components of a website, part 2
Excel COUNTIF, SUMIF, AVERAGEIF revisited.
Excel pivot tables, CSV files.
Word: Reference features, brief overview
Excel (in-class).
Add Word Reference features to paper
(in-class and homework).
13 Computer hardware overview.
Microsoft Word Mail Merge.
Microsoft Word (in class)
14 Search engine optimization?
Review & miscellaneous.
-

IMPORTANT WARNINGS:

Other relevant websites:

Office hours:

Office hours are after class and (by appointment) before class. Please try to arrange your life so you can stay after class if you need extra help. Please email me in advance if you need to see me before class.


To all information for Week 1  |  To all other important information



Other important information


To all information for Week 1  |  To all other important information

D. Nixon: CS 12 > Week 1