William M. Farmer

Professor
Department of Computing and Software
McMaster University


Miscellaneous Educational Documents

Teaching

2023-2024
2022-2023
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • CAS 701 (Logic and Discrete Mathematics)
    • CAS 760 (Logic for Practical Use)
  • Winter (on research leave)
    • CS 4Z03 (Directed Readings)
2021-2022
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • HTHSCI 4D03 (Inquiry Project)
    • CAS 760 (Logic for Practical Use)
  • Winter
    • HTHSCI 4D03 (Inquiry Project)
    • SE 2FA3 (Discrete Mathematics with Applications II)
2020-2021
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • CAS 701 (Logic and Discrete Mathematics)
  • Winter
    • CS/SE 2FA3 (Discrete Mathematics with Applications II)
2019-2020
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • CAS 701 (Logic and Discrete Mathematics)
  • Winter
    • CS/SE 2FA3 (Discrete Mathematics with Applications II)
2018-2019
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • CAS 701 (Logic and Discrete Mathematics)
  • Winter
    • CS/SE 2FA3 (Discrete Mathematics with Applications II)
2017-2018
  • Fall
    • CS 1JC3 (Introduction to Computational Thinking)
    • CAS 701 (Logic and Discrete Mathematics)
  • Winter
    • CS/SE 2FA3 (Discrete Mathematics with Applications II)
2016-2017
  • Fall (on administrative leave)
  • Winter (on administrative leave)
2015-2016
  • Fall
    • ENG 1D04 (Engineering Computation)
  • Winter
    • ENG 1D04 (Engineering Computation)
2014-2015
  • Fall
    • ENG 1D04 (Engineering Computation)
  • Winter
    • ENG 1D04 (Engineering Computation)
2013-2014
  • Fall (on research leave)
  • Winter
    • ENG 1D04 (Engineering Computation) [with S. Smith]
    • CAS 734 (Formalized Mathematics)
2012-2013
  • Fall
    • ENG 1D04 (Engineering Computation) [with S. Smith]
  • Winter
    • ENG 1D04 (Engineering Computation) [with S. Smith]
2011-2012
  • Fall
    • ENG 1D04 (Engineering Computation) [with S. Smith]
  • Winter
    • ENG 1D04 (Engineering Computation) [with S. Smith]
2010-2011
  • Fall
    • ENG 1D04 (Engineering Computation) [with S. Smith]
  • Winter (on research leave)
2009-2010
  • Fall
    • ENG 1D04 (Engineering Computation) [with S. Smith]
    • CS 2SC3 (Principles of Programming)
      SE 2S03 (Principles of Programming)
  • Winter
    • ENG 1D04 (Engineering Computation) [with S. Smith]
    • CAS 760 (Logic for Practical Use)
2008-2009
  • Fall
    • CS 2SC3 (Imperative Programming and Basic Data Structures)
      SE 2S03 (Principles of Programming)
    • CAS 701 (Logic and Discrete Mathematics In Software Engineering)
  • Winter
    • CS 3CN3 (Computer Networks and Security)
      SE 4C03 (Computer Networks and Computer Security)
2007-2008
  • Fall
    • CS 3IS3 (Information Security)
  • Winter
    • CS 3CN3 (Computer Networks and Security)
      SE 4C03 (Computer Networks and Computer Security)
    • CAS 734 (Formalized Mathematics)
2006-2007
  • Fall
    • CAS 734 (Formalized Mathematics)
  • Winter
    • SE 2AA4 (Software Design I — Software Component Design)
    • SE 4C03 (Computer Networks and Computer Security)
2005-2006
  • Fall
    • SE 2F03 (Logic for Software Engineering)
    • CAS 701 (Logic and Discrete Mathematics in Software Engineering) [with M. v. Mohrenschildt]
  • Winter
    • SE 4C03 (Computer Networks and Computer Security)
2004-2005
  • Fall
    • SE 3I03 (Communication Skills)
    • CAS 701 (Logic and Discrete Mathematics in Software Engineering)
  • Winter
    • CAS 734 (Formalized Mathematics)
2003-2004
  • Fall (on research leave)
  • Winter (on research leave)
2002-2003
  • Fall
    • SE 2A04 (Software Design I)
    • CAS 701 (Logic and Discrete Mathematics in Software Engineering)
  • Winter
    • SE 4C03 (Computer Networks and Computer Security)
2001-2002
  • Fall
    • SE 2A04 (Software Design I) [with D. L. Parnas]
  • Winter
    • SE 4C03 (Computer Networks and Computer Security)
    • CS 773 (Formalized Mathematics)
2000-2001
  • Fall
    • SE 2A04 (Software Design I)
  • Winter
    • SE 4C03 (Computer Networks and Computer Security)
    • CS 773 (Formalized Mathematics)
1999-2000
  • Fall
    • SE 2A04 (Software Design I) [with D. L. Parnas]
    • SE 3I03 (Communication Skills) [with D. L. Parnas]
  • Winter
    • SE 3B04 (Software Design III)