[Pharo-dev] default monospaced code font

btc at openinworld.com btc at openinworld.com
Tue Oct 15 23:54:53 EDT 2013

Nicolas Cellier wrote:
> Pushing the newcomers argument: if newcomers are used to using if then else
> and switch case, why did you deprecate usage caseOf:?
> If newcomers argument counts, shouldn't we remove text editing, browser,
> etc..., go back to file based development and create an eclipse (or emacs)
> plugin?
> I saw very good arguments for proportional: more readable/natural/more text
> on the line...
> So I'm inlne with Pavel,
> Is there any argument for fixed space (but the hypothetical newcomer).
> There are some times when we must educate rather than imitate.

Links [1] & [2] provide some good points both ways.  I agree that we 
ultimately want to educate - but sometimes its good to avoid educating 
too-much at once.  I think the point is that fonts are not a 
"distinctive" feature Smalltalk, although Eliot argued Smalltalk it has 
a tighter binding that other languages.  Even so, lets not deter 
newcomers on the basis of fonts before we hook them with experience of 
Smalltalk's advantages.  Before you consider glossing over this thinking 
"it shouldn't be a big deal to newcomers, they should get over it" 
consider the emotion evoked in this thread.  One significant cognitive 
rule of persuasion is "that you cannot use logic to argue a decision 
made on the basis emotion".  I think it is useful for newcomers to have 
time to absorb the alien nature of Smalltalk without the distraction of 
acclimatising to a different font regime.

Some interesting points I picked up.

* Most proportional fonts are designed for prose and only little 
punctuation (which in turn is usually one or rarely two characters). The 
C family of languages have lots of punctuation, which simply does not 
look good [with proportional] and is harder to read than necessary.  [2] 
[and Smalltalk is more like prose.]

* [With proportional...] feel better about using longer, more 
descriptive variable names (maybe because they scan better, maybe 
because the horizontal size of the text is compressed) [2]

* All it takes is a few hours of trying to figure out why a search isn't 
finding something because you have 2 spaces instead of 1 in your 
literal, to realize you should use Monospace fonts. [2]

* With monospace you can select rectangular sections [1] Not sure how 
well that relates to Smalltalk.

Now having tried the directions provided by Pavel to sample the new 
font, upon review of a small amount of code, I quite like the font.  In 
comparison the proportional font seems too compressed.  However this 
could be resolved for the proportional font by making the 'spaces' 
wider.  (One of the central features of graphic design is liberal use of 

In the end I am sitting on the fence.  Perhaps there just needs to be a 
welcome screen that with a big switch easily thrown between the choices, 
along with a couple of others like Smart Quotes that are foreign and 
irritating to newcomers (and even though I sometime try again, I still 
struggle with and have to turn off)

cheers -ben


More information about the Pharo-dev mailing list