This course is an Introduction to Scientific Computing for students of all sciences. We use Linux to learn the basic tools that allow us to handle structured data and extract valuable scientific information from it.
This page will be updated during the semester. Please check it regularly.
Course Forum
Once you have registered for the forum, you should send all your questions by email to iu-csp@googlegroups.com. You can also write your questions, and check for previous messages, on the web page https://groups.google.com/d/forum/iu-csp.
Slides used in classes
Some material is presented only on the blackboard, so you need to take good notes on classes to improve your learning. We recommend taking notes with pen and paper using the Cornell Method.
- Class 1: Why “Computing Science” in Science
Faculty?. (Sep 19, 2018). [Slides].
What is a computer? Why do we care? - Class 2: What is inside a Computer?. (Sep 20,
2018). [Slides].
Hardware, CPU, RAM, HD - Class 3: Representing things with numbers. (Sep
26, 2018). [Slides].
Memory, Files and Documents - Class 4: Bits & Bytes. (Sep 27, 2018).
[Slides].
Also, how to study better - Class 5: First steps on UNIX. (Oct 3,
2018). [Slides].
Introduction to Command Line Interface - Class 6: Second step on UNIX. (Oct 4,
2018). [Slides].
Introduction to Command Line Interface - Class 7: Using UNIX in your computer. (Oct 10,
2018). [Slides].
Introduction to Command Line Interface - Class 8: Looking inside files. (Oct 11,
2018). [Slides].
Connecting to servers. Redirecting standard output - Class 9: Redirection of Standard Input and Output.
(Oct 17, 2018). [Slides].
Replacing keyboard and screen by regular files. Connecting the output of a process with the input of the next one - Class 10: Processes, Jobs, and Permissions.
(Oct 18, 2018). [Slides].
Wildcards, file modes, background processes - Class 12: Other useful UNIX commands. (Oct 25,
2018). [Slides].
Measuring disk space. Selecting, sorting and counting data from text files - Class 13: UNIX Variables. (Nov 14, 2018).
[Slides].
Configuring your session - Class 14: Regular Expressions. (Nov 14,
2018). [Slides].
How to look for complex text patterns - Class 15: Miscellany. (Nov 21, 2018).
[Slides].
Several details - Class 16: Intro to AWK. (Nov 22, 2018).
[Slides].
Smarter Processing - Class 17: AWK assignments. (Nov 28, 2018).
[Slides].
Smarter Processing - Class 18: AWK internal variables. (Nov 29,
2018). [Slides].
Changing the behavior of AWK - Class 19: Quiz 2. (Dec 5, 2018).
[Slides].
Practice using AWK - Class 20: AWK functions and loops. (Dec 7,
2018). [Slides].
Also, solution of Quiz 4 - Class 21: Quiz 3. (Dec 12, 2018).
[Slides].
Practice using AWK - Class 22: AWK arrays. (Dec 12, 2018).
[Slides].
Practice using AWK - Class 23: Quiz 4. (Dec 19, 2018).
[Slides].
Practice using AWK - Class 24: Final class. (Dec 20, 2018).
[Slides].
Practice using AWK
Attendance
By regulation from the Rectory, students need to attend at least 70% of the classes. The attendance book is updated every week and can be seen in Google Sheets. Please check it and verify if it is right.
Bibliography
- Brian W. Kernighan. 2011. “D is for Digital: What a Well-Informed Person should Know about Computers and Communications”. CreateSpace Independent Publishing Platform, USA.
- Timeline of Computing
On line material
A Command Line Crash Course and Resources there
Google “Learn Unix Command Line”
If you use windows, please download Git Bash for Windows
See also Windows Subsystem for Linux
Take a look at Microsoft Cloud Servers
Regular-Expressions.info
Learn Regular Expressions with simple, interactive exercises. Good examples
For testing: https://regex101.com/
A Crash Course In AWK. Event-based Programming
Common threads: Awk by example (by IBM)
Awk - A Tutorial and Introduction - by Bruce Barnett - The Grymoire!