William M. Farmer

Professor
Department of Computing and Software
McMaster University


Suggestions for Software Engineering and Computer Science Students

  1. Make a portfolio of your work to show to employers (and to your parents, grandparents, aunts, uncles, etc.).
  2. Buy an Intel computer and install Linux on it. Use it to learn Unix-based computing and to experiment.
  3. Set up and manage a Web server (such as the Apache Web server).
  4. Set up and manage a small local area network (such as an Ethernet network).
  5. Practice writing specifications using the BESTT notation (see Logical and Mathematical Notation and W. M. Farmer, "A basic extended simple type theory", SQRL Report No. 14, 12 pp., McMaster University, 2004).
  6. Become a proficient programmer in C, Java, OCaml, and Common Lisp.
  7. Subscribe to the SEWORLD Mailing List (send an e-mail message to seworld-subscribe@cs.colorado.edu with subscribe seworld in the body of the message). "SEWORLD is a mailing list provided as a service to the Software Engineering community, and is intended primarily for the dissemination of time-sensitive information relevant to the field of software engineering research."
  8. Join the Association for Computing Machinery.
  9. Read Dr. D. L. Parnas's papers in: D. Hoffman and D. Weiss, Software Fundamentals: Collected Papers by David L. Parnas, Addison Wesley, 2001.