Best Web dev language

J

Jon Slaughter

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
 
P

Peter Hansen

Jon said:
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
 
B

Brian

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 :)
 
S

Stefan Nobis

Jon Slaughter said:
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.
 
D

D H

Jon said:
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.
 
M

Mike Meyer

Jon Slaughter said:
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
 
J

John Roth

Mike Meyer said:
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
 
M

Mike Meyer

John Roth said:
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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,981
Messages
2,570,187
Members
46,730
Latest member
AudryNolan

Latest Threads

Top