[Django]-Groovy or Django

5👍

I went through the same process as you too before deciding to use django. I am a Java programmer during the day and I want to have a pet project that I can make during my spare time. So I got myself a VPS with the cheapest plan available. I installed Java webserver and deploy a Grails app, but it turns out that it needs a bigger memory. Then I realized that Java webapp needs a large memory to get running. So I went to look for a non-Java framework. I didn’t have much criteria at that time other than it can run smooth on my current VPS plan.

I took a look at django and I was amazed that:

  1. It is so simple and easy to get started. It only creates small numbers of file (compared to Grails)
  2. It has many built-in feature that Grails doesn’t have:
    • RSS feed framework
    • Commenting system
    • The admin system (you gonna love it, it’s like scaffolding only better)
    • And many other webby features that takes time to create
  3. It needs less memory to get started, but it can also scale really well

Other than that you’re just going to compare Groovy and Python. If you’re a Java programmer you’re going to love Groovy syntax as it is really close to Java. But python is a good language too (despite that many people don’t like it’s syntax).

If you want to use JavaFX as the front-end, then you can use django just to return JSON data or XML data, and you can do this easily because it has a built-in serializer to do this.

So all in all the criteria drills down to what you need and what you already know.

2👍

I would stick with Django. Django and Grails are quite similar, but I prefer Python over Groovy. Python’s development cycle is just less tedious than Groovy’s. The Python console is e.g. started immediately, while the Groovy console can take over a second to load. That’s just a small issue, but waiting a second many times gets frustrating in the end.

2👍

There is a Grails App Engine plugin that does not use hibernate.

http://www.grails.org/plugin/app-engine

Personally, I think the choice comes down to which language you like the most. If you are a Java/JSP developer, you’ll probably like Grails better. However, if you are already quite proficient in Python then that is the better choice.

Here are some resources that might help you evaluate Grails.

http://grails.org/Success+Stories
http://www.pubbs.net/grails/200908/12877

Python is already well established and mature. There are plenty of resources and it is certainly a good choice, if you are a Python fan.

👤anon

1👍

Have you looked at Google AppEngine? You can run Django there, and it’s a good cheap way to start.

👤marcc

0👍

I haven’t seen any performance comparisons between CPython and Jython, but I do know that Django runs on the latest version of Jython now. This also allows you the flexibility of being able to rewrite parts of your app later (remember, no premature optimization) in Java or, say, Scala, if you need the speed.

0👍

You may want to consider the memory footprint consumed by the app server in the VPS environment. If your VPS is really small (256 mb) then you might run out of memory if you are running the app server + db server.

-3👍

Groovy’s future is debatable. Its creator, James Strachan, has said:

I can honestly say if someone had shown me the Programming in Scala book by by Martin Odersky, Lex Spoon & Bill Venners back in 2003 I’d probably have never created Groovy.

http://macstrac.blogspot.com/2009/04/scala-as-long-term-replacement-for.html

My 2 cents: go with Python & Django. Skip Scala. Seriously consider Lisp.

Leave a comment