Phil, while I don't know the specific application you're working on, distributing Clojure apps to end users should't be any more difficult than distributing Java apps. Are you familiar with `lein uberjar`?
As for Linux installation, curling and executing a single script can't be that much work...? Anyway what I do is to include those few lines of code in a script I use every time I install Linux on a new box - it sets up Ruby, Java, performs a bunch of apt-get-installs, makes some aliases, etc. Hope it helps - Victor On Fri, Feb 15, 2013 at 5:04 PM, Phillip Lord <phillip.l...@newcastle.ac.uk>wrote: > > 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. > > > -- -- 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.