Download presentation
Presentation is loading. Please wait.
1
Prof. Matthew Hertz WTC 207D / 888-2436 hertzm@canisius.edu
2
What I Saw During Break
3
Quick Show of Hands Used code that someone else wrote
4
Quick Show of Hands Used code that someone else wrote and enjoyed the experience?
5
Quick Show of Hands Used code that someone else wrote and enjoyed the experience? Had someone else use your code
6
Quick Show of Hands Used code that someone else wrote and enjoyed the experience? Had someone else use your code and not cast aspersions on your intelligence?
7
Quick Show of Hands Used code that someone else wrote and enjoyed the experience? Had someone else use your code and not cast aspersions on your intelligence? Looked at code you wrote 6 months ago
8
Quick Show of Hands Used code that someone else wrote and enjoyed the experience? Had someone else use your code and not cast aspersions on your intelligence? Looked at code you wrote 6 months ago without thinking, “What was I smoking?”
9
Quick Show of Hands Used code that someone else wrote and enjoyed the experience? Had someone else use your code and not cast aspersions on your intelligence? Looked at code you wrote 6 months ago without thinking, “What was I smoking?” know Written code you know is really optimized?
10
High-level Objectives Learn to write code that doesn't suck Bug-free (within reason) Even after 6 months, can be modified & updated Less likely to be hunted & killed by colleagues Have programs complete before next ice age Have fun
11
Expectations of Me Lectures prepared and organized Give interesting, thoughtful, fun problems Be (reasonably) available to answer questions Be honest and forthright
12
Why Most Classes Suck
13
Teaching Style Reasoning more important than answer Once answered, rarely see question again Lucky guesses are not meaningful Explaining how & why demonstrates mastery Class participation is vital Need to understand problem to adjust approach
14
Adult Learning Students read material before class (Short) lecture explains key ideas Provides 2 nd opportunity to see material Limits long, boring droning Students work in teams to solve problems Make sure you actually understand material Easy to correct when mistakes made early
15
Expectations of You Work hard Come to class prepared Support & help all your classmates Ask for help early and often Let me know what you are thinking
16
Important Policy Class examines real-world problems Not typical for most CSC courses Requires everyone act like you are an adult Assumption needed for labs to be reasonable Keeps the problems small, but sufficient Use simple meanings without arguing
17
Important Policy Class examines real-world problems Not typical for most CSC courses Requires everyone act like you are an adult Assumption needed for labs to be reasonable Keeps the problems small, but sufficient Use simple meanings without arguing
18
Grades available via Angel Tests given on Mar. 12 th & Apr. 19 th Receive one grade for both lab & lecture Course Grading Tests 26% Final 30% Lab Projects 25% Activities 7% Pattern Report 12%
19
Grading Philosophy Grades reflect student's demonstrated ability Not a competition where grades are relative Quite happily give "A" to all who earn it Remain fair for students past, present, & future When in doubt, I consider what is most fair Effort alone insufficient to raise a score Important to reward working efficiently
20
Grading Philosophy Doctor Who Cures You Doctor Who Works Hard Would you rather have:
21
Course Grading Goals Build skills needed to write good code Provide opportunities to learn & improve Present material in variety of ways Spot problems early & correct them quickly
22
Lab Programs
23
Collaboration Fellow students are a great resource Provides multiple viewpoints & understandings Get together, discuss material, and study Can have them answer lingering questions Clarify assignment and what it requires Learn and practice some basic social skills
24
Collaboration Work you submit must be done by you When discussing lab projects for this course Leave conversation with memories only Wait 15+ minutes before starting on your own Solutions always unique after waiting Step away from computer when discussing code When in doubt, ask me
25
Course Website Pages for course found on Angel Handouts, slides, assignments posted before class Can also find solutions after work is due May not include everything said in class Better than nothing, but worse than being here!
26
Textbook Head First Design Patterns, Eric Freeman and Elisabeth Freeman, O’Reilly Media, 2004. Additional readings linked from Angel pages Available at local bookstores & amazon.com Covering most of this textbook
27
Read me that page, Daddy! -Shoshanna Hertz (at age 3)
28
Design Patterns Grady Booch called them: One of greatest advances in past fifteen years Booch popularized object-oriented design in 80’s In last fifteen years, co-created UML in 1997 Agile Alliance founder (along with others) Abstracts programs to go far beyond code Popular for object-oriented systems: C#, C++, Java PHP, Perl, ECMAscript use; commonly used on web Drives modern scripted languages: Ruby, Groovy
29
Grady’s Words [C]ode is the ultimate truth, but not all the truth. There is […] a loss of information […] from vision to construction[…] Even though I may stare at some code, I do not have access to the rationale or the patterns that sweep across the […] code
30
For Next Lecture Read pages 1 – 14 in the book For next lecture: Describe 2 great & 2 lousy tools What makes them great/bad? Who were they made for? How do they accomplish the job? There is lab Friday Only time you must attend the actual lab
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.