DUCK

TERM

CLASS

Mark J. Wierman

Time Monday Tuesday Wednesday Thursday
11:00   Research Seminar
11:00 -12:15
   
       
       
       
12:00      
         
  Introduction
to
Programming

CSC221-1
13421
12:30-14:20
HCCA204
HCI
CSC444-1
12426
12:30-13:45
HCCA204
Introduction
to
Programming

CSC221-1
13421
12:30-14:20
HCCA204
HCI
CSC444-1
12426
12:30-13:45
HCCA204
 
13:00
 
 
     
14:00 Office Hours
14:00 -15:15
HCCA203A
x1782
Office Hours
14:00 -15:15
HCCA203A
x1782
 
  Office Hours
14:20 -15:00
HCCA203A
x1782
Office Hours
14:20 -15:00
HCCA203A
x1782
 
15:00    
         
    Theory of Computing
CSC525-1
13311
15:30-16:45
HCCA207
  Theory of Computing
CSC525-1
13311
15:30-16:45
HCCA207
     
16:00    
     
     
         
17:00        
         
Name Mark J. Wierman
Office CA203A
School Creighton University
Address Omaha, NE 68178-2090
email mwierman@creighton.edu
Phone (402) 280-1782
Fax (402) 280-1494
Semester
DC Nichole Jelinek
DC Phone 402-280-2825

Academic Honesty

We are all expected to uphold all the standards and ethics of Creighton University.

The policy on academic honesty is set forth in the University bulletin.

Cheating

In particular, students caught cheating on a homework, program, quiz, or test will (at the minimum) be given a zero for that exam and will be referred to the Dean and/or Student Services for counseling and further disciplinary action. At the instructors discretion any student may be assigned an F as their class grade for any violation of the academic honesty policy of Creighton University.

