User Tools

Site Tools


Sidebar

projects

  • uxi0 (due 20170125)
  • adm0 (due 20170201)
  • pbx0 (due 20170208)
  • pbx1 (due 20170215)
  • usr0 (due 20170301)
  • pbx2 (bonus; complete by 20170301)
  • upf0 (due 20170308)
  • upf1 (due 20170315)
  • usf0 (due 20170322)
  • icp0 (due 20170324)
  • gfo0 (due 20170412)
  • EoCE (bottom of journal) (due 20170512-141459)
haas:spring2017:unix:projects

Corning Community College

CSCS1730 UNIX/Linux Fundamentals

Assignments, Documents, Information, and Projects

Projects

  • uxi0 (due 20170125)
  • adm0 (due 20170201)
  • pbx0 (due 20170208)
  • pbx1 (due 20170215)
  • usr0 (due 20170301)
  • pbx2 (bonus; complete by 20170301)
  • upf0 (due 20170308)
  • upf1 (due 20170315)
  • usf0 (due 20170322)
  • icp0 (due 20170324)
  • gfo0 (due 20170412)
  • EoCE (bottom of journal) (due 20170512-141459)

Class Stats

Week 13

  • For those getting to that point in the EoCE and are having issues operating dd(1), in addition to referencing the manual page, I put together a quick tutorial showing some basic operations:

Week 12

  • As I mentioned last week, the UNIX IPKA is now available. Prior average times are about 1 hour 30 minutes, so be sure to plan accordingly.
  • Some good progress is being made on the EoCE by some. Also some good questions and realizations. Keep up the good work.

Week 11

  • Welcome back! I hope everyone had a phenomenal spring break!
  • The EoCE will be unveiled, at which point that will be the main focus from here on out.
    • It will be located at the bottom of your journal.

Week 10

  • Week before break; it was a general “work on stuff” time.

Week 9

  • The fun continues! icp0 will occupy our time in class this week, as you work to automate the drawing of pretty pictures- all from a script run on the command-line!
  • Your next project is gfo0, which is also a script-heavy project. Because you've been so awesome, this one won't be due until the Wednesday we get back from break (think of the bonus point opportunities!)
  • Have we hit and moved beyond the high water mark for the semester? upf1 showed a tangible decline in overall class performance. The average, median, and mode all took massive hits. Largely due to outright non-submits. At the same time, for many (who submitted), it was among their best work (including being their best work all semester). It appears we have a growing divide between those who are really getting it and those who are struggling.

Week 8

  • the project this week dives into a full-blown script; usf0 has us interacting with binary, octal, decimal, and hexadecimal values
  • your .cli files need to contain JUST the command-lines to produce the desired output… the “Task 0 result is” part needs to be in the main steps file, which then executes each .cli file. A few of you rigged up this overly elaborate .cli file chaining.

Week 7

  • usr0 projects have been evaluated. Many of you took advantage of both the time and the general easiness of the project to score some significant bonus points. I would hope that your understanding of file permissions is far more intuitive as well.
  • Warning grades are on the horizon; for those with a D or F as of my time of entering warning grades, such will be reported. Most of you have nothing to worry about.
  • upf1 is the next project in the “pipe fun” series of projects.
  • With usr0 now behind us, I have adapted the urev tool for general use- for those that wanted to keep up your file permission practice, you may now do so.

