Thoughts for Logo V6
This file collecty design ides for a new version of Logo. This version will be easier to use for younger students while
Logo Statistics
These are statistics without any Terrapin staff, and active, no-trial licenses only.
- Home licenses: 987
- Classroom licenses (20): 17
- School licenses (50): 8
- Campus licenses (500+): 4
None of the home licenses have ever changed anything via the config page.
Only 10 multiuser licensees used the config page to alter settings:
Field | Count | Comments |
---|---|---|
Login via campus name | 5 | 3 with a campus password |
Login via CSV file with student names | 1 | |
Auto-login | 2 | desktop verion only |
Startup commands | 3 | |
Startup file with commands | 2 | both code and file, desktop only |
Vetting | 2 | |
Suppressed menu items | 3 | |
Suppressed icons | 0 | |
Suppressed load or save items | 0 |
All of the other licensees simply use the campus name, no password, as a student login.
General design
I’d like to replace the panels with a set of predefined layouts, where panels are separated by movable separators, just like the separator on the Resources pages. The Help panel should be a new browser tab so it does not occupy screen space.
If at all possible, the menu bar should be replaced with the icon bar.
Toolbox
Do we need the Toolbox? If yes, can it be a floating panel?
Graphics
Should the Graphics screen auto-zoom to the display size? If so, what would a screen unit be like?
Features to be removed
Logo Apps
This feature is far too advanced for younger students.
Controls and other turtle-like objects
There should only be turtles. Controls are useful for Logo apps only.
Logo commands
HTML
Language
Relaxed Syntax (no colons in front of variables) should be by default, not changeable.
A new binary operator := is a shortcut for MAKE, with no needs for quotes (instead of MAKE “A 5, use A := 5). The MAKE command also eliminates the need for quotes. This is a bit contrary to the Logo ised, where a procedure could return a variable name (MAKE A 5 stores 5 into a variable whose name the procedure A returns).
Settings
The Settings dialog should be tabbed. Many settings should not be accessible via dialog (like the tab width, or the stack depth). Tabs may include e.g. the Layouts dialog.
Debugging
The current Debug panel is buggy, and apparently not used at all. I’d like to create a new debugger that replaces the Editor panel automatically, with two panes, a pane with all known variables (with editable values), and a code panel showing the current line.
A live view should be available where the student can alter the execution speed with a scroll bar to see statements being highlighted as they are executed; this way, they can watch their program flow.
Should that panel allow code to be altered while a program executes? Or should the code view be read-only?