COWS Ajax - Ajax Evolved
nuttzy writes, "COWS Ajax takes over where Ajax leaves off. The web has gone through a great period of experimentation and there is now a dizzying array of frameworks, add-ons, howtos, and books. The common drawback these Ajax aids all fail to overcome is that, even with aids, apps take a long time to create and debug. Many times someone has already created a great tool and you'd really just rather use theirs instead of reinventing it (especially if it's a Google, Yahoo, or other trusted player). Wouldn't it be great to drop in a single line of code to gain a huge amount of functionality that frees you for something else? You can't do that with Ajax, but you can with COWS (Changeable Origin Web Services) Ajax. Now highly interactive third party services like SpellingCow are possible."
Now the web will really mooooove forwards!
Sounds good. Developers should milk it for all its worth.
Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
But if a dev in my team would ask this to implement I would ask a few questions:
- Does it work if the embedded page is offline?
- Does it slow down if the embedded page is under heavy load from somebody else?
- Does it break if some standard/lib/implementation/EULA changes?
- Can we customize it to our GUI?
- In the example given, how does it play with browserspellcheckers like the one coming in FF2.0?
- Why are we paying you if all you do is reuse thirdparty code wich doesnt belong to the company?
You get the idea. Not saying its a bad idea but I have my concerns and so would a lot of managers/devs. At least the ones I have the pleasure to work with.
And there I was, thinking that the common drawback was the lack of accessibility for disabled people and those of us who like to use links or the back button...
Great concept, but unless the server hosting the script has enough bandwidth and CPU to handle the requests or the the embedded script will never run. This will always be the fatal flaw in concepts like this.
Quality Hosting e3 Servers
Next time you release an API, don't tell us "Instead of sorting through the techno-babble, let's just say [whatever]." This phrase immediately engages my bullshit sensors. You've apparently got a nice wrapper around the cross-site problems, just say that. Anyone who understands will be interested, anyone who doesn't won't care either way.
there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
Opps indeed! This comment was spell checked by Firefox 2.0...looks like it works a bit better than SpellingCow!
You have two cows. They eat AJAX and die.
Karma: Excellent (fuck, even in the future moderation doesn't work!)
From the spell checker:
That's so very AJAX.
It really is asking for trouble, once you have third party javascript on your site you are
basically at the mercy of whoever wrote that javascript.
They can do nice stuff, and not so nice stuff with your end users (popups, form content
hijacking and so on).
And possibly lots of stuff that I have not even thought of. Also, they're pretty much
in control of the timing on your site, some browsers do not display the page until all
java script has loaded and if you are loading it from a remote server then you are
basically as slow as that server.
Yay, buzzwords! Ruby on Rails was fun, and now there's COWS Ajax!
What's next, Python on a Plane???
ATLAS also automates AJAX development.
The last part of this video shows an asp.net web page being AJAX enables (although ATLAS is not asp.net specific).
What in the world is that supposed to mean? I implemented a autocomplete search text box in only a few minutes using RoR. It really is that simple. It has a rich interface to create all sorts of ajax effects, useful ones that reduce traffic to/from the server.
Also, debugging is a breeze with the Firebug plugin for firefox; you can see exactly what is getting sent to the server and what is returned.
Moooove along, nothing to see here. (Sorry, couldn't resist)
With anything on the net, you should only be running code from a trusted source. All sorts of nasty things can happen just by visiting a scammers website (XSS+phishing combo attacks and such). Obviously COWS Ajax introduces another layer of concern, but it can be mitigated by running tools/apps from trusted sources only (as I state in the opening blurb). If someone has a vested interest in offering a tool, then that should reduce the odds of a scam. There's a wealth to be gained from 3rd parties... just be smart about which one you bet on ;-)
Wow... a web service based on a cross-site scripting vulnerability.
That's brilliant.
Now third party websites can offer to check my spelling and eavesdrop on my conversations with only one line of code!
I know I'm excited.
-1 Uncomfortable Truth
the echo2 library is an Ajax library which makes web application development as easy as desktop application development; it is an all-Java framework with no need to write even one line of XML/HTML/JSP/other. You can find it here:
http://www.nextapp.com/platform/echo2/echo/
Ouch. Adding a script tag dynamically is old hat in Ajax. See the DOM Based On-Demand Javascript pattern.
n g
In fact, there are a number of project under way that use dynamic script injection to emulate cross-domain XHR. See http://ajaxian.com/archives/jsonp-json-with-paddi
But worse yet, the argument that developing web applications with Ajax is hard is a straw man. Imagine you had to design a desktop GUI by twiddling with the screen bits directly or, worse yet, implementing application logic in the graphics controller. Blech!
That's the situation with Ajax and webapps right now: writing code in the wrong places and at the wrong level of abstraction.
If you want to simplify how you write webapps using Ajax, try a server side framework like Echo2 or ZK. These allow you to write webapps much like a desktop GUI while working in only one language context -- Java on the Server side.
It would not be better to use the browser to show only HTML, extend HTML document oriented tags with application oriented tags, SVG and use a protocol designed for applications not one for download documents? A protocol like X11 but with HTML, DOM nodes and DOM modifications. A stateful protocol without cookies, binary, designed for minimizing the amount of data traffic needed between server and client. The server sends HTML pages and DOM modifications to the client/browser at any moment and the cliente/browser shows the HTML, make the DOM modifications and sends function execution request to the server with user input. Just some ideas
We're looking at the worst kind of "copy and paste coding" here: the kind that can change at any time in the future. If you can't write a spellchecker, and you can't copy one from someplace else, you're going to look mighty stupid when the cow-speller site goes down, and you can't fix it.
Seriously, by doing this, I'm not only trusting this bovine-fixated individual to not only (a) never change his API, (b) always be up, (c) never do evil things with my data, but also (d) actively prevent evil things from being done with my data.
Consider for a moment that you write an email client that "leverages" this technology. In this situation, not only are you handing your logs, you're also potentially passing your customer's email and passwords to this cow-speller.
Bad fucking idea...
Er Galvão Abbott - IT Consultant and Developer
The way you're developing apps has little to do with Ajax, and more with using the correct design... Any half decent application (not just web apps...ANY APPS, aside for very specialized stuff, and even then) should be like that... separating everything so that the front end and the back end (and the data access layer, and the security, and the validation, and...and...and...) are separated, so that you know exactly where any problems are, how to fix them, that fixing them usualy won't break anything else (unless a structural change is made, obviously), and so on.
:)
Its just...the tried, tested and true way of doing thing, ajax or not
If you really want too know what it is all about check http://cows-ajax.sourceforge.net/. From that domain, "Instead of each site owner making their own tools, now a single author can make and distribute a cool tool or service that is easily installed on countless sites with the simple addition of one or two lines of code." It's really for lazy webmasters who want ajax gadgets and gizmos with as little actual ajax as possible. This is done by linking to an external site. You still have to learn the COWS API, but come on. If I wanted to do something with my site, I'd learn how and do it myself. That way I would not be requiring an outside server. I'm sure that's why XmlHttpRequest has the same origin limitation on it. It would force you to create your own applications with your own data. It would force a webmaster to learn.
Funny createSig(Witty remark, Odd reference)
{
return (Funny)remark + (Funny)reference;
}
Looks like SpellingCow was lifted from another project without attribution (http://me.eae.net/archive/2006/09/04/spellingcow/ ). This whole post/project smells fishy.
A new technology which allows developers to just pull together complete applications from pre-fabricated blocks. Where have I heard this before a million times? Can't remember, because all those others stopped being relevant years ago. Why would this be any different?
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
Sure it did. Look how hard gmail sucks.
"I think I am a fallen star. I should wish on myself."