Very insightful comments Chas!

I agree with most of what you've said, in the sense that I definitely see your 
point of view.

On Jun 28, 2010, at 7:17 PM, Chas Emerick wrote:

> Greg, thanks for this post, it's a helpful perspective.  Many of us have been 
> working on this problem from various angles (though often uncoordinated, but 
> that's how it goes), and I do what I can.  Here's some general 
> comments/thoughts in no particular order after re-skimming your post and the 
> comments on this thread so far:
> 
> - Clojure (and some environment for working with it) must be as "friendly" 
> and approachable for new users as possible.  It is not an "expert's" or 
> "professional's" language, at least in my conception, and thinking of it that 
> way will doom it to irrelevancy.  Our community has been extraordinarily open 
> and welcoming to newcomers for years, and any change in that posture would be 
> devastating.  I (thankfully) have little fear of this actually happening.

I hope you're right, because it seems like some people are really gunning for 
this silly "comp. sci. professors-only" perspective. It's made sillier still 
considering that one of the main motivations behind Clojure was to create a 
practical Lisp.

With regards to the "to-each his own" argument on environments, I definitely 
agree, but I was never suggesting that we impose any environment on anyone. 
Just that there be an excellent default environment that the docs can 
recommend. I see nothing wrong with that, it would only serve to help enhance 
the getting started experience. Again, look at Xcode.

I think someone said it well (I forgot who), but part of the reason why there's 
so much fragmentation amongst setups right now is because they all generally 
tend to suck in some way or another. If there was a single-awesome catch-all 
setup that served the needs of 80% of Clojure users, that would not be the 
case, and Clojure's community would thrive.

> Feeling like 1.2 is a requirement for learning clojure is unwarranted, and an 
> unfortunate side-effect of the gestalt of the community discussion.

I never said it was a requirement for learning Clojure.

I said that I as a semi-informed newb would like to use Clojure 1.2, and that 
it should be simple to do this. 'Should' is a strong word, and it will incite 
many to disagree, but that doesn't change the fact that mine is not a unique 
viewpoint. Perhaps, "there's no reason why there shouldn't be" would be a 
better way of putting it. In general, what should be simple is switching 
between clojure.jar files, whether you're switching to a bleeding-edge copy or 
not.

The Assembla wiki states:

        reify is preferable to proxy in all cases where its limitations are not 
prohibitive.

And I intend to follow that advice. :-)

There's no reason for making it difficult to do so.

On a different note, is it normal for messages emailed to the list to take 
hours before appearing in the thread? I sent several replies to this thread and 
they've yet to appear (currently), it's been several hours. I would figure that 
once my initial message was approved my email address would be automatically 
white-listed..?

- Greg

> - Clojure is fundamentally a hosted language -- whether it's the JVM or the 
> CLR or Javascript or Cocoa or LLVM or Gambit or whatever other platforms 
> Clojure will be hosted on in the future, there will always be some tension 
> between Clojure and the underlying runtime.  The key is having tools around 
> that effectively plaster over that tension for long enough for newcomers to 
> tinker, get comfortable, and become effective in some small way before 
> forcing them to peel back the veil and understand things deeply.  Currently, 
> the classpath is the biggest thing that needs to be plastered over, but 
> that's a simple issue that, honestly, existing IDE plugins fundamentally 
> solved years ago.
> 
> - I suspect there will never be an "officially-sanctioned" toolchain, unless 
> one particular environment becomes so capable and ubiquitous and approachable 
> that it's pointed to because suggesting anything else would just be mean.  
> That's good, insofar as, to a certain extent, we're not sure what that 
> über-environment should look like (though I've been trying to cultivate a 
> conceptualization of that here, haphazard as it may be: 
> http://muckandbrass.com/web/x/DoBZ).  Yes, we'll "lose" some newcomers while 
> efforts are splintered, but if and until that changes, it's best to simply 
> say, "here's our best effort at getting you started, come find us in #clojure 
> or on the ggroup if you need help".
> 
> - Not all newcomers are alike.  What a Java programmer needs is very 
> different than what a Rubyist or pythonista or old-time lisper need.  This 
> fact needs to be taken into account when recommendations are being made for 
> build tools, editors/IDEs, etc. etc.  (I'll bet the correlation between prior 
> Java usage:clojure-maven-plugin::prior Ruby/python usage:lein approaches 1 
> ;-).  That means, among other things and all things being equal, don't 
> recommend emacs to the Java dev, and don't recommend maven to the guy who 
> likes writing makefiles and bash scripts.  This is also a hit against the 
> notion of there ever being an officially-sanctioned environment or toolchain.
> 
> - The 1.1 vs. 1.2 "issue" is a canard, regardless of .  One can start with 
> Clojure 1.0 if you really want to make the point -- lots have been added 
> since then, but little (almost nothing, actually) that was there has changed. 
>  There is a certain tendency for a very, very large portion of the community 
> to follow bleeding-edge builds -- fundamentally not a good thing IMO, but a 
> lot of factors are involved there -- but those factors are not in play for 
> true newcomers that are just looking to learn.  Feeling like 1.2 is a 
> requirement for learning clojure is unwarranted, and an unfortunate 
> side-effect of the gestalt of the community discussion.
> 
> Hrm, guess I rambled on long enough.  Good discussion, keep having it. :-)
> 
> - Chas
> 
> On Jun 27, 2010, at 5:58 PM, Greg wrote:
> 
>> This weekend I've been diving head-first into Clojure, and I've documented a 
>> lot of the sticking points that I've run into as a n00b.
>> 
>> I'd like to share them with the community here, in the hopes that we might 
>> be able to improve the getting started experience for people considering 
>> Clojure:
>> 
>> http://gregslepak.posterous.com/clojures-n00b-attraction-problem
>> 
>> In the post I cover issues with:
>> 
>> - Obtaining Clojure
>> - Running Clojure
>> - IDEs
>> - Emacs/VIM
>> - Build systems
>> - Documentation
>> 
>> Cheers,
>> Greg
>> 
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com
>> Note that posts from new members are moderated - please be patient with your 
>> first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to