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