ShockSoc Programming Support Sessions Home-Page
Authored and Managed by Oliver Dixon, ShockSoc Technical
Officer.
This home-page is intended for those interested in the ShockSoc
Programming Support Sessions in P/T/401, taking place from 2pm
to 5pm on Wednesdays; note that although these are the
"official" timings, P/T/401 is usually open with a ShockSoc
committee member from midday on Wednesdays. The purpose of
these support sessions are to complement (and not replace) the
ELE00029C "Introduction to Programming" module, which is
currently delivered in the first year by
Adar Pelah in the
Department of Electronic Engineering at the University of York.
In particular, these sessions have an almost-absolute focus on
C programming, which is typically taught during the Spring
term.
On this page, you will find a PDF lab script for each week, as
they are released, along with any supplementary material. As
always, relevant remarks are always encouraged and welcomed,
especially ones concerning suggestions and/or corrections to
the scripts, and should be directed to
od641@york.ac.uk.
Approximately a week prior to a script's official release, an
inspection copy will be placed on this page for comments by
particularly avid readers. All inspection copies will be
clearly marked as such, and should not be presented to the
majority of the cohort.
To build the scripts yourself, download and extract the source
archives. A standard TeX Live distribution should suffice in
most cases, along with a working Biber and BibLaTeX setup. In
the interest of avoiding the many unpleasantries of
pdflatex and Biber, I suggest using John Collins'
fantastic latexmk
tool to handle the multi-pass compilation process. If you
would like the compilation date and platform to appear on the
title page, you must pass -shell-escape
to latexmk. All PSS scripts are wholly dedicated
to "M. Q.".
-
Session 1: Configuring the Environment and
Understanding the Build Process
-
Session 2: Variables and Data-Types
-
Session 3: Functions and Headers
-
Session 4: Conditionals and Iteration
Aside: for the 'official' Introduction to Programming module, I
have written a short guide describing the build and
client-linking processes for Allegro on UNIX-like systems. It
can be found here, with the
source file available here.