| Week(s) |
Module |
Description |
| 1 |
Image Batch Processing |
Ever have to apply the same change to a large group of
images, such as resizing prior to emailing them? Batch
processing allows you to perform the same task over a large
number of objects, and saves time by removing the need to make
the changes by hand. Students will create batch processes for
making changes to a large number of images and to become
familiar with batch processing.
Lab description.
|
| 2 |
eBook Library List |
Students will explore ways in which a time consuming manual
task, such as assembling a list of all eBooks contained in your
library, can be accomplished easily using simple command line
and python scripts.
Lab description.
|
| 3 |
Creating and Posting a Playlist |
Design, implement, test and deliver a 100 song randomizing
script for web broadcasting.
Lab description.
|
| 4 |
Computer Assisted Reporting |
How does the Waco Metropolitan Statistical Area compare
with other similar MSAs in total crimes and crimes in various
categories? Students will use data provided from the Uniform
Crime Reports from the FBI to generate a proposal for a news
story.
|
| 5 |
Timecode Calculator |
Calculating timecodes in movie film is a time consuming and
error-prone task. Students will develop two small programs to
automatically calculate the addition and subtraction of
timecodes, using Excel macro programming and Javascript. |
| 6 |
Probability, Testimony and Belief |
Students will devise a computational strategy to answer the
question: How many reliable independent witnesses does it take
to convince a rational person that an improbable event has
occurred, under a Bayesian framework? |
| 7 |
Prisoner's Dilemma |
How can rational, selfish actors cooperate for their common
good? Students will model the Prisoner's Dilemma using
programming tools and test various hypotheses as to how
cooperation can arise among multiple competing agents. Using
their model, strategies such as tit-for-tat and
always cooperate will be evaluated and compared using
payoff and equilibrium outcome as metrics. |
| 8 |
Staffing Problem |
One of the major reasons nurses report for leaving the
profession is their inability to give the level of patient care
they believe is best due to inappropriate workloads. Staffing
decisions and patient assignments are often based on a patient
acuity system, which is not well defined and receives little
nursing input in its development. Students will design,
implement and test a version of patient acuity and a staffing
program for calculating the number of nurses required for a
given shift. At each phase, students will assess the quality and
correctness of their calculations. Students will also evaluate
the feasibility of using their program in nursing practice. |
| 9 |
Cruise Control System |
Students will design a simple PID controller as the basis
for a cruise control system used to guide a car simulation.
Principles of PID control will be covered as well as parameter
fine-tuning for selection of proper controller parameters. |
| 10 |
Direct and Indirect Objects |
Spanish direct and indirect object pronouns used together
are often problematic for the person whose native language is
English. By comparing the use of direct and indirect objects
first individually, and then together, in English, the student
will be able to apply the same strategies to identifying these
items in Spanish. |
| 11 and 12 |
Music Theory and the 12-tone System |
Given that both free atonal and 12-tone music use the full
chromatic spectrum, one persistent problem in music analysis is
determining to which category a post-tonal work may belong.
Therefore, it would be useful to devise a computational method
for differentiating between these two compositional approaches.
Students will understand the difference between free atonality
and 12-tone music, and students will devise and demonstrate a
computational strategy for determining and analyzing this
difference. |
| 13, 14 and 15 |
Game Development |
Write a video game using a high-level programming language.
Students will demonstrate effective use of program
documentation, demonstrate the application of computational
thinking through the design process of a video game, and
demonstrate the ability to implement and test a software
application. |