Slashdot Mirror


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."

142 comments

  1. Yay! One more buzzword!!! (nt) by Ruediger · · Score: 0, Troll

    nt

    --
    "...personality goes a long way."
    1. Re:Yay! One more buzzword!!! (nt) by iced_773 · · Score: 5, Funny

      Yay, buzzwords! Ruby on Rails was fun, and now there's COWS Ajax!

      What's next, Python on a Plane???

    2. Re:Yay! One more buzzword!!! (nt) by ShieldW0lf · · Score: 4, Insightful

      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
    3. Re:Yay! One more buzzword!!! (nt) by WilliamSChips · · Score: 0

      I am so sick of this motherfucking Python on this motherfucking Plane!

      --
      Please, for the good of Humanity, vote Obama.
    4. Re:Yay! One more buzzword!!! (nt) by odourpreventer · · Score: 1

      Now, please don't have a cow.

    5. Re:Yay! One more buzzword!!! (nt) by pswar · · Score: 1
      Before writing trashing comments on this toolkit, i thought i write some of my reasons to reject it. There are some fundamental problems with this toolkit.
      1. Server output have to be JS only! Imagine when the server is down, it returns 404 or something and the response won't be in JS format, so that will break the whole page because it throws syntax errors!
      2. Server response is limited to JS (or JSON)
      3. There are limitations to access already initialized JS variables from these newly added code through dynamic SCRIPT tag creation.
      4. Although cross-domain access is a welcome feature for good developers, it's a way to create mess on your site for bad developers.
      5. A lot of popup blockers or virus protection softwares block creating SCRIPT tags on the fly! So this whole thing would be completely broken in those cases.
  2. link to article by nuttzy · · Score: 1, Informative

    Opps! I guess I need a Mulligan... I meant to link to an introductory article [sourceforge] I had written. BTW, this comment was spell checked as I type with the SpellingCow favelet! -Nuttzy

    1. Re:link to article by Anonymous Coward · · Score: 2, Funny

      Opps indeed! This comment was spell checked by Firefox 2.0...looks like it works a bit better than SpellingCow!

    2. Re:link to article by Ride+Jib · · Score: 0
      Opps! I guess I need a Mulligan... I meant to link to an introductory article [sourceforge] I had written. BTW, this comment was spell checked as I type with the SpellingCow favelet! -Nuttzy

      Hmm...I guess it doesn't work. I copied your post into it and it highlighted 'favelet'. :)
    3. Re:link to article by supasam · · Score: 1

      And this comment was automatically spell checked by OSX. How about them apples?

      --


      Suck a lemon?
    4. Re:link to article by beef3k · · Score: 1

      No. You meant to shamelessly promote your own company and product on /.

    5. Re:link to article by Anonymous Coward · · Score: 0

      SpellingCow also ripped off WebFX:

      http://me.eae.net/archive/2006/09/04/spellingcow/

  3. cool. by celardore · · Score: 2, Funny

    Now the web will really mooooove forwards!

    1. Re:cool. by CptnQuixar · · Score: 1, Funny

      Am I the ony one that finds this technology udderly useless?

    2. Re:cool. by ATMD · · Score: 1

      Nah. It's an udder waste of time. I cud have designed it in my sleep!

      --
      Nobody else has this sig.
    3. Re:cool. by ATMD · · Score: 1

      Curses, beaten to it! Whatheifer next?

      --
      Nobody else has this sig.
  4. COWS Ajax by eclectro · · Score: 5, Funny


    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"
    1. Re:COWS Ajax by Anonymous Coward · · Score: 0
      Yeah, developers really need to mooove on

      </rimshot>

    2. Re:COWS Ajax by inKubus · · Score: 1

      I think I'll moove my site over to this before I get "sent to the pasture" by my boss.

      --
      Cool! Amazing Toys.
    3. Re:COWS Ajax by Iamthefallen · · Score: 1

      That's udderly ridiculous.

      --
      Wax-Museum Fire Results In Hundreds Of New Danny DeVito Statues
    4. Re:COWS Ajax by tbone1 · · Score: 1
      I think I'll moove my site over to this before I get "sent to the pasture" by my boss.

      Well, it's udderly obvious that your boss certainly has a steak in your technology knowledge.

      --

      The Independent: Reverend Spooner Arrested in Friar Tuck Incident - ISIHAC, Historical Headlines
  5. Not a developer by Lispy · · Score: 4, Insightful

    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.

    1. Re:Not a developer by Directrix1 · · Score: 5, Insightful
      - Why are we paying you if all you do is reuse thirdparty code wich doesnt belong to the company?

      You ever heard of libraries? Sheesh, you should pay the man more if he found a way to increase productivity for next to nothing.
      --
      Occam's razor is the blind faith in the natural selection of least resistance and in universal oversimplification. -- EF
    2. Re:Not a developer by Lispy · · Score: 1

      I understand the concept. But companies are kinda greedy when it gets to owning their proprietary stuff. Well, at least thats what its like in the company I work for.

    3. Re:Not a developer by legoburner · · Score: 1

      Indeed, I loooove having a 200K javascript .js file download when I am browsing some site on a slow connection, especially when 199K of that file is just library code that the parent website does not even use, but they wanted one strange obscure function and didnt bother hacking apart the full library.

    4. Re:Not a developer by caluml · · Score: 2, Funny

      What are these "slow connections" of which you speak?

    5. Re:Not a developer by Anonymous Coward · · Score: 2, Funny

      What are these "slow connections" of which you speak?

      The ones in Alaska. They're still stuck on old tube technology, while the rest of us have dump trucks.

    6. Re:Not a developer by SanityInAnarchy · · Score: 1

      Which begs the question: Isn't it possible to just link to that source on the library's homepage, so it can be cached across various AJAX pages? Slow computers would become more of a problem than slow connections, then, as you have to parse the entire JS file and store it somewhere.

      Seriously, pick something else that actually deserves your hate -- like Flash.

      --
      Don't thank God, thank a doctor!
    7. Re:Not a developer by Anthony+Boyd · · Score: 3, Insightful

      Wow. That last question of yours would make some developers -- the best ones -- walk away from the job.

      Does it work if the embedded page is offline?

      It's more like a remotely-hosted library. And no, the page would likely NOT work if that other server was down. A good developer could probably add some code to check the remote site and disable certain features on-the-fly if needed. I've done that for a lot of Salesforce stuff I do. Not too awful.


      Does it slow down if the embedded page is under heavy load from somebody else?

      Seems like it would.


      Does it break if some standard/lib/implementation/EULA changes?

      Not sure, because I don't know what you're referring to. Do you mean, what happens if you change a library on your own server? Probably shouldn't hurt -- it's all client-side JavaScript. If you mean, what happens if the site that hosts the JavaScript code changes a license or how a library works, then yes, that could likely screw you up.


      Can we customize it to our GUI?

      Looks like a qualified yes.


      In the example given, how does it play with browserspellcheckers like the one coming in FF2.0?

      It's not aware of the spellchecker in Firefox 2.0. But neither are any of the other spelling tools. This spelling tool works live on the text, and if you had Firefox 2.0 spellchecking it also, you'd simply have 2 tools running spellchecks. That could make for some interesting interface weirdness, but I doubt it would hurt anything.


      Why are we paying you if all you do is reuse thirdparty code wich doesnt belong to the company?

      That question is so completely insulting to a developer -- it so trivializes their attempt to do something smart and useful for you -- that if you asked that question, developer morale would immediately plummet. If you have ever asked such a question in the past, you need to know that your company has lost productivity because of it. Even if it never resulted in a missed deadline. Once you insult your developers, they're not going to want to work hard for you. They're going to stop caring. Do something smart and get insulted? OK, stop trying to be smart. If you've ever had to limit your scope or drop features or push out a deadline or worse, and such a thing happened after you asked such a question, now you know why. If you've ever released something that was buggier than people expected, or more difficult to refactor than the developers expected, you can probably bet that a member of your team was insulted and stopped caring.

      Any question that is basically a "sounds like you're useless" kind of question is self-destructive to ask. Anyone with self-esteem will not accept it. You know how useful your developers are by their output. Do they hit deadlines? Do they build the things that are needed? Is the uptime good? Is the bug count low? Are the customers happy? Think about it. How are you going to feel if the developer replies to you by saying, "all you seem to do is push pencils around, so why are we paying you again?"

      (And if you're inclined to respond by saying, "Unfair question, because I don't just push pencils, I provide real value!" ...then you understand the argumentative feeling you've instilled in your developers.)

    8. Re:Not a developer by HeroreV · · Score: 1

      Then you must really hate digg.

    9. Re:Not a developer by Lispy · · Score: 1

      That question is so completely insulting to a developer -- it so trivializes their attempt to do something smart and useful for you -- that if you asked that question, developer morale would immediately plummet. If you have ever asked such a question in the past, you need to know that your company has lost productivity because of it. Even if it never resulted in a missed deadline. Once you insult your developers, they're not going to want to work hard for you. They're going to stop caring. Do something smart and get insulted? OK, stop trying to be smart. If you've ever had to limit your scope or drop features or push out a deadline or worse, and such a thing happened after you asked such a question, now you know why. If you've ever released something that was buggier than people expected, or more difficult to refactor than the developers expected, you can probably bet that a member of your team was insulted and stopped caring.

      Ok, please understand, I didnt ask this question as I am a sysad myself and work a lot with devs and use a lot of GNU stuff wich gets most of my work done for me. BUT, the managers in my company often asked questions like this. I hate this kind of questions myself, but I just knew that they would ask it if theyd hear about this, so I included it. I am not a manager nor a dev. But a systema administrator and I know both kinds of people. Personally I am a strong supporter of the bottom up approach and libraries or ideas like CowAJAX are part of this. Just for clarification! :)

    10. Re:Not a developer by Anonymous Coward · · Score: 0
      Why are we paying you if all you do is reuse thirdparty code wich doesnt belong to the company?
      That question is so completely insulting to a developer -- it so trivializes their attempt to do something smart and useful for you -- that if you asked that question, developer morale would immediately plummet.

      No offence, but it is a valid question. You go on and rant about how we don't respect developers, and how this is going to be negative for your morale, etc. But if I have to pay you it's going to be your job to convince me that I need to pay you for doing this. You're going to have to prove that this will get the job done. You're going to have to do better than rant about how bad that question makes you feel, and come up with something that sounds a bit more logical. If you spend a couple of months of time reinventing the wheel without any added value, you can be damned sure that people are going to ask you that question.

      Any question that is basically a "sounds like you're useless" kind of question is self-destructive to ask. Anyone with self-esteem will not accept it.

      WRONG! It's up to you to prove that your work is not useless, and self-esteem has very little to do with it. People aren't critisizing you, they're scrutinizing your work. As a developer you should've answered the mans question from a technical point of view instead of feeling insulted. Having an idea is one thing, defending the idea (no matter how much you may feel the question insults your intellect) is where the real effort comes in. Prove that what you did provides added value WORTH the effort, and you'll have a much better argument than this.

      How are you going to feel if the developer replies to you by saying, "all you seem to do is push pencils around, so why are we paying you again?"

      I think the reply would be something along the lines of "You have been fired... Do not pass GO, do not collect next months paycheck.".

    11. Re:Not a developer by Everleet · · Score: 1

      But if I have to pay you it's going to be your job to convince me that I need to pay you for doing this.

      Uh, no. It's your job, as manager, to know who you need and why. It's his job to develop applications. Wasting his time (and morale) to cover your responsibilities is antiproductive.

      And no, being in a minor position of power does not mean you don't have responsibilities.

      --
      It's tragic. Laugh.
    12. Re:Not a developer by GroinWeasel · · Score: 1

      You need to become one with the concept of "Core Competency"

      Is your company a spell-checker company?

      If not then what does it gain you to develop your own spell-checker?

      How much do you gain by not spending the time/effort to develop your own spell-checker?

      s/spell-checker/$non_core_technology/

      You sound like a PHB to me: all soundbite no thought.

    13. Re:Not a developer by Anonymous Coward · · Score: 0

      ahahah you're so funny.

      ok. then here's a technical answer you'd probably like.

      well boss, there is this third party library you can buy. why don't you download it and fire me. the application will write and maintain itself.

      people who are not developers have a tendency to think that if you buy stuff and put them in a computer, they will work like magic. poof! bad news: they won't if you don't make them.

      the key to success is hiring good developers and treating them well.

      if you got all bad ones, which you seem to, you'll end up running around making sure nobody is re-inventing the wheel, wasting company money or stuck on a trivial issue.

      of course, one of the prerequisites for telling a good one from a bad one is to be a good developer.

      bad luck, manager. seems you'll need to get at least one good developer who knows what he's doing to start off.

  6. Invitation to Contribute by jg21 · · Score: 1

    This will be easier to assess when we know more: would the team behind this care to write an article for Dion Hinchcliffe's AJAXWorld Magazine? He can be easily reached, just Google him.

  7. drawback by Anonymous Coward · · Score: 2, Insightful
    The common drawback these Ajax aides all fail to overcome is that, even with aides, apps take a long time to create and debug.

    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...
    1. Re:drawback by David_Bloom · · Score: 1

      Links and the back button can be made possible through various browser hacks that take advantage of the fragment identifier.

      Examples/shameless self-promotion:
      http://bloomd.home.mchsi.com/histapi/test.html
      http://bloomd.home.mchsi.com/newhist/demo/

      --

      Karma: Excellent (fuck, even in the future moderation doesn't work!)
    2. Re:drawback by Anonymous Coward · · Score: 1, Insightful

      This is kinda like breaking the back button, and then breaking it a little more so it works.

    3. Re:drawback by David_Bloom · · Score: 1

      Exactly :-)

      --

      Karma: Excellent (fuck, even in the future moderation doesn't work!)
    4. Re:drawback by ShaunC · · Score: 1
      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...
      Well, he did focus a great deal on having AIDS, but I'm not sure why he neglected other types of disabilities.
      --
      Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
  8. Fatal Flaw? by WebHostingGuy · · Score: 2, Insightful

    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
    1. Re:Fatal Flaw? by louaish88 · · Score: 1

      Personally, I would rather develop a generic web service then use AJAX to combine it into a website. I wouldn't depend on third-party web services, unless it is part of Google, Amazon, etc. Either way, it is an interesting model that I will be looking into. Plus if people open sourced these web services you could install them on machines you control and benefit from it with only deploying and one line of javascript.

    2. Re:Fatal Flaw? by gregmac · · Score: 3, Insightful

      I was actually thinking that one of the 'benefits' of this technique is that you could release a tool for people to use WITHOUT releasing the source (or backend database, or any other tools/data used). This is more of a benefit to the Googles and Yahoos, or the guy that wants to eventually make money off this tool, not the end-developer integrating it.

      Overall, it seems to me like a solution to a problem that just doesn't exist. There are already ways to access web services from the server-side (SOAP, XML-RPC, REST, and so on). To make use of these sources with AJAX, you just need to code some AJAX glue to tie it together. Using the toolkits that most languages have now, this can literally be 5 or 10 lines of code.

      You also get to control the code that gets returned - set your own timeout (server-side) for fetching data from the web service; not have to worry about the hosting site going down and possibly breaking your app; not worrying about the remote end getting comprimised (since it would be a bright shiny target, and you don't know anything about their security); not worry about them shutting down operations, switching to a pay-per-use model (see above), changing the API in a non-BC way, etc.

      --
      Speak before you think
  9. Looks Interesting by SteveTheRed · · Score: 1

    I want to make the obligatory cow jokes, but none come to mind. This looks interesting to me because my previous attempts at AJAX have ended in frustration. I'm not a super web code slinger, so anything that automates the process would be welcome.

    --

    I, for one, welcome our new robot overlords
    1. Re:Looks Interesting by naoursla · · Score: 2, Interesting

      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).

  10. if Craig Nuttal is reading this... by bunions · · Score: 5, Insightful

    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.
    1. Re:if Craig Nuttal is reading this... by Microsift · · Score: 1

      I assume you mean cow shit...

      --
      My other sig is extremely clever...
  11. XSS made easy by Anonymous Coward · · Score: 0

    Looks like a shameless self promotion of some ad-based revenue generating web service. There's nothing actually new here, and no reason to ever remember COWS as a buzz word. Move along

  12. How is this different from TurboGears Widgets? by cduffy · · Score: 1

    The Widget mechanism in TurboGears is intended to address the issue of reuse of 3rd-party AJAX code. How does this differ?

  13. I for one by franksands · · Score: 0

    Welcome our new Web 3.0 overlords! :P

  14. Cows by David_Bloom · · Score: 5, Funny

    You have two cows. They eat AJAX and die.

    --

    Karma: Excellent (fuck, even in the future moderation doesn't work!)
  15. Oh come on by zaajats · · Score: 4, Insightful

    From the spell checker:

    "You won't be able to reenable it without reloading the page"

    That's so very AJAX.

    1. Re:Oh come on by Anonymous Coward · · Score: 0

      The spellchecker seems very clunky. Based on that I won't be investigating further.

  16. DO NOT USE THIS by Anonymous Coward · · Score: 5, Insightful
    Jacquesm posting as AC because I'm travelling, please do NOT USE THIRD PARTY JAVASCRIPTS.


    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.


    1. Re:DO NOT USE THIS by Anonymous Coward · · Score: 0

      or, how about 'I'm pretty bright and can like totally read and understand javascript'

      instead of your suggestion that no one ever use 3rd party javascript, I instead offer that you stop involving yourself in anything remotely technical, because while most of you luddite morons are at least bright enough to keep your mouth shut when in the presence of people with a fucking clue, you seem to fail even this very very low bar.

    2. Re:DO NOT USE THIS by Anonymous Coward · · Score: 0
      you *did* notice who wrote that didn't you ?


      The problem with third party javascript is not that you can read what it says but that it can read something else at a later point in the day and you can't do fuck all about it. Unless you plan to read that code all the time, just before your user peruses it. And if you want to do that anyway why not host said javascript on your OWN server (you do have a server don't you?) instead ? If it's mission critical (or critical to the ongoing survival of your business) then you'd better host it yourself or you'll find yourself in deep shit one day.


      the other points are also pretty valid. Your JavaScript reading comprehension skills do not seem to have much to do to refute the points made.

    3. Re:DO NOT USE THIS by thelost · · Score: 1

      same goes for third party web apps, but are you telling everyone who uses slashcode to drop it and roll their own?

      --
      Promote Charity on Myspace, Show Your Colours!
    4. Re:DO NOT USE THIS by Anthony+Boyd · · Score: 2, Insightful

      Slashcode is code that you copy onto your own server and use under your own control. He is talking about remotely hosted code. In other words, this cow code stays on a 3rd party's server. You do not get to control it or custom-rebuild it. It is very different from the Slashcode model. Thus, your questions and concerns are inapplicable.

    5. Re:DO NOT USE THIS by Anthony+Boyd · · Score: 1
      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)

      Yes, what you really mean is remotely hosted JavaScript apps are problematic. Understood.

      And you seem to be correct that by using such a remotely hosted service, you open yourself up to popups or other unwanted ads, at least in this case. Here's a quote from the site:

      And in exchange for making the cool apps, the application host can create branding, drive traffic, or employ serveral revenue streams.

      Where do those revenue streams come from, I wonder? About the only things I can consider are that they intend to charge for this after people are hooked to the free model, or that ads will start appearing on any site that uses it.

      Your fears are founded, Jacquesm.
    6. Re:DO NOT USE THIS by julesh · · Score: 1

      Agreed. I've been looking for a way of loading data from a different domain to the source document for some time now, but this isn't it. This is a security hole waiting to happen:

      1. Create hugely popular web application and host it on your own domain
      2. Convince web designers to link your application into their sites by adding script tags that load the code from your domain
      3. Wait until a large number of popular sites implement it
      4. Change your script to harvest these sites' users' usernames and passwords.
      5. ???
      6. PROFIT!

    7. Re:DO NOT USE THIS by uioreanu · · Score: 1

      adsense does this already. however in google we trust..

      --
      cut this signatures madness. stop reading them now!
    8. Re:DO NOT USE THIS by Paradise+Pete · · Score: 1
      same goes for third party web apps, but are you telling everyone who uses slashcode to drop it and roll their own?

      Since the third-party javascript loads each time you're dependent on it not ever changing, even if they're not malicious changes. And if they are, well, you're screwed.

  17. Secuuuuuuuurity by giorgiofr · · Score: 1

    If we become used to loading random pieces of code from 3rd parties and injecting it into legitimate web pages, how long will it be before someone skeaks in a nice password sniffer or some such? I can already envision it: "This favelet makes logging into your bank so much easier" yeah right *for them*.
    Besides, this stuff does not support Opera well.

    --
    Global warming is a cube.
    1. Re:Secuuuuuuuurity by nuttzy · · Score: 2, Interesting

      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 ;-)

    2. Re:Secuuuuuuuurity by gregmac · · Score: 1
      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).


      To a point. The sites that are serving up this code will quickly become a target of crackers, as the only thing better than exploting one web server and putting your phishing code into their site is exploting one server and putting code into their site that's served up on hundreds or thousands of other websites.

      --
      Speak before you think
    3. Re:Secuuuuuuuurity by sgbett · · Score: 0

      I'm reading this and getting to thinking about google analytics. I understand google and these cows guys aren't in the same league, I generally trust google, but thousands wouldn't.

      For anyone that doesnt know, analytics embeds a call to an offsite script http://www.google-anlaytics.com/urchin.js

      I see that the code is clearly visible at that URL, so it may not be the same as running on affsite proprietery extension, but it seems to be a bit of a grey area. Were google to turn bad overnight then I'm there would be a some kind of delay before people realised what was up, and with the amount of sites running analytics ...

      I'm not scaremongering, as I don't beleive this is likely, but its an interesting thought.

      --
      Invaders must die
  18. Re:Cow tipping for ever by Ant+P. · · Score: 1

    Last time I tried that, I was left writing ASCII text files.

  19. Long to develop? What? by mortonda · · Score: 2, Interesting
    The common drawback these Ajax aids all fail to overcome is that, even with aids, apps take a long time to create and debug.


    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)
  20. no by Anonymous Coward · · Score: 0

    No. No more insecure buggy stuff. Insecure. Bandwith intensive. Lame. Just say no.

  21. Won't this be disabled in future browsers? by mgkimsal2 · · Score: 1

    This looks like a neat concept, but sort of seems like a hack around the existing security model. Frankly, I'm of two minds. On one hand, I like the idea of being able to tie together multiple hosted javascripts from other parties without having to install and configure them on my server. (plug - I mentioned this idea in an AJAX discussion on http://webdevradio.com/ a couple months ago). On the other hand, 'same-origin' policy exists for a reason (not that I agree with it) and it seems like relying on a hack like this is weak, in that if it becomes popular, it'll just be patched as a 'security hole' in future browser updates.

    1. Re:Won't this be disabled in future browsers? by kap1 · · Score: 1

      Third-party source scripts have been used forever, most notably for ad servers. You break that and you have to provide an alternative way of including dynamic ads on the page. Remember, the Web still runs on advertising dollars.

  22. Damn, no Opera by Anonymous Coward · · Score: 0

    That does it for me, 0.1% of my visitors won't be able to use it. Screw it, it's 100% or nothing! Oh wait, nothing works it 100% of browsers. Hmm, back to chisels and slabs of rock I guess.

  23. How does it work? by Anonymous Coward · · Score: 0

    You want to explain how their COW favelt works?

    Does it DL the spellchecker to your computer?
    Does it send your text out to their servers?

    How's it do the magic?

  24. Uses no resources? by daeg · · Score: 1
    From the website:
    Uses no resources

    Excellent. So you've finally perfected producing something from nothing? Brilliant, my man! Although with such a discovery you'd think you could do better than a spell check.
  25. one word: Echo2 by master_p · · Score: 3, Informative

    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/

  26. Slow? by somethinghollow · · Score: 1

    Having recently re-written from scratch a very large project with two or more PHP developers and myself as the only front-end designer, I've found Ajax to be the fastest way to develop web apps for in-house use. If you write a spec for data I/O, then follow it exactly, the front end can be developed without the back end using sample data. The back end can be developed without the front end, since simulated posts/gets can be done to verify that the XML (or JSON or text or whatever) is valid. That means that I can make a front end, even if my PHP guy is working on something else, or my PHP guy can make a back end while I'm working on another project. The only down side is that if a change is made on the spec it has to be communicated and accounted for by everyone involved. So far, that hasn't been a problem.

    Maybe it is a lack of specialization for the poster. Having two specialized developers (front-end and back-end) seems to speed things along just fine.

    SpellingCows doesn't work in Safari...

    1. Re:Slow? by Shados · · Score: 3, Insightful

      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 :)

    2. Re:Slow? by AuMatar · · Score: 1

      Yup, its called "design". Its becoming a lost art, the current buzzword development models (XP, most other agile techniques) try and avoid doing it. And they all pay for their mistake in the end.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    3. Re:Slow? by bunions · · Score: 1

      > the current buzzword development models (XP, most other agile techniques) try and avoid doing it

      You either don't or won't understand current development models. Agile methods have nothing to do with avoiding good software design - that's ridiculous on the face of it.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    4. Re:Slow? by AuMatar · · Score: 1

      Try again- XP specifically espouses skipping design and going straight into coding. And they all go for rapid refactoring and constantly changing interfaces. Of course, any shop that actually uses them ends up getting FUBAR software anyway.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    5. Re:Slow? by bunions · · Score: 1

      You're misinterpreting the 'get code right away' mindset with 'get it done quick-and-dirty' mindset. Design and rapid iteration are not mutually exclusive, and in fact one re-enforces the other, since rapid iteration exposes poor design and good design enables rapider(?) iteration. There are some people who confuse the two, but there's always someone who won't understand any particular engineering process.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    6. Re:Slow? by AuMatar · · Score: 1

      I'm not misinterpreting the two, the two are the exact same. "Agile development" is good old seat of your pants programming wrapped in a cloud of buzzwords. And the ends results are the same- buggy, hard to maintain, overly expensive software.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    7. Re:Slow? by bunions · · Score: 1

      If you really want to believe that, I certainly won't stand in your way. Enjoy your ignorance, I'm sure being right is worth it.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
  27. Evolved? by The+MAZZTer · · Score: 1

    Sounds like just a toolkit to me. One implementation among many. A simple Ajax implementation isn't even 20 lines of code client side, and then whatever server side code is needed to perform the necessary functions.

    I find it ironic that their first example of COWS Ajax is a spell checker, which my Firefox already has built-in, client side, for ANY form field on ANY website.

  28. Old trick, new buzzword by kap1 · · Score: 4, Informative

    Ouch. Adding a script tag dynamically is old hat in Ajax. See the DOM Based On-Demand Javascript pattern.

    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-paddin g

    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.

    1. Re:Old trick, new buzzword by julesh · · Score: 1

      The problem with this approach is that you have to trust the domain you're querying.

      What if you can't do that for some reason?

      I think a cross-domain XHR would be much more useful than this pattern, but nobody seems to want to give us that.

  29. A different way of making web apps by alejsama · · Score: 2, Insightful

    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

  30. Really bad idea! by mrsbrisby · · Score: 3, Insightful

    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...

    1. Re:Really bad idea! by magerquark.de · · Score: 2, Insightful

      Hey, but we already did look stupid when Google Analytics was down the last time and all of our websites were slow to access and we couldn't fix it, didn't we?

      --
      -- Watch me working: www.magerquark.de
  31. hijack by Anonymous Coward · · Score: 0

    So, some unscrupulous individual hijacks spellingcow.com and now everyone who links to the script is at their mercy. uhh

  32. ooooch ouch! Not another! by brice · · Score: 1

    I'm sorry, but it hurts to see this useless ugly framework /.'ted over a deserving project like jQuery!?! There already exist many similar and more elegant, mature, and well tested "web services".

    And to call;

    http://cows-ajax.sourceforge.net/includes/sc_ayt.j s

    a web service is outlandish. I give the 34k above include an F minus. The dict should be a "web service" & remain on server. !XSS

  33. Not really... by ErGalvao · · Score: 3, Insightful
    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?
    Actually my answer is "nope! not really!". Coders - as the term implies - like to code, not to drop a single line and watch it gain functionality without knowing what's happening behind the scenes. Coders ARE behind the scenes, so this cow can be good for companies who aren't involved in web developing or programming of any kind, but not for us, programmers. We code. There isn't such a thing as "something else" for us, but hey, thanks for your concern =P
    --
    Er Galvão Abbott - IT Consultant and Developer
  34. Still trusted? by DavidV · · Score: 1

    'especially if it's a Google, Yahoo, or other trusted player.'

    Just make sure you unplug your microphone first.

    Having the motto 'Do no evil' makes me sure they won't do anything I wouldn't want after listening to my conversation. I know how seriously employees take their mottos, and wouldn't it be evil, to some, not to not take an opportunity to increase investors returns.

    --
    !sig
  35. ok guys, you heard the man by bunions · · Score: 0

    everyone delete your copies of prototype.

    Your argument that "omg, the 3rd party tools can do whatever they want" also applies to any code you use. It's made even more [fill-in-your-own-derogatory-adjective] because it's pretty easy to find any naughtiness on the part of javascript code.

    --
    there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    1. Re:ok guys, you heard the man by Anonymous Coward · · Score: 1, Informative

      he clearly meant javascript that is hosted by a 3rd party, not all 3rd party libraries.

    2. Re:ok guys, you heard the man by bunions · · Score: 1

      argh. duh. I apparently ate a brain tumor for breakfast, please disregard my previous post.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    3. Re:ok guys, you heard the man by naoursla · · Score: 1

      No. The original poster just did not explain himself clearly. I had the same interpretation at first too. Then I realized that even an AC couldn't be that stupid and he meant to say something else.

    4. Re:ok guys, you heard the man by Anonymous Coward · · Score: 0
      please disregard my previous post.

      No worries. We didn't hold it in much regard to begin with.

  36. privacy concerns? by krunk4ever · · Score: 1

    To be able to spell check through AJAX, wouldn't you need to send every word back to their servers as they return and tell you which one's to highlight and which words to use?

    Given that, it's rather scary where I'd want to use this spellchecker on. I would never use spellchecker if my document was being sent from Word back to the Office group's spell checking server. Some things like these a crucial to be on the client side.

  37. Works Great For Spelling but.. by Anonymous Coward · · Score: 0

    "The unobtrusive nature of the SpellingCow quitely improves spelling"

    Not so great for grammar.

    I'm `quitely` sure of it!

  38. Does not work on Safari ... by angel'o'sphere · · Score: 1

    ROFL, Safari is not that uncomplient that it should not work, IMHO.

    angel'o'sphere

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    1. Re:Does not work on Safari ... by angel'o'sphere · · Score: 1

      And when you use Firefox, and hit the checkbox for disabeling spell chekcing, it says you need to reload the page to reenable it .... how AJAX like is that, lol.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    2. Re:Does not work on Safari ... by CmdrGravy · · Score: 1

      And if you do that in Konqueror it then falls into an infinite loop of popping up with that alert box and refuses to work any further. What an amazing utility !

  39. Link to the FAQ by Anonymous Coward · · Score: 0
  40. also you have to sit waiting for the page 2 redraw by Anonymous Coward · · Score: 0

    I hate this AJAX shit... it has taken useability back 20 years.

  41. Free Advertisement by bendodge · · Score: 0

    This article is not very earth-shattering, but is a great advertisement for COWS Ajax.

    --
    The government can't save you.
  42. Demo doesn't work in Safari? by mr_zorg · · Score: 1

    The SpellingCow demo doesn't seem to work in Safari. Too bad. I wonder if that's because Apple's built in spell check interferes with it? I tried turning Apple's off, but it still doesn't seem to work. Bummer.

    1. Re:Demo doesn't work in Safari? by FinestLittleSpace · · Score: 1

      Safari doesn't support highlighting of substrings in a text area.

  43. Re:0 R3477Y by Anonymous Coward · · Score: 0

    you fuckers i wanted a troll mod.....

  44. AJAX for Lazy by nascarguy27 · · Score: 1

    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;
    }
  45. AJAX for lazy by nascarguy27 · · Score: 2, Informative

    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;
    }
  46. Light fingers... by kap1 · · Score: 3, Interesting

    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.

  47. Ajax by Anonymous Coward · · Score: 0

    COWS Ajax takes over where Ajax leaves off.

    So they got upto Web 3.0? That was quick!

  48. I hear that the audio protocol... by frank_adrian314159 · · Score: 1

    ... is in full steeeereo!

    --
    That is all.
  49. COW Ajax is lame. Meet Pig/Ajax! by Anonymous Coward · · Score: 0

    Pig/Ajax is the latest in technology. PIG stands for Pig is gruesome Ajax, as in Gnu/Linux.
    With Pig/Ajax you can orchestrate world-class models, enabling scalable relationships with holistic schemas that facilitate front-end applications. Pig/Ajax grow dynamic infomediaries syndicating B2B relationships between synergistic partnerships, productizing out-of-the-box vortals.

    Pig/Ajax, put simply, expedite global functionalities incubating visionary mindshare in your website!

    Give it a try! http://devel.pigajax.org/

  50. quitely? by Anonymous Coward · · Score: 0

    Odd that a page advertising a spell-checker would say that it "quitely improves spelling."

  51. So is this working for everyone but me? by DreadfulGrape · · Score: 1

    When I go to the COWS demo page and click on the button to activate the spell checker, it politely craps out with the err msg "window.launch_spellingcow is not a function"

    Firefox 1.5.0.6 on XP Pro

    --
    sig has been sent away for a few small repairs...
  52. WhatWG by XO · · Score: 1

    Or, you could use Opera, and get WhatWG "standards", that allow the web server to push to the clients, instead of having the clients regularly request stuff from the server, and just clean up that way. Much better.

    --
    "Champagne for my real friends - and real pain for my sham friends!" http://ericblade.postalboard.com/
  53. Program interactive AJAX websites like desktop app by xynopsis · · Score: 1

    Try Wt, its called the "Qt" of the web. It even uses signal and slots for event handling! Never has programming complex and highly-interactive web applications been this easier with this library. It is a C++ library and allows you to build high-performance AJAX web apps without ever writing a line of HTML, Javascript, XML, or even learning XmlHTTP. The library takes care of these complexities the same way Qt hides Xt/Xlib or Win32 primitives from the developer.

    You may like Wt if you think programming web applications should be done in a straightforward manner like in normal desktop applications and not be _unecessarily_ complex with stupid buzzwords sprinkled here and there.

  54. THEY STOLE CODE AND ARE MARKETING IT AS THEIR OWN! by Anonymous Coward · · Score: 0

    Check out this link for yourself.

    http://me.eae.net/archive/2006/09/04/spellingcow/

    It's by the guy who wrote the code which they stole.

    These are the worst kind of programmers, if you can even call them that.

  55. Dejavascript Vu by mwvdlee · · Score: 2, Insightful

    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?
    1. Re:Dejavascript Vu by 4of12 · · Score: 1
      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?

      From a would-be vendor of pre-fabricated blocks that would like to sell all the blocks to you, to any other would-be block developer, have exclusive control over all future block development and hopefully take a small slice of pie from the huge user base of endusers of the application you develop with pre-fabricated blocks.

      The whole venture needs to be open and free and the standard unencubered by the baggage of a large committee comprised of representatives from would-be vendors of pre-fabricated blocks that will come up with a Union of all elements solution.

      --
      "Provided by the management for your protection."
  56. Re:also you have to sit waiting for the page 2 red by bodan · · Score: 2, Interesting

    Sure it did. Look how hard gmail sucks.

    --
    "I think I am a fallen star. I should wish on myself."
  57. what's a browser anyway? by uioreanu · · Score: 1

    Is it meant to be a dynamic full featured rendering engine? Maybe it is, but AJAX should clean itself up from the kind of code that increases rendering time. Did anyone try using firefox's extensions on a slow linux box? Or even on Windows, I often have to start FF in safe mode just to get a clean start.

    the famous google analytics also stuffs 18kb of Javascript crap to the client's computer (doesn't bother bandwidth on target site though), and forces a cookie rendering, all this done in client-side javascript on every single visited page. They got away with it because of nice free reports and GOOG's umbrella

    --
    cut this signatures madness. stop reading them now!
  58. Say what? by Anonymous Coward · · Score: 0

    Um..it's only a pain if you insist on writing all your own code. Everyone is in the AJAX game these days..www.devexpress.com, www.telerik.com. Drag and drop easy, especially the Telerik control - ajax anything. Course those are all .NET libraries, but I'm assuming you linux-zealots have some sort of matching open source. Or maybe not? Is that why this article is so exciting for you? Is the ol' php just not cutting it? *grin*

    Seriously, anyone hand coding something when they could be getting the job done is a play-programmer.

  59. ? free software ? by davro · · Score: 0

    http://buttercup.spellingcow.com/spell/scayt

    © 2004-2006 SpellingCow Software - All rights reserved. This is not free software.

    What was the point again.

  60. Re:also you have to sit waiting for the page 2 red by David_Bloom · · Score: 1

    Aside from GMail, here are some Ajax sites that are MORE usable thanks to Ajax: * http://maps.google.com/ * http://www.meebo.com/ * http://www.kayak.com/ * http://www.writely.com/

    --

    Karma: Excellent (fuck, even in the future moderation doesn't work!)
  61. Demo does not work in Firefox? by Anonymous Coward · · Score: 0

    The demo did not work on my PC either, with Firefox, latest release (v1.5.0.6) running on WinXP SP2.

  62. Less is more... by Anonymous Coward · · Score: 0
    ...except when it really is less!

    Your web browser is not fully supported by Google Maps. More information


    JavaScript required to sign in.

    Meebo requires JavaScript to sign in. This web browser does not support JavaScript or scripts are being blocked.

    To find out whether your browser supports JavaScript or to allow scripts, see the browser's online help.


    Kayak.com requires Javascript in order to function properly. Please enable it or use our basic version.


    Kayak may well have passed the test, writely requires registration but we both know it doesn't work anyway! 1/4 ajax masterpieces is actually a functional website, with success rates like that I wonder why this ajax thing didn't take off when we used to call it DHTML?

    1. Re:Less is more... by David_Bloom · · Score: 1
      What's wrong with requiring Javascript? Let's see if anyone is really missing out:
      1. Although there is no basic HTML version available, Google Maps is available as a Java applet for mobile devices which would not support its Javascript-heavy Ajax interface.
      2. Meebo is an instant messaging client. There is no way to gracefully pull that off without Javascript. If you're too stubborn to install Javascript then download Trillian or gAIM and use that.
      3. Writely is a multiuser text editor. Basically this is the same as it is with Meebo - its functionality can only be achieved with Javascript. It's impossible to make a basic HTML "equivalent".
      If you have disabled scripting for security reasons, most browsers will let you selectively enable it for these domains only. I challenge you to name one browser with at least a 1% market share that cannot use these Ajax websites (with scripting and other features enabled).
      --

      Karma: Excellent (fuck, even in the future moderation doesn't work!)
  63. dang straight by cascadingstylesheet · · Score: 1

    >but not for us, programmers. We code. There isn't such a thing as
    >"something else" for us, but hey, thanks for your concern =P

    Which is why I do all my data access code in assembler ;)

  64. How Do I firewall this kind of thing at my proxy? by 0x1b · · Score: 1

    Are you people nuts?

  65. test by Anonymous Coward · · Score: 0

    ignore

  66. Genius by Anonymous Coward · · Score: 0

    Now us supervillians can turn the server into an anonymous proxy server. AWESOME!