Software Systems Lab

Course: COP 701
Semester I, 2024-25
Credits: 3 (0-0-6)



Instructor: Prof. Smruti R. Sarangi

Teaching Assistants

Anannya Mathur
Rahul Kumar
S U Swakath


Piazza page : https://piazza.com/iit_delhi/summer2024/cop701 (access code: cop701)

 
Task 0: 
Learn typing. The speed should at least be 40 WPM (this is a passing criteria for this course). In addition, the student should be
               able to type a 15-word sentence blindfolded. This is a mandatory requirement to pass the course.

Assignment details:

  1. Assignment 1: 30 Marks : LaTeX to Markdown converter [Due : Sunday, 25th August 2024]
  2. Assignment 2: 30 Marks : Metal Slug 6 game [Due : Sunday, 29th Septumber 2024]
  3. Assignment 3: 40 Marks : Mini-Web Browser [Released on Moodle] NEW!
  4. Optional Assignment: 40 Marks : Distributed NFS [Released on Moodle] NEW!
Books:
  1. Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
  2. Head First Design Patterns: A Brain-Friendly Guide - 10th Anniversary Edition (Covers Java8)
  3. Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design
Reading List and Resources:
  1. The need for typing - We Are Typists First, Programmers Second
  2. Platforms to practice typing - GNU Typist/Gtypist, Monkeytype
  3. Useful resources on how to learn typing: Seasoned Hunt, University of Waterloo
  4. Version Control System: Git Book
  5. Makefile: GNU make Manual, Makefile Tutorial
  6. Unit Testing: GoogleTest, JUnit
  7. C/C++ coding style:https://google.github.io/styleguide/cppguide.html 
  8. Java coding style: https://google.github.io/styleguide/javaguide.html
We recomend using linux environment for solving the assignments (Assignment 1 and 3). Windows users can refer WSL.