Difference between revisions of "Programming Stream"
(→To Be Done) |
(→To Be Done) |
||
Line 64: | Line 64: | ||
== To Be Done == | == To Be Done == | ||
* update learning outcomes to suit | * update learning outcomes to suit | ||
− | : [ OOP244 Draft Subject Outline] | + | : [http://zenit.senecac.on.ca/wiki/index.php/Programming_Stream_OOP244_Subject_Outline OOP244 Draft Subject Outline] |
− | : [ BTP200 Draft Subject Outline] | + | : [http://zenit.senecac.on.ca/wiki/index.php/Programming_Stream_BTP200_Subject_Outline BTP200 Draft Subject Outline] |
* update 244/200 course notes to reflect these changes | * update 244/200 course notes to reflect these changes | ||
* prepare 144/100 course notes to reflect these changes | * prepare 144/100 course notes to reflect these changes |
Revision as of 17:30, 10 June 2012
Programming Stream | Market Demand | Course Content | Work in Progress | Members | Issues
Welcome to the Programming Stream Group at the School of Information and Communications Technology
Contents
Introduction
This wiki describes curriculum developments within the programming stream at the School of Information and Communications Technology
- The scope of the currently active projects is driven by
- the general need to train professional programmers for direct entry into the workplace
- the growing knowledge-based industries
- digital game programming industry
- open source communities for software developers
- emergence of parallel computing
- The information reported here is being provided to
- inform members of the status quo
- solicit member comments and criticisms
What can I do right now?
- add your name to the list of active members and identify your interest here
- add your project(s) to the list of projects under development here
- create your own project page describing your own contributions
- add descriptions of your project(s) in detail to this wiki along with current status
- list the work that remains to be done
- add any testimonials you have received here
- add information to any section of this wiki - quotes, data, testimonials, suggestions
Curriculum Development Sessions (2012)
The principal objectives of these sessions are
- to align the programming stream courses with the C11 and C++11 standards
- to address the success rate of first semester students in the CPA program
Resolved Allocation Issues
- Data Representation needs to be taught in first semester in another stream
- binary - hex | hex - decimal
- IPC144/BTP100
- add variable length arrays
- add const
- add pointer - array equivalence
- trivial additions to align with standard (see detail page)
- remove gets()
- assign a problem that requires the application of integer data rep knowledge taught in another course in the first half
- OOP244/BTP200
- move namespace definition to start
- add inline functions
- add parameter defaults
- add simple file objects
- move type safe casting nearer start
- add simple function templates to polymorphism
- add abstract base classes
- trivial additions to align with standard (see detail page)
- OOP344/BTP300
- add multi-threading
- add rvalues and move constructors
- trivial additions to align with standard (see detail page)
- Beyond OOP344/BTP300
- trivial additions to align with standard (see detail page)
Delivery Issues
- Committee for IPC144 has been struck - held first meeting - will reconvene
- Danny, Sunny, and Mark will try applying Chris' timeline over the summer 2012 to enable the introduction of inheritance earlier in the semester
To Be Done
- update learning outcomes to suit
- update 244/200 course notes to reflect these changes
- prepare 144/100 course notes to reflect these changes
- decide which sections to make optional and which to relegate to appendices
Ongoing Issues
marketing
- what is the market saying
- what do we market now and how
- how do we attract the best and the brightest to our programs
employability
faculty education
- a need exists for internal faculty professional development
- a birds of a feather group to discuss Visual Studio
impact of social media
- how will we interface with social media
- personal learning environments
delivery
techniques and tools
- which platforms should we be using
- gnu - which version
- visual studio
- how early should students be exposed to open source tools
- using open source, instead of teaching open source? (repos, wikis, blogging, online collaboration tools)
- how early should students work with repositories
- in early semesters, using repos as individual drop box, and versioning and then move to collaboration features in later semesters
- which repositories should be introduced?
collaboration
- should students work in teams in OOP344, BTP300
- teamwork requires significantly more effort on the part of the instructor
Deferred Issues
Archives
should CPD include a professional option
- for example, to take introductory game programming GAM666/DPS901
- brings together programming and systems for the first time
- top CPD students who enroll often do well in this course
- faculty decided to keep the professional option