AJAX, Echo, .NET - What Impact Have They Had?
BjB asks: "We've talked about platform neutral frameworks for years, but with the recent story about AJAX threatening the desktop, it made me think about the hype around two frameworks that were supposed to bring applications to the browser: Microsoft .NET and the Java competitor Echo framework. Both technologies boast that you can write a desktop application that can also easily be exported as an identical web-based application. I know a lot of developers hailed the .NET framework as a major innovation and jumped on board. The Echo framework was the counter-attack that leveled the field. Now, over two years later, I don't think I've ever seen anything that leverages either one? Was this a short lived battle with nobody reaping the rewards, or has it actually made some in-roads?"
*cough* vaporware *cough* .NET
- Me circa two years ago, in regards to
When you're afraid to download music illegally in your own home, then the terrorists have won!
Is that other's experience that these things are currently just used in house where .NET is widely deployed? Can we expect to see them being exported to the unwashed masses in the future?
Or monster it. Monster.com hit count on .Net is "more than 1000," Echo yields 328. I'd say that means both are being used.
.Net gigs I see are for corporate intranet sites, though quite a few are for web based applications.
Most
Saying Android is a family of phones is akin to saying Linux is a family of PCs.
At least with .NET, it's still dependant on IE being used as the browser. (When we're talking easy porting of a windows .NET app to a web app)
Ajax is completely different. It is a loose framework of standards available in the most widely used browsers.
That is why we're actually seeing complex web applications now, because it is viable to deploy to your customer base without pissing off a good chunk of them.
Get off the net though and there have been rich web applications built for IE on intranets for a long long time now. They just aren't viable for a publicly accessible website.
No Comment.
The main impact of Echo seems to be that when I try to go to the web site, it crashes Firefox on Linux. Nice.
I guess that's what I get for trying to RTFA.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
Comment removed based on user account deletion
My old employer makes a software product which has 4 parts:
.Net so the business logic code could be shared between all 4-5 of their applications. Before that any time there was a change in how the software worked it had to be changed across all products, which greatly increased the chances of adding bugs, took more time, etc.
.Net code meta tags, and application assembly also helped greatly in creating an easy to use AJAX framework.
Management Software running on Windows
Web version of the management software
End user/client software on Windows, and PDAs
End user/client software in a web browser, and WAP
They moved to
The
After a handfull of .Net projects...
ASP.NET may be great for the smallest of projects or usable for large corporate enterprise apps, but there really isn't much middle ground to scale your designs. So I think you'll end up with a lot of poorly designed apps on this platform IMHO, because you have to be an expert OO wiz or wrestle with the VS designer (a total dead-ender). This isn't helped by the horrible docs (LosFormatter anyone). The docs give only the most trivial examples and they obviously weren't written by anyone who ever had to actually use the platform. Also, where do dynamically typed languages fit in the picture. Sure I can use C#, C++, VB.NET, but where's my perl, python and ruby dot net (and I don't mean editor support)?
The company I work for develops almost exclusively* in .NET. For years now we've developed a massive web application for managing data across the nation between hundreds of entities. We've been moving this application over to ASP.NET over time (re-implementing exiting features in .NET and coding all new features in .NET). This isn't a "public" website perse, as you have to be working for one of our clients to get to it, but it is used by thousands of users within those clients. We've architected it in such a way that we not only have a web front end, but we have Handhelds and Web Services that interact with it as well, all through .NET and all completely integrated (with the exception, of course, of functionality that hasn't been converted to .NET yet).
.NET doesn't fit everything. We still use C++ for some projects simply because they don't need and can't have the framework installed to support a .NET App. And we still maintain a ton of VB/ASP code, though we're happily converting it to .NET as fast as resources allow.
The only thing that is keeping us from moving to 2.0 is waiting for a set of core tools we use to be ported. After those tools are ported, we'll be converting everything in 1.1 to 2.0 and start developing exclusively in 2.0.
* Almost because
- AMW
I'm currently in the process of rewriting an internal business management app in C#. The original is written in VB6. This was all my idea, and I'm a big Linux freak. Why? Well, several reasons.
.NET.
.NET version is going. There are a few design decisions I don't like much, like an annoying abundance of sealed classes, but the problems are nothing compared with the vast amounts of crap in VB, so the switch is still bringing a major improvement.
The original program started simple. Then it started growing. It's got a fairly complex security system, grew quite large, and evolved over many years. Some of the underlying database design is pretty bad, and fixing it will require very large changes to those parts of the application anyway, so I might as well write it in a better language this time.
The added complexity now makes it so that VB is very inconvenient, and not only because MS is dropping support. Some features are much more elegantly integrated in an OO language, and I have to deal with pretty weird requirements, like making a Windows program work more like their ancient DOS program, which nobody even remembers anymore. People ask me for things like making text boxes change their background color when they have focus, and that's trivial to do in
The last reason is that I'm betting on Mono. I'm hoping to be able to run at least parts of it on Linux. Might not work out in the end, but it's still a lot more likely to work than doing the same with a VB app.
Overall, I like how the
As a matter of fact, that's what's being used now at the Harris County District Clerk's Office. The entire document imaging/indexing system is .Net based.
Saying Android is a family of phones is akin to saying Linux is a family of PCs.
AJAX is by far the closest thing to making a browser behave like a desktop app. But, I don't think that it will threaten the desktop itself any more than applets were supposed to back in the late 1990s.
I don't think a full AJAX app wouldn't meet all the guidelines of an accessible website. A small population needs to have web accessible apps (there are three people in my department of 200 that use braille browsers) in order to be able to do their work. I have a hard time believing that an AJAX site would fully meet their needs.
Now, that's not to say it can't be done. An accessible site can be built on top of an AJAX site and conversely. But it depends on the developer who takes the time to plan that part of his/her site.
Furthermore, I expect that there will be more AJAX sites out there. I don't expect that the SCTs and PeopleSofts of the world will be rushing to implement that functionality in their web packages (ever heard the story of the visually impared guy who tried to use his browser to do what is otherwise a 5 minute task in PeopleSoft? it took him 35 minutes or so--PeopleSoft since has allegedly addressed their html to make it more accessible).
Bottom line: sites should be planned to be accessible. It's a hinderance to me (I'd like to do our site in AJAX entirely but I can't) but it's the most fair for everyone.
GOBACK.
A bunch of developers caught sick with Mono, and everything got set back a few months, at least.
Go on, ask them who they've been kissing up to, so to speak...
.Net is the new Visual Basic
Java is the new COBOL
Perl, PHP and Python are the new LISP
C is the new C (with or without the post-increment operator)
AJAX is too obvious to deserve a name (except perhaps "Javascript").
I can say that it is an amazing tool, with it's own limitations.
One of the greatest features though is it's combination of rapid application development (ala VB6) and fully Object Oriented design patterns (ala C++). This results in the ability to quickly create modules and reuse them extensively.
For example, we spent 4-6 months working on a framework, interface and logic for a windows based lease reporting tool. In that framework, we developed our data layer, which completely abstracts the database, and data related functions, from the rest of the code. The next project on the chopping block was a web based employee tracking program. Since we already had the employee data object built, it was just a matter of pulling them, and some related business objects into the web project. Total development time: 2 weeks. By using an OO designed N-teir framework developers can reduce development time (after the initial framework), reduce bugs, reduce redundant code, improve maintenance, etc.
-Rick
"Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
I suppose they ran out of meaningful questions that contain the "Ajax" term, but they still need to maintain constant fire to keep the term fresh in our minds.
If this technique is successful, and all signs point to "yes", expect to see more development houses coin new terms for existing technology, to be remembered as the "inventors" of said technology.
Echo and .Net are From-based web apps. Every click / button push results in a form being submitted to the server, and the whole page being re-drawn. This is no different than any other form of web development done for the past 15 years, the only benefit is ease of development or deployment on the server side.
AJAX (or whatever other name you want to give to this remoting method) is not like this. It uses the XMLHttpRequest object to submit and fetch data to/from the server without requiring a new page load, and manipulates the page using the DOM to render the results.
This results in a much smoother experience for the end user, but it usually requires quite a large shift away from the old paradigm - for example, AJAX and Stuts do not mix well. So if you have a large web app already written in Struts, and want to AJAX-ify a few parts of it to give a better UI, it can be more trouble than it is worth (it requires totally re-thinking how you do input validation, for example).
Notice how most of the posts are along the lines of "we're in the middle of upgrading from VB to .Net" or "we're currently porting all our apps from C++ to .Net" or "we're currently upgrading everything to .Net".
Here's a hint: Microsoft LOVES you guys. People who jump on the upgrade bandwagon even BEFORE they declare your old gear obsolete.
How about things, instead, like C, or Java, Perl?
I want to delete my account but Slashdot doesn't allow it.
I looked at Echo; it sucked horribly on non-Windows platforms, which for a cross-platform technology meant that it sucked horribly.
I always classify my work on the web into two areas:
.NET and write internal applications that are tested only for IE6. Not to say they won't work in other browsers, I always load it and have a look in FireFox, but my schedule really don't give me any time for testing other browsers which I don't plan to support, and supporting every browser known to mankind isn't exactly a fun event nor does it pay $).
"Web Applications" or "Web Sites".
Web Applications are created for a particular purpose, often may be replacing an intranet program that the company is using. Usually, the best argument for creating an intranet application is because of the ease of deployment. I've tried deploying 'normal applications' across different batches of computers with different specs and operating systems, or even in different cities. Intranet applications is just much more simpler. Usually, you can force people to use a particular browser as well. This is after all an internal application that doesn't need cross-browser compatibility.
(Ok, with fire-resist at 250 and using fireward, I should be safe from flames. I use
My other type of work are Web Sites that are created for general public. Usually to sell a product or promote an event or service. With this type of work, I go down to the bare essentials. Stick with strict HTML, limit Javascript, use tables for layout instead of DIV.
Don't do too many fancy stuff with style sheets. This is the 'lowest common denominator'. The goals is that even users of Netscape 4.0 or Lynx could see it look decent or neat.
I think a web applications + web site (like gmail) is a totally different beast. But I think there isn't that many cases where such application is in huge demand yet. So to answer your question, it may be entirely too early to see any of these technologies becoming widespread.
People are excited by AJAX too much in my opinion. As much as I love the technology and am excited by what it can bring, I am equally annoyed by the fact that there's just too many browsers and too many users that don't use the latest stuff.
jliu - johnliu.net
Reason I say this is that no one ports working ASP code to ASP.NET, because it is impossible to port : instead you must rewrite the entire application. The fscking "Migration Wizard" doesn't work, the languages are different, and the objects have different methods and calling sequences in the two frameworks.
IMO the parent is a shill. If he isn't, let him name the application and let him say what the company is.
No, that's not why you make sites accessible. Sorry to go off, but acting out of pity or a fickle sense of what's 'fair' does not justify the cost of creating fully accessible sites.
My bottom line: sites should be planned to be accessible; it's an industry best practice because it directly supports the mission of every website (which is at least partially to make information available and accessible).
Otherwise I think your comments were spot on
"Now, over two years later, I don't think I've ever seen anything that leverages either one?"
For English speakers not fluent in bullshit, this means:
"Now, over two years later, I don't think I've ever seen anything that uses either one."
You're welcome
Tom
I think some columnists like to make wild predictions to garner traffic.
AJAX is an interesting new technique for imporving webpages. I'm not sure how any sane person could logically translate this to "desktop apps and OS's are doomed". I've seen less specualtion and leaps of "reasoning" in National Enquirer articles.
I think if anything AJAX demonstrates the appetite for robust thick clients, hence a local software suite that requires an OS layer. OS's would only be doomed if we were moving towards thinner clients.
- Mainframes (powerful server and many dump terminals)
- Client/Server (smarter clients)
- Dynamic -Server Generated- Web content (which in essence is the Mainframe with a dump display only terminal all over again).
- DHTML/JavaScript (Ajax), back to the client/server model, where the Browser becomes a smarter client again.
For UI based applications DHTML/JavaScript/... is actually quite a nice platform. One has to spend some though, to fully understand JavaScript, that it is a functional language with Lambda functions, closures, prototype inheritance, etc. One also has to understand that Ajax is part of the presentation layer of an application, just like Swing/AWT/SWT.Google, Yahoo, SalesForce, Oracle, Siebel, NetSuite, etc, etc, are using Ajax technologies now; and I think browsers will be getting better at it (at least the open browsers).
Ironically J2SE 5.0 (or 1.5 or whatever) now supports Applets well enough to be quite usable (in part due to Class-Data-Sharing and other speed improvements, and in part due to faster client machines)... A few years too late.
not-so-Surprisingly a discussion on .NET and without a proper definition of the technology on /.!
l _asp.html_ php2.html
> http://www.oracle.com/technology/pub/articles/hul
> http://www.oracle.com/technology/pub/columns/hull
Gist - Comparing it with PHP is not really proper.
I've used .NET in my last 4 jobs...
.NET tools to do IT support. I am already looking at writing code for their use as well, in C# of course.
.NET in a 10 person tech shop, a 75 person warehouse, a 1200 person aviation manufacturer, and a 130000 person defense contractor. Need something quick 'n dirty, but not as obtuse as VB, or as complicated as C? .NET has worked for me.
Job 1: I wrote an Remote Desktop client in VB.NET to access the work VPN faster over a modem (there's settings for the web/RD component that aren't in the standard client), and a dumb little "evolution meter" as my first C# program.
Job 2: I wrote a pricing system in VB.NET to manage store pricing and system build configurations; a final version before I left allowed you to choose some of the parts from lists based on the datafile.
Job 3: I began using C# exclusively and generated a lot of small tools to help me do clerical & maintenence work. I even have a webpage for those apps: "How I Became a SysAdmin"
Job 4: At my new job (with a global defense contractor), I work at a helpdesk where people use a mix of propietary commerical products & in-house
Bottom line: I've seen
Life is irony, and nothing ever goes as planned.
Apart from the spartan few web applications out there than make use of it, AJAX is rarely seen and used, much like CSS2 has only materialized as a standard for a blogger to reduce the size of his or her homepage by removing lots of nested tables.
Almost every major site out there bases their core operations around server side scripts and HTML4, and all the hype in the world doesnt seem to want to change that.