FAQ
I'm trying to get into web development for creating a professional web site
and I'm confused on which language I should use. I've read some comparisons
between the major languages and I was thinking that python might be the way
to go for the most powerful and general language but I am not sure. Does
anyone know of any detailed and objective comparisons between the major
languages(perl, php, java, javascript, etc...) that might help me get a
clearer picture?

I have some experience with C/C++ but it has been some time since I have
done any real programming... I'd prefer to use C++ style so I would no thave
to learn a new language completely. I've also read that one can use C/C++
to develop just as one would use any other language and I'm wondering if
this is advisable? (since it seems most web pages are done in perl, python,
or php?)

Also, can anyone recommend any book or web page that gives an introduction
to the method in which one programs web sites? I am not clear on who one,
for instance, would use C++ as the language for a web site except by using
it to create html... I'm not sure if basicaly all languages goal is creating
html dynamically or if there is more to do. What I mean is that basicaly
one is using some other language to wrap the html code or possibly generate
it at run-time for dynamic results. (so all client based web interfaces are
really just html readers but all this "extra" stuff is used to make certain
things easier and dynamic(just as generating tables and forms and all that).

Thanks for any help,
Jon

Search Discussions

  • Peter Hansen at Jun 11, 2005 at 1:36 pm

    Jon Slaughter wrote:
    I'm trying to get into web development for creating a professional web site
    and I'm confused on which language I should use. I've read some comparisons
    between the major languages and I was thinking that python might be the way
    to go for the most powerful and general language but I am not sure.
    If you are really interested in the "most powerful and general", then
    Python is one of only perhaps several options. I wouldn't bother
    counting something like C++ in the mix, personally... I'd say doing web
    development with C++ would warrant a quick visit from those nice, young
    men in their clean, white coats.

    Perhaps the following pages will be of some assistance, not directly in
    comparing Python with something else, but with giving the flavour (and,
    unfortunate or not, diversity!) of Python approaches:

    http://www.fredshack.com/docs/pythonweb.html
    http://www.boddie.org.uk/python/web_frameworks.html

    Michelle Levesque has been comparing several of the most popular in a
    "bakeoff" at http://pyre.third-bit.com/pyweb/index.html .
    Does
    anyone know of any detailed and objective comparisons between the major
    languages(perl, php, java, javascript, etc...) that might help me get a
    clearer picture?
    No, sorry. I can say, however, that if you want "general purpose" you
    do not want PHP. In fact, if you're a real programmer you probably
    don't want PHP. Perl... well, enough has been written about the
    unreadability of Perl code and the number of ways its arbitrariness can
    get you into trouble that I'm not going to waste time adding to it.
    Javascript shouldn't be considered a serious contender for the
    server-side stuff, though you will quite likely _require_ it for the
    client side stuff, so keep it in mind but try to minimize your use of it
    and postpone it as long as you can. (It's not actually that bad a
    language in many ways, and even has a bit of the same flavour as Python
    from time to time, in its dynamic nature.) Java? Well, a large number
    of us here (me included) have spent a fair bit of time with Java and,
    well, we're here now. (Really, Java is likely a much better candidate
    than C++ for many reasons. If you are down to a choice of two to make,
    I suspect it will be between Java and Python, or perhaps Ruby thrown
    into the mix.)
    Also, can anyone recommend any book or web page that gives an introduction
    to the method in which one programs web sites? I am not clear on who one,
    for instance, would use C++ as the language for a web site except by using
    it to create html... I'm not sure if basicaly all languages goal is creating
    html dynamically or if there is more to do. What I mean is that basicaly
    one is using some other language to wrap the html code or possibly generate
    it at run-time for dynamic results. (so all client based web interfaces are
    really just html readers but all this "extra" stuff is used to make certain
    things easier and dynamic(just as generating tables and forms and all that).
    That's not a particular bad description. You're really starting from
    scratch here, aren't you? <grin> My advice, since you have such a long
    way to travel, is to use an "agile" approach and start with some small
    subset of your overall requirements, the most critical/valuable part,
    and pick any of the favourite Python frameworks and see how far you can
    get. If you like the way it went, pick the next most valuable part and
    then do it. (Keep these down to only a day or two of programming or
    you'll get bogged down.) The "PyWebOff" page above is actually an
    excellent demonstration of the approach you should take, and it's
    already been done by someone else for three or four different frameworks!

    -Peter
  • Brian at Jun 11, 2005 at 1:58 pm
    Hi Jon,

    Yes, there are a variety of tutorials on the Internet that can help you
    learning how to use Python with the web. Two of the best ones you can
    get for free by clicking on the link below.


    1) http://www.devshed.com/c/a/Python/Writing-CGI-Programs-in-Python/
    2) http://www.devshed.com/c/a/Python/Python-on-the-Web/


    However, in order to understand the tutorials above, it is important to
    first have a basic understanding of the Python programming language.
    Python is not hard to learn, but it might take you a few hours to learn
    it, if you have not done so already.

    1) http://www.greenteapress.com/thinkpython/
    2) http://www.devshed.com/c/a/Python/


    Hope this helps,
    Brian :-)
    ---




    Jon Slaughter wrote:
    I'm trying to get into web development for creating a professional web site
    and I'm confused on which language I should use. I've read some comparisons
    between the major languages and I was thinking that python might be the way
    to go for the most powerful and general language but I am not sure. Does
    anyone know of any detailed and objective comparisons between the major
    languages(perl, php, java, javascript, etc...) that might help me get a
    clearer picture?

    I have some experience with C/C++ but it has been some time since I have
    done any real programming... I'd prefer to use C++ style so I would no thave
    to learn a new language completely. I've also read that one can use C/C++
    to develop just as one would use any other language and I'm wondering if
    this is advisable? (since it seems most web pages are done in perl, python,
    or php?)

    Also, can anyone recommend any book or web page that gives an introduction
    to the method in which one programs web sites? I am not clear on who one,
    for instance, would use C++ as the language for a web site except by using
    it to create html... I'm not sure if basicaly all languages goal is creating
    html dynamically or if there is more to do. What I mean is that basicaly
    one is using some other language to wrap the html code or possibly generate
    it at run-time for dynamic results. (so all client based web interfaces are
    really just html readers but all this "extra" stuff is used to make certain
    things easier and dynamic(just as generating tables and forms and all that).

    Thanks for any help,
    Jon
  • Stefan Nobis at Jun 11, 2005 at 2:42 pm

    "Jon Slaughter" <Jon_Slaughter at Hotmail.com> writes:

    Does anyone know of any detailed and objective comparisons
    between the major languages(perl, php, java, javascript, etc...)
    that might help me get a clearer picture?
    I don't know of any (really good) comparisions, but anyway here
    are my opinion:

    Don't look only at something someone calls "major language". The
    not-so-well-known one may offer you quite some nice extras.

    If you have to deal with medium to complex application give
    continuation based approches (Seaside (Smalltalk), PLT/Scheme,
    Cocoon (Java), UncommonWeb (Common Lisp) and others; to get an
    idea look at http://lisp.tech.coop/Web/Continuation ).

    What language do i seem interesting to look at for web
    development? Hmmm... let's see (listing in random order):

    - Common Lisp (my personal favorite)
    - Scheme (PLT/Scheme, Bigloo,...)
    - Scala (http://scala.epfl.ch/)
    - Nice (http://nice.sourceforge.net/)
    - Squeak (http://www.squeak.org/index.html)
    - Python

    Scala and Nice compiles to Java-Bytecode and you have access to
    the complete Java-World (AFAIK there are such JVM-Compilers for
    Common Lisp and some Scheme, too and there is JPython).

    I don't like Perl syntax much, so it's not on the list, and PHP is
    a rather chaotic language with (personal view!) at least a couple
    of new security issues eacht month, so it's the worst choice one
    can make (i think).

    Hope that helps a little bit.

    --
    Stefan.
  • D H at Jun 11, 2005 at 3:26 pm

    Jon Slaughter wrote:
    I'm trying to get into web development for creating a professional web site
    and I'm confused on which language I should use. I've read some comparisons
    between the major languages and I was thinking that python might be the way
    to go for the most powerful and general language but I am not sure. Does
    anyone know of any detailed and objective comparisons between the major
    languages(perl, php, java, javascript, etc...) that might help me get a
    clearer picture?
    The one that is most popular and has by far the most open source example
    applications out there is PHP (plus MySQL for databases). It's been
    that way for many years now. It is also much cheaper and easier to find
    PHP/MySQL hosting. Search sourceforge.net for many example PHP web
    applications.

    I hope you realize that by posting your question on the Python newsgroup
    instead of a general web development newgroup, you're going to get
    extremely biased answers. If you do go with Python, check out the
    mod_python module for the Apache web server.
  • Mike Meyer at Jun 11, 2005 at 8:08 pm

    "Jon Slaughter" <Jon_Slaughter at Hotmail.com> writes:

    Also, can anyone recommend any book or web page that gives an introduction
    to the method in which one programs web sites? I am not clear on who one,
    for instance, would use C++ as the language for a web site except by using
    it to create html... I'm not sure if basicaly all languages goal is creating
    html dynamically or if there is more to do. What I mean is that basicaly
    one is using some other language to wrap the html code or possibly generate
    it at run-time for dynamic results. (so all client based web interfaces are
    really just html readers but all this "extra" stuff is used to make certain
    things easier and dynamic(just as generating tables and forms and all that).
    That's one way to look at it.

    Personally, I prefer to think of HTML as the "UI toolkit" for web
    development. It's more like CLI code that GUI code, in that you have
    three distinct phases of "process, display, await response" rather
    than waiting for UI events which trigger data processing and a display
    update.

    As such, you can use pretty much any language that can connect to the
    toolkit. CGI is pretty low-level, and pretty much anything can be
    used. C++ and Java both certainly get used. Others have mentioned LISP
    variants. I've used the shell and Rexx. These days, I prefer Python,
    but that's what you'd expect from somene reading c.l.python. Anything
    you're comfortable with should work. In particular, since the user is
    going to spend time waiting on network delays, any performance issues
    the language implementation may have will be negligible for a single
    user.

    Someone mentioned that you might "require JavaScript on the client
    side". I recommend against that - people and organizations disable
    JavaScript for security reasons, and browsers on portable devices may
    not have JavaScript at all. Why limit your audience? If you understand
    HTML, it's possible to write a web page that uses JavaScript (or any
    other such technology) for flashy effects, but still functions
    properly if the user has disabled JavaScript, or doesn't have it
    available. But that's a long discussion - see <URL:
    http://www.mired.org/home/mwm/papers.green.html > for more
    information.


    <mike
    --
    Mike Meyer <mwm at mired.org> http://www.mired.org/home/mwm/
    Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.
  • John Roth at Jun 11, 2005 at 9:29 pm
    "Mike Meyer" <mwm at mired.org> wrote in message
    news:86br6c4pwp.fsf at guru.mired.org...
    "Jon Slaughter" <Jon_Slaughter at Hotmail.com> writes:


    Someone mentioned that you might "require JavaScript on the client
    side". I recommend against that - people and organizations disable
    JavaScript for security reasons, and browsers on portable devices may
    not have JavaScript at all. Why limit your audience? If you understand
    HTML, it's possible to write a web page that uses JavaScript (or any
    other such technology) for flashy effects, but still functions
    properly if the user has disabled JavaScript, or doesn't have it
    available. But that's a long discussion - see <URL:
    http://www.mired.org/home/mwm/papers.green.html > for more
    information.
    I would have said that at one time, but then the world changed
    with AJAX, expecially with Google using very script heavy applications
    for all of their new work. It leads to very responsive web applications.

    John Roth

    <mike
    --
    Mike Meyer <mwm at mired.org> http://www.mired.org/home/mwm/
    Independent WWW/Perforce/FreeBSD/Unix consultant, email for more
    information.
  • Mike Meyer at Jun 12, 2005 at 9:26 am

    "John Roth" <newsgroups at jhrothjr.com> writes:
    "Mike Meyer" <mwm at mired.org> wrote in message
    news:86br6c4pwp.fsf at guru.mired.org...
    "Jon Slaughter" <Jon_Slaughter at Hotmail.com> writes:

    Someone mentioned that you might "require JavaScript on the client
    side". I recommend against that - people and organizations disable
    JavaScript for security reasons, and browsers on portable devices may
    not have JavaScript at all. Why limit your audience? If you understand
    HTML, it's possible to write a web page that uses JavaScript (or any
    other such technology) for flashy effects, but still functions
    properly if the user has disabled JavaScript, or doesn't have it
    available. But that's a long discussion - see <URL:
    http://www.mired.org/home/mwm/papers.green.html > for more
    information.
    I would have said that at one time, but then the world changed
    with AJAX, expecially with Google using very script heavy applications
    for all of their new work. It leads to very responsive web applications.
    Actually, AJAX just makes the case for wanting JavaScript turned on
    stronger - it doesn't change the fundamental facts of what's going
    on. People/organization will still turn off JavaScript because it
    represents a security risk. Low-end network devices will still have
    browsers that can't do JavaScript. You can still either code your
    pages to alienate such users, or you can provide them with the same
    basic functionality as they'd get if they had JavaScript, except it
    won't be as responsive/flashy as it would be if they did.

    Try Googles new work with JavaScript turned off. You'll find that a
    lot of the new stuff works fine without it, thought it may not be as
    spiffy. For those that don't, they warn the user that it won't work,
    which means they are doing better than 90% of the sites that require
    JavaScript on the web.

    <mike
    --
    Mike Meyer <mwm at mired.org> http://www.mired.org/home/mwm/
    Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedJun 11, '05 at 6:22a
activeJun 12, '05 at 9:26a
posts8
users7
websitepython.org

People

Translate

site design / logo © 2022 Grokbase