|
Language of Instruction
|
English
|
|
Level of Course Unit
|
Bachelor's Degree
|
|
Department / Program
|
COMPUTER ENGINEERING
|
|
Type of Program
|
Formal Education
|
|
Type of Course Unit
|
Elective
|
|
Course Delivery Method
|
Face To Face
|
|
Objectives of the Course
|
The aim of this course is to equip students in engineering and the natural sciences with practical command of GNU/Linux for modern research and engineering practice. Students will progress from end-users to confident practitioners who can configure their computational environment, automate workflows through shell scripting, manage code with version control, and exploit remote servers, HPC clusters, and containers for reproducible computational research.
|
|
Course Content
|
This course covers the philosophy and architecture of UNIX/Linux systems, the Bash shell, file system management, text-processing tools (grep, sed, awk), regular expressions, process management, and shell scripting for automation. It further introduces the Linux development toolchain (GCC, make, gdb), version control with Git, secure remote access (SSH), and the scientific Python ecosystem (NumPy, SciPy, Jupyter). The course concludes with an introduction to high-performance computing using SLURM and containerization with Docker/Singularity for reproducible research.
|
|
Course Methods and Techniques
|
The course is delivered through interactive lectures combined with live in-class demonstrations performed directly on a Linux terminal. Each topic is reinforced by hands-on assignments using real engineering and scientific datasets, along with a term project requiring students to build a complete Linux-based computational workflow. Active learning is encouraged through pair programming, troubleshooting exercises, and code review via Git/GitHub.
|
|
Prerequisites and co-requisities
|
None
|
|
Course Coordinator
|
Prof.Dr. Zafer Aydın
|
|
Name of Lecturers
|
Asist Prof.Dr. ASLI EYECİOĞLU ÖZMUTLU
|
|
Assistants
|
None
|
|
Work Placement(s)
|
No
|
Recommended or Required Reading
|
Resources
|
Nemeth, E., Snyder, G., Hein, T. R., Whaley, B. & Mackin, D. UNIX and Linux System Administration Handbook. Pearson. Robbins, A. & Beebe, N. H. F. Classic Shell Scripting. O'Reilly.
|
|
Course Notes
|
Primary Textbooks • Shotts, W. E. The Linux Command Line: A Complete Introduction. No Starch Press (latest edition). [Free at linuxcommand.org] • Ward, B. How Linux Works: What Every Superuser Should Know. No Starch Press. • Scopatz, A. & Huff, K. D. Effective Computation in Physics: Field Guide to Research with Python. O'Reilly.
|
Course Category
|
Engineering
|
%70
|
|
|
Engineering Design
|
%30
|
|
|