Computer Science 50
resources
You and google are your best resource. In this class, you'll need to get quick answers to sometimes trivial programming
questions at 2 AM in the morning; questions on APIs, unix commands, bash scripst - go to notes and if not there the web.
If you find a good resource send me the link and we can share it.
There are a number of good pointers to online resources in the lecture notes.
Machines in Lab 001
Sudikoff Lab 001 tour
CS Department User's FAQ
Bash and Shell programming
Short bash tutorial
GNU bash manual
BASH Programming - Introduction HOW-TO
Advanced bash scripting guide
Linux books/links
These books two available online to Dartmouth Students
Linux in a Nutshell, 5th edition (currently not available)
The book I really wanted to list here Running Linux, 5th edition does
not seem to be available on Safari Books yet. I've not used this book
but looks useful. It includes many advanced issues we will not cover
but it could be a useful reference. Let me know.
Linux System Programming
Unix commands on the web
C
PuTTY/Cygwin Tutorial
A Tutorial on Pointers and Arrays in C, by Ted Jensen
The Wikipedia entry for the C programming language
The USENET discussion Why is C good?
C Programming Notes, by Steve Summit (Experimental College, University of Washington)
Introductory C Programming, chapters 1-14
Intermediate C Programming, chapters 15-25
A list of POSIX Library Functions
To obtain further details about any function listed here, on the
Sudikoff lab computers type man functionname
GNU make
cvs
Editors
I recommend, emacs or vi, vim and subblime - up to you.
I use Aquamacs Emac on my mac
I also like gvim
or just type vi or emacs at the command line.
And for Generation Z: Sublime Text
Some tutorials:
Emacs Tutorial
vim Tutorial
vi tutorial
Sublime tutorial
Tools
valgrind: a family of tools for dynamic analysis of programs.
svn souce code management
make is a utility for determining what needs to be done (e.g., compile, link, copy, etc.) to build a program
gtk: A popular toolkit for creating graphical user interfaces.
pandoc: A universal document converter.