Well, given that you've mentioned Ruby, I can tell you that getting real work done (no just a installing some welcome pack) in Ruby is orders of magnitude harder than with Clojure - and borderline impossible if using Windows. What Lein does is divided into a dozen tools, each with its own idiosyncrasies.
Even OSX devs (and recall that both OSX and Linux share common roots), which tend to use the terminal a lot more than Windows devs, have a hard time setting up Rails (and later keeping that setup in sync with the Linux boxes where they deploy their apps). What the story shares in common for all OSes is that you have to figure things out. Fact of life. You can sort of avoid that problem by using always languages and components backed by corporations. But if you want to leverage software from the open source community, that *implies* becoming good at troubleshooting. Wrapping up, your current approach pretty much limits you to F# (good luck with cathegory theory) + Visual Studio. If you acknowledge hardness (see Rich Hickey's talk, "Simple made easy"), you'll be able to use those (and at a deeper level) but also *other* technologies. On Fri, Feb 15, 2013 at 1:02 PM, Jules <julesjac...@gmail.com> wrote: > 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> wrote: >> >>> vemv, here is a file describing my Clojure install experience: >>> https://www.**dropbox.com/s/ln2ek5f5n47qnl1/**clojureinstall.odp<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 >>> >>> 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 >>> >>> For more options, visit this group at >>> http://groups.google.com/**group/clojure?hl=en<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. >>> >>> For more options, visit >>> https://groups.google.com/**groups/opt_out<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. > > > -- -- 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.