Sean, Thanks a lot, I'll try that method later. I have succeeded in 
installing leiningen, and indeed just running it from the command line and 
using emacs as an editor is the most user friendly way I've seen (other 
things like lighttable and ccw didn't work for me -- most likely i did 
something stupid). But most windows users aren't familiar with emacs.

vevm, it's true that you don't want to explain what the PATH is for every 
open source project, but you don't have to. The Ruby and Python installers 
put everything on the path for you. Windows users expect this, they don't 
want to play "shell script" and do everything manually what is in essence 
following a bunch of steps which you have to hunt down over various places 
on the internet and could have been an automated script, even if they do 
know what the path is (and most programmers on windows will know that).

Note also that the hypothetical beginner has not figured out yet that 
lein.bat is in fact leiningen. He thinks that that is just the install 
script (since this is not made clear on the leiningen site), and he thinks 
the installation has failed. It is not made clear that lein.bat *is* the 
program you want to run, and that you want to put it on your path as well. 
I have still personally not succeeded in setting up an IDE with leiningen 
integration on Windows...which resulted in me dropping Clojure for serious 
work in favor of F# (I still play with it occasionally on linux). I am very 
sure that I'm far from the only one. It's a pity that people miss out on 
such beautiful software for such a trivial reason.

Another problem, also seen in this thread, is that there are too many 
options and no consensus on what's the best way to get started. At least no 
consensus that a beginner can easily figure out. Maven? Leiningen? Just the 
clojure jar? CCW? IntelliJ? Clooj? Emacs? Lighttable? You really don't want 
a beginner to get the impression that he has to spend a couple of months 
learning maven with a book, before he can do serious clojure, like almost 
happened here.

Blaming the newbies by saying "you better practice the skill of figuring 
out things" is a bit unfair I think. Plenty of other projects do manage to 
be user friendly. Python: you download the installer, install it, and voila 
you have everything you need, including an editor. Packages generally come 
with their own installer. With Ruby you also get the language, an editor 
and a package manager. With F# you even get an extremely good IDE. All of 
these I was able to install in less than 5 minutes of my time. With Clojure 
I have spend at least 20 hours with installation woes. The way I view it, 
learning the magic incantations to get a specific tool working is not 
useful knowledge. People would rather fill their brain with the cool stuff: 
how reducers, lambda, macros, core.logic work, etc.

Jules

