Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Primer Spec theme #22

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 0 additions & 47 deletions assets/css/style.scss

This file was deleted.

8 changes: 6 additions & 2 deletions assignments/01-cli-investigative.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
---
layout: spec
---

# Homework 1: CLI, Investigative

## Important: use Bash!

<div class="primer-spec-callout danger" markdown="1">
For this and all future assignments, please make sure you are using Bash as
your shell, as that's what this course will focus on for the reasons described
in [lecture](../lecture-notes/1-cli.html). The Tufts CS department's default
shell for new users is tcsh, so unless you've asked to have yours
shell for new users is `tcsh`, so unless you've asked to have yours
changed[^change-shell], you'll need to run `bash -l` *each time you connect to
the server prior to working on coursework*. Your prompt won't look any
different after running this command, but you can run `echo $0` to check which
Expand All @@ -21,6 +22,7 @@ shell you're using.
database of students and staff, which only the department administrators
can modify. To change your default shell to bash, write an email to
[staff@eecs.tufts.edu](mailto:staff@eecs.tufts.edu).
</div>

## CaLIsthenics: what's on the homework server?

Expand Down Expand Up @@ -73,10 +75,12 @@ syllabus for an example) with each:
extension. We do not care about whitespace, field order, or whether each
line includes extra fields beyond these two.

<div class="primer-spec-callout info" markdown="1">
*Hint:* `\.[^/.]*$` is a regular expression that matches a literal dot
(`.`), followed by any number of characters that are not a dot or a forward
slash, followed by the end of a line. In other words, it matches the
extension of files from line(s) containing file paths.
</div>

This is not a trivial problem. Expect to have several different commands in
your pipeline. Please ask for help early if you are struggling.
Expand Down
5 changes: 4 additions & 1 deletion assignments/02-cli-constructive.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
layout: spec
---

# Homework 2: CLI, Constructive
Expand Down Expand Up @@ -33,7 +34,7 @@ tree, the `.snapshot/` directory only shows up in listings (`ls -a`) in your
top-level home directory. However, it is also present in every subdirectory if
you specifically ask for it:

```
```console
$ ls -a Documents/ # No .snapshot/ listed!
. .. do-not-read top-secret-file
$ ls Documents/.snapshot/
Expand Down Expand Up @@ -175,11 +176,13 @@ comp50isdt cli-constructive whats-new.sh myls.c`. You must be logged into the
homework server to use Provide.

## Just for fun...
<div class="primer-spec-callout warning" markdown="1">
**At this point, you are done with the assignment. You need not read anything
past this point if you don't want to.** However, if you're looking for a
challenge, or if you want to learn some tricks involving syscalls and shared
libraries in Linux, feel free to take a stab at the following. Expect to do a
lot of Googling here, as we have not taken care to define every term we use.
</div>

### Step 1: use `LD_PRELOAD` to intercept `opendir`
`opendir()` and `readdir()` are not themselves syscalls; instead, they're
Expand Down
3 changes: 2 additions & 1 deletion assignments/03-vcs-investigative.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
layout: spec
---

# Homework 3: VCS, Investigative
Expand Down Expand Up @@ -79,7 +80,7 @@ easier to clone and use the CLI.
around.
1. What was the first commit? Please provide the hash.
1. How many files were in it?
1. Who authored the commit 1aec7078c4d173ff15ca15ce8ffd1a276d9c03b9? What
1. Who authored the commit `1aec7078c4d173ff15ca15ce8ffd1a276d9c03b9`? What
GitHub pull request does it belong to? This question requires some use of
the GitHub UI.
1. Comment on the quality of the commit message. What would you change about
Expand Down
1 change: 1 addition & 0 deletions assignments/04-vcs-constructive.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
layout: spec
---
# Homework 4: VCS, Constructive

Expand Down
1 change: 1 addition & 0 deletions assignments/05-bld-investigative.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
layout: spec
---
# Homework 5: BLD, Investigative

Expand Down
3 changes: 3 additions & 0 deletions assignments/06-bld-constructive.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
---
layout: spec
---
# Homework 6: BLD, Constructive

## Build me up, buttercup
Expand Down
1 change: 1 addition & 0 deletions assignments/07-cor-investigative.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
layout: spec
---
# Homework 7: COR, Investigative

Expand Down
27 changes: 26 additions & 1 deletion index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
---
layout: spec
disableSidebar: true
---

<style>
.navbar {
list-style-type: none;
margin: 0;
padding: 0 !important;
}

.navbar li {
display: inline;
padding-right: 16px;
font-size: 20px;
}
</style>
<ul class="navbar">
<li><a href="#administrivia">Administrivia</a></li>
<li><a href="#schedule">Schedule</a></li>
Expand Down Expand Up @@ -189,4 +204,14 @@ course:
* Berkeley's [EECS201](https://www.eecs.umich.edu/courses/eecs201/)
* Berkeley's [CS9E](https://www2.eecs.berkeley.edu/Courses/CS9E/)

<div id="elephant"><img src="assets/images/jumbo.png" alt="Jumbo on a laptop" /></div>
<style>
div#elephant img {
width: 100px;
position: fixed;
right: 0;
bottom: 0;
}
</style>
<div id="elephant">
<img src="assets/images/jumbo.png" alt="Jumbo on a laptop" />
</div>
Loading