Python software spaghetti stack for web apps


When you want to solve a problem, the easiest thing is to follow in the tracks of someone else.  This can lead to a fairly complicated software stack to combine solutions to different issues.  My stack is going in this direction:

SQL/Sqlite: Database.  Simple and light but apparently more than good enough for most web apps.

Python: main application glue.  For those of us who need to get stuff done in the scientific visualization space, and have no patience for Java or random obscure newish languages like Scala and Lua.

CSS: Stylesheet language of all websites.  Hard to avoid knowing about.  A bit unlovely.

Javascript: Popular browser-side programming language implemented in all major browsers, equivalent to Python, loosely Java-like but without all the mind-numbing type checking and package hierarchies (at first glance).

Ajax: Method of communicating between client-side Javascript and server-side application (in Python in my case), to update an element of a webpage without having to redraw and reload the entire webpage

Bootstrap: A library of widgets and good stuff, originally programmed for Twitter, which is public domain and has things like stars for Like buttons.

Node.js: Server-side implementation of Javascript, moving some of the rendering load for complicated pages back to server.  (But initial intention was for browser-side Javascript to make things faster

Django: Python-based web application development package.  Features use of SQLAlchemy to make it easy to bind classes to database tables and incorporate changes in class structure during dvelopment.

React.js: A way of getting much fancier widgets than vanilla Django, in particular the Editable Table.  Requires some tedious and tricky integration to make it play with Django.

Amazon Elastic Compute: Web server in the cloud without compromising my home computer, for modest cost.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s