I'd agree with this. The situation is even not ideal with linux; when I first used Clojure I was reticient to install lein by hand and only lein 1 was available for my repo. Lazy? Well, I use 4 or 5 machines routinely, and I set them up as I go, so an quick and easy install is important. Eventually, I relented.
I'm a full time linux user and an Emacs junkie. But not a full-time Clojure user; it's only one of the languages that I use regularly, so rapid set up is important. On windows, setting up PATH and probably HOME if you are going the Emacs route makes it worse. It's a concern for me. I am using Clojure to provide a DSL. To use the DSL you do not have to use Clojure per se (or rather not be aware that you are). But you do need a working Clojure environment. This might be an uphill struggle. Phil Jules <julesjac...@gmail.com> writes: > 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. >>> >>> >>> >> >> > > -- -- Phillip Lord, Phone: +44 (0) 191 222 7827 Lecturer in Bioinformatics, Email: phillip.l...@newcastle.ac.uk School of Computing Science, http://homepages.cs.ncl.ac.uk/phillip.lord Room 914 Claremont Tower, skype: russet_apples Newcastle University, twitter: phillord NE1 7RU -- -- 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.