Week 6

  • With the evaluation of pbx1 and uka1, we now have enough data points to start generating the class stats page to potentially see useful trends. Check it out.
    • Some observed trends:
      • So far, someone (at least 1) has always gotten a 100%
      • So far, someone (at least 1, but not always the same someone) has always gotten a 0%
      • With each passing project, the class average and medians seem to slide down, yet the mode (most frequent score) remains in the 90's.
  • Reviewing the uka1 knowledge assessment, some general comments:
    • I would have thought that giving something familiar to what you've seen before (past, current, and bonus projects, PLUS a practice knowledge assessment just a week prior), there'd be enough of a hint of various encountered deficiencies that could be corrected. But nope, it seems that if people struggled then, they struggled now, making no headway to address what they had problems with before.
      • And a big part of that is just in reading and following directions.
    • Topics and activities we encounter ARE and continue to be comprehensive… that means what you learned before is still needed as it gets built upon. We don't just learn these things for show… these are important concepts that allow for new approaches to solving problems.
  • The next project, upf0, has us exploring pipes in a themed problem solving setting. I had a lot of fun putting it together, so hopefully you'll have just as much fun undertaking it!
  • This week, we'll likely continue with some of our shell scripting endeavors, getting to:
    • loops
    • possibly functions
    • … and maybe working through some scripts together in class to see more examples.
  • But remember, none of this will become more familiar if you do not take the time to play with this outside of class. I was dismayed at the number of people who, prior to break, asked me how to access the class homepage/lab46 from outside the room (this was something you were to have established in the FIRST PROJECT, and hearing it then only confirmed that you haven't been putting in any time outside of class).

Break 1

  • It has been a relatively quiet break… only 12 or so people have commenced on the usr0 project… remember that with the built-in time limits, waiting until we get back may be a costly decision to have made.

Week 5

  • I've put together the bonus puzzlebox, pbx2. To get it, copy the files from your user directory residing within the pbx2/ subdirectory of the UNIX Public Directory. There will be a README file with further instructions.
  • Your next project is ready: usr0
    • we're going a little light this week as we have the knowledge assessment on Friday, AND I am giving you a chance to experiment and play. Please take advantage of this opportunity.
  • Remarks on the practice knowledge assessment (uka0):
    • for something that was supposed to be closed person, there was certainly a heck of a lot of “helping” going on. How am I supposed to evaluate your skills, or give you credit, if it more appropriately should be awarded to your neighbor?
      • My tendency is to give people the rope to hang themselves with. I may not directly intervene, but I may set score vampires loose on your results, sucking away points as appropriate (so be warned).
    • more than 1 person (that's at least two more than there should be) had issues operating the cp command to copy the file. We're a third of the way through the semester, folks, and if you still have trouble with paths and copying files, you really need to reconsider what you're doing here.
    • file permissions are still plaguing people. At least it has progressed from “I don't know what to do” to “I cannot access the file”.
      • of course the critical response you need to take is “why can I not access the file?” and to have the knowledge of the chmod command not be a mystery (it has been touched on in almost every project, yet I still got some people who were still unable to recall both the command and how to effectively operate it!)
    • “saving” data to a file. Please review I/O redirection, from what? Week 2? I am not covering this stuff for my amusement.
    • square brackets in argument specifications denote optionality. You do not include them when specifying that feature.
    • reading: I left an important “NOTE” in the README file. I found myself having to point it out to almost everyone. I didn't make the README file so it could go ignored.
      • This is different from having trouble understanding what to do with the information. But the number of people trying to process the information vs. those oblivious to it was very much out of proportion.
    • observation: far too many people, upon getting to text data, combined it all into one big file, and then hit a brick wall. As I asked probing questions, I realized that far too many people had no comprehension of what they were doing, merely blindly combining things and then asking helplessly when they couldn't make it go.
      • again, this isn't a class about learning commands. It is a class about solving problems, using tools in strategic ways.
    • steps file: more than a few did not include the copy step, nor properly include the steps to establish your project working directory.
      • some that included the copy step did not use a full absolute path to copy it.
    • now, that isn't to say that progress wasn't made. A number of people took on the challenge, encountered new situations, and adapted to it accordingly. I am most pleased by that (and those individuals likely know who they are).

Week 4

  • The next project, pbx1, continues your problem solving and scripting adventures.
  • adm0 has been evaluated. Some common pitfalls I noticed:
    • be sure to read the specifications; only two people actually compressed with max compression
    • exact commands means exact commands. People were putting narrative in their actual commands (steps would not have run)
    • some people put numbered steps prefixing their commands. No need, this will prevent the steps from running.
    • uppercasing the first letter of words; remember, UNIX is case sensitive. The command is unzip, NOT Unzip.
    • you create archives with the same tool you used to extract from them; archives and directories are NOT the same thing;
      • a directory file is a file containing information on files (metadata)
      • an archive is a regular file containing actual file information
    • make sure you know the difference between absolute and relative paths!
      • and be sure to include the initial file copying step!
    • making a local data directory to store your project files is a valid step that must be included in the steps file
    • putting the nano lines in the script doesn't actually contribute anything to the overall process. Like ls, they do not by default contribute anything to the overall script.
  • generally, a lot of problems were due to developed habits of not reading between the lines- assuming things were in place without specifying the precise step(s) the computer would need to accomplish the task from the steps file.
  • Now that you know how to run scripts, you should verify your pbx1steps file executes cleanly and correctly before submission.
  • We will be learning the vi/vim text editor this week, then probably tinkering some more with scripting (loops, command-line arguments).
  • I am thinking of having a knowledge assessment, next week (week 5), covering anything we've learned up to this point.

Week 3

  • Third week in… your first projects have been evaluated (uxi0). Results can be seen by running status unix on lab46.
    • Don't forget journals! On Sunday I noticed not many people had yet tended to their week 2 entries. Not wise to wait until the last minute…
  • The next project is here! The PuzzleBox!
    • This project, like marmite, is usually loved or despised.
      • For those that love it, it is among the best, easiest, and most fulfilling projects of the semester.
      • For those who despise it, it is generally because you are your own worst enemy. This project is as challenging (or simple) as you make it.
  • Looking to cover more variable-related stuff this week
    • environment variables
      • PATH
  • possibly get into some shell configuration, enabling you to customize your sessions

Week 2

  • We've started exploring the realm of UNIX.
    • UNIX Philosophy
    • types of files
    • permissions
    • I/O redirection
  • we'll be continuing, likely exploring the actual filesystem this week to get a lay of the land.
  • additionally, we'll likely be getting to the following topics:
    • pipes
    • quotes
    • variable and command expansion
  • The next project, adm0, is now available. It has you applying some of the concepts introduced last week, under the theme of archive and data manipulation.
  • The week 1 journal entry came due (before it became Monday, the 23rd). Week 1 has been processed, and week 2 is now available to get started on.

Week 1

  • Welcome! I've wrapped all the initial activities into one project, uxi0, that I'd like you to perform by the given deadline (by 11:59:59pm / 23:59:59).
  • On Lab46, we'll be getting familiar with logging into the pod systems, and once there:
    • opening up a terminal
    • logging that terminal onto Lab46 for class work and in-class participation
  • Get familiar with how to log onto Lab46, and once on:
    • change your password to something more preferable
    • start working on the labs and other class activities
    • start exploring
  • Read the Mages book!
  • Be sure to do the reading (located in the individual labs below)! There may be many pages, but there are many concepts to encounter.
  • The following labs are now available for you to work through:
  • NOTE: The labs are for your benefit, they are not submittable assignments.
haas/spring2017/unix/projects.txt · Last modified: 2017/04/24 15:16 by wedge