* hasanyasin <hasanya...@gmail.com> [120709 07:11]: > > I have worked with Python for 10+ years over Apache and rarely other > platforms too. I have developed software over mod_python and mod_wsgi. I > will try to shortly touch a few main differences between how we did things > in Python using it with different platforms and what are the similarities > and differences between those and the environment Node provides. > > First of all, Node is not direct competition of Python. Everything is > different from head to toe between two platforms. > > There are many different implementations of Python interpreter today; but > they all try to stick with the standard definition of the language. The > standard interpreter cPython comes with a very rich standard library. In > this standard library, there are modules to quickly develop a web server; > but we rarely use those. Instead, we depend on other web servers like > Apache or nginx to handle http. However, there are also web servers we now > have access to which are really close to Node. One very famous of them is > Tornado. > > At Node's side, things are pretty different. First of all, JavaScript > standard does not define a standard library like Python or many other > languages do. This is not a shortness; but a different way of seeing the > world. > > Node is built on V8, a JavaScript interpreter. This way, Node provides > something like python interpreter in regards to being an executable > application to run scripts. The very same way you run python myscript.py, > you run node myscript.js. > > Node also has its own standard library of functions. It is nowhere close to > having *everything* like Python standard library does. Again, this is not a > lack of features, this is the way Node is meant to be. Instead of having a > giant standard library, Node has a *playful* module system that provides > extremely easy ways to build, pack and publicly share your libraries. Node > simply prefers playing liberally instead of dictatorship. > > As for the key point in your question, as a web development environment, > what Node provides is almost the same as what Tornado provides. Web server > is not a separate application. You have all low level http functionality as > a library provided by Node. Don't get me wrong, I love Python, I still > heavily use it for many things; but the http server module Node provides is > a serious one unlike the one in Python standard library. Python's http > library is meant to be used in development environments while Node's is > designed and implemented for heavy-duty production servers. Again, if you > take a look at how Tornado works, you will have a much quicker grasp on the > mindset of Node's web development environment.
Thanks very much for the thorough overview. I work in two different types of platforms: 'One size fits all' server farm/web hosters like Hostmonster and servers owned by clients. It is likely that not all of the former types (Hostmonster et. al.) would host node. Am I right? cheers -- Tim tim at tee jay forty nine dot com or akwebsoft dot com http://www.akwebsoft.com -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en