Assignment 1 – Form a team and write a memo
1 The team
2 The memo

Assignment 1 – Form a team and write a memo

Due Friday 4/2 11:59pm for the first task, Sunday 4/4 11:59pm for the second one.

Follow the instructions for the deliverables to the letter, otherwise our scripts may not be able to find your submissions.

1 The team

Your first task is to find a partner and form a team.

Deliverables: Send one email per team to Christos cc’ing Lukas and Robby with the title "Our Team for Software Construction Spring 2021". The email’s body should have exactly two lines, one per member of your team. Each line should be of the form "Y" "X" Z where Y is your last name, X is your first name and Z is your github userid.

2 The memo

Your second task is to write an 1-page memo to justify the selection of the language your team will work with for the rest of the quarter. It is always a wise choice to pick a language you already know well and you are confident that it is a good fit for the project you are working on. What you know at this point is that it is necessary that the language you pick provides support for:
  • running programs from the command line of a Unix box;

  • Unix-style I/O (reading from STDIN and writing at STDOUT);

  • reading, processing and printing JSON;

  • TCP/IP sockets;

  • loading code dynamically.

In addition to the above, it will be extremely helpful for you if your language comes with a unit testing framework, random testing facilities, a good IDE, a REPL and ways to organize your code in modules, packages etc.

The title of your memo should be "This is why I commit to X and rely on it to help me succeed." where X is the name of your language of choice. Most importantly the memo should justify your choice of language in a concrete manner with respect to all the necessary requirements listed above. For example, if you claim that your language supports JSON processing through a library, you have to provide the library name.

Deliverables: In your team’s GitHub repository, first create a directory named "Deliverables" and then inside it create another directory named "1". Finally create inside "1" a directory "1.2" and place there a PDF named "memo.pdf" containing your memo.

You will receive up to twenty points for your essay depending on how many of the above requirements it discusses.