On Friday, February 15, 2013 8:29:25 AM UTC+1, vemv wrote:
>
> Well the first thing you assume is that project pages should be giant 
> download buttons, and therefore the exposed content in those pages is not 
> worth reading/understanding. For instance you can find the answer to the 
> question posed in the slide 19 in slide 7.
>
> Just imagine if every single open source project had to explain what the 
> PATH is, how to install curl, and so on.
>
> You (and me) will be constantly a newbie at something, and the "getting 
> started guide" (if any) will be almost invariably incomplete. So you better 
> practice the skill of figuring out things.
>
> That said, the wording in lein's installation instructions for Windows is 
> improvable - it should acknowledge the fact that working with the Windows 
> mindset can pretty much equal "clicking till it works". In particular it 
> should leave clear that you *want* curl installed even if it isn't:
>
> On Windows most users can get the batch file. If you have wget.exe or 
>> curl.exe already installed and in PATH, you can just run lein self-install, 
>> *otherwise* get the standalone jar from the downloads page. If you have 
>> Cygwin you should be able to use the shell script above rather than the 
>> batch file.
>>
>
> Emphasis mine. 
>
> On Fri, Feb 15, 2013 at 3:56 AM, Jules <jules...@gmail.com 
> <javascript:>>wrote:
>
>> vemv, here is a file describing my Clojure install experience: 
>> https://www.dropbox.com/s/ln2ek5f5n47qnl1/clojureinstall.odp
>>
>> How should I continue? And where would a beginner find that information?
>>
>> Hopefully this is taken in good humor, this is meant as an illustration 
>> from a beginners' point of view, because undoubtedly the stupidity of a 
>> beginner (i.e. me) is greater than any expert can imagine. Keep in mind 
>> that once you know how to do something, doing it is easy. Driving to work 
>> is easy, but if you are in a new city then driving from point A to point B 
>> is hard if you don't know the way. The problem is the multitude of ways you 
>> can go wrong. The ideal experience would be a big "download Clojure starter 
>> kit" right on the clojure.org homepage, that would install leiningen, 
>> and an IDE with leiningen integration, and display a quick guide how to set 
>> up a project and run it.
>>
>> Jules
>>
>> On Friday, February 15, 2013 12:34:26 AM UTC+1, vemv wrote:
>>>
>>> If this does not work for you, you can help everyone by opening an issue 
>>> at the Leiningen bug tracker:
>>>
>>> Make sure java and curl are correctly installed
>>> Run the corresponding (unix or Windows) lein install script
>>> Now you should be able to run lein repl, lein new, etc
>>>
>>> On Friday, February 15, 2013 12:26:15 AM UTC+1, Jules wrote:
>>>>
>>>> Sure, but you have assumed that you have a perfectly working clojure 
>>>> environment set up. *That* is the hard part.
>>>>
>>>> On Friday, February 15, 2013 12:19:34 AM UTC+1, vemv wrote:
>>>>>
>>>>> I never tried out core.logic. This is how I just got it "installed" in 
>>>>> less than a minute. Really no magic here:
>>>>>
>>>>> lein new foo; cd foo
>>>>> # google "core.logic", grab the dependencies vector 
>>>>> ([org.clojure/core.logic 
>>>>> "0.7.5"]), attach it to your project.clj
>>>>> lein repl
>>>>>
>>>>> (use 'clojure.core.logic)(run* [q]
>>>>>   (== q true))  
>>>>>
>>>>>
>>>>> Same principle for practically every single Clojure lib.
>>>>>
>>>>> On Friday, February 15, 2013 12:08:18 AM UTC+1, Jules wrote:
>>>>>>
>>>>>> You are certainly not alone. Learning the language and concepts is 
>>>>>> very easy for me, but the sysadmin stuff to get set up is so much 
>>>>>> harder. 
>>>>>> Believe it or not, I had much more trouble with installing core.logic 
>>>>>> than 
>>>>>> understanding it. It doesn't end either, you bump into more problems 
>>>>>> once 
>>>>>> you try to do something interesting. Just try e.g. to call the LLVM C 
>>>>>> api 
>>>>>> from Clojure, I have not succeeded to this day (was trying to implement 
>>>>>> a 
>>>>>> LLVM backend for Clojurescript). You have the same problem with many 
>>>>>> open 
>>>>>> source projects, they are simply not focused on user friendliness, it's 
>>>>>> certainly not a Clojure specific problem. If you are on Windows the 
>>>>>> problems are 10x worse. Compare this with e.g. Visual Studio. You 
>>>>>> install 
>>>>>> it, and everything just works. Package manager, calling C functions, 
>>>>>> powerful GUI libraries, IDE with debugger, syntax highlighting, 
>>>>>> autocomplete, etc. From the first minute on you are programming rather 
>>>>>> than 
>>>>>> sysadmining. I wish we had the same experience for Clojure.
>>>>>>
>>>>>> On Thursday, February 14, 2013 7:42:57 PM UTC+1, BJG145 wrote:
>>>>>>>
>>>>>>> Having studied Lisp decades ago I like the look of Clojure a lot. 
>>>>>>> But as a complete newbie when it comes to modern software development, 
>>>>>>> I'm 
>>>>>>> exasperated by what strikes me as a very difficult and primitive set of 
>>>>>>> tools to get started. I keep seeing "Leinigen, Leinigen", and the 
>>>>>>> Leinigen 
>>>>>>> homepage boasts that "Leinigen offers the easiest way to get started 
>>>>>>> with 
>>>>>>> Clojure", but this simply isn't true. The easiest way to get started 
>>>>>>> with 
>>>>>>> Clojure that I've come across so far is IntelliJ IDEA. If I hadn't 
>>>>>>> found 
>>>>>>> that I'd probably have given up by now. 
>>>>>>>
>>>>>>> What got me back into programming recently was a Lua-based 
>>>>>>> development environment for Android called Gideros. Lua seems popular 
>>>>>>> for 
>>>>>>> developing apps for some reason. (Cf Corona, Moia, Unity). It seems 
>>>>>>> like 
>>>>>>> quite a neat language, though I'd like to use something more Lisp-like. 
>>>>>>> Maybe the tools are just too difficult for me at the moment, though 
>>>>>>> I'll 
>>>>>>> persevere for a bit. I'd like to achieve some simple graphics on an 
>>>>>>> Android 
>>>>>>> device at least. I've come across some tutorials for CLojure and 
>>>>>>> jMonkey 
>>>>>>> and I'm wondering to dive into that, though I'm still unsure whether 
>>>>>>> OpenGL 
>>>>>>> is the way to go for simple 2D stuff...
>>>>>>>
>>>>>>  -- 
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clo...@googlegroups.com<javascript:>
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+u...@googlegroups.com <javascript:>
>> 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 unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+u...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>  
>>  
>>
>
>

-- 
-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to