[plt-scheme] documentation feature requests
I've been using and teaching DrScheme for a couple of months now, and
while I'm still a newbie I would nonetheless like to offer a couple of
suggestions based on my experience coming from Common Lisp
environments and teaching students with an unusually wide range of
backgrounds and motivations.
1. It would be really great if DrScheme provided more immediate access
to more rudimentary documentation right in the IDE. I'm thinking
primarily of arglist info and/or English descriptions of what
particular procedures do. I know that one can get into the main
documentation in a browser with a couple of keystrokes, and it may
seem like that should be good enough. But for one thing that
documentation isn't as helpful to beginners as it might be (see
below), and for another those couple of keystrokes and the context
switching add up when you're trying to write code and aren't yet
fluent. Having the information you need right there in the IDE, right
when you need it, is qualitatively different. When I first started
with DrScheme I made a plea here for "arglist on space" and received
helpful replies about ways to get this in other editors along with
explanations of why it isn't straightforward in PLT (because of case-
lambda, at least). All the same, I think it would be possible to do
something along these lines, and that even something partial would
make a big difference for me and my students. I also know that what
DrScheme provides is probably already a lot better than what most IDEs
provide for most languages, but I guess I'm spoiled from using Common
Lisp environments that provide arglist-on-space and keystroke access
to documentation strings right in the IDE. I figure DrScheme could do
something approximating this and I think this would be really helpful.
2. More examples -- simple, minimal examples -- in the documentation
would help very very very much, both for relatively experienced
programmers and especially for beginners. I also teach using
Processing (www.processing.org) and the presence of simple examples in
the documentation of every procedure is a transformative thing. The
PLT documentation seems admirably thorough but it is often completely
baffling to my students and I myself often have to chase several links
before I can figure out how to make even a simple call to a particular
procedure that interests me. And it's discouraging, because one never
knows how many link-following and new-concept-learning steps will be
required to make that first simple call. I'm not talking about
complicated examples, and in fact the simpler the better. With such
examples the user can try any procedure out immediately by cutting,
pasting, and then adapting the example to suit their purposes. The
"adapting" step may require a lot more reading, of course, but at that
point the foot is in the door. I realize it will take time to write
these examples, but I think they would make a big difference.
Just my 2 cents! Overall I'm enjoying working with PLT/DrScheme quite
a bit, and I thank everyone involved for creating such a great
environment!
-Lee
--
Lee Spector, Professor of Computer Science
School of Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspector at hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438
Check out Genetic Programming and Evolvable Machines:
http://www.springer.com/10710 - http://gpemjournal.blogspot.com/