

Ask YC: Whats better than AJAX? - mattrogers1

What will be the most common web application framework for the next ten years.  I'm just getting started in the industry and plan to put in my time.  I want to do some indepth study and have been visiting the usual channels that discuss "the best" languages. Given that you YC folks are in the eye of the storm I thought to ask you. Best,
======
brianmckenzie
If you'd asked this question ten years ago, the 'answer' would have been Java
applets. Yeah.

Unless web browsers somehow become obsolete in the next ten years, you're
looking at an evolved version of what we have now. HTTP, CSS, XHTML, and JS
have plenty of room for improvement. It takes years for the standards to be
worked out and longer for browser support, which is never 100%. Add a few more
years for developers to take full advantage of the new capabilities.

What we'll have in ten years will be another iteration or two on what we have
now.

------
ratsbane
This (<http://gears.google.com/>) has a lot of potential. But only time will
tell what new technology really makes a difference.

Trying to figure out what is the best technology and then learning that is a
great goal but I think it's more important to learn a variety of technologies
and be ready to adapt quickly to new things.

Learn HTML, the document object model, and Javascript (while those do change
the change is slow because of the huge installed base.) Unix is going to be
relevant for a long time. Relational databases have been around since the
beginning of time (Jan 1, 1970) and aren't going away any time soon. If you're
good with the fundamentals then you'll be able to adapt to anything else.

------
lsb
Odysseus is better than Ajax.

------
cstejerean
Well, if I was to predict the future I would say that we will see new browser
architectures that will allow new types of code to be written that are not
currently possible. I think web browsers will be more like a VM that can run
any kind of code compiled to them instead of being forced to render only HTML
and JavaScript. I would take a look at the things about web development that
people currently complain about and would venture to say that some smart
people will get together and address them.

~~~
aheilbut
That sounds eerily reminiscent of Java applets.

~~~
cstejerean
Perhaps, if it wasn't for the screwed up security model that prevented you
from doing a lot of the exact same thing that the browser prevented you from
doing (for "security" reasons), the fact that most java applets had a UI that
looked like shit, and that you had to write it in Java. I'm thinking more like
improvements uppon Adobe's AIR platform.

------
davidw
People here are smart, but smart doesn't mean they can predict the future with
any degree of accuracy.

~~~
ambiversive
Yet..

------
eusman
AJAX is not a framework, others build theirs based on it. Anyway, it will be
hot for at least 5 years so it doesn't really matter what will replace it.

Until then, the next version of XMLHttpRequest should somehow provide a way
for the server to send a request to the client, not needinng the client to
make requests all the time...

Or maybe you should be asking what will replace or make better the DOM?

------
nostrademons
Probably something that hasn't been invented yet.

------
izak30
If I had to guess what would be big, I would guess that it could be some sort
of push technology [read: not http in its current form] Currently it's
difficult to create efficient multi-user systems on low bandwidth and high
data rates, with RSS clients pinging servers every three minutes to check for
new content and ajax calls every three seconds to check page changes and do
autosaves, etc, that is a lot of undue stress on a server. Developers will
start packing as much data into a single packet as possible, doing micro-
optimizations, while somebody else is going to come along and re-desgin the
protocol. It could still use XML and Javascript in general, with some other
methods to accept data pushed from the application server(s) [bittorrent
anyone?], and not the other way around. It could be huge...but alas, doesn't
exist yet.

~~~
boucher
Well, this might be true. But, polling every three seconds to see if your page
has changed is just bad practice. There's plenty of discussion out there on
the web on how to do this better.

------
icey
If you really want to prepare for the next 10 years, you're wasting your time
trying to pick a framework. In essence, you'd be gambling that your pick is
the right pick. Frankly, if you really think you can do that; you ought to be
buying stocks and not picking languages.

Instead, what you should be doing is learning how to be an excellent
technology generalist. Get a solid foundation in the "Basics" of the web.
Learn a scripting language that runs on the server, learn javascript, learn
CSS & HTML. The most important thing is to figure out how you pick up new
languages, because if you work on the web, you're going to be doing a LOT of
picking up new languages and technologies.

Not putting your eggs in one basket is a very apt analogy to how to best
prepare for a career on the web.

------
jsjenkins168
If Adobe AIR and Microsoft Silverlight continue to gain traction then they
could begin to replace AJAX-style implementations for feature-rich web sites.

The key word here is _could_.

~~~
jkush
Ok. This comment will be a little over the top, but here goes. I'm actually
getting sick of how MS releases products. I never used to care enough to think
that having everything under the sun covered was a problem. I think in the
end, Microsoft's enormous technology and feature base will be what does them
in.

To use Silverlight as an example, I think it sucks. It's bloated and I don't
get it. I'm tired of playing catch up with MS technologies and all the
freaking featues they pack into them. I mean: ASP.NET. ASP.NET AJAX VB.NET
3.0, LINQ, F#, C#, J# (being retired), VBScript, VS 2003, VS 2005, VS Team
Foundation, Windows Workflow, Windows Communication Foundation and Windows
Presentation Foundation. Seriously?

Windows Workflow in particular is extraordinarily huge. If keeping a program
in one's head is important (and it is), then it's not going to happen with
Windows Workflow. As I get more comfortable knowing what I want to code and
how I want to code it, I'm finding myself just wanting to use stuff that gets
it done in the path that is the most natural to me.

Silverlight? No, thanks.

~~~
agotterer
From what I have read silverlight is actually the opposite of what you said.
Granted I dont know if its all true, only regurgitating what I have researched
and read. It's actually not that bloated and is supposed to run javascript
about a 1000 time faster since its compiled and not interpreted. It will be
interesting to see how it develops and competes with flash.

I agree that keeping up with the many languages is difficult. But it's
necessary if you want to be the best and on top of the game. Test drive a lot
of different languages and pick the one that meets your needs and feels most
comfortable. Sometimes driving more then one language is the best option.

We could argue until we are all blue in the face about what the best language
is and what the next "big one" will be. I wouldn't focus as much on the
language in 10 years, no one is looking to utilize that today. The future is
important (as many get rich making it) but keep in mind a lot of companies
that have been ahead of there time got bit in the ass from it.

~~~
cstejerean
I'm not familiar with silverlight but if it's not cross platform (does it run
on my Linux box) it's bound to loose. One of the advantages of building web
applications is that people on any platform (pretty much) can run your
application. Microsoft has been trying to maintain their Windows desktop
monopoly by pushing technologies to write websites that only work with
Windows/IE. Once again I don't know if SilverLight suffers from this but
knowing Microsoft I would guess it does.

~~~
jsjenkins168
Microsoft has been untraditional in their ways with Silverlight by developing
and openly promoting cross platform versions of it. I know there is an OSX
version and I think a Linux version is in the works.

They must realize that the only way they will gain acceptance amongst hackers
is to convince them that Silverlight is not a traditional MSFT product. A few
months ago they were kissing ass to Arrington and a few others trying leave
positive impressions about the platform and convince everyone of its openness.

But they may already be in trouble because AIR seems to have an edge in early
adoption so far. Pownce is written in AIR for example.

It'll be interesting to see how things play out. There is a huge need for
certain features of Silverlight and AIR (like local file system access and a
network API), but I dont know if those will be compelling enough to drive
either of these to "critical mass".

------
mattmaroon
Flex, undoubtedly, for more involved stuff.

------
adrianwaj
I would look at <http://www.symfony-project.com/> \- the PHP framework
del.icio.us is being rewritten in

and

<http://junctionphp.com/> \- Junction: a PHP 5 object persistence layer

------
goofygrin
I've actually grown weary of the whole browser/css/javscript crap that I have
to deal with to make things work... I've been playing with Flex lately. It's a
step back in some ways, but it is nice in others. Feels more like thick client
development than thin client.

~~~
tocomment
How so a step back?

~~~
goofygrin
Really a lot of my pain is the IDE (eclipe is a step back from something like
VS.NET 2k5 with Resharper, come on ctrl-tab doesn't work!), but some of the
things feel half baked (if you are doing "code behind" components, you have to
name them different things since there's no concept of partial classes or even
files with the same name, but different extensions (mostly because the .mxml
is compiled to .as3 with the same file name I think)).

You end up having to write a lot of custom controls simply because the ones
built in are great for rapid POC type stuff, but aren't necessarily what you
want for your "real" app. Then you're just trading one set of community
developed stuff for another.

I also looked at OpenLazslo and it's pretty neat, although it's lack of IDE,
community support and the fact that it's stuff crashed my system a bunch
(nothing like having to install tomcat on a vista box) turned me off (the ol
site was down while I was testing it, and has been down numerous times when
I've been demoing it, so that's a huge problem).

------
Hexayurt
SVG with JavaScript on both client and server and code migration.

------
jkush
Comet.

------
edw519
It doesn't matter. Really. Just do something. Anything. What you learn (about
everything) from the doing will be way more important than any (temporary)
technical skills you acquire.

~~~
goofygrin
Yes, instead of prognosticating, do something. The domain and business
experience are more important than the hacking stuff you learn (come on, you
don't want to be a hacker in 10 years anyway, do you?)

------
aandreev
Not-AJAX.

------
DanielBMarkham
XJAX

------
sanj
flash

