Copyright © 2008 Workingmouse Pty. Ltd. All Rights Reserved
Abstract
This document is intended as a guide to a 60 — 75 minute presentation on introducing computer programming concepts to industry programmers using the Scala programming language. Although many of these concepts are general enough to apply to all forms of computer programming, this document also introduces some basic Scala syntax and foundational programming theory.
Some of the points made in this document assume an audience familiar with the Java programming language.
Table of Contents
Questions. Please stop me and ask them.
However, some questions give rise to more questions! These must be deferred due to time constraints.
"What do you think about the paint job on Russell's Teapot?[1]
However, please see me after this session, or email me with your question.
What will you take from this?
Depth versus excitement. Not even Gary Kasparov could teach you to play chess in such a short time-frame.
But he could certainly plant some seeds!
Beware of under-qualified internet commentators and snake oil vendors offering misleading advice.
I am more optimistic than Dijkstra.[2]
It is not an objective to convince you of the importance of the concepts at hand or to present irrefutable and compelling cases — mostly due to time constraints.
Keep thinking. Keep asking questions.
[1] "If I were to suggest that between the Earth and Mars there is a china teapot revolving about the sun in an elliptical orbit, nobody would be able to disprove my assertion provided I were careful to add that the teapot is too small to be revealed even by our most powerful telescopes. But if I were to go on to say that, since my assertion cannot be disproved, it is an intolerable presumption on the part of human reason to doubt it, I should rightly be thought to be talking nonsense. If, however, the existence of such a teapot were affirmed in ancient books, taught as the sacred truth every Sunday, and instilled into the minds of children at school, hesitation to believe in its existence would become a mark of eccentricity and entitle the doubter to the attentions of the psychiatrist in an enlightened age or of the Inquisitor in an earlier time." — Bertrand Russell (1872 — 1970)
[2] It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.