EE485 : Introduction to Environment and Tools for Modern Software Development

This course provides an introduction to the Linux programming environment. Participants will become acquainted with shell commands, editors, ctags/cscope, compilers, debuggers, source code management tools, command scripts, scripting languages, and tracing tools

Important Notes

  • The class EE485 will be online [Link].
  • The final exams will be conducted offline.
  • We will use Campuswire for uploading our lecture slides and Q&A session.
    • Campuswire: [EE485] Code : 7750
    • Lecture Slides (Campuswire): [EE485] Code : 7750
  • Please submit your assignements via the KLMS.
  • To contact TAs, please use kaist.ee485.ta.spring24@gmail.com instead of individual emails.
  • We do not accept late submissions. Please submit assignments before the deadline.

Class Overview

  • This course teaches students to learn and practice basic programming tools (like emacs, gcc, gdb, git, UNIX commands) in the Linux programming environment.
  • The goal of this course is to get familiar with the Linux programming environment.
  • This course will provide you with the necessary tools to feel comfortable with the EE209 programming assignments.

Lectures :

  • Time : Fri, 10:30am ~ 12:00pmr
  • Zoom Link : TBD

Professors

  • Youjip Won, ywon@kaist.ac.kr
  • John Kim, jjk12@kaist.edu

Teaching Assistants :

  • Juwon Kim, joo97508@kaist.ac.kr
  • Seung Won Yoo, swyoo98@kaist.ac.kr
  • Sukjoon Oh, sjoon@kaist.ac.kr

Important Schedule:

Date Class / Assignment
3/8, Fri Introduction to UNIX and C (bash_manual.pdf)
3/15, Fri UNIX shells and basic UNIX commands
3/22, Fri Editors (vscode)
3/29, Fri C compilers
4/5, Fri Debuggers
4/12, Fri Debugging techniques
4/19, Fri No Lectures (Midterm Week)
4/26, Fri No Lectures (MT)
5/3, Fri Makefile
5/10, Fri Sanitizer
5/17, Fri Version control systems
5/24, Fri System performance monitoring
5/31, Fri How a UNIX shell works
6/7, Fri Final Exam
6/14, Fri No Lecture

Office hour:

Professors' office hours

  • Start the email subject with [EE485].
  • Set up an appointment by contacting the professor via email.
    • E.g., "Hello Professor XXX" is not a good email subject, but "[EE485] Office hour registration" is.

TA office hours

  • TBD

Recommended Books

  • William Shotts, The Linux Command Line, 2nd edition
    • Linux commands, Bash shell, ssh/scp, etc.
  • Neil Matthew and Richard Stones, Beginning Linux Programming, 4th Edition
  • Richard Blum and Christine Bresnahan, Linux Command Line and Shell Scripting Bible

Grading Policy

  • Hands-on practice (60%) + final exam (40%)

Class Policy

  • Students are encouraged to interact with classmates, as well as the professor and the TAs, to discuss course material and assignment problems. In all your writing, including homework, essays, reports, and exams, use your own words, and acknowledge the source if you use someone else’s slides, quotes, figures, text, etc. Plagiarism and cheating are serious offenses and will be punished by failure on exams/assignments/course, and suspension or expulsion from the University.