As long as we're reviewing how approachable Morphic is for the novice...
Here are some of Jef Raskin's ideas from his book "The Humane Interface" about
applying cognitive psychology to make user computer interactions more
efficient, consistent, and friendlier.
http://humane.sourceforge.net/home/index.html
___
It seems to me that some of these are accomplished very well by Squeak and some
could make the whole environment much more approachable for the naive. You can
find this summary listed here:
http://minnow.cc.gatech.edu/squeak/3026
and
http://wiki.osafoundation.org/bin/view/Main/HumaneUserInterface
Cheers,
Darius
___
* Whole Purpose is to Create
- Remember: The whole purpose for using a computer is to create (usually
more information, more instructions, or a memory or experience in one's own
mind)
* Subconscious Finger Habits
- Create, utilize, simplify, and support the user's subconscious typing and
mouse movement habits.
* Tool should Disappear from User's Attention
- The use of the tool should disappear from the user's conscious awareness
or attention.
* Uninterrupted Concentration on Task
- Only the tasks or the creation of content should be conscious in the
user's awareness. This allows uninterrupted concentration on the task.
* Capitalize on User Habituation
- Make the habits that a user naturally forms when they interact with any
interface work for them instead of against them. Capitalize on user habituation
as much as possible.
* Instant-On
- User should be able to do work immediately without waiting for the
computer to boot up.
* Never Lose Anything
- Never lose anything by accident. Eschew "Save" for "Unlimited Undo".
* Never Interrupt the User's Attention
- Never interrupt the user's attention/workflow unless absolutely necessary.
If a user's decision can be delayed, allow them to attend to the error message
when they are ready.
* Never Move the Data Input Focus
- Never move the data input focus or click focus unless the user requests
it. (i.e. change menu entries just before user clicks on prior menu entry, or
bring up a dialog box while user is typing so that they press enter on the
dialog box rather than their text, or changing window focus while typing.)
* Non-Modal
- The entire user interface should be non-modal including the command set,
the keyboard input, and the mouse button input. (Quasi-modes are OK.)
* Data Entry at Any Place and Any Time
- Allow the typing of a command or data entry at any place and any time.
Allow the user to move the data to an appropriate place after creating it
rather than always navigating first to the data entry field and then entering
the data after that.
* Easily Move Any Unit of Data
- Easily move any unit of data, block of data, range of data, or data
matching a criteria to any other physical storage place in the system or any
other data type.
* All Data Presented in a Searchable Liner Sequence
- Represent all user-accessible data and user-created data in a searchable
liner sequence. Most users think in terms of a serial sequence of data
presentation rather than a matrix or multilink network of data representation.
* Shortcuts to Quickly Search Forward or Backward
- Ability to easily LEAP (r) forward or backward to any data block or any
data type by an incremental, sequential search on content or data type label
with auto-completion of the search field.
* Unified Storage Structure
- Only use "documents" for exchanging data with other systems or
applications. Keep all data in a shared, indexed, unified storage structure,
database, or image.
* Multiple Selection of Data for a Single Command
- Allow the simultaneous multiple highlighting/selection of items for the
items to be operated on by a single command from the command line, key stroke,
menu selection, etc.
Can Squeak allow two mice on the same PC to control two HandMorphs at the same time in the same project?
I'm thinking of simulating a hammered dulcimer where you have a hammer in each hand and several courses (strings struck together that make up the same musical note) across two bridges in front of you. http://www.rtpnet.org/~hdweb/
Cheers, Darius
On Wed, 5 Mar 2003, Darius wrote:
Can Squeak allow two mice on the same PC to control two HandMorphs at the same time in the same project?
Yes, but not out-of-the-box. I had this working once on Linux via the tablet primitives on top of xinput - every connected mouse shows up as a separate xinput device. I do not know if there is a similar API on other platforms.
-- Bert
Bert Freudenberg wrote:
On Wed, 5 Mar 2003, Darius wrote:
Can Squeak allow two mice on the same PC to control two HandMorphs at the same time in the same project?
Yes, but not out-of-the-box. I had this working once on Linux via the tablet primitives on top of xinput - every connected mouse shows up as a separate xinput device. I do not know if there is a similar API on other platforms.
-- Bert
You could also just go with squeak manually reading a serial port, and drawing a cursor for, the second hand. We don't need no steenkin os!
Am Donnerstag, 06.03.03 um 02:20 Uhr schrieb Brian Keefer:
Bert Freudenberg wrote:
On Wed, 5 Mar 2003, Darius wrote:
Can Squeak allow two mice on the same PC to control two HandMorphs at the same time in the same project?
Yes, but not out-of-the-box. I had this working once on Linux via the tablet primitives on top of xinput - every connected mouse shows up as a separate xinput device. I do not know if there is a similar API on other platforms.
You could also just go with squeak manually reading a serial port, and drawing a cursor for, the second hand. We don't need no steenkin os!
Well, XF86 supports four major types of mice, one of which is serial (the others are PS/2, USB, and BusMouse). For serial mice alone, there are 9 different protocols supported. You'd have a heck of a time implementing all this again ;-)
I'd rather just fire up X with Squeak as the only application. In fact, it's easy to create a "Squeak session" for xdm/gdm/kdm that takes you from login prompt into Squeak in less than a second - I tried :-)
-- Bert
I've searched the Swiki but I can't find how to paste from the MS Windows copy/paste buffer into a Squeak text morph.
May I ask how this is done?
Cheers, Darius
On Wednesday 05 March 2003 01:42 pm, Darius wrote:
I've searched the Swiki but I can't find how to paste from the MS Windows copy/paste buffer into a Squeak text morph.
May I ask how this is done?
Can you select the text?
If so, then hit either Alt-V or Ctrl-V, depending on whether or not you have the preference swapCtrlAndAltKeys or duplicateCtrlAndAltKeys turned on (if both are turned off, it'll be Alt-V, otherwise it'll be Ctrl-V (or either for duplicateCtrlAndAltKeys) ).
Hannes, Brent, Chris, Ned,
Thank you for your rapid & thorough replies.
I thought I had tested that, but I must have made the switch for another command.
I had already become use to using Alt-V for in-Squeak cut/pastes. I had already found the docs for switching the two command keys in the image.
Just missed the switch for inter-app pasting since the mental command key switch occurs right in the middle of the cut/paste process.
I'd rather not switch the options in my image so that my habits will match what most Squeak users have installed as I hope to become much more involved in the Squeak community.
Cheers, Darius
On Wednesday 05 March 2003 02:23 pm, Chris Burkert wrote:
On my FreeBSD I have to CTRL-C in X11 and ALT-V in Squeak. I got familiar with this.
Just turn on the preference swapCtrlAndAltKeys or duplicateCtrlAndAltKeys and they'll be the same. . -- Ned Konz http://bike-nomad.com GPG key ID: BEEA7EFE
Andy,
FYI. I'm on Outlook 2002 (Office XP) and I have no trobule reading this list.
Cheers, Darius
.... Pardon the psuedo-rant......
A number/several people have started sending to this list using e-mail clients that send messages as multi-part mime messages. (Looks like from something called Ximian or similar fancy e-mail clients, some with pgp...)
While I can understand using mime if you are sending an attachment (image, jpg, changeset, etc) a large portion of these messages are JUST text (Or in html, but that is a completely different e-mail sin) and don't need to be sent this way.
I haven't seen any complaints about this so I'm assuming I'm the only person suffering from a "modern" e-mail client (Outlook 2K, and no I don't want to change to something else... thanks for asking. Maybe, if Celeste did IMAP so I could get to the Exchange server my e-mail goes to I might switch...)
that treats ALL multi-part messages as blank messages with text attachments I have to click several times in its' benighted interface to get to..... only to find it's just plain text.
So... does anyone using Outlook know how to configure it to read messages in a clean fashion when the attachements aren't REALLY attachments ? Without subjecting me to the risk of some virus Outlook can be affected by ?
Thanks :-).
-Andy-
Re: Article about "The Post-OOP Paradigm"
I think that it is important to not generalize about the way "the human mind" thinks.... Hence, some people think verbally, in terms of words; other people think visually, in terms of pictures.
I agree.
The CLI vs. GUI dichotomy that seems so prevalent in discussions like these... Then, I read a couple of weeks/months ago a paper on an exciting new UI paradigm - command-line assisted GUI's. The paper went on describing exactly the kind of interface that Emacs and VI people have come to love.
Fast input vs. Fast understanding I guess.
(am I the only one here using pie menus?)
I believe the Alias/Wavefront's Maya 3D modeling/rendering package uses them extensively now.
Marco Paga says -Computer langauges went from machine code to OOP. -GUI's went from text-based to 2D.
The problem is that computer languages have not yet gone from OOP text-based to 2D.
2D engages more cognitive information processing, information chunking, and information juxtaposition.
Class object browsers give language a 2D illusion but not beyond the method level.
Debug call stacks give languages a 2D illusion but not beyond the statement level.
UML give languages more of a 2D representation, but not beyond the method level.
Traits goes to the expression level, but doesnt juxtapose all related meaningful data together.
Time & space seem to be the enemy of the user interface. If you have infinite amount of ether, you dont have to make clever shortcuts.
Because of occlusion, 3D is best used for simulations and/or presenting information in a narrative format. It takes time when you have to move things in & out of the view pane (while walking lets say). The irony of a 3D GUI is that you only have one camera, one perspective, one focal point, just like the movies. That forces a linear travel through the 3D space. (Some exceptions to this are tools which have multiple view panes are CAD software, 3D modeling software, and the (unremarkable) movie Timecode.) Movies use techniques to convey more information from 3D into 2D through cut scenes, head shots, perspective, façades, etc. Remember, most movie/TV views or shots are only about 10 seconds in duration before you get an entirely new well planned view into that 3D world of information. They also use techniques such as color, illumination, depth of field, sweaping pan shots, and motion to direct our attention within the one scene to convey the extra information. They do this to compress a lot of mentally imagined object space into a sliver of time. 3D GUIs dont do any of that yet.
"Envisioning Information", "Visual Explanations: Images and Quantities, Evidence and Narrative", and "The Visual Display of Quantitative Information " by Edward R. Tufte are the seminal works on the subject.
Cheers, Darius
(Sorry, posted with wrong subject line before.)
Re: Article about "The Post-OOP Paradigm"
I think that it is important to not generalize about the way "the human mind" thinks.... Hence, some people think verbally, in terms of words; other people think visually, in terms of pictures.
I agree.
The CLI vs. GUI dichotomy that seems so prevalent in discussions like these... Then, I read a couple of weeks/months ago a paper on an exciting new UI paradigm - command-line assisted GUI's. The paper went on describing exactly the kind of interface that Emacs and VI people have come to love.
Fast input vs. Fast understanding I guess.
(am I the only one here using pie menus?)
I believe the Alias/Wavefront's Maya 3D modeling/rendering package uses them extensively now.
Marco Paga says -Computer langauges went from machine code to OOP. -GUI's went from text-based to 2D.
The problem is that computer languages have not yet gone from OOP text-based to 2D.
2D engages more cognitive information processing, information chunking, and information juxtaposition.
Class object browsers give language a 2D illusion but not beyond the method level.
Debug call stacks give languages a 2D illusion but not beyond the statement level.
UML give languages more of a 2D representation, but not beyond the method level.
Traits goes to the expression level, but doesnt juxtapose all related meaningful data together.
Time & space seem to be the enemy of the user interface. If you have infinite amount of ether, you dont have to make clever shortcuts.
Because of occlusion, 3D is best used for simulations and/or presenting information in a narrative format. It takes time when you have to move things in & out of the view pane (while walking lets say). The irony of a 3D GUI is that you only have one camera, one perspective, one focal point, just like the movies. That forces a linear travel through the 3D space. (Some exceptions to this are tools which have multiple view panes are CAD software, 3D modeling software, and the (unremarkable) movie Timecode.)
Movies use various techniques to convey more information from 3D into 2D through cut scenes, head shots, perspective, façades, etc. Remember, most movie/TV views or shots are only about 10 seconds in duration before you get an entirely new, well planned view into that 3D world of information. They also use techniques such as color, illumination, depth of field, sweaping pan shots, and motion to direct our attention within the one scene and to convey the extra information. They do this to compress a lot of mentally imagined object space into a sliver of time. 3D GUIs dont do any of that yet.
"Envisioning Information", "Visual Explanations: Images and Quantities, Evidence and Narrative", and "The Visual Display of Quantitative Information " by Edward R. Tufte are the seminal works on the subject.
Cheers, Darius
I believe Star Bridge Systems uses a setup like this; though, it's not for the hobbiest.
http://www.starbridgesystems.com/index.php
Cheers, Darius
On a fresh 3.4 image with only SqueakMap installed, I loaded Filtering Celeste by SqueakMap.
I received: MessageNotUnderstood: getListSizeSelector:
Screenshot attached of debug window.
Cheers, Darius
On a fresh 3.4 image with only SqueakMap installed, I loaded Filtering Celeste by SqueakMap Package Loader.
After a successful install I try to start Celeste by draging the Celeste tool from the Tool flap.
I received: MessageNotUnderstood: getListSizeSelector:
Screenshot is (now) attached of debug window.
Cheers, Darius
Darius squeakuser@inglang.com wrote:
On a fresh 3.4 image with only SqueakMap installed, I loaded Filtering Celeste by SqueakMap Package Loader.
After a successful install I try to start Celeste by draging the Celeste tool from the Tool flap.
I received: MessageNotUnderstood: getListSizeSelector:
Screenshot is (now) attached of debug window.
You need the LargeLists package.
Lex
squeak-dev@lists.squeakfoundation.org