Maintaining a Python web application: heavier vs lighter framework?

Posted by Tiberiu Ana on Stack Overflow See other posts from Stack Overflow or by Tiberiu Ana
Published on 2010-03-22T10:34:43Z Indexed on 2010/03/22 10:51 UTC
Read the original article Hit count: 471

Filed under:
|
|
|

Five+ years from now, you are hired to support and extend a data-centric web application written in Python that hasn't been kept up to date. Would you rather prefer it was written in the current version of Django/Pylons at the time, using the available standard components, or kept minimal with something like CherryPy/web.py and a few library dependencies?


Heavy framework

Advantages:

  • standard approach to application design and structure, as encouraged by framework;
  • less application code to worry about.

Disadvantages:

  • requires learning the framework to understand how things work;
  • broken things in old version of framework difficult to fix;
  • upgrading to new version potentially difficult due to changing APIs;
  • finding relevant documentation/help potentially difficult due to changing APIs.

Light framework

Advantages:

  • most application code is directly "visible";
  • only needed features are implemented;
  • architecture should be simpler to understand;
  • less need to upgrade external dependencies;
  • easier to upgrade external dependencies.

Disadvantages:

  • some reinventing the wheel;
  • non-standard design and structure (with the associated unique issues and bugs).

I will update the list with any helpful answers.

© Stack Overflow or respective owner

Related posts about python

Related posts about web