views:

217

answers:

9

So, there are several languages which will allow you to create a website, as long as you configure the server(s) well enough.

To my knowledge, there is:

  • PHP
  • ASP.NET
  • Ruby(on rails, what is that all about?)

And thusly, my knowledge is limited. Ruby and ASP, I've only heard of, never worked with. If there are other languages, I suppose they have some way to make files containing the needed html. It would then suffice to add a line to the Apache config to associate the file-extension.

And if other languages: are there any notable characteristics about the one(s) you mention?

+1  A: 

Python has a 3rd party module CherryPy which can be used with or without a http server.

Silvanus
CherryPy is just one of many options for Python Web Programming: http://wiki.python.org/moin/WebFrameworks
Mark Byers
+1  A: 

Amongst others: Erlang (YAWS, Mochiweb), Python

jldupont
+3  A: 

How can you forget Java ? :)

j2ee, jsp, tons of frameworks!
verhogen
+3  A: 

Python

It runs on Windows, Linux/Unix, Mac OS X, and has been ported to the Java and .NET virtual machines.

Python is a perfect scripting language for web applications, e.g. via mod_python for the Apache web server. With Web Server Gateway Interface a standard API has been developed to facilitate these applications. Web application frameworks or application servers like Django, Pylons, TurboGears, web2py and Zope support developers in the design and maintenance of complex applications. Around libraries like NumPy, Scipy and Matplotlib, Python is a standard in scientific computing.

Among the users of Python are YouTube and the original BitTorrent client. Large organizations that make use of Python include Google, Yahoo!, CERN, NASA,and ITA.

psihodelia
These organizations they use every single technology. Python is just one them.
+3  A: 

This could be for your interest.

Virtually thru CGI all programming languages that produce output may use for web page generation.

PeterMmm
A: 

JSP has the advantage that it automatically wraps your code in a servlet, compiles that to bytecodes, then uses the just-in-time Java compiler to recompile critical sections into native object code. Not aware of any alternative which allows optimizes your work automatically in this way.

Also allows you to develop and deploy on any combination of Windows, Mac OS X, or Linux.

ewg
+4  A: 

Basically, you can use any language (if you are hosting your own server)

Very closely related and very interesting is this article where LISP has been used to build a very succesfull website.

Peter
A: 

If you'd like to choose one for the beginning, you should check out PHP first. It gives you the basic clues about how dynamic sites work in general.

After you've become familiar with the basics, I recommend ASP.NET.

Fist off, you should know that ASP.NET is a technology and not a language. (It actually supports any language that can be used on the .NET platform.) Also it is not to be confused with classic ASP. (The old ASP was much more like PHP.)

ASP.NET is very easy to begin with, and after you have some clues about its concepts, you can always dig deeper and customize everything in it. The http://asp.net site is a very good starting point, if you are to learn it. I think it is really worth the effort, because even if you choose not to stick to it, it will give you some interesting ideas and concepts.

I tell you its most important advantages:

  • The code is compiled (and NOT interpreted like PHP), and it has a very good performance. (In a performace comparsion, it is 10-15 times faster. http://www.misfitgeek.com/pages/Perf%5FStat%5F0809.htm)
  • It can be run on Windows without effort, and on Linux / Mac / etc using the Mono project.
  • It implements the Separation of Concerns principle very well.
  • It has most of the general functionality you'll need built-in. (Such as membership, roles, database management, and so on.)
Venemo
+4  A: 

ANY language can be use to make a dynamic website - you could do it in COBOL or FORTRAN if you were twisted enough. Back in the olden days (about 10 years ago) most dynamic websites were done with CGI scripts - all you needed was a program that could read data from standard input and write data (usually HTML) to standard output.

Most modern languages have libraries and frameworks to make it easier. As well as the languages you have already mentioned, Java, C# and Python are probably the most common in use today. Typically a web framework will have:

  • a way of mapping URLs to a class or function to handle the request

  • a mechanism for extracting data from a request and converting it into an easy to use form

  • a template system to easily create HTML by filling in the blanks

  • an easy way to access a database, such as an ORM

  • mechanisms to handle caching, redirections, errors etc

You can find a comparison of popular web frameworks on wikipedia.

Dave Kirby