Academics Course

Course Details

1 Title of the course
(L-T-P-C)
Software Systems Lab
(1-3-0-8)
2 Pre-requisite courses(s) -
3 Course content
  1. Vim/emacs HTML, CSS
  2. Report and presentation software: latex, beamer, drawingsoftware(e.g. inkscape, xfig, open-office)
  3. IDE (e.g. eclipse, netbeans), code reading, debugging Basic Java Java collections, interfaces
  4. Java threads Java GUI Introduction to documentation: e.g. doxygen/javadocs
  5. Version management: SVN/Git
  6. Unix basics: shell, file system, permissions, process hierarchy, process monitoring, ssh, rsync
  7. Unix tools: e.g. awk, sed, grep, find, head, tail, tar, cut, sort
  8. Bash scripting: I/O redirection, pipes
  9. Python programming
  10. Makefile, libraries and linking
  11. Graph plotting software (e.g., gnuplot)
  12. Profiling tools (e.g., gprof, prof)
  13. Optional topics (may be specific to individual students302222 projects): intro to sockets, basic SQL for data storage,JDBC/pygresql
A project would be included which touches upon many of the above topics, helping students see the connect across seemingly disparate topics. The project is also expected to be a significant load: 20-30 hours of work.
4 Texts/References
  1. Online tutorials for HTML/CSS, Inkscape, OODrawUnix Man Pages for all unix tools, Advanced Bash Scripting Guide from the Linux Documentation Project (http://docs.python.org/3/tutorial/index.html)).
  2. The Python Tutorial Online Book (http://docs.python.org/3/tutorial/index.html))
  3. The Java Tutorials (http://docs.oracle.com/javase/tutorial/))
  4. Latex - A document preparation system, 2/e, by Leslie Lamport, Addison-Wesley, 1994

Copyright 2024 @IITDH. All rights are reserved