Collaboration

  • Unless otherwise noted, all quizzes and tests are closed book, with no collaboration between students allowed.
  • Programming assignments allow only limited collaboration. You may ask for debugging help from your peers, but at no time should another student assist in the design or coding of your program. The design and implementation of your program should be entirely your own work!
  • Working together on homework assignments can be a positive experience and is not prohibited as long as the work you turn in is your best attempt at the assigned problem (i.e., no copying someone else's answers and turning it in as your own).

Violations of the above collaboration will be dealt with severely, with possible outcomes including a zero or negative grade, immediate failure of the course, and expulsion from the university. In the case of programming assignments, you are encouraged to start early so that there is time to seek help from the instructor as the need arises.

Programs

  • Computer Science JM&C
  • Center for the Mathematics of Uncertainty CMU.
  • Research Design and Analysis RDA
  • North American Fuzzy Information Processing Society NAFIPS
  • Various Programs I have written are available by selecting the Programs Tab (On fuzzy.creighton.edu).

Downloads

 

 

Introduction to Programming

Week Subject Tue: Thu:
Jan 11, 2012 Computers and Programs    
Jan 16, 2012 Writing Simple Programs   PE 1.3-5
Jan 23, 2012 Computing with Numbers    
Jan 30, 2012 Objects and Graphics   PE 3.1,3.3,3.7
Feb 06, 2012 Sequences: Strings, Lists, and Files    
Feb 13, 2012 Defining Functions    
Feb 20, 2012 Decision Structures Lab PE5.2&5.3 HW PE5.12&5.13
Feb 27, 2012 Midterm Review Midterm
Mar 05, 2012 Spring Break    
Mar 12, 2012 Loop Structures and Booleans    
Mar 19, 2012 Simulation and Design    
Mar 26, 2012 Defining Classes    
Apr 02, 2012 Data Collections    
Apr 09, 2012 Object-Oriented Design    
Apr 16, 2012 Algorithm Design and Recursion    
Apr 23, 2012 Review    
CourseCSC221CallNumber13421
TermSpring 2012Section1
Time12:30-14:50DaysM W
Final2012-05-02At08:00

Description

Course description:

This course provides an introduction to problem solving, computing, and programming using the language Python.

The process of programming is much more than just writing code. It involves analyzing the problem at hand, designing a solution, implementing and testing that solution, and critiquing results. The python language is designed to naturally introduce fundamental concepts of programming and make it possible to being solving nontrivial problems quickly.

The specific goals of this course are:

  • To develop problem solving and programming skills to enable the student to design solutions to non-trivial problems and implement those solutions in Python.
  • To master the fundamental programming constructs of Python, including variables, expressions, functions, control structures, and lists.
  • To build a foundation for more advanced programming techniques, including object-oriented design and the use of standard data structures (as taught in CSC 222).

This course is intended as a first programming course, so no prior experience with computers is assumed. The problem-solving and programming techniques introduced in this course are further expanded in the follow-up course, CSC 222: Object-Oriented Programming.


Course Organization:

Required Work

Learning to program requires a consistent time commitment, as each new concept and programming technique builds on those that came before. There will be six quizzes and six programs. There will also be one midterm and one final. To allow for unavoidable absences, the lowest quiz grade will be dropped. Periodically, there will be in-class exercises that will be collected and graded.

To demonstrate problem solving and programming skills, students will complete 5-6 programs throughout the semester. Each assignment will involve the design and implementation of a Python program, and may also include a written component in which the behavior of the program is analyzed. Late assignments will be not recieve full credit.

Grades based on
Four quizzes 20 %
In class projects 10 %
Five-six programming assignments 30 %
Midterm 75-minute tests 20 %
One 100-minute final exam 20 %

Grading
A 92-100%
B+ 87-91%
B 82-86%
C+ 77-81%
C 71-76%
D 60-70%
F 0-59%

Depending on class performance, some shifting of grades (in an upward direction only) may occur as final letter grades are assigned.

Regular attendance is expected of all students. If you must miss class for a legitimate reason, it is your responsibility to make up missed work. Quizzes and assignments will not be rescheduled except in extreme circumstances.

Academic Honesty

We are all expected to uphold all the standards and ethics of Creighton University.

The policy on academic honesty is set forth in the University bulletin.

Cheating

In particular, students caught cheating on a homework, program, quiz, or test will (at the minimum) be given a zero for that exam and will be referred to the Dean and/or Student Services for counseling and further disciplinary action. At the instructors discretion any student may be assigned an F as their class grade for any violation of the academic honesty policy of Creighton University.

Collaboration

  • Unless otherwise noted, all quizzes and tests are closed book, with no collaboration between students allowed.
  • Programming assignments allow only limited collaboration. You may ask for debugging help from your peers, but at no time should another student assist in the design or coding of your program. The design and implementation of your program should be entirely your own work!
  • Working together on homework assignments can be a positive experience and is not prohibited as long as the work you turn in is your best attempt at the assigned problem (i.e., no copying someone else's answers and turning it in as your own).

Violations of the above collaboration will be dealt with severely, with possible outcomes including a zero or negative grade, immediate failure of the course, and expulsion from the university. In the case of programming assignments, you are encouraged to start early so that there is time to seek help from the instructor as the need arises.

Zelle

PYTHON PROGRAMMING
John Zelle, 2nd Edition
Franklin, Beedle & Associates
ISBN 9781590282410

Source Code and Power Point Slides

Human Computer Interaction

Date Subject Book Work Due
Jan 12, 2012 Color Color  
Jan 17, 2012 Hello Hello Hate
Jan 19, 2012 User User  
Jan 24, 2012 Task Task Icon
Jan 26, 2012      
Jan 31, 2012 Design Design Project/User
Feb 02, 2012      
Feb 07, 2012 Visual Elements Hate2
Feb 09, 2012 Vector Graphics  
Feb 14, 2012 Design Design Art Work
Feb 16, 2012      
Feb 21, 2012 Widgets Widgets Vector Icon
Feb 23, 2012      
Feb 28, 2012 Presentation Presentation Presentation
Mar 01, 2012 Presentation Presentation Presentation
Mar 06, 2012 BREAK BREAK  
Mar 08, 2012 BREAK BREAK  
Mar 13, 2012 Psychology Psychology Love
Mar 15, 2012      
Mar 20, 2012 STM STM GUI
Mar 22, 2012      
Mar 27, 2012 User User Love2
Mar 29, 2012      
Apr 03, 2012 Hypermedia Hypermedia Critique
Apr 05, 2012      
Apr 10, 2012 Help Help
Apr 12, 2012      
Apr 17, 2012 Final Presentation PNGs
Apr 19, 2012 Final Presentation  
Apr 24, 2012 Form Form Help
Apr 26, 2012      
CourseCSC444CallNumber12426
TermSpring 2012Section1
Time12:30-13:45Days T R
Final2012-05-03At10:00

Description

Software is designed to accomplish tasks. Discovering these tasks takes a great degree of skill. The investigator must understand principles of human behavior, physiological and psychological characteristics of human cognition, information systems, and interface design. Proper, ergonomic, design leads to faster information processing systems with a lower error rate, reduced training and support costs, and greater worker satisfaction.

Objectives

This class covers a broad spectrum of topics to provide a background in all of the areas necessary to understand Human Computer Interaction. These topics include: principles of design; methods for evaluating interfaces with or without user involvement; and techniques for prototyping and implementing graphical user interfaces.

Organization

There will be a quiz every Monday It will cover the material from the previous week's lecture(s), the appropriate chapters of the book, and any lessons you should have learned while you were doing your projects. You will have to do two presentations. The midterm and final are presentations.



Presentation Guidlines

Written Assignments

Pages

Hate

Write a two page description of a single application piece of software that you judge to have an inferior design. Explain precisely what aspects of the design you dislike and why you dislike them.

Explanation

Most people use software. Much of the software currently available fails to completely satisfy the user's expectations and needs. Computer scientists create software. It is important for the computer scientist to define precisely which aspects of software demonstrate the creator's lack of understanding of the user's perspective.

Two

Hate 2

Resubmit Hate after feedback.

Two

Project/User

Write a detailed description of the GUI you propose to design. Include a section that describes the user that makes up the target audience. Include a section  that lists the the users major tasks. Explain the hardare/operating system/form factor of the target system. For example PC/WinXP/VGA.

Explanation

To designing software for human use the software designer must understand the target audience and the tasks that need to be accomplished. Computer scientists create software. It is important for the computer scientist to define precisely which aspects of software demonstrate the creator's lack of understanding of the user's perspective. It is especially important to note the negative impact of poor software on productivity.

Three

Artwork

Using pens/crayons/markers/paint/gliter/… make a physical drawing of the interface for your project. Include all the major screens where interaction takes place.

1+

Love

Write a two page description of a single application piece of software that you judge to have a superior design. Explain precisely what aspects of the design you like and why you like them.

Explanation

Some of the software that we use exceeds our expectations and needs. Like a comfortable garment it is both attractive and useful. What is important in this assignment is explaining to other people what it is about this piece of software that makes it remarkable. Especially, explaining what about the software fits the user.

Two

Screenshots

Using a computer based drawing program produce a soft copy of the interface for your project. Include all the major screens where interaction takes place.

1+

Love 2

Resubmit Love after feedback.

Two

Icon

On a white sheet of paper draw, in color, the Icon that will represent your software product.

 

Vector Icon

Using Adobe Illustrator draw an Icon. Submit a zip file on blueline that contains AI and PNG versions of your design.

 

GUI

Write up the presenation of your GUI. Be sure to include screen shots and a complete description of what the GUI is designed to do and how the primary tasks are accomplished.

Explanation

Technical writing is a skill. In a presentation, questions from the audience can clear up difficulties in understanding what the GUI does and how it does it. A writer has a more difficult job, they clearly cover all the functionali of the GUI in a logical order. Clarity of expression is the ultimate gole of the tech-writer. The length should be about three pages.

 

Critique

Write up the qritique of your GUI from the first presentation. Be sure to include screen shots and consult the presentation guide for a list of possible discussion points. You can also draw upon the audience feedback gathered from your presentation. Remember to take everything with a grain of salt.

Explanation

Know thyself is easier said than done. To objectively analyze a personal design is a daunting task. The length should be about two pages.

Three

Menu/Commands

Using an HTML editor (Microsoft Word is one), make an outline of all the commands that activate your application. Each command should Link to a Section that explains what the command is supposed to accomplish in the setting of your software. The paragraph should link back to the list.

Explanation

Technical writing needs to be short but clear. Words are more difficult to read on a display screen and hence computer help needs to be precise. Most users are in the help system when under distress, this means that Help must be helpful. This is not as easy to achieve as it would seem. The length should be about three pages.

Two

Test Plan

Using the Task List from Project/User detail a test plan. Find a test subject and have them detail (using the screenshots) how they would accomplish the tasks using the software. Analyze results.

2

Help

Write the help pages for your GUI. The initial page should use the description from Project/User as well as a screen capture of the final version of your GUI. The following pages would be derived from Menu/Commands.

Remember these pages should be consistent graphically, etc., with your GUI.

3+-

Integration

Assemble the project report. This starts with the Project Proposal. Scan and add the Paper Copy. Add Version one screen shots. The next section should analyze this version using feedback from presentation one. Add Help as a description of functionality. Add a Test Plan and a Test Plan analysis. Add Final screen shots and a description of  changes made from previous versions.

10+

Screenshots 2

Using a computer based drawing program produce a soft copy of the interface for your project. Include all the major screens where interaction takes place.

1+

 

An "A" Paper

_____is a complete response to the assignment

_____is thoughtful and sophisticated

_____demonstrates a mastery of class concepts

_____is well organized

_____has carefully organized and constructed paragraphs that use concise sentences

_____is free of repetition

_____highlights important points

_____has few errors (none serious) in grammar, spelling, or punctuation

_____uses correct bibliographic and citation styles consistently

A "B" Paper

_____is a direct but not necessarily complete response to the assignment

_____is thoughtful

_____demonstrates an understanding of class concepts

_____is well organized

_____has carefully organized and constructed paragraphs

_____is free of repetition

_____highlights important points

_____has few serious errors in grammar, spelling, or punctuation

_____uses correct bibliographic and citation styles consistently

A "C" Paper

_____is not a complete response to the assignment

_____is superficial

_____demonstrates some understanding of class concepts

_____is poorly organized

_____is repetitive

An "D" Paper

_____is an inadequate response to the assignment

_____is very superficial

_____demonstrates little understanding of class concepts

_____is badly organized

_____is repetitive

An "F" Paper

_____falls short of the standards of a "D" report

Assignments:

Assignments will be collected at the beginning of the class period in which they are due. Anything turned in after the assignment has been collected is considered late.

I do not believe in arriving late to class, finishing homework in class, printing materials after class, or handing it in "later" and receiving full credit. Late assignments will be docked 25% each day the assignment is late. Thus if you turn in your paper later that day, it is still late. For example, if an assignment is worth 100 points and you turn it in late (2 days later) and receive an 84 on the assignment, a score of 42 will be recorded in the gradebook. Please pay special attention to these deadlines for the papers. Anything turned in after 4 days in which the assignment is due will receive a grade of zero.

Grading:

ASSIGNMENT NUMBER PERCENTAGE
Presentations      (2)     24%
Quizzes   (12)   36%
Homeworks    (10)     40%

Grading
A 92-100%
B+ 87-91%
B 82-86%
C+ 77-81%
C 71-76%
D 60-70%
F 0-59%

Depending on class performance, some shifting of grades (in an upward direction only) may occur as final letter grades are assigned.

Regular attendance is expected of all students. If you must miss class for a legitimate reason, it is your responsibility to make up missed work. Quizzes and assignments will not be rescheduled except in extreme circumstances.

×

Academic Honesty

  • We are all expected to uphold all the standards and ethics of Creighton University.
  • The policy on academic honesty is set forth in the University bulletin.

Cheating

In particular, students caught cheating on a homework, program, quiz, or test will (at the minimum) be given a zero for that exam and will be referred to the Dean and/or Student Services for counseling and further disciplinary action. At the instructors discretion any student may be assigned an F as their class grade for any violation of the academic honesty policy of Creighton University.

Collaboration

  • Unless otherwise noted, all quizzes and tests are closed book, with no collaboration between students allowed.
  • Programming assignments allow only limited collaboration. You may ask for debugging help from your peers, but at no time should another student assist in the design or coding of your program. The design and implementation of your program should be entirely your own work!
  • Working together on homework assignments can be a positive experience and is not prohibited as long as the work you turn in is your best attempt at the assigned problem (i.e., no copying someone else's answers and turning it in as your own).

Violations of the above collaboration will be dealt with severely, with possible outcomes including a zero or negative grade, immediate failure of the course, and expulsion from the university. In the case of programming assignments, you are encouraged to start early so that there is time to seek help from the instructor as the need arises.

Academic Honesty

We are all expected to uphold all the standards and ethics of Creighton University.

The policy on academic honesty is set forth in the University bulletin.

Cheating

In particular, students caught cheating on a homework, program, quiz, or test will (at the minimum) be given a zero for that exam and will be referred to the Dean and/or Student Services for counseling and further disciplinary action. At the instructors discretion any student may be assigned an F as their class grade for any violation of the academic honesty policy of Creighton University.

Collaboration

  • Unless otherwise noted, all quizzes and tests are closed book, with no collaboration between students allowed.
  • Programming assignments allow only limited collaboration. You may ask for debugging help from your peers, but at no time should another student assist in the design or coding of your program. The design and implementation of your program should be entirely your own work!
  • Working together on homework assignments can be a positive experience and is not prohibited as long as the work you turn in is your best attempt at the assigned problem (i.e., no copying someone else's answers and turning it in as your own).

Violations of the above collaboration will be dealt with severely, with possible outcomes including a zero or negative grade, immediate failure of the course, and expulsion from the university. In the case of programming assignments, you are encouraged to start early so that there is time to seek help from the instructor as the need arises.

Optional

Strunk & White: A Manual Of Style

Theory of Computation

Week Subject HomeWork
Jan 12, 2012 Introduction -- Math
Jan 17, 2012 The Big Picture - Machine and Language  0.6, 0.10,0.11
Jan 24, 2012 NFA & GNFA  1.1,1.2,1.3,1.4x
Jan 31, 2012 U and o and *  1.6a,b,d,k 1.7a.b 1.8a
Feb 07, 2012 Regular = DFA  1.14,1.16,1.17
Feb 14, 2012 CFG  1.46
Feb 21, 2012 PDA  2.3,2.4b&c,2.5b&c,2.14
Feb 28, 2012 Midterm Review Sheets
Mar 06, 2012 Break  
Mar 13, 2012 Turing Machines  
Mar 20, 2012 Decidability  3.2, 3.5, 3.6, 3.9
Mar 27, 2012 Reducibility Graph
Apr 03, 2012 Time 4.1, 4.2, 4.3, 4.5
Apr 10, 2012 Space  NADA
Apr 17, 2012 Intractability  
Apr 24, 2012 Review Review
CourseCSC525CallNumber13311
TermSpring 2012Section1
Time15:30-16:45Days T R
Final2012-05-10At13:00

Description

COURSE DESCRIPTION :

What is a computer? What kinds of computers are there? What can they do and not do. What are hard problems. This course looks at what we know about computing.

OBJECTIVES :

To gain a foundation in the fundamental nature of the computer, its abilities and its limitations.

COURSE ORGANIZATION :

There will be a homework every class. There will be a midterm and a final.

Assignments:

Assignments will be collected at the beginning of the class period in which they are due. Anything turned in after the assignment has been collected is considered late.

I do not believe in arriving late to class, finishing homework in class, printing materials after class, or handing it in "later" and receiving full credit. Late assignments will be docked 5% each day the assignment is late. Thus if you turn in your paper later that day, it is still late. For example, if an assignment is worth 100 points and you turn it in late (2 days later) and receive an 84 on the assignment, a score of 74 will be recorded in the grade book. Please pay special attention to these deadlines for the papers. Anything turned in after 4 days in which the assignment is due will receive a grade of zero.

Grading:

Grades based on
Quizzes (12) 30 %
Homework (12) 30 %
Midterm 75-minute tests 20 %
One 100-minute final exam 20 %

 

Grading policy
A 90-100%
B+ 85-89%
B 80-84%
C+ 75-79%
C 70-74%
D 60-69%

Academic Honesty

Academic Honesty

We are all expected to uphold all the standards and ethics of Creighton University.

The policy on academic honesty is set forth in the University bulletin.

Cheating

In particular, students caught cheating on a homework, program, quiz, or test will (at the minimum) be given a zero for that exam and will be referred to the Dean and/or Student Services for counseling and further disciplinary action. At the instructors discretion any student may be assigned an F as their class grade for any violation of the academic honesty policy of Creighton University.

Collaboration

  • Unless otherwise noted, all quizzes and tests are closed book, with no collaboration between students allowed.
  • Programming assignments allow only limited collaboration. You may ask for debugging help from your peers, but at no time should another student assist in the design or coding of your program. The design and implementation of your program should be entirely your own work!
  • Working together on homework assignments can be a positive experience and is not prohibited as long as the work you turn in is your best attempt at the assigned problem (i.e., no copying someone else's answers and turning it in as your own).

Violations of the above collaboration will be dealt with severely, with possible outcomes including a zero or negative grade, immediate failure of the course, and expulsion from the university. In the case of programming assignments, you are encouraged to start early so that there is time to seek help from the instructor as the need arises.

TEXTBOOK:

Sipser, Michael, [2005]. Introduction to the Theory of Computation. (2nd Edition) .
Course Technology.
ISBN-13: 978-0534950972

 

JM&C

Mark J. Wierman | mwierman@creighton.edu
Journalism Media & Computing | Creighton University
2500 California Plaza | Omaha NE | 68178 | 402.280.1782
Copyright © 2015 Creighton University JM&C