Live data from Hacker News

Developing and Deploying a Simple Clojure Web Application

mmcgrana.github.com

11–20 of 41 posts

Re: Developing and Deploying a Simple Clojure Web Application

#11
post #8

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

Actually, it's an easy way to: - add two numbers - build the project with dependencies - display stack traces - deliver static files - generate html from code - validate user input - host with a web server - reload the web server during development - handle url routing - log requests - create custom middleware - deploy to EC2 You may have glossed over some of the details.

No, I didn't gloss over the details with the possible exception of deployment to EC2. Most of the stuff you listed are a prerequisite to web development. For most other languages/frameworks database connection would be included too.

Re: Developing and Deploying a Simple Clojure Web Application

#12

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

Perhaps you meant to say that the framework used in this example is not ready. I didn't see anything about Clojure the language that makes the example complicated.

As far as the framework is concerned, the example shows how to build a production deployment of the application. The author is not showing a toy teaser application. There are a lot of details there, but these are things that you would want to know if you actually want to run a production server.

Re: Developing and Deploying a Simple Clojure Web Application

#13

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

You can thank people like Mark McGranaghan for taking languages that "aren't ready for X" yet and making them so.

Re: Developing and Deploying a Simple Clojure Web Application

#14

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

Huh. 45 LOC for templating, routing, and form processing and you don't need to configure a different webserver since jetty is production quality. Do you have links to something that takes less effort than what is being illustrated here that can be deployed immediately into production and perform well?

It's interesting. I read your comment through the "backtype version" below the article, and, because it was out of context, I interpreted your meaning to be exactly the opposite of what I see it is now.

Re: Developing and Deploying a Simple Clojure Web Application

#15

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

Perhaps you meant to say that the framework used in this example is not ready. I didn't see anything about Clojure the language that makes the example complicated. As far as the framework is concerned, the example shows how to build a production deployment of the application. The author is not showing a toy teaser application. There are a lot of details there, but these are things that you would want to know if you a…

I agree with this, and yes I used the word 'clojure' to mean any frameworks/web servers/middleware that can be used to code in clojure. Just like when people say "php is good for web programming" most of them actually mean php, apache, mysql and their favorite framework.

Re: Developing and Deploying a Simple Clojure Web Application

#16

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

There are a contingent of Lisp users who really, really, really like this fgen style, for EVERYTHING. I—as someone who's worked in the industry on lots of startup-level projects—think it's only useful for small, regular snippets. There is also this false-metric effect in play; there are only 45ish lines in one file here, so it must be elegant and great amirite?

But a real webapp would have lots of templates and lots of files.

Where Clojure really shines in web development is when you mix it with cgrand's Enlive templating engine (http://github.com/cgrand/enlive), which is an amazing project with lots of active development. This approach is so cool that even a lot of the Rails and Python startup folks are starting to copy it.

Re: Developing and Deploying a Simple Clojure Web Application

#17

If this is an easy way to create a web app that adds two numbers on Clojure, I'd say Clojure is not ready for web development yet.

There are a contingent of Lisp users who really, really, really like this fgen style, for EVERYTHING. I—as someone who's worked in the industry on lots of startup-level projects—think it's only useful for small, regular snippets. There is also this false-metric effect in play; there are only 45ish lines in one file here, so it must be elegant and great amirite? But a real webapp would have lots of templates and lots…

I think the point of the article is to cover the absolute basics using Ring, not advocate any particular style of development. I mean the title of the blog post does say it all.

Having written a lengthy Enlive tutorial, http://github.com/swannodette/enlive-tutorial, I of course swear by it and scoff at inline html generation :D So I prefer coupling Ring+Enlive+Moustache (and tasty Aleph) myself but that would be an awful lot to cover in a single blog post now wouldn't it ;)

All in good time.

Re: Developing and Deploying a Simple Clojure Web Application

#18

Earlier quoted context omitted.

There are a contingent of Lisp users who really, really, really like this fgen style, for EVERYTHING. I—as someone who's worked in the industry on lots of startup-level projects—think it's only useful for small, regular snippets. There is also this false-metric effect in play; there are only 45ish lines in one file here, so it must be elegant and great amirite? But a real webapp would have lots of templates and lots…

I think the point of the article is to cover the absolute basics using Ring, not advocate any particular style of development. I mean the title of the blog post does say it all. Having written a lengthy Enlive tutorial, http://github.com/swannodette/enlive-tutorial , I of course swear by it and scoff at inline html generation :D So I prefer coupling Ring+Enlive+Moustache (and tasty Aleph) myself but that would be an…

I suspect we could do it easily. Talk to me on twitter (my name here is my name on twitter) and let's see if we can hammer out an elegant way to describe that coupling.

I need the writing practice anyways.

Re: Developing and Deploying a Simple Clojure Web Application

#19

Earlier quoted context omitted.

There are a contingent of Lisp users who really, really, really like this fgen style, for EVERYTHING. I—as someone who's worked in the industry on lots of startup-level projects—think it's only useful for small, regular snippets. There is also this false-metric effect in play; there are only 45ish lines in one file here, so it must be elegant and great amirite? But a real webapp would have lots of templates and lots…

I think the point of the article is to cover the absolute basics using Ring, not advocate any particular style of development. I mean the title of the blog post does say it all. Having written a lengthy Enlive tutorial, http://github.com/swannodette/enlive-tutorial , I of course swear by it and scoff at inline html generation :D So I prefer coupling Ring+Enlive+Moustache (and tasty Aleph) myself but that would be an…

Your Enlive tutorial is excellent. Thank you.

Re: Developing and Deploying a Simple Clojure Web Application

#20

Earlier quoted context omitted.

There are a contingent of Lisp users who really, really, really like this fgen style, for EVERYTHING. I—as someone who's worked in the industry on lots of startup-level projects—think it's only useful for small, regular snippets. There is also this false-metric effect in play; there are only 45ish lines in one file here, so it must be elegant and great amirite? But a real webapp would have lots of templates and lots…

I think the point of the article is to cover the absolute basics using Ring, not advocate any particular style of development. I mean the title of the blog post does say it all. Having written a lengthy Enlive tutorial, http://github.com/swannodette/enlive-tutorial , I of course swear by it and scoff at inline html generation :D So I prefer coupling Ring+Enlive+Moustache (and tasty Aleph) myself but that would be an…

I'd love to see a fork of adder that used Ring+Enlive+Moustache.
Post reply on HN