Notes
Outline
Announcements
Monday labs cannot be held due to a scheduling conflict -- go to Tuesday’s
There are four Tuesday labs:
8:30, 9:30, 1:30, 2:30
The term’s calendar is posted including Midterm dates; it’s subject to change
RGB Yellow = Full, Full, Zero intensity
What the Digerati Know
Other people can teach you computer applications or you can figure them out for yourself
Learning New Tools
How do we learn to use new tools?
Be taught to use them -- car, bicycle
Reading the owner’s manual -- chain saw
Figure them out ourselves -- CD player
Learning New Tools
How do we learn to use new tools?
Be taught to use them -- car, bicycle
Reading the owner’s manual -- chain saw
Figure them out ourselves -- CD player
Software designers wanting you to learn their tool ASAP, try for ‘intuitive’
Consistent Interfaces -- build on experience
Suggestive icons -- bypass terminology
Metaphors -- exploit analogous reasoning
A New Application
Find:
consistent
  interface
icons
metaphor
Standard Functionality
Most applications
have File and Edit
What does ‘New’ Mean?
‘New’ means create a ‘blank instance’
To understand ‘blank instance’ know that information has properties as well as content which are all stored in a structure with a place for everything
A ‘blank instance’ is simply the structure without any of the content
“Click Around”
Software designers use standard ideas to make applications intuitive
To learn a new application, check it out by clicking around
Take a minute to ...
Look under all menus to see operations
Follow the  “…” for menu operations
Try to recognize what the icons mean
“Blazing Away”
Learn an application fast by trying it
Beginning with a new instance, assertively try menu items
Expect to fail and make a mess
Exit the application, and if you are asked “Save?” reply “No”
Try repeatedly until becoming familiar
To Learn A New Tool
Software systems build on a consistent interface, standard metaphors, etc.
Expect to teach yourself applications
Do so by familiarizing yourself with the features … “Clicking Around”
Assertively try out the features, “Blaze Away,” watching what they do
Be efficient -- stay focused, don’t type a lot when you expect to exit
Mac or PC???
Arguments about which is better, Mac or PC, create only heat, no light
They are more alike than different
Any Fluent person can use both
Differences & Similarities
Different vendors will produce similar software for the same task
Superficially, the GUIs use similar features
Fundamentally, the task largely determines how the software must work … they must be similar
Differences & Similarities
Different vendors will produce similar software for the same task
Superficially, the GUIs use similar features
Fundamentally, the task largely determines how the software must work … they must be similar
Implications …
Know one word processor, learn others fast
SW differences: mostly glitz, convenience
Don’t accept lousy … switch to other SW
Another Implication
If SW is similar at core, computations can be taught independently of vendor
Another Implication
If SW is similar at core, computations can be taught independently of vendor … consider text searching and replacement
Replacement
Two strings are required: search string and substitution string
Adopt a notation:  search û substitute
Notation Example
Illustrating the use of the notation
Using the replacement
The sentence
Becomes
It’s easy to express substitutions
Placeholder Technique
The Problem: Eliminate single instances of a string without removing doubles
Placeholder Technique
The Problem: Eliminate single instances of a string without removing doubles
Placeholder Technique
The Problem: Eliminate single instances of a string without removing doubles
Thinking of the Input
Roses are ¿red¿¿Violets are ¿blue¿¿...
Deleting the single ¿  deletes them all!
Thinking of the Input
Roses are ¿red¿¿Violets are ¿blue¿¿...
Deleting the single ¿  deletes them all!
Placeholder technique …
Substitute a placeholder for the longer string
¿¿ û  #
Yielding
Roses are ¿red#Violets are ¿blue#…
Next, delete the shorter string
  ¿ û e
Yielding
Roses are red#Violets are blue#…
Placeholder Replaced
Finally, replace the placeholder with the original long string
# û ¿¿
Yielding
Roses are red¿¿Violets are blue¿¿…
The intended result
Summarizing the placeholder
longstring û placeholder
shortstring û e
placeholder û longstring
Summarizing
Humans must learn to use tools
Software designers want you to learn easily
SW uses consistent interface, metaphors, …
Teach yourself applications by “Clicking Around,” and “Blaze Away”
SW for a task must share core features
Learn app.s independently of vendor