3

My project amounts to a vertical Q and A site not unlike Quora. Just as on Quora, I want users to be able to follow other users and follow topics. All questions will be tagged in one of 15 topics.

If Google App Engine is not a good framework for this sort of project, what would you suggest? I have also considered Django and Amazon Web Services.

It is important to note that I have minimal programming experience (primarily in Java and MySQL). However, I am willing to learn whatever language would be most useful.

I guess I am really just asking what is the benefit of using the web2py framework instead of just working directly with the Google App Engine.

Spencer
  • 21,348
  • 34
  • 85
  • 121
  • What makes you think that google app engine is not a suitable framework for this? – Klaus Byskov Pedersen Dec 30 '10 at 20:18
  • Nothing really. I just don't know enough about Google App Engine and programming generally to make an informed decision. @Klaus do you think it would be? – Spencer Dec 30 '10 at 20:23
  • well, I think google app engine is a pretty powerful thing. I'm working on a project for google app engine myself and am very impressed with what it has to offer in terms of features, cost and scalability. But given that you have minimal programming experience I don't know if I would recommend it,given that it has a storage model that is very unlike any regular relational database (eg. MySql). You will probably have to do quite some studying/learning by doing. But if you are up for it I don't see why you shouldn't use it. The documentation is good and there is always SO if in doubt. – Klaus Byskov Pedersen Dec 30 '10 at 20:36
  • 1
    perhaps your Q&A site could be built on this web2py app: http://beta.qa-stack.com/ – hoju Dec 31 '10 at 23:44
  • Plumo, beta.qa-stack seems like it would work great! How would I go about implementing it? – Spencer Jan 01 '11 at 00:11

2 Answers2

5

If your target platform is exclusively GAE probably the only real advantage of web2py is its form generation/validation/processing capability and the pure python template language.

The real advantage of using web2py in your case would be the portability of code because of the DAL. If you find out that GAE is not for you and want to run with MySQL on a VPS, you would not need to rewrite more than one line of code (the one that connects to db), except for GAE specific (or mysql specific) optimizations.

web2py has some useful developer tools like the wizard which can reduce your development time in some cases.

mdipierro
  • 4,239
  • 1
  • 19
  • 14
3

You wouldn't want to work directly with the Google App Engine; that would require writing CGI code which would be an awful lot of unnecessary work. You'd want to use some sort of WSGI-compliant framework, eg, Django, web2py (as you mentioned), or webapp (the simple framework provided by Google for use with GAE).

I have no experience with webapp, but I have some limited experience with Django and web2py. I have not used either on GAE. As I understand it, web2py supports GAE better out of the box than Django.

Personally, I prefer web2py because I found myself fighting against the framework more when I used Django (eg, can't write python code in Django templates). I won't get into all the differences (there are plenty of questions on SO that address them).

Bottom line: I prefer web2py.

Community
  • 1
  • 1
mwolfe02
  • 23,787
  • 9
  • 91
  • 161