Network/multi-user program
Roy Smith
roy at panix.com
Mon Jul 21 19:15:15 EDT 2014
In article <mailman.12158.1405983216.18130.python-list at python.org>,
Monte Milanuk <memilanuk at invalid.com> wrote:
> Any hints/opinions on what those drawbacks might be? I know literally
> almost nothing about JS. I worked thru a short generic tutorial a couple
> years ago, but nothing like these libraries I see people talking about
> now like jquery, angular, ext, and so on. Hence my hesitation at adding
> another learning curve on top of python and the various libraries needed
> for this first 'real' project.
In the beginning, there was javascript. It was used to do cutesy little
things like animated U/I elements and perform certain actions when your
browser detected events like clicking on a button or moving the mouse
cursor over an image.
But, javascript is a real (if bletcherous) programming language. It's
got functions and variables and loops and if statements and classes (OK,
it doesn't really have classes, but it has things that we can pretend
are classes, if we squint hard). It can talk to the network and
generate HTML on the fly. So, people started building a whole new kind
of web site.
Instead of having an application running on the server which spits out
HTML and CSS, and little bits of javascript to tweak those, we've got a
full-blown javascript application running in the browser. That
application is retrieving data from the server, doing useful things with
it, and totally managing the HTML that you see rendered in your browser
window. Things like jquery and (even more so) angular, backbone, ember,
etc, are frameworks which make it easier to write these applications, in
much the same way frameworks like django make it easier to write
server-side web applications in Python.
The truly sucky part of this picture is that javascript is a horrible
language, but you have no choice. It's the only thing that runs in
browsers. On the server side, if you don't like Python, you can write
your app in Java, or Go, or Ruby, or a host of other languages (even
javascript, if you want). On the client side, no so much.
More information about the Python-list
mailing list