ATSC 212
Earth & Atmospheric Science Intro Computing Lab

[ home | students | labs | resources | help ]

Syllabus

Week (Instructor): Topics
  1. no class (see CPSC 189 instead)
  2. no class (see CPSC 189 instead)
  3. no class (see CPSC 189 instead)
  4. no class (see CPSC 189 instead)
  5. no class (see CPSC 189 instead)
  6. (RS & GH): Welcome & Unix, computing lab environment, user access, security, ethics and responsibilities of programmers, programming style and guidelines (e.g., adding comments to code), good programming practices, language diversity (imperative vs. OO), reading assignments, syllabus, access to help.   Day 1:  Load key software onto student laptops.  Day 2:  Unix/linux intro.
  7. (GH): Unix/Linux – shell, command line, manual, passwords, file manipulation, displaying files, file permissions,  searching files (grep), running programs, environments,  editors (VI, emacs), pipes, I/O, aliases, remote access to computers, file transfer, etc.   (Unix/linux will be used as the operating system to access many of the remaining labs.)
  8. (RS): FORTRAN-1 – Emacs editor.  Bits, bytes, words, types, floating point, variables, arrays, conditionals, loops, I/O to screen, libraries, logic.  Program design, top-down programming, version control.  Create and run program to plot soundings.
  9. (RS): FORTRAN-2– functions, subroutines, file handling, editing code, logic errors, finding bugs, typical errors, pitfalls.  Enhance the sounding plotting program. 
  10. (GH): C-1 –  more VI editor.  Compilation, execution, structure, syntax, types, variables, arrays, operators,  conditionals, loops, functions, I/O.  Write and run simple C programs.
  11. (GH): C-2 - pointers, dynamic memory allocation, comparison of C & FORTRAN, calling C algorithms from FORTRAN programs.  Test with sample programs.
  12. (RS & GH): Web authoring, html, and php.  Creating web pages with and without authoring tools.  Cascading style sheets.  Modifying pages, methods to find and fix bugs.   Coding in html.     
  13. (RS, GH): php, and Pitfalls in Sci. Programming – Coding web pages using php.  Pitfalls in scientific programming.  Summary of good programming practices.  Review.  

NOT covered this term (because of CPSC 189 Python instead) are:

  1. (GH): PERL-1 – Scripting methods.  Interpreters vs. compilers.  Variables, operators, conditionals, loops, I/O, calling system commands from within PERL.  
  2. (GH): PERL-2 – Scripting methods.  Interpreters vs. compilers.  Variables, operators, conditionals, loops, I/O, calling system commands from within PERL.  
  3. (TN): MySQL-1  – data bases types, relational data bases, storing and retrieving data, organizing data efficiently.
  4. (TN): MySQL-2  – writing FORTRAN or C programs to access the data base, and/or writing a web interface to the data base.

Learning Goals.   By the end of this course, you should be able to:

 The aim is give you a skill set crucial for success as a science undergrad student, grad student, and working professional.   

Course structure

Hands-on lab in a computer classroom.  

During the two 75 minute face-to-face lab meetings each week, the instructor: 

  1. teaches computing concepts, tools, and programming methods; 
  2. demonstrates those methods (using computer projector) with the students following along on their terminals;  
  3. demonstrates good programming practices, typical programming mistakes and how to debug the code; 
  4. assigns focused exercises to be completed during the lab period; 
  5. assigns homework computing assignments that they do on their own as drop-in lab users or from their home computers; and 
  6. assigns readings before each new topic.  

Normally, the instruction will be completed during the first hour each lab day, with the remaining time each day available for the student to start on the assigments while the instructors and TAs are still in the lab room to answer questions.


[ home | students | labs | resources | help ]
.
Copyright © 2012 by Roland Stull and George Hicks II

UBC
.