views:

552

answers:

10

For now I'm looking into languages like Haskell and Erlang just for the fun of it, but if I were to take bets, what would you suggest be the language of choice for programming the future web and why?

+2  A: 

It depends. What does your future web look like? How far into the future is it? What kinds of developers do you have access to? Are there any legacy systems that you will have to interact with?

Nathan Feger
A: 

C# (vb.net)

Microsoft is expanding it's web capabilities with the .Net platform and especially silverlight. They now have multiple web technologies which will run off of the IL languages (asp.net, silverlight, WCF, etc).

These are solid web technologies that I believe will be around for a while.

DaveK
+1  A: 

Considering that Google App Engine uses Python, and that there are a lot of Python web frameworks, I guess Python will be a strong contender.

But I sure hope that there will be space for more than one technology to drive to future web.

kigurai
+1  A: 

I don't think there will be one language in the future of the web. In fact, I wouldn't be surprised to see more languages in the future as we will be able to do much more than what is possible today. IMHO, you will have more options depending on what you are trying to accomplish much like the desktop today:

Mainstream Desktop Languages

  • C or C++: Best tools for maximum performance (Closest to the metal if you will)
  • C#, Java, VB, Python, etc.: Best tools for business applications and day to day development
  • Perl, Powershell, etc.: Scripting languages for administration and automation

I believe you are beginning to see some of this today on the web side as Microsoft and Google are building low level languages and frameworks to manage their hosted infrastructure and to power their datacenters. At a higher level, most of us developers will continue to use the languages we know today: ASP.Net, PHP, Ruby, etc.. Client side capabilities and processing will also grow with AJAX, Silverlight, and Flash as well as graphical capabilities. There will be plenty more for us to learn over the next 10 years and probably many more languages and tools which will all address specific and different challenges. But there is little doubt that utility computing is the future of our business.

SaaS Developer
+1  A: 

Well, you have your big 4 currently:

  • PHP
  • Ruby on Rails
  • Java/JSP/EJB/JSF
  • C#/VB.NET/ASP.NET

Python is up and coming with frameworks like Django leading the charge. Google's love of Python will virtually ensure wider adoption in the coming years. So far putting your money on Google is a safe bet. I think Ruby on Rails' main knock is large-scale deployments and stability, and I bet one day they'll release a version of the framework that will suddenly push it over the hump and it will explode into the enterprise market currently dominated by ASP and EJB.

MattC
+1  A: 

I say the right tool for the right job.

What is the "future web" and what characteristics does it have? It's just to vague. Find an application you want to implement and select the right language for that, whether it is Erlang, C# or whatever.

Each has its set of frameworks, design patterns, limits and possibilities. Be smart and use whatever fits the bill. Take into account the competences of your team, what competences you want to develop, the expected lifetime of the system, the maintainability, the readability, the ability to hire new developers, the amount of code, existing libraries, documentation, books etc. Take all this into account and decide what you think is best to use.

Adam Lindberg
+2  A: 

ok, this is bit controversial.

But have any one seen a system with a better response time than Erlang under high load?

This is the key to success on the web.

Flinkman
+4  A: 

We're having a great time -- productive and fun -- writing Web apps in Erlang.

We developed a Web resource server in Erlang that has worked out quite nicely so far.

I don't claim to make any predictions about the language of choice for programming the Web, but we chose Erlang and have been pretty happy about it.

Justin Sheehy
+1  A: 

One of the desingers of Haskell has a new web language: http://groups.inf.ed.ac.uk/links/

Links: Linking Theory to Practice for the Web

Links is a new programming language designed to make web programming easier.

Links eases building modern Ajax-style applications: those with significant client- and server-side components.

A typical, modern web program involves many "tiers": part of the program runs in the web browser, part runs on a web server, and part runs in back-end systems such as a relational database. To create such a program, the programmer must master a myriad of languages: the logic is written in a mixture of Java, Python, and Perl; the presentation in HTML; the GUI behavior in Javascript; and the queries are written in SQL or XQuery. There is no easy way to link these, for example, to be sure that an HTML form or an SQL query produces the type of data that the Java code expects. This problem is called the impedance mismatch problem.

Links eases the impedance mismatch problem by providing a single language for all three tiers. The system generates code for each tier; for instance, translating some code into Javascript for the browser, some into a bytecode for the server, and some into SQL for the database.

Links incorporates proven ideas from other programming languages: database-query support from Kleisli, web-interaction proposals from PLT Scheme, and distributed-computing support from Erlang. On top of this, it adds some new web-centric features of its own.

ja
A: 

matt raible has nice presentation about this at: http://raibledesigns.com/rd/entry/oscon_2008_web_frameworks_of

Ray Tayek