[squeak-dev] open paren/brace/bracket...

Colin Putney colin at wiresong.com
Thu Apr 17 22:56:44 UTC 2014


On Thu, Apr 17, 2014 at 3:12 PM, Chris Muller <asqueaker at gmail.com> wrote:


> Some people like to "edit text" and some people like to "edit
> expressions".  Personally, I find "editing text" pretty old-school,
> and a lot more tedious.
>

You know, I bet this boils down to a simple cost-benefit analysis. For me,
the effort required to
type a character at the cursor position is negligible, so saving that
effort is of little benefit. Even
in cases where I will need to put a $) after the expression I'm typing now,
sometimes I'll have to
type right-arrow to get past it. So the benefit is very small and often
offset by a small loss.

Similarly, deleting an unwanted character is cheap, but deciding whether to
do so is a huge cost.
I have to stop thinking about what I'm doing, and think ahead to what I'm
going to do next. Even
if I know I'm going to need the closing character, it stays in my field of
view and takes up cycles
as a pending thing that I have to worry about until I complete the encoded
expression.

So, the benefit is small and unreliable, while the cost is large and
inevitable. It forces me to think
about typing, which normally I don't have to do. Thus, it's infuriating.

However, that calculus is very personal. If typing a character took, say,
10x longer, or I had to look
at the keyboard to find the character, the benefit would be much more
significant. Also, if I had to
think about where the keys are, then deciding whether or not to delete the
character wouldn't be
an interruption; it would just get folded into the "thinking about typing"
that I'd do.

So it probably has more to do with how fast we type than how we think about
coding or "editing
text" or even familiarity.

Colin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20140417/db2f940a/attachment.htm


More information about the Squeak-dev mailing list