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