As a course and a student body, we are more remote than usual, and preferable. To help bridge the chasm, I will leverage some of the technology platforms Northeastern makes available to us.
Most if not all students will already have enrolled themselves for the Duo 2FA system. It is essential that you do so to access Northeastern’s digital resources. Northeastern has at least two tutorials for installing and using the Duo 2FA system:
Piazza.com hosts our main Q&A forum. We are everyone learning; no one knows all the answers, and remember that everyone wears their best and most knowledgeable face. For questions related to the course material, assignments, policies, or what have you, please utilize Piazza. I generally prefer anonymous Piazza posts over email—this way others get the benefit of your thoughtful question and answers and corrections scale to the size of our class. Please do anonymize them if you wish; we can see even if you cannot. Frequently someone will have the same concern or be feeling the same way.
If it doesn’t “give away the punchline” of some homework question or assignment, necessitate PII in the question or the answer, and isn’t contrary to FERPA or your rights under the Northeastern University Handbook, please do consider if this can be a Piazza message.
I will be utilizing the school’s Enterprise git at [http://ccs.github.neu.edu]. You should have access to that with your KCCS account. I will expect you to know how to access this, for your own benefits and for coursework. If you are not familiar, please consult the Khoury Systems group’s documentation and walk-through.
I constructed our course homepage as a Jekyll site built with Github
Pages. Student corrections and improvements are incredibly welcome!
You can submit a pull request
(PR) for a quick
correction and improvement. Every page on this website has a direct
links to its
.md file in this repository.
As a part of a participation grade, I will be asking poll questions in class (often several per class). These will constitute a part of your grade. I will expect you to login to answer, during the class period itself. You should ensure that you have added your northeastern university email address account, and have this active and enabled.
There is a KB Article on logging in via Northeastern.
I intend to broadcast our course meetings via Northeastern Zoom. I prefer it over MS Teams for a variety of reasons. Not the least of which is the instantaneous and anonymous feedback that it provides, via Dial testing. You will find it helpful to have two internet-enabled devices with at hand when you are attending class remotely, once for viewing the class and a second for answering poll questions.
Via direct installation.
Via the browser
You also have the option to join without downloading or installing any software, via the Zoom web client. The web client does not have all the functionality of the desktop or mobile apps; please see the comparison here.
Go to https://vpn.northeastern.edu, and follow the instructions to install the GlobalProctect VPN client on your machine. You will need this to use the VDI linux machines. If you have difficulty please consult the relevant ITS KB articles, and if necessary reach out to ITS support.
VDI Linux Machines
Download and install Racket and the DrRacket integrated development environment. To begin with, I will use DrRacket in front of the classroom to demonstrate Racket and miniKanren programming, and I want you all to follow along and to practice during designated practice periods.
We will also use the
Rackunit unit testing
framework. This is another Racket package. We will use this as a
substitute for the
check-expect you might have come to appreciate if
you have already taken Fundamentals I at NEU. We make this
check-expect doesn’t exist in the full
I will base our discussion, usage, and implementation around the
miniKanren language. You can install this in DrRacket via the
faster-minikanren package in the package manager. You can also
(likely) find this implemented for the language of your choice at
[http://minikanren.org]. We will at first use the Racket
Other packages as they come up
Prepare yourself to download and install other packages as necessary to make our test suites run. You will not need any additional packages to complete your homework, nor should you use them.
One of the things I miss most about real, in-person classrooms is being able to applaud someone for a job well done, and for giving it a shot. Here’s our best alternative. If each of us goes here and enters his or her name then, when one of us presses the applause button, we can all see and hear it.