-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I'll chime in here as a "semi-noob".
The more I've learned Scheme and the more I've learned Racket (mix of the Schemer books, HTDP, personal projects, racket-lang docs) the more I'm seeing this specific issue as a cultural "thing" that has evolved - From the nature of the language itself. The data-as-program and program-as-data thing is so central to the language that I'm seeing it cropping up in the noob's first interface with the language (through no specific aspect, it's sort of "everywhere" which is what Elliot's posts feel like; it feels like hes confusion/problems are really broad and non-specific). You see, the docs are excellent (IMHO) - even though it took me a while to figure out what I *should* be reading. I don't think the issue is in the documentation. I also agree with Eli that DrRacket is rarely ever mentioned in the actual docs, that is a trivial issue. I think Elliot's contention with DrRacket has more to do with the fact that he doesn't want to fire up DrRacket to try something, he expects something more like typing in "python" at the terminal &c... (even though Python has its own analog to DrRacket with IDLE, which I also think, just like DrRakcet, is really great). Again, I don't think this point of contention needs to be fixed. What I do think needs to be emphasized for people *not* coming from the HTDP side is /why/ DrRacket is beneficial to start learning the language with. It wasn't until a StackOverflow answer you gave me Eli, in which you (literally) told me how to start the stepper (which involved changing languages to one of the restricted student languages) to *see* how the program executed a function that used call/cc that I "grokked" the wonderful took that DrRacket is for a beginner. ^that, is something that could be expanded upon I beleive - (I will expand upon this as a suggestion below). The larger issue (back to my original point) is the fact that the environment/language is so flexible that even the entry point into it is "flexible". Noobs really hate flexibility, they get paralyzed by choice. Now that I "get" Racket I feel like it could have an /even more/ concrete entry point. Something like HTDP but much shorter (HTDP is amazing, but far too long for the weekend dabbler)! Elliot pointing out the Learn You A Haskell website and the Learn You Some Erlang website was probably the most helpful part of this entire email - the docs are great. DrRacket is great. The website design of the docs are intuitive and focus the attention just right (I really do thing this). But Racket severly lacks something like LYAH/LYSE - or a "reduced and fun HTDP". The Little Schemer books are a great example, maybe those can be used as a template - instead of making them Scheme specific you can use it as an entertaining resource for both /entering/ the Racket environment and learning the Scheme language. Also, instead of scaring n00bs with "car" and "cdr" - introduce the language (exactly as HTDP does it!) with "first" and "last", and a simple "note taking" web application (the blog web application tutorial is way too scary for noobs), everyone is into web apps these days - it's a concrete entry point. Just my thoughts. I love Scheme and I love Racket - so much of what Elliot is complaining about is both a lack of a quick and concrete entry point as well as a lack of acculturation on his part (Scheme/Racket just *takes time* - can't really get around that). Eli Barzilay <[email protected]> writes: > Four hours ago, Sam Tobin-Hochstadt wrote: >> >> This is a problem that I've seen repeatedly in trying to help >> programmers in other languages get started in Racket. Lots of >> people want to know "how it all works" right when they start. >> Whether this is helpful or not, everyone has some definition of >> "all" for these purposes. Usually it includes the language and >> libraries, but not the compiler or processor. Unfortunately, in >> Racket it's just the case that more of the complexity is "above the >> line" in some sense, and thus people want an explanation of how it >> works. >> >> I don't know what to do about this, but it's something I've run into >> many times. > > (My best idea for these is to keep asking how they get confused, and > hopefully some central page will emerge as a good point to explain it > better.) - -- Parnell "ixmatus" Springmeyer (http://ixmat.us) -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.17 (Darwin) Comment: GPGTools - http://gpgtools.org iQEcBAEBAgAGBQJN0GgQAAoJEPvtlbpI1POLC4cH/1zFSptqb1pT8h8T+Tiu/7J0 6ETSu3Sxp6nYG7OR9nDF0rB+VrE/KNTFelk3SNZpc5vkmOBQdtYW+pmfCyvhvGEL 4mDGCMTGFAQCNFCRKOmXtU8IhbV5Rjdt+7Q6a4v/Zl7mihNNZ6Tyn4jFoMp6OH3N /x2OAnc04WR6sPtuhGbJ/PEoceNhjmsLKUBBCD5iBRn6xRpcs5w8gw2sGpPYTWcj kAIOy4g9+26yOdns5KXJPp/LwBXWiSw5M/sSL1vF+W0fIqjE2MDt+ZL011Fj57Ht zhBNuUnuKFRPCoMcJwRq+o/Fc8KoBK+lIE6sUdZfLHuek9yUERfYnh9PG0bUpXo= =972u -----END PGP SIGNATURE----- _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users

