Slashdot Mirror


The Future of AJAX and the Rich Web

jg21 writes "This AJAXWorld Magazine article indicates how far AJAX has come since devs complained here two years ago that it sucked all the time. Eight experts were asked what questions we should now all be asking about where AJAX is headed next. The suggested questions are refreshingly hard-headed, including: 'How are we to fix the web?'; 'When will AJAX development finally be easy?'; and 'Do we really need JavaScript 2.0? Won't it be somewhat irrelevant by the time it becomes commonplace and thus usable?' One of the most interesting questions came from Kevin Hakman, co-founder of TIBCO's General Interface: 'On what timeline will AJAX skills become commoditized like HTML skills became?'"

303 comments

  1. I, for one, welcome by Finallyjoined!!! · · Score: 0, Redundant

    Our Ajax overlords :^D Couldn't resist...

    --
    If I had an Ass, I'd call it Fanny Bottom, then I could slap my Ass; Fanny Bottom, on the Arse.
  2. When did AJAX stop sucking? by ameyer17 · · Score: 1

    It's slow and an accessability nightmare. I say it still sucks.

    1. Re:When did AJAX stop sucking? by secPM_MS · · Score: 2, Insightful
      The rich web is all well and good for those with nice screens and good vision. It does not do so well for those with highly constrained devices and/or bad vision. I would love it if companies pushing commerce web sites started having acessibility requirements.

      If a user has bad vision, they can feed text into a text to speech converter. GUI into a speech converter doesn't work so well. There are an increasing number of older folks using the web, and expecting a large screen real state is not appropriate - they may have large screens, but they may have increased the font size for readability.

      As for me, I am paranoid. I don't believe in running script unless I have a good reason to trust the site in question. Thus by default, I have Java, Javascript, Flash, ActiveX, et al off. Thus, no rich web for me. Too bad.

    2. Re:When did AJAX stop sucking? by amRadioHed · · Score: 1

      How about you run a browser in a VM and live a little?

      --
      We hope your rules and wisdom choke you / Now we are one in everlasting peace
    3. Re:When did AJAX stop sucking? by secPM_MS · · Score: 1

      A very good suggestion. A few years ago I believed that doing so would be enough of a security guarantee. It will typically work well against naieve threats, but as VM usage gets more widespread, attackers will start supplementing their attacks with VM penetrators to nail the host. The standard VM products do not make strong guarantees about confining hostile code in VM's.

    4. Re:When did AJAX stop sucking? by devjj · · Score: 1

      You can't have it all. Simple as that. You simply cannot expect people to always design and develop for the lowest common denominator. We'd have no innovation if we took every single accessibility issue into account from the get-go. AJAX is young, even today. We're still figuring out the best ways to apply it, where it's appropriate to apply it, etc. Browser vendors are going to have to adapt to it; not the other way around. The entire reason it's difficult right now is because what we're effectively doing is using tools that were always there to do things they hadn't done before.

      So far as screen real estate goes you make a point, but resolution independence is on its way, and I can't see myself building sites in 640x480 simply because someone might want to up the font size five times. A well-designed site can cope with this regardless.

      So far as scripts go, I think you're a little too paranoid. Yes, they can be misused, and yes, it's possible that in leaving scripts on that you'll expose yourself to a security risk, but shutting them off entirely is a knee-jerk reaction at best. The overwhelming majority of these problems can be avoided by simply using a little common sense and staying away from questionable sites in the first place. I've never turned off scripts in my browser, and I've never run a virus scanner. Across three different platforms (Windows, Mac OS X, and Linux), I've yet to get hit by a single virus, piece of malware, etc. It's all about common sense.

    5. Re:When did AJAX stop sucking? by Anonymous Coward · · Score: 0

      You simply cannot expect people to always design and develop for the lowest common denominator. I'm not sure I would call the blind the "lowest common denominator," and neither would big corporations, which is why they will fear AJAX if it implies any sort of discrimination whatsoever, be that discriminating against their users with an inaccessible website or discriminating against people they could or could not hire due to an inaccessible internal web app. Dangerous territory, I'm afraid.
    6. Re:When did AJAX stop sucking? by hobo+sapiens · · Score: 3, Insightful

      Well too bad for you.

      Developing for the web is about knowing your audience. If I were designing a site like ebay or amazon, in other words, trying to have the widest possible user base, or if I were working for some entity that had to abide by ADA requirements, then maybe avoiding AJAX would be advisable. For a site that is not a necessity, like, for example, youtube, slashdot, digg, flickr, etc AJAX is great. When done properly, AJAX makes more efficient applications that enhance the user experience.

      Also, if you really want to, you can develop sites that use AJAX but also degrade nicely. Everyone here (at least, anyone who calls himself a serious web developer) is using web standards and writing good semantic markup, right? Well, that will make your site at least accessible. If you just use the noscript tag to handle non javascript user agents (where necessary, obviously not where there isn't ROI anyway) then your site should work pretty well.

      As someone else who replied to you mentioned, we cannot develop web sites around people who for some crazy reason refuse to use new technologies (if you call javascript new, as if!). That, along with MSIE, are holding the web back.

      I think people who hate AJAX just hate it because of all the bad AJAX sites. But that's like hating the web because there are bad non-ajax sites. AJAX, like other technologies, makes things better when used properly.

      --
      blah blah blah
    7. Re:When did AJAX stop sucking? by Anonymous Coward · · Score: 0

      I've never turned off scripts in my browser, and I've never run a virus scanner. Across three different platforms (Windows, Mac OS X, and Linux), I've yet to get hit by a single virus, piece of malware, etc.

      Kinda begs the question, how would you know?

      You're like the asshat at the bar, hittin' every piece you can, boys and girls, shooting smack for fun, and loudly proclaiming "I never use a rubber, always share needles, have never taken an AIDS test, and I still don't have AIDS".

    8. Re:When did AJAX stop sucking? by Jasin+Natael · · Score: 1

      I say this is one reason to champion resolution-independent interfaces. Now, NOT ONLY should it be able to draw elements at any level of dots per inch (like Apple recently took a "preview" step toward in Leopard -- applications do not use the features by default), it should collapse smoothly, or at least reasonably or predictably, to the degenerate case of not having a resolution at all. The case of accessibility for the blind and nonreaders notwithstanding: It's maddening that a person with poor vision can shell out for a 30" monitor, and the widgets are either as small or smaller than they ever were, or unforgivably blurry. I hope that someone develops the resolution-independence further for the sake of the visually impaired, and also (selfishly) so I can web-browse comfortably from my couch on a large HDTV. For those who don't know, OS X already has global zooming where you simply hold the control key and turn the mouse's scroll wheel. The screen pans around proportionately with the cursor, and antialiasing can be turned on and off. It has saved my in-laws many a time. Now, the next step is to keep the crispness of the interface elements when zooming, and hopefully provide some global setting (eg, monitor size: 1920x1080 pixels, screen area: 800x480 points) to adjust the relative size of the UI.

      --
      True science means that when you re-evaluate the evidence, you re-evaluate your faith.
    9. Re:When did AJAX stop sucking? by thePowerOfGrayskull · · Score: 1

      I believe there's such thing as taking paranoia too far. I use firefox only (and disable activex for when i have to use ie, which is almost never). I have scripts enabled, and java and flash set to prompt before allowing. Javascript is enabled, but of course I set it so that it can't change the status bar(and hide links), open popups, etc. I do not run antivirus except once a week I as a sanity check. I use "rich web" sites as well as the more mundane variety.

      I mention all of this because in the quarter-century since I first picked up a computer, I have never had a virus, a trojan, spyware, or anything malicious (unless I've installed deliberately to take a closer look at). Given this (admittedly anecdotal) evidence that it is indeed possible to both use modern tecnology, and still be safe while doing so -- don't you think you're going a little overboard?

    10. Re:When did AJAX stop sucking? by Anonymous Coward · · Score: 0

      I use a virus scanner, a software firewall on the PC (with outbound notification - important complement to the other firewalls), and browse with highest security settings. I aways install latest patches. Only trusted sites can run scripts, none can do Java, install ActiveX without permission etc. The OS also has a virus scanner (Vista) but I have a 3rd party one anyway. Also have a hardware firewall (router) and a packet filter on the machine between mine and the router. All the products are from different companies.

      Haven't had a virus/trojan in at least 5 years (prior to this setup), even then it was a "low risk" one. Although I have been to plenty of sites that have tried to plant things.

      Virus writers are trying to hit the vast unwashed masses, they are not trying to get the guy who is browsing via a VM. They probably realize that guy is too paranoid to store stuff on his computer in the first place.

      As for containing VM threats, a VM provider can make no guarantee. If your computer could be infected by another physical machine on your network (say by a worm), it can be infected by a virtual machine. To your computer, they are both just as "real".

      Although sometimes I do want to load up Windows 98 in a VM and browse the web with IE with minimal security settings, just for kicks. I need to get out more.

    11. Re:When did AJAX stop sucking? by Nicolay77 · · Score: 1

      Hey you are damaging my business!

      I was going to sell him the ultra mega nothing-I-will-let-pass über firewall model 2008!

      With virtual machines! One for every port!

      --
      We are Turing O-Machines. The Oracle is out there.
    12. Re:When did AJAX stop sucking? by coryking · · Score: 1

      I agree with your comments on lowest common denominator. We have to draw the line somewhere. The shitty thing is our toolkit (HTML, Javascript and CSS) makes us trade off accessibility for designing even the most trivial of web applications. You want a web application? Either spent an extra year in development, or make it less accessible.

      Even worse, I go by the idea that "if a screen reader cannot use it, Google cannot either". Most web apps really trip up Google.

      And yet, here I sit, continuing to write web applications. Why? They are useful and make many people very happy. I'd love to make my apps accessible, but I can't. Sorry. Now put down your damn pipes, shut up about "semantic web," and give me a better toolkit you bastards*!

      *but I suspect our answer will very soon be Silverlight and the W3C will be 100% marginalized.

    13. Re:When did AJAX stop sucking? by coryking · · Score: 1

      In case it hasn't been mentioned... if you turn off javascript and you aren't a search engine or a screen reader, I could care less about what happens. I'll test for accessibility and google, but I'm not going out of my way for people who deliberately break javascript. For example, the website in my URL. Google doesn't care about the images (I dont want them to) and blind people cannot see the images that pop up, leaving everybody who runs javascript able to look at the pictures. If you visit my site with javascript turned off deliberately, tough luck pal!

      Thank god you didn't say you disable cookies or I'd have to report you to the internet police :-)

    14. Re:When did AJAX stop sucking? by Pope · · Score: 1

      Most web apps really trip up Google.

      Most web apps don't need to be searched and indexed.
      --
      It doesn't mean much now, it's built for the future.
    15. Re:When did AJAX stop sucking? by aevans · · Score: 1

      I know, let's poke everyone's eyes out and saw off their left leg so we're all the same and the world's fair. While we're at it we could appoint a supreme dictator to equally distribute all wealth and have him appoint a committee of cronies to manage the economy. And maybe kill all the Jews and Jehovah's Witnesses to boot

  3. will AJAX development finally be easy? by doroshjt · · Score: 3, Interesting

    It already is. What is so hard about it?

    1. Re:will AJAX development finally be easy? by brunascle · · Score: 2, Informative

      i was thinking the same thing. there's all of about 5-10 methods/properties to learn, and then you just need to know basic DOM functions for the response. it's not hard at all.

    2. Re:will AJAX development finally be easy? by The+Clockwork+Troll · · Score: 2, Funny

      What is so hard about it?

      Not using it.

      --

      There are no karma whores, only moderation johns
    3. Re:will AJAX development finally be easy? by misleb · · Score: 2, Interesting

      Doing simple AJAX stuff is easy. Drag/drop a few lists. Insert a new div into the page... Anyone who's used Ruby on Rails knows that. The hard(ish) part is making an app that is completely AJAX. As in, loads from a single page and never refreshes after that. Though I haven't tried toolkits like GWT. Maybe using one of those is just as easy as developing a desktop application.

      --
      "THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
    4. Re:will AJAX development finally be easy? by Larry+Lightbulb · · Score: 4, Insightful

      Ok, point me to a place where I can pick up all the knowledge I need to use it, I've got a free afternoon. And I mean that seriously.

    5. Re:will AJAX development finally be easy? by jma05 · · Score: 4, Insightful

      The challenge is not technical. Devs need to change their mindsets while about thinking about web applications. I am not talking about putting an occasional AJAX widget. The change is from synchronous to asynchronous web applications. That's about as big a change as writing distributed applications for someone who mostly wrote 1-tier applications. Design is different as is debugging.

    6. Re:will AJAX development finally be easy? by truthsearch · · Score: 1
    7. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      It already is. What is so hard about it?

      Making it accessible? Also, to know when to use and to use it which is something a lot of devs seem confused about.

    8. Re:will AJAX development finally be easy? by Conception · · Score: 1

      Just download a framework and be done with it. http://www.prototypejs.org/

      It'll take about an afternoon to figure out the ins and outs and make it do what you want.

    9. Re:will AJAX development finally be easy? by mrami · · Score: 1

      So you don't know, then.

    10. Re:will AJAX development finally be easy? by truthsearch · · Score: 1

      Is this really hard? Or this? Or this?

      That's how must of us learned it.

    11. Re:will AJAX development finally be easy? by mrami · · Score: 1

      Maybe I have too much poitics in my life, but it was an evasive answer. I'm just sayin'.

      And even the links you give above don't answer the original question. They're just places you assume will answer the question. Unless you' know of a specific page in those results that try to teach AJAX in an afternoon.

      In which case, you could enlighten us, if you so choose...

    12. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      prototype sucks. use mootools.

    13. Re:will AJAX development finally be easy? by Dragonslicer · · Score: 2, Insightful

      Doing simple AJAX stuff is easy. Drag/drop a few lists. Insert a new div into the page... Repeat after me: DHTML/DOM manipulation has NOTHING to do with XMLHttpRequest.
    14. Re:will AJAX development finally be easy? by rhizome · · Score: 1

      It already is. What is so hard about it?

      I don't know, but as long as (surprise!) AJAX Magazine says "AJAX is awesome," I'm on the kool-aid bus whether it's easy or not!

      --
      When I was a kid, we only had one Darth.
    15. Re:will AJAX development finally be easy? by SnapShot · · Score: 2, Interesting

      Unable to focus on it to the exclusion of other Java development, I found GWT very hard to get used too. My fingers and brain want to write Java, but when in GWT you're really only writing a sub-set of Java 1.4. The lack of generics (which have become second-nature; I can't write "Set" without instinctively putting a "" after it) and of Java 5 support in general was very difficult to get over. For me it was harder than working in another language where I expect things to be different.

      Maybe, if GWT was re-released for OCaml (or some other language that I'd learn in conjunction with GWT) I might have an easier time working with it.

      That being said, GWT is a very powerful and very cool system and you can do a "single page" AJAX app that's fairly cross-browser compatible and never have to leave your Java environment. A little work with the existing maven plugins and you can deploy your complete app just like you'd build a Swing application (almost ;-)

      (P.S. My experience with GWT was last spring which is probably about 10 versions old so things may have changed...)

      --
      Waltz, nymph, for quick jigs vex Bud.
    16. Re:will AJAX development finally be easy? by SharpFang · · Score: 5, Insightful

      It is not quite as easy.

      Assuming you start from zero...

      The beginnings are easy. Learn basics of HTML and CSS. A week and you're intermediate. You still don't know all the hacks and caveats but you know quite enough.

      Learn basics of Javascript. Say, 3 days. Simple JS is easy. If you think all JS is easy, read some scripts by Douglas Crockford and see how wrong you were. But for a starter, you need simple JS.

      Then learn using DOM. This isn't all that hard. There are some caveats like some browsers inserting whitespace text nodes between tags and such, but that's all doable. One evening to master it.

      Learn some backend language. PHP probably. With some database too. Quite easy but the amount of knowledge you need to absorb is at least 2 weeks of learning.

      Next you learn basics of using xmlHttpRequest. This is one evening and you know how it works and you know there's no sense using it as-is.

      You spend the next afternoon picking an AJAX framework/library/toolbox and another day learning it.

      They you spend another year writing AJAX and learning how to properly react to unreliable connections and handle all kinds of errors, corrupted data, browser incompatibilities, how to protect your apps from script injection attacks or exploiting your application server by someone "from outside", deal with load ballancing on the server side, sharing scripts between domains, making the code non-conflicting with other JS and self (2 instances of the same AJAX-based tool on one page? It's broken more often than you think!), creating javascript files dynamically using PHP to allow better flexiblity of your app, parsing, traversing, modifying and extracting data from style sheets, interacting with Flash, Java and APIs of a dozen external services, writing XUL based apps, optimizing data for transfer, porting large parts of business logic to JS to offload your application servers, then finally using the advanced javascript where modifying system methods and objects is not a taboo anymore.

      Then you know AJAX.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    17. Re:will AJAX development finally be easy? by truthsearch · · Score: 4, Informative

      Fair enough. I was awfully obnoxious, so I should make up for it with some actual information.

      For a quick, but useful and accurate, starting point I like Mozilla's introduction.

      Then I recommend downloading and trying prototype. It saves the mundane tasks, makes code a little easier to read, and is used by other popular frameworks.

      Those cover the base scenarios. I haven't seen any good intermediate documentation. After the intros I suggest reading more reference documentation and just trying things out.

    18. Re:will AJAX development finally be easy? by brunascle · · Score: 2, Informative

      here's a good intro. this assumes you have a file time.asp on your site that just outputs the time.

      if, instead, time.asp outputs an XML file, in the code change .responseText to .responseXML, and from that you can use DOM functions (e.g. xmlHttp.responseXML.getElementsByTagName("time")[0].childNodes[0].nodeValue.

    19. Re:will AJAX development finally be easy? by misleb · · Score: 2, Insightful

      True, but there's little point in doing XHR if you're not manipulating the DOM. They go hand in hand. Together they make up "AJAX" as is commonly implemented. While doing XHR and manipulating the DOM are, in and of themselves, not particularly difficult, making a a truely rich desktop-like application using them can be tricky. Especially considering the relative sparseness of HTML with regards to application control.

      --
      "THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
    20. Re:will AJAX development finally be easy? by mrami · · Score: 1

      Cool!

    21. Re:will AJAX development finally be easy? by FranklinDelanoBluth · · Score: 1

      That's still not any harder than programming with any other language/platform combo. Each different area of programming has its own unique caveats and gotchas. For example, you'll also see problems of asynchronous programming and data corruption when doing low level driver development. This doesn't make AJAX (and web dev overall) any harder than general programming. (Though if you want to compare to just normal HTML, yes, I'll concede that it is harder.)

    22. Re:will AJAX development finally be easy? by mfnickster · · Score: 1

      Sorry, I followed that link and got sidetracked reading about Lojban.

      Now I've used up the whole afternoon and I still don't know anything about AJAX. :-/

      --
      "Slow down, Cowboy! It has been 3 years, 7 months and 26 days since you last successfully posted a comment."
    23. Re:will AJAX development finally be easy? by Just+Some+Guy · · Score: 2, Insightful

      porting large parts of business logic to JS to offload your application servers,

      Whoa, hey, full stop. I was with you until then, but... You're really trusting your business logic to the least controlled (both in the "security" and "standardized" sense) part of the stack? Ouch. Good luck, man.

      --
      Dewey, what part of this looks like authorities should be involved?
    24. Re:will AJAX development finally be easy? by pinkstuff · · Score: 1

      To me it's not that it is hard, it is that your page will never get cached properly by search engines if you AJAX'ify your pages. It also limits your target audience as, for example, mobile phones don't support AJAX. And it also has some accesibilty problems.

      If none of these things bother you, then AJAX is fine, and I would recommend something like ICEfaces. Unfortunately I personally have not come across a project that doesn't need one of the three main concerns I listed above.

    25. Re:will AJAX development finally be easy? by iamacat · · Score: 2, Informative

      I am sorry for the abuse you went through. I dabbled a bit with JavaScript and gave up when I found out that does not work in IE, even the latest version of IE7. So I installed http://code.google.com/webtoolkit/>gwt and gwt-ext and had the first page of my application running in a couple of days using nothing but the plain Java code. I create a tree of serializable Java objects on the server and get the same tree on the client and then use it to update my UI.

      My only complaint is crappy documentation. To understand gwt-ext I actually have to read the documentation of ext itself, with is Javascript based. I wish they copied the comments to javadoc. Then also to have a standalone text box on your page you need to put it inside a form and then set a bunch of options to make sure the form does not try to decorate the space around the text box in any manner.

    26. Re:will AJAX development finally be easy? by Serious+Callers+Only · · Score: 1

      The hard(ish) part is making an app that is completely AJAX.


      Forgive my ignorance if this is obvious, but why would you want to do that? Surely using AJAX should be a complement to traditional web pages, not a replacement. I like seeing the URL change as I browse different resources on the web, and as a user am repelled by apps which break my back button, don't let me save state, and basically break the web. This really annoys me about gmail - though I understand there that they're dealing with info you're not generally going to make public, so the lack of bookmarking ability doesn't matter so much. The old Apple store was a good example of how this really breaks the user experience. They have even put in a whole load of nonsense in the address (1-800-MY-APPLE/WebObjects/AppleStore.woa/wa in every url !!!!) to try to hide the fact they're stuffing gobbledygook in there when there should be state info. Very bad design. I think now they've fixed it up a bit so that you can at least bookmark or share an URL with a product range, if not a specific product.

      If your app loads only a single page, presumably it doesn't feature any resources that the user might want to refer to again with a URI, share with a URI, or otherwise come back to? The searches can't be saved except within your web app? It can't be cached by the web server/client? There are so many downsides to this and so few upsides. Interestingly, it seems Rails is moving more towards the opposite of this; exploring REST as a way of providing specific URIs for specific content, rather than trying to make web pages into a desktop application in a browser window.
    27. Re:will AJAX development finally be easy? by hobo+sapiens · · Score: 3, Informative

      How well do you know javascript?

      As someone else pointed out, XMLHTTPRequest is what makes AJAX tick. But without knowing Javascript, what are you gonna do with it?

      Assuming you are very good with javascript, here are two resources for you. 1 will help you see what the XMLHTTPRequest object does. 2 will help you tame it a bit and abstract things.
      [1]: http://w3schools.com/ajax/default.asp
      [2]: http://www.prototypejs.org/learn

      The thing is, the AJAX bit is a very small part of the total AJAX package. Then you'll need to learn JSON (a good data interexchange format) and how to use Javascript to create elements.

      There, now that I have provided what you asked for and not just some smart alek remark about how you need to google it, this has to be said...If you seriously expect to master a useful skill in an afternoon, then you have some expectation issues. If there's one thing life has taught me, it's that something worth having doesn't come in a day, and if it does come in a day, it's probably not worth much. Did you learn to program in one day? No? Then why would you expect to learn a complex object and a totally new technique for making web applications on one day? But if you really want to learn then you'll thank me for those links later when your web development reaches the next level. If you are just bashing AJAX with a cudgel of ignorance, then you'll ignore those links and keep griping about AJAX being too hard. I guess time will tell.

      --
      blah blah blah
    28. Re:will AJAX development finally be easy? by CandideEC · · Score: 2, Insightful

      You can skip of a lot of that crap if you just learn Java and use GWT. I mean *really*...is there any other option?

    29. Re:will AJAX development finally be easy? by iamacat · · Score: 0

      Yeah, I know what you mean. It's like when I had to write that application years ago and release it for MS-DOS, MacOS, Amiga and C64. Normally, I would have to write separate assembler code for each platform. But some dudes wrote a C compiler and graphics library that worked on all the platforms and released it for free. The trouble was that my fingers and brain wanted to write C++, but when in that compiler you could only use a sub-set of C. The lack of templates (which have become second-nature; I can't write "struct KeyAndVal" without instinctively putting "" after it) was very difficult to get over. For me it was harder than working in Cobol, where I expected things to be different.

      Maybe if that library was re-released for Prolog (or some other language that I'd learn at the same time as the library), I might have had an easier time working with it.

      As it is, we just released our application for MS-DOS and went out of business when DOS 4.0 broke all the hacks that we have been using.

    30. Re:will AJAX development finally be easy? by hobo+sapiens · · Score: 1

      I don't think you'll find any web developers who like IE. That said, what did you expect <img src="foo.gif" style="width: 50%;height:50%;"> to do? In other words, you wanted the width and height to be 50% of what? The image or the thing that contains it? I think maybe the browsers didn't do what you wanted it to and instead of finding out why you just gave up. The web is a great platform, but since browsers can be really sketchy, you need to understand why some things go wrong. This is essential. In programming languages like Java, an error results in a nice tidy error message. But since browsers *try* to render bad markup, instead of concise errors, you get weird behaviour that you have to figure out. Over time, it gets much easier. But that is why when you get unpredictable results, you need to figure out why. You can't just hack your way around it and move on, not if you want to learn.

      I don't know much about GWT (the fact that Google developed it is at least encouraging). But if it's like some of the other java based solutions that are designed to write HTML, I'd run away fast. If you want to be a web developer, then you need to learn the languages of the web (HTML, CSS, Javascript at the very least). I'd be shocked to find that GWT doesn't generate steaming piles of dung in place of good, clean, standards compliant markup, and that means you have all kinds of compatibility issues, accessibility issues, and code that is harder to maintain.

      --
      blah blah blah
    31. Re:will AJAX development finally be easy? by baggins2001 · · Score: 1

      I think this is part of the problem. I have already seen 3 database interfaces used internally where the coder didn't make allowances for how much data was being dumped on the client and what kind of clients he was dumping them on. So yes, learning the methods and properties is easy, but learning to constrain the usage of AJAX seems to be difficult. There is a little more to it than learning just the methods/properties and DOM functions.

      --
      He who said 1,000,000 monkeys on 1,000,000 typewriters would eventually type the great novel, never saw an AOL chat room
    32. Re:will AJAX development finally be easy? by rmerry72 · · Score: 1

      The hard(ish) part is making an app that is completely AJAX. As in, loads from a single page and never refreshes after that.


      Why would this even be a goal? What would be the point? What are you trying to accomplish? What's wrong with the browser loading pages? Isn't that the whole purpose of a browser? Otherwise build your own downloadable GUI and use whatever client/server protocol you like.

      --
      We do not inherit the Earth from our parents. We borrow it from our children.
    33. Re:will AJAX development finally be easy? by iamacat · · Score: 1

      The image tag is in a div with dimensions set in points. CSS standard is quite clear on the meaning of the styles in this context and I tried various combinations of position:absolute and position:relative on div and the image to no avail. IE's actual behavior is to either not scale the image or sometimes to not display it at all. The result depends on container hierarchy and other styles of the image. I think in cases where browser's behavior is so flaky and not easily documentable or worked around, it's better to use an automated code translator like GWT than try to memorize all the counterintuitive cases. It would be even better not to use the defective product at all, but that is hard when the vendor has a monopoly status.

    34. Re:will AJAX development finally be easy? by sackeri · · Score: 5, Informative

      You just can't say it any better than that.

      From a lot of the comments I get the impression that most people really don't get it. AJAX is incredibly useful, but it's mostly a really clever hack. The need for dynamically updating elements on the web page is definitely there, and AJAX manages to fill that need somewhat. But Javascript/DOM + XML/HTML is a terrible set of tools to build GUI widgets with.

      AJAX works by sweeping the nitty-gritty details under the rug, but scratch the surface, and you realize how filthy the whole thing is. The first time you try to use a cool feature of your favorite GUI widget, and expect it to work the way your favorite desktop widget does, the cool-factor quickly degrades into frustration. Even with some of the best libraries out there, they still don't seem to have the problem licked.

      It's amazing how far we have gotten with the tools available, but there really is a threshold forming due to these weaknesses. I'm not smart enough to envision how to get there, but there really needs to be a fundamental change that better integrates these technologies. Otherwise we're gonna be in spaghetti-code hell for a quite some time to come.

    35. Re:will AJAX development finally be easy? by hobo+sapiens · · Score: 2, Informative

      Please do not take offense, but the fact that you tried using the position property shows that you don't really understand CSS that well. That's not meant as an insult, just a statement of (apparent) fact. I just wrote a very simple page (just a div and image tag, no doctype or anything) that had this content:

      <div style="width:40pt;height:40px;border:solid;">
          <img src="foo.png" style="width:50%;height:50%;" />
      </div>


      That displayed the image correctly in Firefox and IE6, the image's dimensions being 50% of the div's width and 50% of the div's height. Not that you *should* use points for dimensions, but that's just in keeping with what you said you did.

      That said, browser behavior is very flaky. Your frustration is not unjustified. Especially with IE. IE sucks. There's not much more to say about it.

      "It would be even better not to use the defective product at all, but that is hard when the vendor has a monopoly status."
      Preaching to the choir, dude.

      --
      blah blah blah
    36. Re:will AJAX development finally be easy? by misleb · · Score: 1

      Forgive my ignorance if this is obvious, but why would you want to do that?


      For applications that are richer and more responsive than traditional, page refreshing apps. Webmail and calendaring, for example. Also, administrative interfaces for various hardware such as routers, network copiers, etc. These things don't work very well with document oriented interfaces, IMO.

      Surely using AJAX should be a complement to traditional web pages, not a replacement. I like seeing the URL change as I browse different resources on the web, and as a user am repelled by apps which break my back button, don't let me save state, and basically break the web. This really annoys me about gmail - though I understand there that they're dealing with info you're not generally going to make public, so the lack of bookmarking ability doesn't matter so much. The old Apple store was a good example of how this really breaks the user experience. They have even put in a whole load of nonsense in the address (1-800-MY-APPLE/WebObjects/AppleStore.woa/wa in every url !!!!) to try to hide the fact they're stuffing gobbledygook in there when there should be state info. Very bad design. I think now they've fixed it up a bit so that you can at least bookmark or share an URL with a product range, if not a specific product.


      What's wrong with Gmail in this regard? What do you want to bookmark in Gmail? I don't necessarily think that all the web should turn into AJAX stuff, but there are certainly instances where a platform neutral, no-local-install desktop-like app is very convenient. And since Java has apparently failed to deliver on that front, I look to web browsers.

      Then again, I'm almost always going to prefer using a native desktop app if it exists. I mean, Gmail is good for what it is, but when I'm sitting at my own computer, I'm running Apple Mail and aggregating several mailboxes into a single place (thank you Google for implementing IMAP!).

      If your app loads only a single page, presumably it doesn't feature any resources that the user might want to refer to again with a URI, share with a URI, or otherwise come back to? The searches can't be saved except within your web app? It can't be cached by the web server/client? There are so many downsides to this and so few upsides. Interestingly, it seems Rails is moving more towards the opposite of this; exploring REST as a way of providing specific URIs for specific content, rather than trying to make web pages into a desktop application in a browser window.


      Indeed, the vast majority of my experience programming with AJAX is through Rails. Rails makes it fairly straightforward to fall back to non-ajax behavior. But at the same time, it would be fairly difficult to implement a Gmail-like app if only because Rails provides few of the client side application controls beyond the basic HTML inputs.

      -matthew

      --
      "THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
    37. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      Prototype and mootools suck, use jQuery.

    38. Re:will AJAX development finally be easy? by Wookietim · · Score: 0

      I never have seen anything that difficult. We don't need "Javascript 2.0" - we need developers who are willing to type a few lines of code rather than just point and click.

      --
      http://timcol6.freehostia.com/
    39. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      Otherwise we're gonna be in spaghetti-code hell for a quite some time to come. Absolutely correct on all counts. But I don't think it's only a fundamental change in the technologies. I think it's a matter of education and people actually taking the time to learn and do things properly.

      I find it amazing the lax effort people actually put into learning web languages and techniques to wield them correctly. As the other poster stated "PHP is easy, 2 weeks of training..." yada yada yada. (Please don't tell me you have "Programmer" on your resume!) Yes, for those who have been working with object oriented languages, understand design patterns such as MVC, abstraction layers, etc, PHP (referring to PHP5) is powerful and simple to pick up. You'll be on your way in no time. But to suggest that your average web designer can go from HTML to JS to PHP with AJAX is asinine and just leads to heavily bloated web applications / sites with logic all intertwined and embedded into HTML every which way and everything hardcoded down to a T. Not to mention all the ripped code from all the script kiddie sites added to the mix.

      So yes, we definitely will be in spaghetti-code hell for a very long time. But it's easy to get out..just take the time to learn and for the love of god,...stop cutting and pasting scripts online.
    40. Re:will AJAX development finally be easy? by beallj · · Score: 1

      ...and as a user am repelled by apps which break my back button, don't let me save state, and basically break the web. This really annoys me about gmail - though I understand there that they're dealing with info you're not generally going to make public, so the lack of bookmarking ability doesn't matter so much...

      Google is aware of these issues, and has actually fixed them in the Gmail interface a month or so ago. You can bookmark emails and searches as well as actually using the browser's back and forward buttons. Check it out.

    41. Re:will AJAX development finally be easy? by Larry+Lightbulb · · Score: 1

      No, I don't expect to learn everything in an afternoon (& it turned out I've been busy, so couldn't have), my comment was a response to the idea that AJAX is easy.

      Some people may find it easy to write an AJAX solution for something, but as your posting and others point out, there's a lot of learning to do before you can get to that stage. Anyone can be a concert violinist if they're willing to spend eight hours a day practicing.

      And to me, that stops it being easy.

    42. Re:will AJAX development finally be easy? by Larry+Lightbulb · · Score: 1

      I quite like jquery,and the tutorials and demos they have on the site are written for all levels of experience and quite straight-forward to follow.

    43. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      Using javascript and html to build rich client side apps is like using bash scripts to build web applications, possible, but ridiculous. Ubiquity and feasability == long term madness.

      HOW DID WE GET HERE?

    44. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      The person who said that is a website builder. Many a time have I had to catch myself saying "then i'll just design an ergonomic interface..."

    45. Re:will AJAX development finally be easy? by Serious+Callers+Only · · Score: 1

      For applications that are richer and more responsive than traditional, page refreshing apps. Webmail and calendaring, for example. Also, administrative interfaces for various hardware such as routers, network copiers, etc. These things don't work very well with document oriented interfaces, IMO.

      I see where you're coming from. I agree AJAX can make a huge difference to the experience of those apps, and welcome it, but in conjunction with URI based addressing I think it works great - as a replacement, not so much. For example in a calendar app it's nice to be able to share the url of a particular event with others, bookmark, and navigate through your browser history. Having everything all on 'one page' implies you wouldn't be able to do that.

      I don't use gmail a great deal (hadn't noticed that they've fixed this issue recently as another poster pointed out), however I'd like to be able to bookmark searches and messages, just to name two things. Plus it'd be nice if something like a contact was at a specific url, rather than just mail.google.com and some glob of session data that I don't care about. I use desktop mail too, but when using webmail prefer gmail, in spite of the shortcomings.

      Rails makes it fairly straightforward to fall back to non-ajax behavior. But at the same time, it would be fairly difficult to implement a Gmail-like app if only because Rails provides few of the client side application controls beyond the basic HTML inputs.

      Well, I don't think it's a binary choice, and there are very important concepts in the non-ajax world which should not be jettisoned when using AJAX- foremost among them the concept of URIs, resources and pages, Get, Post, Delete etc, which offer a whole load of functionality and interoperability for free, which you don't get if you create an app which has one page and only exposes its state to the user through changes to the HTML of that page, rather than changes to URIs. If you do what you're suggesting you end up with something very like a flash application.
    46. Re:will AJAX development finally be easy? by SnapShot · · Score: 1

      You think I was complaining about GWT? I like GWT and I thought I made it clear with the whole "GWT is very powerful and very cool" comment . But, anyway, your response technique was very clever and added immensely to the conversation. Thanks!

      --
      Waltz, nymph, for quick jigs vex Bud.
    47. Re:will AJAX development finally be easy? by hobo+sapiens · · Score: 1

      You are confusing easy to use with easy to learn.

      Some things are easy to learn. Other things are easy to do once you've learned them. Checkers is easy to learn. Five minutes and you've got the gist of it. Reading is difficult to learn. It takes years to become an effective reader. Yet, once you've learned to read, reading is relatively easy. A programming language, or in this case, a programming methodology, can be difficult to learn. But once learned, it becomes easy to use.

      Writing AJAX apps is easy, don't let your ignorance fool you. It's not easy to learn how to do it properly, but once you've learned it is easy. If you do not know how to use it, then you are really in a poor position to judge its ease of use.

      --
      blah blah blah
    48. Re:will AJAX development finally be easy? by The_reformant · · Score: 1

      It is not quite as easy.

      Assuming you start from zero...
      But very few people need to start from the beginning most people have some experience with web development of the non 2.0 variety already. Once you have been introduced to xmlHttpRequest the rest is a case of reading docs and good design which should be language / platform agnostic. The main problem with the web 2.0 stuff is that it is a disparate set of loosely coupled technologies which makes it fiddly to develop with.

      There is some interesting noises coming out of Volta http://feeds.feedburner.com/~r/ajaxian/~3/197872651/gwt-and-volta abstracting the actual runtime location of arbitrary code is a really great idea and we've seen some baby steps towards this already with GWT and Gears.
      --
      I have discovered a truly remarkable sig which this post is too small to contain.
    49. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0

      Same here. One of the surprises Slashdot offers now and then -- I had never heard a whisper about "Lojban" before now. Looks quite interesting :-)

    50. Re:will AJAX development finally be easy? by TBox2000 · · Score: 1

      I've been developing AJAX for almost a year and still haven't figured out why my IE throws JS Errors when i try to use responseXML when it works fine in Mozilla / Others.

      I've searched and searched and haven't received a satisfactory answer. Can SlashDot help?
      NB Here is the responseXML in action:
      http://w3schools.com/ajax/ajax_responsexml.asp

      Thanks

    51. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0
    52. Re:will AJAX development finally be easy? by Joebi · · Score: 1
    53. Re:will AJAX development finally be easy? by SharpFang · · Score: 1

      Not ALL of the business logic of course.

      What needs to be kept secure, is kept secure, server side. But a lot of the presentational layer and lots of the glue logic between raw data and the presentational layer can be moved to client side.

      You don't send a GIF with a graph. You send raw data, and let the client side software to generate captions, calculate scale, find top value and trend lines, then feed the result to a flash library that will create a pretty graph from it. You don't send every single junk character the user types to the server. You perform client-side validation, discard invalid input. Then you repeat exactly the same validation server-side, but you accept 99% of the input, and pay close attention to users whose input didn't validate (because they are trying to hack you) instead of discarding 50% of entries server-side. Your server load halves. Your only danger is that you expose your checks to the public, so your 'security through obscurity' suffers.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    54. Re:will AJAX development finally be easy? by SharpFang · · Score: 1

      Not really.

      This is programming 2 languages and 2 platforms (with one in at least 3 slightly incompatibile variations) plus epsilon.

      Way too many people neglect the server side part of AJAX as 'trivial'. It is often just as tricky or trickier than the front end part of the business (note the JS part can not be trusted so you MUST implement all of the security checks server-side (while often keeping them client-side redundantly) and put a clear and well-defined line between the secure and insecure parts (which is often quite difficult). So you have one platform: the server, and one language: the server-side CGI language (PHP, Ruby, Java etc)

      Then there's the client-side language (Javascript) and the client-side platforms - the browsers. And their incompatibilities alone are enough to give a headache to everyone.

      The 'epsilon' is the glue between the platforms, AJAX transport - XML, JSON or whatever you choose. Luckily these are rather easy comparing to the rest.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    55. Re:will AJAX development finally be easy? by Just+Some+Guy · · Score: 1

      You don't send a GIF with a graph. You send raw data, and let the client side software to generate captions, calculate scale, find top value and trend lines, then feed the result to a flash library that will create a pretty graph from it.

      Ah, gotcha. That makes sense. Done anything with SVG?

      --
      Dewey, what part of this looks like authorities should be involved?
    56. Re:will AJAX development finally be easy? by SharpFang · · Score: 0, Redundant

      2 weeks is time since picking up the book till you can start writing your first PHP app.

      And your app will be obviously of the 'my first app' quality.

      The whole point of my post was that you need a month to get from zero to "Yay, I know how to write AJAX" level.
      Then you need another 2-3 months to realize "I don't really know AJAX at all."
      Then another year to really know it.

      (this is assuming you're working on AJAX full-time, not 'in between other projects'.)

      Yes, I have 'Programmer' on my resume.

      No, I don't really know AJAX. I just know how much I don't know.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    57. Re:will AJAX development finally be easy? by SharpFang · · Score: 1

      Yep. It's fun. Too bad well over 50% of the users don't have it. (yeah, -I- know there is a MSIE plugin...)

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    58. Re:will AJAX development finally be easy? by Esther+Schindler · · Score: 1

      In some ways, AJAX is easy. But if you get into a non-trivial programming exercise, such as building an entire site relying on all sorts of data inputs, the typical developer tools don't necessarily help you along. Yes, the options (FOSS and proprietary) are getting better, but there's still a long way to go before it's precisely easy to write a useful quick-and-dirty app the way that, say, you can throw together a desktop database tool today.

      That's not just my opinion. It was the opinions of some of the tool builders themselves, when I interviewed them for Beyond Ajax: Software Development, Two Years from Now a few weeks ago. In Making Development Less Difficult: Interceding with the Browser Gods

      While Ajax is clever and useful, it isn't easy and it has limitations. Scott Guthrie, Microsoft general manager, .Net development platform, says, "Ajax itself is built on top of an innocuous HTML feature; the programming model wasn't built to scale for that." JavaScript performance is an issue as applications get bigger and need to be maintained. Plus, he points out, these applications are "weirdly stitched together."

      As a result, says Bob Brewin, Sun's software CTO, doing Ajax is really painful, "like building an aircraft carrier by hand." Hand-coded Ajax development today requires a large skill set, so several interesting technologies have materialized to simplify it.

    59. Re:will AJAX development finally be easy? by mysqlrocks · · Score: 1

      Ok, point me to a place where I can pick up all the knowledge I need to use it, I've got a free afternoon.

      Here are few options using my choice for a JavaScript library:

    60. Re:will AJAX development finally be easy? by Anonymous Coward · · Score: 0
    61. Re:will AJAX development finally be easy? by hobo+sapiens · · Score: 1

      I stopped worrying about that kind of stuff when I started using the prototype javascript library. It is easy to use and it Just Works. I've used it in a production environment for...I think ~2 years now. I normally detest using other peoples' third party javascript libraries. Prototype is a notable exception to my roll-your-own approach. I cannot say enough good things about it.

      --
      blah blah blah
    62. Re:will AJAX development finally be easy? by magi · · Score: 1

      Though I haven't tried toolkits like GWT. Maybe using one of those is just as easy as developing a desktop application. GWT is the #1 solution for programming anything bigger than tiny in the browser, as it allows using Java for programming and takes care most of the browser incompatibilities. GWT does not, however, provide a the server-side programming framework.

      If you really want to have AJAX programming as easy as developing desktop applications, try IT Mill Toolkit (http://www.itmill.com/). Programming is very similar to Swing or SWT, except that the application runs on a Java server and you kind of use a web browser as a terminal. IT Mill Toolkit uses GWT for the client-side stuff, but you don't need to even know about that in most cases, except if you want to customize the client-side, for example, to create or integrate new GWT widgets.

      It can't really get much simpler than this:

      public class HelloWorld extends com.itmill.toolkit.Application {
          public void init() {
              Window main = new Window("Hello window");
              setMainWindow(main);
              main.addComponent(new Label("Hello World!"));
          }
      }
      And that's automatically fully AJAX-enabled. Well, there isn't any user interaction in this app, but programming it is identical to desktop apps.
    63. Re:will AJAX development finally be easy? by magi · · Score: 1

      The change is from synchronous to asynchronous web applications. That's about as big a change as writing distributed applications for someone who mostly wrote 1-tier applications. Design is different as is debugging. Actually, there is a solution for that. Take the architecture of IT Mill Toolkit, for example. The application UI logic runs on server-side, and AJAX is just used to turn the web browser into a thin client or a terminal. The architecture basicly makes the client tier invisible to application logic so that programming is practically identical to 1-tier (desktop) applications.

      public class HelloWorld extends com.itmill.toolkit.Application {
          public void init() {
              Window main = new Window("Hello window");
              setMainWindow(main);
              main.addComponent(new Label("Hello World!"));
          }
      }
      And that's a fully AJAX-enabled application. Well, there isn't any user interaction or complex widgets in this program, but you get the idea. Check out the demos for better examples. Some widgets, such as the Table, load just the visible part of the table to the browser, and when the user scrolls the table, it loads more stuff dynamically. So, doing AJAX doesn't require you to bother with AJAX programming.

      Debugging IT Mill Toolkit applications is also identical to debugging desktop applications. Just use your favorite IDE, such as Eclipse, to debug the server-side application. If you develop your own client-side widgets, you can do debugging with the GWT Hosted Mode Browser (and Eclipse or some other IDE). IT Mill Tookit's client-side is written with Java and compiled with GWT to JavaScript that runs on the browser.

      This is really the direction where AJAX programming will go.

      Disclaimer: I work for the company, yada yada.
    64. Re:will AJAX development finally be easy? by magi · · Score: 1

      If you're already into GWT, try out IT Mill Toolkit. It lets you do the same as GWT, but you don't need a separate server-side application: you only write the server-side and the toolkit does the client-side. So, it really simplifies application development. If you have some GWT widgets that you would like to integrate, or to modify some of the standard widgets, the client-side code of IT Mill Toolkit is GWT.

      Disclaimer: I work for the company.

    65. Re:will AJAX development finally be easy? by magi · · Score: 1

      AJAX is incredibly useful, but it's mostly a really clever hack. The need for dynamically updating elements on the web page is definitely there, and AJAX manages to fill that need somewhat. But Javascript/DOM + XML/HTML is a terrible set of tools to build GUI widgets with. [...] there really needs to be a fundamental change that better integrates these technologies. May I suggest: IT Mill Toolkit. It let's you develop application logic on the server-side in a way almost identical to programming desktop applications. You can forget JavaScript, DOM, XML, AJAX, and even HTML. The applications simply load a client-side adapter into the browser that forwards most user events to the server-side application with AJAX calls, and handle only very limited user interaction in the browser. If you need to customize the client-side, for example, to create some widgets, you can use Java and compile it to JavaScript with GWT.

      The first time you try to use a cool feature of your favorite GUI widget, and expect it to work the way your favorite desktop widget does, the cool-factor quickly degrades into frustration. I think the only difference (at least with IT Mill Toolkit) is that the appearance of widgets is defined with CSS instead of API methods. That gets you a bit involved with HTML, so it's a bit bothersome, but the advantage is that you get to separate the appearance from the code. And that's very useful, as the graphics designer can do the theming without getting involved with programming. So it's a trade-off.

      Disclaimer: I work for the company.
  4. Ajax will be obsolete before it becomes mainstream by Anonymous Coward · · Score: 0

    As anything but a way to make webpages slightly interactive, Ajax will never become mainstream. Ajax as an application platform has no chance against Silverlight and Flash/Flex. The complexity of Ajax is inherent to the display control: HTML is simply too convoluted for application development.

  5. Re:Web is bloated. by gowakuwa · · Score: 0, Offtopic

    Now why does slashdot eat my tags when I post as Plain Old Text?

  6. Reduce the Quirks and Exceptions to HTML/CSS by JoeCommodore · · Score: 3, Insightful

    Probably the biggest thing I see is that we live with a 'quirky' web where you write an HTML/CSS document and have to adjust for problems with one browser or another (or not support some because of such things), while the use of standard libraries and tools have provided automatic solutions for much of the quirks they still limit the possibilities.

    --
    "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
  7. HTML skills are a commodity? by Bogtha · · Score: 3, Insightful

    On what timeline will AJAX skills become commoditized like HTML skills became?

    It seems to me that developers that can write decent HTML are still an extreme minority. I still see href="javascript:", "<div> s are better than tables for layout", a chronic amount of invalid code, and all kinds of other idiocy all the time. Sure, if you want monkeys to throw tag soup all over the place it's not hard to find them, but that doesn't mean they know what they are doing or that it's easy to find people who actually understand HTML.

    --
    Bogtha Bogtha Bogtha
    1. Re:HTML skills are a commodity? by Yetihehe · · Score: 1

      <div>'s are better than tables for layout
      If only tables still supported height attribute... I'm just php/js programmer, but I still often have to do complete reworking of templates (often to tables) if I need to make dynamic template from some designer's work.
      --
      Extreme Programming - Redundant Array of Inexpensive Developers
    2. Re:HTML skills are a commodity? by blincoln · · Score: 1

      I still see href="javascript:",

      How else would you like people to make clickable text that executes a JavaScript method, and how would it be better than that approach?

      " s are better than tables for layout"

      Uh, DIVs are better than tables for layout. They let the designer create more elaborate layouts more efficiently than tables, but they also make even simple layouts much more consistent and easy to implement.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    3. Re:HTML skills are a commodity? by Anonymous Coward · · Score: 0

      Repeat after me: tables are not intended, nor suited, for layout.

    4. Re:HTML skills are a commodity? by Frosty+Piss · · Score: 4, Insightful

      Repeat after me: tables are not intended, nor suited, for layout.
      What a particular tag was meant for when it was first implemented is entirely irrelevant as to if it can be effectively used to do something.
      --
      If you want news from today, you have to come back tomorrow.
    5. Re:HTML skills are a commodity? by brunascle · · Score: 2, Informative

      How else would you like people to make clickable text that executes a JavaScript method, and how would it be better than that approach?
      use the onclick attribute, with return false at the end to cancel the href. that way, you can use the href for a URL to degrade gracefully. for example, if it's opening a popup window, have the href be the URL of the page that loads in the popup.
    6. Re:HTML skills are a commodity? by thomthom · · Score: 1

      I strongly disagree that divs over tables for layout is idiocy. Making a layout neutral HTML is essential in order to get your site working with browsers, screenreaders, print, not to forget the rapidly increasing number of handheld devices accessing the web now. And with mashup services popping up and more and more tool utilizing microformats, proper semanic is more important than ever.

    7. Re:HTML skills are a commodity? by Bogtha · · Score: 4, Insightful

      How else would you like people to make clickable text that executes a JavaScript method, and how would it be better than that approach?

      Add an event handler to a normal <a> element with a proper href attribute. It works when JavaScript is switched off, it works when your event handler has an error, it works when you try to open something in a new tab or window, it works when the browser doesn't support whatever it is you are trying to do in your event handler, it just plain works.

      DIVs are better than tables for layout.

      No, they aren't. They are absolutely useless for layout.

      They let the designer create more elaborate layouts more efficiently than tables, but they also make even simple layouts much more consistent and easy to implement.

      You have confused the <div> element type with CSS. They are totally different things.

      This is not pedantry. If you are thinking that layout is somehow achieved with <div> elements, then you are looking at things completely upside-down. You use the most appropriate element type for the information at hand, whether that's a table, a list, a paragraph, or whatever. You then arrange those elements with CSS. The particular element types you've used are not relevant to the layout. If you think <div> elements are in any way interesting for layout purposes, then you don't understand how the whole picture fits together.

      --
      Bogtha Bogtha Bogtha
    8. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      I never said they were.

      --
      Bogtha Bogtha Bogtha
    9. Re:HTML skills are a commodity? by cbart387 · · Score: 1

      Uh, DIVs are better than tables for layout. Maybe if you're designing for a single browser. If you have a wide audience, and have to code for multiple browsers/versions divs don't always work. Sometimes you have to do ugly hacks to get it looking consistent. I'm normally about my code looking nice, but I'd rather that the user can see the website how I want it to look then for it to look 'perfect' in a 'View Source'.
      --
      Lack of planning on your part does not constitute an emergency on mine.
    10. Re:HTML skills are a commodity? by Bogtha · · Score: 1, Insightful

      I strongly disagree that divs over tables for layout is idiocy.

      It is idiocy because it shows a complete lack of understanding of the separation of content and presentation. <div> elements are content, not presentation.

      Saying that <div> elements are for layout is exactly the same mistake as saying that tables are for layout. The consequences are less severe because the <div> element type has almost no associated semantics to pervert, but it's still the same mistake.

      --
      Bogtha Bogtha Bogtha
    11. Re:HTML skills are a commodity? by Osty · · Score: 5, Informative

      This is not pedantry. If you are thinking that layout is somehow achieved with <div> elements, then you are looking at things completely upside-down. You use the most appropriate element type for the information at hand, whether that's a table, a list, a paragraph, or whatever. You then arrange those elements with CSS. The particular element types you've used are not relevant to the layout. If you think <div> elements are in any way interesting for layout purposes, then you don't understand how the whole picture fits together.

      A div is just a non-semantic block (just like a span is a non-semantic inline bit, though of course either of those could be changed by CSS). A table is very specific. Semantically, only tabular data should go into a table, and thus tables are completely wrong for layout. Divs, on the other hand, do make sense. For example, you're building a page with two columns, perhaps for a nav sidebar and a main content area. You have two separate components to your page, but they don't have any semantic meaning other than being blocks to put stuff (that is, they're not tabular data, list data, paragraphs, headings, etc). In that case, a div (short for "division", as in "page division" or something logically separate from other bits on the page) is absolutely correct to use. So now you have two divs on your page, one for the sidebar and one for the content. Using CSS, you can make these look however you like. Put the sidebar on the left or right, it doesn't matter (can't do that with a table without editing content). Put the "sidebar" along the top or bottom of the content area (can't do that with a table without editing content, either). Obviously that's CSS's doing, but you need something to work with in order to style appropriately. Within the sidebar, you have semantic data, as nav data can be considered a list. Within the content division, you have semantic data consisting of paragraphs, headings, etc. If you modelled your page as a table with a single row, with the sidebar being one cell and the content being another cell, your page is not semantic. Modelling it with divs, it is.

      Divs can definitely be over-used. There are a lot of specific layouts that require wrappers and such, which usually means using divs. While you can avoid much of that, there's still some tag soup required if you want specific layouts with today's browsers, and you just have to deal with the fact that reality is intruding on your perfect little world. For my part, I would much rather have two divs wrapped in a third in order to do a two-column page layout than have a single table with columns as cells in the table.

    12. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      tables are completely wrong for layout.

      I have not said otherwise. Please pay attention to what I say rather than attempting to read between the lines.

      For example, you're building a page with two columns, perhaps for a nav sidebar and a main content area. You have two separate components to your page, but they don't have any semantic meaning other than being blocks to put stuff (that is, they're not tabular data, list data, paragraphs, headings, etc). In that case, a div (short for "division", as in "page division" or something logically separate from other bits on the page) is absolutely correct to use.

      Yes, and what was the motivation for using <div> elements? If it was because you have two separate components without a more appropriate element type to describe them, then that's a structural issue, not a layout issue. If it was because you are building a page with two columns, then you are screwing up and don't understand HTML. Either way, saying that "divs are better for layout" is not a sensible thing to say.

      --
      Bogtha Bogtha Bogtha
    13. Re:HTML skills are a commodity? by jddj · · Score: 1

      Not sure, but I think parent's point was that the <div>s aren't actually doing the layout - in fact, they're containing (and thus identifying) certain desired blocks of content. You're applying layout with CSS, not with divs, and with CSS, you're applying layout to <div>s, <p>s, <h1>s and the rest...

    14. Re:HTML skills are a commodity? by Palinchron · · Score: 1

      So how do I create a tabular layout for non-tabular data without using a table? Say, two columns - nav sidebar and main content area - having equal, but liquid height (let's say I'd like the column borders to line up)?

      --
      The lesson here is that a sufficiently large corporation is indistinguishable from government. --ultranova
    15. Re:HTML skills are a commodity? by Lord+Ender · · Score: 1

      For an AJAX project, the ability to work with javascript disabled is a moot point--thus invalidating your event handler argument.

      To the CSS, div, and table contention: You seem to be completely unaware of the fact that clients pay for the way the page/app LOOKS, not for strict adherence to HTML/CSS philosophy. In the real world, aesthetic-only divs are sometimes necessary to produce the look the client wants--to win the contract. Being a CSS purist is of little value when you are unemployed.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    16. Re:HTML skills are a commodity? by LordLucless · · Score: 2

      Wake me up when the semantics of a tag changes the way it renders in the browser. Alternatively, give me a call when something other than a table-cell supports the vertical-height attribute, or there's an easy, cross-browser, standard-compliant way to make a div only use the minimum amount of vertical space required for it's content the way a table does by default.

      I would prefer to write semantic code, but there's just too many bizarre design decisions made in the development of CSS and the float model, and far too many browser incompatibilities.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    17. Re:HTML skills are a commodity? by Bogtha · · Score: 2, Insightful

      For an AJAX project, the ability to work with javascript disabled is a moot point--thus invalidating your event handler argument.

      Did you read past the first few words? I gave examples of opening links in a new tab or window. This is a problem for javascript: links regardless of whether Javascript is switched on or off.

      In any case, why is the ability to work with JavaScript disabled a moot point just because Ajax is used? Just because you use Ajax, it doesn't mean that you need to give up on situations where JavaScript is disabled.

      You seem to be completely unaware of the fact that clients pay for the way the page/app LOOKS

      We're talking about how well a developer understands HTML, your tangent about what clients pay for is irrelevant to that.

      --
      Bogtha Bogtha Bogtha
    18. Re:HTML skills are a commodity? by B3ryllium · · Score: 1

      And what do you use for layout? Clay tablets?

    19. Re:HTML skills are a commodity? by Osty · · Score: 1

      So how do I create a tabular layout for non-tabular data without using a table? Say, two columns - nav sidebar and main content area - having equal, but liquid height (let's say I'd like the column borders to line up)?

      There are ways to do that (example 1, example 2, example 3, example 4, and so on). Some are hackier than others, each one has its own set of quirks and restrictions, but then table-layouts have their own issues and drawbacks as well.

    20. Re:HTML skills are a commodity? by Osty · · Score: 2, Insightful

      Yes, and what was the motivation for using elements? If it was because you have two separate components without a more appropriate element type to describe them, then that's a structural issue, not a layout issue. If it was because you are building a page with two columns, then you are screwing up and don't understand HTML. Either way, saying that "divs are better for layout" is not a sensible thing to say.

      Now you're just being pedantic. Obviously it's the CSS that positions things in your layout, but when discussing table layouts versus CSS layouts, most people will call the latter "div layouts" just because it's easier to understand ("I laid out all of my stuff using table cells. What should I use if I can't use those?" "Divs styled by CSS"). If you're doing a layout that would traditionally require a table, you have several blocks of information that need to be positioned correctly. Those blocks usually don't have any semantic meaning other than "I'm a block", in which case divs are appropriate. I'm going to lay out my page using CSS regardless, so if not divs then what? Spans marked as display: block?

    21. Re:HTML skills are a commodity? by hobo+sapiens · · Score: 1

      Eh, I don't know if that's entirely true. Maybe true in a VERY pragmatic sense only.

      A screwdriver can also pry nails out of a 2x4. That doesn't mean you should do it. You will probably impale your hand.
      A flamethrower can light the candles on your kid brother's birthday cake. But you might light grandma on fire.

      Using HTML elements for things that are not quite correct might work on the browser you are using. Why, I could use <label> tags to lay out an entire site and use CSS to make it look ok in mainstream web browsers. That doesn't mean another user agent or screen reader won't totally freak out upon seeing it.

      Table are necessary for some layouts. I have a site where it is just impossible to avoid using a simple table for layout. But you should know that it is semantically a faux-pas to do so. Part of being a professional is to know the rules and also to know when to break them.

      --
      blah blah blah
    22. Re:HTML skills are a commodity? by Bogtha · · Score: 2, Insightful

      Now you're just being pedantic.

      No, it's not pedantry. This isn't merely a case of wrong terminology, it's a sign that a developer is looking at something in a completely upside-down way.

      most people will call the latter "div layouts" just because it's easier to understand

      "Div layouts" is not easier to understand than "CSS layouts".

      "I laid out all of my stuff using table cells. What should I use if I can't use those?" "Divs styled by CSS"

      If you tell people to replace layout tables with divs, then you don't understand HTML. You replace layout tables with the most appropriate element type available.

      I'm going to lay out my page using CSS regardless, so if not divs then what?

      I'm not telling you not to use divs. I'm telling you that you are confusing content and presentation. What element types you use is not a layout issue.

      --
      Bogtha Bogtha Bogtha
    23. Re:HTML skills are a commodity? by hobo+sapiens · · Score: 4, Insightful

      Ah, the old divs vs tables flamewar.

      I used to be on the side of using semantically neutral elements like divs and css to specify layout.

      Most layouts work fine with semantically neutral elements (divs). Some don't. I have used tables for layout in one or two cases, but not before trying VERY hard to make a purely CSS driven solution. To approximate it using no tables, I'd have to put javascript in my CSS expressions to make IE simulate min-width and min-height, among other things. Since that's a clever but ultimately sucky solution, tables won out. We're talking very specific layouts here. Usually you shouldn't need tables.

      I said it in another nearby post, but I'll say it again here: being a professional is knowing the rules. Another part of being a professional is knowing when to break them. Yes, using tables for layout is a semantic faux-pas. But sometimes it makes the most sense.

      If you find yourself having to cobble together a collections of hacks to make a certain layout work without tables, then you either need to abandon the layout, or if you cannot, use tables. Semantically incorrect, but it's better than some of the hacks that you have to use to work around browser (IE) flakiness. I am not talking about wrapping floating divs in a container with negative margins. That's a pretty elegant solution. I am talking about several layers of nested divs with wacky CSS tricks and IE hacks on top of Javascript magic. That stuff is ridiculous. In short, use the best tool for the job and get over your prejudices about a certain design methodology being "bad".

      --
      blah blah blah
    24. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      CSS.

      --
      Bogtha Bogtha Bogtha
    25. Re:HTML skills are a commodity? by ThePromenader · · Score: 1

      Amen. I've also gone the "pure div" route, but found that it took too much time and "hacks" to implement correctly for all browsers. It's all a question of balance: headache vs. time, technique vs. functionality. After learning pretty well everything there is to know about the existing technology vs browser quirkiness, I've ended up going back to tables for basic page structure, but I still use div's within. Div's are great, but the technology is not quite "there" yet IMHO - there's still issues with vertical alignment, floating, etc, and every browser's way of treating them. I can see how being a "purist" can help to forward the newer technology, but speaking for myself, I frankly just don't have the time and patience.

      --

      No, no sig. Really.

      ThePromenader
    26. Re:HTML skills are a commodity? by Blakey+Rat · · Score: 1

      Sorry, I vote for pedantic. Also, kind of condescending. You know what he meant, stop being a jerk to prove how much smarter you are and start being nice.

    27. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      I'm not being a jerk to prove how smart I am, I'm not being nasty, I'm trying to explain a fundamental flaw in the way many people understand HTML.

      If you disagree with anything I am saying, then by all means explain why. But don't just call me names while ignoring the technical matters. That is being a jerk.

      --
      Bogtha Bogtha Bogtha
    28. Re:HTML skills are a commodity? by Frosty+Piss · · Score: 1

      Your examples are not what I'm talking about. I said "effectively used for". Using tables for non-tabular uses such as positioning is still debatable for some situations except by the CSS Mafia .

      --
      If you want news from today, you have to come back tomorrow.
    29. Re:HTML skills are a commodity? by B3ryllium · · Score: 1

      Okay, but what tag(s) do you consider to be the proper ones to use to contain your content? span?

    30. Re:HTML skills are a commodity? by Blakey+Rat · · Score: 1

      I understand all about the difference between content and layout, but I'd still say "DIV layout" when opposed to "table layout" because that's the term everybody else understands and uses. Suggesting that I need to say things like, "a proper website would put that content in a div to lay it out-- or maybe a span if it's inline, and also that span or div (or maybe a paragraph) should have a class describing what kind of thing it is, or maybe it actually is a table." If the original poster had replied with that, would you assume they know how all about HTML?

      If I say "diesel locomotive" does that mean that I don't understand that the locomotive actually uses the diesel engine to drive a dynamo which then drives the wheels through an electric motor? No, of course not, it's just the commonly-used term to describe that object. (Given, there's a more technically correct "diesel-electric locomotive", but when you say "diesel locomotive" people know what you mean!.)

      In short, you're being condescending because you're assuming that the poster doesn't understand the topic just because they're using different terminology than you are.

    31. Re:HTML skills are a commodity? by modmans2ndcoming · · Score: 1

      You are being a pedantic dick who lost the argument and is hiding behind language to salvage an ego victory.

      Face it when someone says:

      " s are better than tables for layout" they mean " s with CSS are better than tables for layout"

      Christ fuck almighty I hate when people like you open their mouths.

    32. Re:HTML skills are a commodity? by modmans2ndcoming · · Score: 1

      And if I was not such a retard I would have properly displaied my div tags like this

    33. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      that's the term everybody else understands and uses.

      That's the term a lot of people who don't understand HTML use. The term "CSS layout" is far more widely used amongst people who understand HTML in my experience. When I see "div layout" I automatically assume "newbie" because experience has taught me that it's virtually always true. Six or seven years ago, this was different, when CSS layouts were first becoming feasible and it was new ground for most people, but for a long time now, it's been a very reliable indicator as to whether somebody knows what they are talking about.

      Suggesting that I need to say things like, "a proper website would put that content in a div to lay it out-- or maybe a span if it's inline, and also that span or div (or maybe a paragraph) should have a class describing what kind of thing it is, or maybe it actually is a table."

      If you aren't going to argue honestly, then don't bother responding. You know this is a straw man. You know I didn't suggest anything like this as an alternative to "div layout". You know I referred to the term "CSS layout" as the proper alternative to "div layout". So by completely mischaracterising my argument all you are doing is showing that you don't have a real point and really did just want to call me names.

      In short, you're being condescending because you're assuming that the poster doesn't understand the topic just because they're using different terminology than you are.

      Read the thread. "I laid out all of my stuff using table cells. What should I use if I can't use those?" "Divs styled by CSS". That is something somebody who does not understand HTML would say. It is bad advice. It is not mere terminology. It's simply wrong.

      --
      Bogtha Bogtha Bogtha
    34. Re:HTML skills are a commodity? by modmans2ndcoming · · Score: 1

      no, you just said the contrapositive of it which is the same damn thing

    35. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      It depends on the content.

      --
      Bogtha Bogtha Bogtha
    36. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      No, I didn't say the contrapositive. The contrapositive would be "divs are worse for layout than tables".

      --
      Bogtha Bogtha Bogtha
    37. Re:HTML skills are a commodity? by Bogtha · · Score: 1

      Oh wow, you called me a pedantic dick, and then said the magical "face it" phrase that automatically wins all arguments. I guess I know when I'm beaten.

      --
      Bogtha Bogtha Bogtha
    38. Re:HTML skills are a commodity? by B3ryllium · · Score: 1

      Elucidate.

    39. Re:HTML skills are a commodity? by Anonymous Coward · · Score: 0

      A better way to make your point: share your knowledge and understanding in a non-confrontational way. I agree with you, but it isn't easy to agree with someone no matter how correct they are if they make their point rudely.

      Your point, if I am correct, is that saying that divs are better than tables for layout is to replace one bad idea with another. Instead, use the most applicable HTML element. Maybe it is a div that is best suited for the task, but it shouldn't be a blindly-followed rule. Use <ul>, <p>, etc. appropriately.

      You don't need to tell people when they don't know something. Instead, tell them how you see things. Then it doesn't come across as though you are an arrogant know-it-all. Rather, you're a helpful person that is sharing their experience and knowledge with others. Honey vs vinegar.

    40. Re:HTML skills are a commodity? by coryking · · Score: 1

      The only problem with using a for layout is the name . Give me a damn tag, please.

      Contrary to (un)popular opinion, not everything is easy to do with style sheets. Columns and grids belong in the HTML*, they are too far removed from the CSS file to be useful. But really, it isn't a good idea to put them in the HTML either. They belong in some kind of merged HTML file or something.

      In short, HTML & CSS sucks for what we use it for - presenting content in a useful manner.

    41. Re:HTML skills are a commodity? by Osty · · Score: 1

      Contrary to (un)popular opinion, not everything is easy to do with style sheets. Columns and grids belong in the HTML*, they are too far removed from the CSS file to be useful. But really, it isn't a good idea to put them in the HTML either. They belong in some kind of merged HTML file or something.

      That really depends on the meaning of the columns in the grid. If the columns are related (ie, tabular data), they should be in the markup. If they're not (ie, navigation, content, sidebar content, ads, etc), the different blocks should be separated in your markup but their column-ness is strictly a layout issue. I will agree that current CSS sucks for doing columnar layouts in a non-hacky way, and that there's really nothing on the horizon (CSS3) to make it any better, but I also believe that it's CSS's responsibility to enable column layouts.

      In short, HTML & CSS sucks for what we use it for - presenting content in a useful manner.

      Not quite. HTML & CSS suck for doing pixel-perfect, magazine-like layouts, which unfortunately too many designers want. There are better formats for that, like PDF. HTML is supposed to flow, and it does. Unfortunately that often means that HTML+CSS's design goals are at odds with real-world usage scenarios. We can't fix it by saying, "Don't do this," so we have to fix it by extending HTML and CSS to do what people want.

    42. Re:HTML skills are a commodity? by coryking · · Score: 1

      HTML & CSS suck for doing pixel-perfect, magazine-like layouts, which unfortunately too many designers want. I suspect to most designers (of which I'm a wanna be designer) mean when we say "pixel perfect", we mean "the grid doesn't break when things get resized". Nobody sane designer wants a fixed pixel grid - we all know it looks like shit on big monitors. I want ThingA to stay inline with ThingB no matter what. That should be a simple thing to do, but HTML and CSS make it very hard, if not impossible. Ideally we should be able to flow text and objects so we could keep a block of stuff and have it stack or flow correctly.

      Basically there is no way to create a good working grid with HTML and CSS. I'd argue that CSS has no business defining grids, it should be for very cosmetic stuff like fonts, colors, background images, icons (which are hacked with offsetting a background image).

      We can't fix it by saying, "Don't do this," so we have to fix it by extending HTML and CSS to do what people want. Bingo. HTML and CSS suck big time. All the people saying "dont do this" seem to think we should all just generate pages that are long linear rivers of text that they can read in Times New Roman while clicking on "hyper links" that are blue and purple. Maybe we could put some ugly black and white gif at the top right (cough, GNU's website for a long long time).

      Nobody is asking for PDF. We want a layout language that works for the web. Give a good grid system and "pixel perfect layouts" will be a thing of the past.
    43. Re:HTML skills are a commodity? by Osty · · Score: 1

      I suspect to most designers (of which I'm a wanna be designer) mean when we say "pixel perfect", we mean "the grid doesn't break when things get resized". Nobody sane designer wants a fixed pixel grid - we all know it looks like shit on big monitors. I want ThingA to stay inline with ThingB no matter what. That should be a simple thing to do, but HTML and CSS make it very hard, if not impossible. Ideally we should be able to flow text and objects so we could keep a block of stuff and have it stack or flow correctly.

      Maybe I've just worked with crap designers, then, because I often get requirements detailing spacing down to the pixel, like this element should be 3px away from that element, this other element has a padding of 5px, etc. When I try to tell them that's not going to work with HTML+CSS (at least not in a browser-compatible, accessible way), they either don't get it ("Why is the web different than print?") or don't care ("Why can't you do what I want?").

      Basically there is no way to create a good working grid with HTML and CSS. I'd argue that CSS has no business defining grids, it should be for very cosmetic stuff like fonts, colors, background images, icons (which are hacked with offsetting a background image).

      While I agree that making grids in CSS really sucks (and while you can do it with table elements, that has its own set of problems), I disagree that grids shouldn't be defined by CSS. CSS is for layout just as much as cosmetics, if not more so. The content should be encoded in a semantic way, such that each element makes sense in terms of the data it contains and not in terms of where it should be on the screen. Then CSS should come along and actually lay it out. Ideally, HTML+CSS should be similar in design to TeX or XML+XSLT, where your data is represented logically and styles are applied to make it look the way you want.

    44. Re:HTML skills are a commodity? by elbobo · · Score: 2, Insightful

      Sounds to me like you don't know as much as you think you do about CSS then. Getting CSS layouts right isn't just a matter of knowing the appropriate CSS properties - it also requires considerable experience. But once you've got that experience you can do everything with CSS that can be done with tables, and much more, and with relative ease. If you're giving up and going back to tables, then you've got more to learn and more experience to gather.

      Looking at your website I see you're using divs and spans in places where there are more appropriate semantic tags. It also looks as if you're using more nested block elements than should be necessary for that layout. I'd also suggest trying multiple CSS classes per element in some cases. An example (that will be entirely wrong because I haven't spent the time to learn how your layout is working): class="wrapper outer float-wrap center" instead of five separate divs with one class each. You're also often using classes that describe the CSS properties, rather than semantically describing the content. eg class="float-wrap" instead of class="newsitem" or some such.

      I'm not trying to be condescending. I really like your design. I'm just saying that if you're ending up with the answer being tables then you need to acquire more skills so that you can better answer the question.

    45. Re:HTML skills are a commodity? by ThePromenader · · Score: 1

      LOL! I have yet to "clean up" that website - stripping all the styles from the html to put them in css - that I did in two months. If you would rather see a cleaner "pure div" xhtml-strict layout, look at the link under my sig. Describing what the div does is only (my) way to keep organised - there is only one floater, and it contains several different types of content. Your comment about the design was reassuring, as I am an 'ergonomics' designer before all - thanks for your kind attention.

      Yet I maintain that, until all the css-behaviour browser quirks are ironed out, tables are better (for me) in some cases. Sure, once we learn about all the tricks and hacks needed to make div's work everywhere, the designing gets easier - but in my books, learning compromises is lost time. It's a personal choice, but rather than spend the time maintaining an up-to-date knowledge base on browser limitations, I'd rather rely (to a point) on a system that I know works for all.

      --

      No, no sig. Really.

      ThePromenader
    46. Re:HTML skills are a commodity? by famebait · · Score: 1

      Uh, DIVs are better than tables for layout. They let the designer create more elaborate layouts more efficiently than tables, but they also make even simple layouts much more consistent and easy to implement.

      The simple stuff, OK. But for elaborate layouts, I say CSS is just plain complex, unpredictable (even if implemented correctly, you have to think really hard to predict the effects of a small change), and requires lots of subtle hacks to achieve very common things. In other words, a bad design. Not because the people behind it are stupid, but because the early ideas were ratified as standard long before there was any industry experience using them to do real work and improving the dsign. This happens all the time in standardization, and it always has the same result.

      I wish, when they designed a "proper" layout system, that they had included a mode more similar to the table way of thinking. No not actual tables, keep your shorts on. Not with the same syntax, of course, and optimized for layout, and not called tables, but something grid-based that would give a similar level of control and a similar mix of fixed and implicit sizing. And I'm not even talking about fixed-pixel layout: it is still much easier to make a page that scales nicely to varying font- and page sizes with tables than with CSS. This does not mean one should use tables for layout, but it does point to some fundamental flaws in CSS.

      As for semantics: HTML is a _lousy_ language for expressing semantic info, and always has been. It is a persistent but irrational geek myth that HTML is a beautiful semantic design, ruined by amateurs abusing it to do layout. The semantic framework is rudimentary to say the least, and the very names of even the basic tags already mix sematics and presentation. Sorry guys, this problem is coded right into the langauge, and has been from day one.

      Or is it a problem? Could it be that the reason HTML has been so successful has fuck-all to do with the semantics and everything to do with it being easy to start using, "worked" even if you did a lot of stuff "wrong", _and_ gave you some control over presentation. Those are _good_ reasons. It is what people really need. Learn from _that_ and build new stuff to suit _those_ factors.

      If you want semantics today, use xml microformats and xsl-fo or something (in my dreams: a successor to css that actually provides in an easy-to-use way the layout mechanisms people need most often). HTML will continue to be a mixed bag, bacause that is what it is.

      --
      sudo ergo sum
    47. Re:HTML skills are a commodity? by hobo+sapiens · · Score: 1

      I think you are making a bit of a blanket statement here, and you have to be careful with those. I have a site that I am working on right now, unfortunately on an intranet so I cannot show it to you. The site has a header bar (a horizontal bar 100% wide) a menu bar (same as header) the content area, which I'll come back to, and a footer (a simple horizontal bar 100% wide).

      The content area must have a 200px wide sidebar that is expandable and collapsible. The header, menu, content, and footer need to be 100% wide or 1000px whichever is wider (sorry, 600x800 folks, get with the times). The sidebar and content need a divider line between the two.

      I was able to do ALL of that using divs and CSS. I used a container for the content with a 200px negative margin, and the content div floated left with a 200px margin. The sidebar floated right. To close the sidebar, I'd just set display to none, and remove the negative margin on the wrapper and the margin on the actual content. Beautiful.

      So what's the problem? Well to make a long story short, lack of min-width support in IE. Without min-width, there is no good way to make sure that my menu and content don't get *mangled* when users resize the browser smaller than about 800px wide. But when a div has floating elements inside it, there is nothing to prevent those floating elements from getting scrunched up. That is just the natural flow of floating (or inline) elements, and I accept that. I wanted to put a spacer div inside the container and menu to keep them open to a certain width, but no dice.

      I adhere to web standards for all of my sites and they work well in all browsers. However, the reality is that IE is 95% of the traffic, so the design MUST work in IE. Oh, how I hate IE. Anyhow, IE doesn't understand min-width or min-height and that kills my design. I know there are hacks; all that I have seen mean you have to put javascript in your CSS and an onresize event handler in the body (yuck and yuck). Two problems with that: 1) putting javascript in CSS? Um, no. Why not just use activeX while we are at it? 2) I abandoned my moral objections to this and tried it in a prod setting. It crashed IE for not just a few people, and that's unacceptable. Turns out, executing a simple javascript expression every time the browser resizes is just too much computation for lamebrained IE. Of course, there may have been some other facet of my design exacerbating the problems, I don't think people would knowingly publicize IE hacks that kill IE. However, not having unlimited time at my disposal, I did not figure out *why* this happened. I just axed the layout.

      I have been programming for a very long time in a professional environment, and there is something that the many years have taught me: if you are beating your head against a wall to accomplish some programming task, you are approaching it wrong. Well, this is no different. If you have to pile hack upon hack just to make a layout work, then your approach probably all wrong. Not only that, but you are defeating one of the main benefits of separating content from presentation, namely, making a lightweight and easily maintainable layout. The more hacks you pile on, the more problems you create for yourself. The harder the site will be to maintain. And you'd better hope that the hacks that fix one version of a browser *cough*IE*cough* don't break under the next version.

      After trying for a week to do things the academically correct way, I gave up and made a tabular layout that validates, is lightweight, and works perfectly. In doing so, I had to overcome my prejudice against tabular layouts. Then I found this article on a respected design site and it kind of validated the conclusion I had already come to: that using tables for some layouts is not only necessary, but also appropriate. Not saying that you need seven layers of nested tables. But I could see someone having to do what I did: use a 1x5 table or

      --
      blah blah blah
    48. Re:HTML skills are a commodity? by chdig · · Score: 1

      Your post deserved to be modded +5 insightful.

      Too many people -- especially on /. -- jump on the pure, standards, anti-table css bandwagon while completely ignoring the mass of limitations with css sites.

      They all seem very afraid of thinking outside of the ("standards") box.

    49. Re:HTML skills are a commodity? by modmans2ndcoming · · Score: 1

      that is the converse.

    50. Re:HTML skills are a commodity? by elbobo · · Score: 1

      You say you were building an intranet site but then mention that IE is 95% of web users? Aside from that figure not quite being true (most statistically significant measures put it at below 80% of international traffic, and a rapidly growing portion of that are IE7 users), for an intranet site the wider web user statistics are meaningless. If you're building an intranet site then you explicitly support a small set of browsers and versions (be it IE6 and below, or only Firefox, Safari and IE7, or whatever fits depending on the nature of the company) and you work to the features that are supported in that small set.

      You say sites must work in IE, but you don't say which version. If you're working on a site where it's acceptable to not support (or only partially support) IE6 then a massive amount of your problems are solved right there. There's also the option of having slightly different presentation for IE6 and below than for all modern browsers. Just use conditional style sheets that are only applied for IE6 and below (and occasionally one for IE7, if there's IE7 quirks you need to accommodate), and you're good. Much simpler than trying to make one set of CSS work for all browsers.

      You don't need to pile hack upon hack, you just need to know the most elegant and simple approach. And I repeat: the most elegant approach is not going to be to fall back to tables for layout. If that is your answer then you're not sufficiently skilled. If you are beating your head against the wall trying to make it work, then you perhaps don't know as much as you think you do.

  8. Let's see by smittyoneeach · · Score: 3, Insightful

    In the beginning, there was client server.
    Then, there was n-tier with the thin client.
    Now, the client seems past the bout of anorexia, we've gone back to client/server, and AJAX has fattened it right up.
    Next (mis)step? N-tier, repackaged as "federated", with an emphasis on thin, mobile clients. But you knew that. The real question is, what will AJAX for the hand-held be called? I say: BORAXO.
    I will confess some guilt that this has not been reduced to a Burma Shave troll, but I'm still slightly under the weather.

    --
    Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    1. Re:Let's see by morgan_greywolf · · Score: 2, Funny

      Next (mis)step? N-tier, repackaged as "federated", with an emphasis on thin, mobile clients. But you knew that. The real question is, what will AJAX for the hand-held be called? I say: BORAXO. How about JAXOFF?

    2. Re:Let's see by klubar · · Score: 1

      I think you missed a couple of steps... In the beginning there was the mainframe; all information was centralized Then there was time sharing (dumb terminals); information was centralized, but you could get at remotely Then there was mini-computer (see, PDP-1, PDP-8, PDP-11, etc); processing was put in the hands of the elite Then there was PC; information was put in the hands of nearly everyone Then there was centralized administration of the PC and centralized servers (see time sharing) Then there was the web... see time sharing Then there was Web 2.0 ... see time sharing with fancy terminals

    3. Re:Let's see by smittyoneeach · · Score: 1

      Yeah, but I was beginning around the introduction of HTTP. Otherwise, we really need to go back to Babbage or so.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    4. Re:Let's see by smittyoneeach · · Score: 1

      Sir, I support and defend your right to do what you want with your software, as long as you a) respect my right to retain my ignorance, and b) don't leave any evidence on me.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    5. Re:Let's see by WinterSolstice · · Score: 1

      A difference engine is identical to a mainframe in that it is centralized ;)

      The basic cycle from main->mini->micro(pc) is always the same. Information has to be consistent, so it is centralized. It has to be available, so it ends up decentralized. The decentralization leads to inconsistency...

      My vote has always been pro-terminals. Wireless, high-speed, pretty terminals, but definitely terminals. Of course, that's colored by 10 years supporting minicomputers and mainframes, and too much time fixing broken microcomputers :)

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    6. Re:Let's see by smittyoneeach · · Score: 1

      Even more abstractly, there is information, and there is state, and everything else is a variation on the theme of 'how do we manage this stuff?'

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
  9. Re:Ajax will be obsolete before it becomes mainstr by e4g4 · · Score: 4, Informative

    Ajax *is* mainstream - Google, Yahoo, Microsoft, Apple - all using ajax in one form or another in their web applications. Now - as to your other claim, that Ajax doesn't stand up to Silverlight or Flash; I say Flash!?! Have you every built an application in flash? It's a nightmare to maintain. I can't speak to Silverlight, as I've not yet played around with it. But the design theory of ajax combined with a good JS api (like prototype) Makes it a much more maintainable and IMHO a nice way to build interactive web apps.

    --
    The secret to creativity is knowing how to hide your sources. - Albert Einstein
  10. marchitecture alert by anomalous+cohort · · Score: 4, Insightful

    I claim first serious post.

    Most of these questions appear to me to be either leading questions, whose intent is to foment desire in the questioners product(s) and/or service(s), or marketing questions.

    Some of the questions are legit, however. For example, those questions concerning security, performance, unit testing, and analytics.

    With regards to the question about which framework to choose, I have posted my favorites here.

  11. the suck/non-suck divide by abes · · Score: 4, Informative

    I think a large part of the people's opinion on AJAX depends on what they're doing. It's difficulty depends in part on the framework/libraries you use. For example, script.aculo.us and RoR hide many of the details for you. On the other hand, if you do outside of what they do well, the difficulty level quickly rises.

    I think one sign of this difficulty is that just about all AJAX libraries do the exact same thing. The same basic special effects, field additions, etc. The fact that none of the libraries go beyond these, points to what's hard to do.

    Javascript isn't a great language. It's not robust, and it's difficult to really do good architecture with libraries using it. HTML is a pretty decent method to mark up text, but wasn't meant originally to ever be interactive.

    Tying together a hacked together language with HTML doesn't make for the greatest programming experience. Especially compared to any real GUI framework.

    Maybe most people don't want/need a real GUI framework, and AJAX covers all the bases for them -- in which you're probably going to say you like AJAX.

    However, I suspect if AJAX and HTML were really so great/powerful/easy, many people would have stopped using flash already. I have no love for flash, but it can do things much more easily/faster than AJAX can for many tasks (disliking both technologies I'm pretty non-biased here).

    What I would love to see is a standard *real* GUI for the web that is non-language dependent (i.e. whatever scripting language you prefer you can use). I'd even use something like Jython with newer/better GUI libraries. But we really need something written from the ground up with GUI in mind.

    1. Re:the suck/non-suck divide by TedCHoward · · Score: 1

      Tying together a hacked together language with HTML doesn't make for the greatest programming experience. Especially compared to any real GUI framework.
      ...
      What I would love to see is a standard *real* GUI for the web that is non-language dependent (i.e. whatever scripting language you prefer you can use). I'd even use something like Jython with newer/better GUI libraries. But we really need something written from the ground up with GUI in mind.
      You should take a look at ThinWire, which is a *real* GUI framework for the web. It allows the developer to create a web application using the same paradigm as desktop application development. It is written in Java, and therefore you can code in any scripting language that runs on the JVM.
    2. Re:the suck/non-suck divide by Anonymous Coward · · Score: 0

      What I would love to see is a standard *real* GUI for the web that is non-language dependent (i.e. whatever scripting language you prefer you can use). I'd even use something like Jython with newer/better GUI libraries. But we really need something written from the ground up with GUI in mind.
      like XUL?
    3. Re:the suck/non-suck divide by Osty · · Score: 5, Interesting

      Javascript isn't a great language. It's not robust, and it's difficult to really do good architecture with libraries using it. HTML is a pretty decent method to mark up text, but wasn't meant originally to ever be interactive.

      Once you understand it, Javascript is an awesome language. It's C/C++/Java-like syntax hides its fundamentally functional underpinnings. The core datastructure in Javascript is a method. Everything can be represented in terms of methods, even to the point of not using any variables. With that in mind, it's a very powerful language that is often maligned precisely because of what it is -- many people just don't "get" functional languages (why C/C++/Java/etc are so popular and Lisp/ML/Haskell/etc are not), though you can certainly write procedural or even OO code in Javascript. It's also very easy to shoot yourself in the foot with Javascript, depending on implementations (using anonymous methods is a good way to leak memory in IE if you're not careful, for example).

      As a scripting language, Javascript has a lot too offer. Too bad it's been forever tied to HTML and web stuff.

      However, I suspect if AJAX and HTML were really so great/powerful/easy, many people would have stopped using flash already. I have no love for flash, but it can do things much more easily/faster than AJAX can for many tasks (disliking both technologies I'm pretty non-biased here).

      People like Flash because it gives you lots of pretty, shiney bits for very little work. It's also vector-based, so you can build a pixel-perfect layout like so many bad web designers want ("Our web site must look exactly like our magazine"). Too many people associate "AJAX" with flashy Web 2.0-y visual effects (fading highlights, rounded corners, wet reflections, large fonts, etc), when AJAX is really about communication. If all you care about is glitz, go ahead and use Flash. If you want to build something that actually works well, I'd go with javascript+HTML.

      However, I suspect if AJAX and HTML were really so great/powerful/easy, many people would have stopped using flash already. I have no love for flash, but it can do things much more easily/faster than AJAX can for many tasks (disliking both technologies I'm pretty non-biased here).

      You may not want to hear it, but Microsoft has much of that with ASP.Net AJAX, as have others like Script#. In each case, you're writing most (or all, in the case of Script#) of your code in a .NET langauge and the compiler handles generating the javascript appropriate for your target browser(s). These work with at least Firefox and IE, and should also work with Safari, Opera, and others with minor tweaking.

    4. Re:the suck/non-suck divide by Anonymous Coward · · Score: 0

      "something written from the ground up with GUI in mind."

      Like, ummm, Flash?

    5. Re:the suck/non-suck divide by abes · · Score: 1

      I'm actually a big fan of both OOP and functional programming (e.g. I like both C++ and Scheme). I should also point out that C++ is and never has been a purely OOP language .. Bjarne Stroustrup has gone to great lengths to ensure this. While template hacking has its own issues, Boost actually provides a good deal of functional-programming functionality through use of templates.

      I know there are some proponents of Javascript. Yes, it's nice that it provides things like closures. But I'm not a huge fan of the syntax of the language, nor have I ever felt it was feature complete (at least the libraries provided for the web). Flash makes much better use of javascript, but I think very few people would claim it's a great solution. People use it because there aren't many alternatives.

      I'm a big Python advocate myself. Yes, the whitespace issue is really annoying, but once you get past that, it does a lot that other scripting languages don't. Oh, and here's the obligatory XKCD comic to prove my point:

      http://www.xkcd.com/353/

      I would be willing to try out ASP.Net, though I'm going to guess I can't actually develop for it since I own a Mac.

      Also, more importantly, I don't actually want a solution that spits out more HTML. I don't want my GUI in a web browser. I want a real actual GUI on its own. Kinda like what Java can, only with a lot less Java (oh, and a much better designed GUI).

    6. Re:the suck/non-suck divide by abes · · Score: 1

      I think I used the modifier good too. If not, I apologize. I'd like it to be good.

      As far as I can tell, Flash was never intended to do complex GUI things. It's only with the last release of Flash that it allowed a completely code-based GUI to be created (and not all of that crazy timeline editing). And even still, adding the controls, creating their handlers, etc. is horrible.

      If the future is making Flash GUIs, I do not welcome the future.

    7. Re:the suck/non-suck divide by Osty · · Score: 1

      I'm a big Python advocate myself. Yes, the whitespace issue is really annoying, but once you get past that, it does a lot that other scripting languages don't. Oh, and here's the obligatory XKCD comic to prove my point:

      Python is great, but when dealing with the web you either have to stick to web-standard languages (ECMAScript) or try to get another language standardized (which probably wouldn't be Python). Obviously if you take the web out of it, things open up considerably.

      I would be willing to try out ASP.Net, though I'm going to guess I can't actually develop for it since I own a Mac.

      You could run Parallels (which would require a Windows license, of course), or you could play with Mono. I'm not sure how much of ASP.Net 2.0 they support, nor whether ASP.Net AJAX runs on Mono, but it might be interesting to find out.

      so, more importantly, I don't actually want a solution that spits out more HTML. I don't want my GUI in a web browser. I want a real actual GUI on its own. Kinda like what Java can, only with a lot less Java (oh, and a much better designed GUI).

      Then you're not talking about AJAX or web development. You're talking about traditional "rich client" development, which many languages can do. Speaking of Javascript, JScrpt.NET is a full .NET language based on Javascript/JScript/ECMAScript, and as such has full access to .NET libraries like Winforms or any of the gui toolkit bindings like Qt# or GTK# (for use with Mono, mostly).

    8. Re:the suck/non-suck divide by BenoitRen · · Score: 1

      What I would love to see is a standard *real* GUI for the web that is non-language dependent (i.e. whatever scripting language you prefer you can use). I'd even use something like Jython with newer/better GUI libraries. But we really need something written from the ground up with GUI in mind.

      That wouldn't be the web anymore, and it would throw all semantics out through the window. Search engines would be much less powerful. The 'web' would become a collection of applications, which is bad, because information is central to the web.

    9. Re:the suck/non-suck divide by abes · · Score: 1

      That's part of my beef -- instead of allowing for well used (and much loved) languages to compete for internetty apps, we're instead forced to use 'specialized' languages. I have the same gripe with Matlab, Mathematica, etc. (and thus welcome our Sage overlords).

      Yes, I am talking about rich clients, but only because in the end that's mostly what AJAX + HTML is trying to emulate. For example, the ThinWire link that someone else gave is trying to provide the same controls of a rich client, but through a medium that wasn't really designed to do that.

      I have great respect for the people who write those libraries -- they've managed to take AJAX to its full potential, but it doesn't strike me in the end as a particularly elegant or final solution.

      The only real "internet-ready" "rich client" GUI that I know is Java. Possibly TK/Tcl. In theory someone could take either the Qt or GTK+ libraries (minus some licensing issues for Qt, and platformability issues with GTK+ [at least last time I checked]) and make something that could easily be sent as an internet-app. Unfortunately no one really has at this point. At least not to the level where it's really easy to develop and deploy and have work inter-mixed with web pages they might be launched from.

    10. Re:the suck/non-suck divide by abes · · Score: 1

      No, I'm suggest let the things that belong to the web be web, and the things that belong to apps be apps. For example, if a blog website would still produce the blog material as web pages. However, the editing of the blog would be done through a client that gets launched from the web page. There's no need to index the form pages.

      Besides which, there are plenty of web pages out already that are difficulty to semanticize. The more we enforce the distinction between content and function the easier it is to parse the pages.

    11. Re:the suck/non-suck divide by Hulfs · · Score: 1

      Check out QT Jambi. It's basically a port of QT4 to Java (done by Trolltech) using the QT libraries as the native backend to the Java classes. Combined with Java Web Start you've got pretty much what you're asking about. Licensing for QT 4 and Jambi is free for Open Source apps.

    12. Re:the suck/non-suck divide by DragonWriter · · Score: 1

      Once you understand it, Javascript is an awesome language.
      ...if you like that kind of thing.

      It's C/C++/Java-like syntax hides its fundamentally functional underpinnings.


      I like functional underpinnings. They can make for an awesome language.

      I'm not all that fond of hiding them behind "C/C++/Java-like syntax", which is pretty much the opposite of "awesome". Nothing against C or Java, those are fine languages in their own areas; their syntax is appropriate to their nature.

    13. Re:the suck/non-suck divide by modmans2ndcoming · · Score: 1

      Silverlight layouts and vector images are XML... yay semantics!!

    14. Re:the suck/non-suck divide by modmans2ndcoming · · Score: 1

      The future is making silverlight GUIs which is wonderfully easy to do and integrates perfectly with server-side code and is fully XML (XAML) so you get a search engine friendly semantic layout and vector graphic system.

    15. Re:the suck/non-suck divide by Anonymous Coward · · Score: 0

      >> What I would love to see is a standard *real* GUI for the web that is non-language dependent (i.e. whatever scripting language you prefer you can use). I'd even use something like Jython with newer/better GUI libraries. But we really need something written from the ground up with GUI in mind.

      You mean a RIA technology based on ECMA Script such as Adobe Flex?
      Or if you'd rather go FOSS then like OpenLazlo?

    16. Re:the suck/non-suck divide by Anonymous Coward · · Score: 0

      It's only with the last release of Flash that it allowed a completely code-based GUI to be created (and not all of that crazy timeline editing). You could not be more wrong. You could try, but you would not be successful.

      And even still, adding the controls, creating their handlers, etc. is horrible. So now that you've shown a complete ignorance on the matter you're giving your opinion on the quality of it? Priceless.

      Because I could use a good laugh, please point out the horribleness of the following Flex code to "add controls and create their handlers, etc"

      <mx:Button click="doStuff()" />

      private function doStuff():void
      {
            EducateAbes();
      }
  12. Re:Ajax will be obsolete before it becomes mainstr by Mr.+Underbridge · · Score: 1

    Flash!?! Have you every built an application in flash? It's a nightmare to maintain.

    Screw that, flash is a disaster to *use*. Flash causes a reflex in me that causes me to mash the 'back' button ASAP.

  13. Make a new protocol already! by Anonymous Coward · · Score: 1, Insightful

    Toss out JS, and put python on both client and server.

    Toss out HTML and make an XML based form layout language, with a *proper* rich widget set, and GTK-style splitter based layout mechanics.

    Toss out the request-response paradigm and go with a proper connection.

    In other words, make it a browser based application framework, because that's what people actually seem to want.

    All this AJAX malarkey is just a *huge* kludge.

    1. Re:Make a new protocol already! by Anonymous Coward · · Score: 0

      Python has meaningful whitespace. That is an absolute dealbreaker in a distributed inhomogeneous environment. (I agree that AJAX is a kludge, an API wannabe, but that's not a matter of right or wrong script language.)

    2. Re:Make a new protocol already! by Anonymous Coward · · Score: 0

      The scripting language is beside the point though. The concept of a browser based distributed application framework is workable.

      This is one of those things where the free software foundation (etc) could make a difference. Taking the first step, be innovative. There is a problem here, that free software developers could solve, and change the world a little.

    3. Re:Make a new protocol already! by modmans2ndcoming · · Score: 1

      check out what silverlight is doing.

      the OSS world needs to replicate that.

  14. Re:Web is bloated. by whmac33 · · Score: 1

    Post extrans (html tags to text)
    <b> <i> <p> <br> <a> <ol> <ul> <li> <dl> <dt> <dd> <em> <strong> <tt> <blockquote> <div> <ecode> <quote>

    and perveiw.

  15. when will AJAX skills become commoditized? by Ralph+Spoilsport · · Score: 5, Insightful
    'On what timeline will AJAX skills become commoditized like HTML skills became?'"

    Easy: when a WYSIWYG editor, a la Dreamweaver, can accomplish all basic AJAX functionality without having to mess with much, if any, code.

    Yeah - sure - Dreamweaver is suboptimal, but for 95% of what you need in a site (and if your site is fairly simple, 100%) it does the job, just fine, and you don't need to mess with that messy HTML and javascripty goopety glop. you just treat it like InDesign or Quark, and design your page - no muss, no fuss, nothing too fancy.

    When Dreamweaver (or some similar app yet-to-be-developed) can do Exactly That - let me do AJAX without touching code, then you know AJAX coding skills will commoditise and disappear. How many hear can read PostScript, raise your hands! Not too many. I figured as much... FreeHand, Fontographer, and Illustrator removed the need to know how to program a page description in PostScript. Dreamweaver ate HTML and trivial Javascript. AJAX is next... I'd say, give it 2 years. Tops. I'm sure the programmers at Adobe are hard at work mulling over how to do just that.

    RS

    --
    Shoes for Industry. Shoes for the Dead.
    1. Re:when will AJAX skills become commoditized? by fireboy1919 · · Score: 1

      but for 95% of what you need in a site (and if your site is fairly simple, 100%)

      My experience is more like "25% of what you need in a site (and if your site is fairly simple, 5%)"

      Fairly simple means that you need to spend more time to make the look & feel work right, because people will notice it more, and you can't use a WYSIWYG for that kind of thing unless you don't care at all about page flow.
      By default Dreamweaver treats pages like they're not going to have to work at multiple resolutions/fonts - fixing the size of every single element in the pages. It's telling that you mention two programs that do exactly the same thing. HTML flows. You aren't supposed to treat it like print.

      It also doesn't work too well with non-html markup (such as PHP, ASP.net, jsps, etc). This is fundamental to the nature of HTML. It can't be done properly with a WYSIWYG. It needs a WYSIWYM to work.

      --
      Mod me down and I will become more powerful than you can possibly imagine!
    2. Re:when will AJAX skills become commoditized? by TheMCP · · Score: 1

      >>'On what timeline will AJAX skills become commoditized like HTML skills became?'"
      >Easy: when a WYSIWYG editor, a la Dreamweaver, can accomplish all basic AJAX functionality without having to mess with much,
      >if any, code.

      Why does it have to be that difficult?

      Here's a complete AJAX app in Water (waterlanguage.org), with an object that represents a boat, and you can use AJAX to change the name of the boat:
      <class biz.boat name=req=string>
          <method change_name new_name=req=string> .<set name=new_name/> .<refresh/>
          </>
          <method htm_inst>
              <span>
                  <h1 .name/>
                  <do .change_name.<htm_inst _subject/> />
              </>
          </>
      </>

      Do you see the AJAX? No? But it's there. The language takes care of it for you. So why does it have to be difficult?

    3. Re:when will AJAX skills become commoditized? by raddan · · Score: 1

      If what you're predicting comes true, then we haven't even seen the tip of the iceberg for web-application attacks. For your typical designer to be able to do this stuff, we need some other kind of technology, because input validation done in Javascript ain't gonna cut it.

    4. Re:when will AJAX skills become commoditized? by Anonymous Coward · · Score: 0

      That's not a question of app development. It requires a paradigm shift.

      Dreamweaver is (mostly) about building html files. Ajax is about building html files that communicate with a server side application.

      The day some numpty capable of putting up a web page is responsible for that sort of stuff is a very bad day indeed.

    5. Re:when will AJAX skills become commoditized? by rho · · Score: 1

      Do you see the AJAX? No? But it's there. The language takes care of it for you. So why does it have to be difficult?

      Did you notice what you just said? "Learn a new language so you don't have to learn a new language."

      BTW that reminds me a lot of ColdFusion. Where's ColdFusion these days? Rapidly becoming irrelevant.

      --
      Potato chips are a by-yourself food.
    6. Re:when will AJAX skills become commoditized? by cmburns69 · · Score: 1

      Input validation done in Javascript is doomed to fail anyway, since it can be bypassed simply by using any modern browser that allows script debugging.

      Input validation done on the client should always only be for convenience. Unless you want hackers to eat your site for breakfast, you'd better also do validation on the server.

      --
      Online Starcraft RPG? At
      Dietary fiber is like asynchronous IO-- Non-blocking!
    7. Re:when will AJAX skills become commoditized? by Bodrius · · Score: 1

      Not sure the critique to Coldfusion applies - it became irrelevant because it got replaced... by a bunch of frameworks that followed similar, but technically more powerful approaches (e.g.: JSP tags in a dozen dialects).

      The general idea is old, tried and true in computer science: "Learn a new straightforward, targeted language, to avoid learning a complex language that was never intended for these needs". And is the way yet another thousand toolkits try to solve the AJAX problem.

      The sound-ness of the approach for AJAX, of course, is based on two things:
      - The subjective suckyness of the javascript language for the job - this is probably a matter of taste and background.
      - Whether changing the language is enough to solve the complexity / scale problems.

      Although I'm no great fan of javascript as a non-small-app development platform, I think the second problem is more important. I think there is only so much you can do by pretending that javascript is assembler, while carrying over all the other baggage of the html+script world.

      That may or may not be enough, depending on what people think AJAX should be... for all the ambitious hype of WebOS and office apps on AJAX, I don't think it is enough. The pain is not the syntax, it's the programming and execution model, which is not going to go away by wrapping it into java classes or xml tags.

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
    8. Re:when will AJAX skills become commoditized? by a_claudiu · · Score: 1

      I have no clue why I are you moded insightful. You are mixing AJAX with HTML. One is a programing language framework and the other a document format. You are saying the Dreamweaver or other framework will make programming skills obsolete and the designers will be able to make an application without any programming skills.

      This reminds me of hundreds of frameworks, business flow applications which are marketed as being user friendly empowering the business users to manage their own applications without messing with the IT programmers. Guess what is happening, business is buying the product for big money after a very nice demo, they are trying to wire 2-3 business flows together, fail and the job come back to developers again. This time programming is in a proprietary framework with hundreds of bugs and limitations that increases your effort several times.

      These products are having a fundamental flaw, designers or business man are not having the skills to speak with these very, very stupid computers. In fact the last ones are having big problems in speaking logically at all. If any of these applications were successful I was out of business long time ago but for the time being my future looks safe.

    9. Re:when will AJAX skills become commoditized? by Anonymous Coward · · Score: 0

      ...The subjective suckyness of the javascript language for the job...
      The problem with javaScript is not that it sucks per se, though it could really do with some features that are core features in most languages like packages and real inheritance (if practically every framework offers its own approach to inheritance, it's a pretty good clue that the language should be supporting it natively).

      No, the real problem with JavaScript is that in order to write an application that works in all browsers and performs, you have to navigate a minefield of incompatible implementations (both of the language itself and the DOM). The real reason why abstractions layers are proving necessary is that they provide a single target for developers to develop against to hide the browser/platform compatibility issues from the application developer.

      The problem, at least so far, is that not one framework has gotten it right. Every framework has either performance issues, requires the developer to understand platform incompatibilities or doesn't provide the necessary flexibility or expressiveness necessary to use in the real world.
    10. Re:when will AJAX skills become commoditized? by TheMCP · · Score: 1

      Actually, what I did was to point out that it can be built into the language so the programmer doesn't have to deal with it, and I gave an example. Other languages should be perfectly capable of doing the same.

      Then again, if your language makes it hard for you to do things, maybe you *should* learn a new one.

    11. Re:when will AJAX skills become commoditized? by Bodrius · · Score: 1

      I don't think many people say Javascript sucks per se.

      But there is serious discussion about whether Javascript sucks for the job.

      Still, I'd agree with you completely that the biggest problem is not the language, but the platform (browser compatibilities being a big, but not the only, issue). And then every framework just tries to hide both javascript and the platform - neither of which is designed to do what we're making it do...

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
  16. how far HAVE we come? by vsync64 · · Score: 5, Insightful

    It does suck.

    As for the "refreshing[] hard-headed" questions, all I see are questions about performance and silly flitting about with their own buzzwords and pipe dreams about getting rid of real applications in favor of their toys.

    Here are some questions:

    • Whatever happened to degrading gracefully? If you look at the apps produced by Google, the poster child for "AJAX", you'll see that they took the time to make most or all of the functionality work without JavaScript, without images, without CSS, or with a deranged hodgepodge of those. I don't see others making the same efforts.
    • How about semantics, and security? We're getting back into the mess of data intermingled with code. I'm seeing more and more sites out there have a blank page that loads, and then JavaScript that loads the content. Now you have to have scripting enabled for every site you visit. MS Office macros all over again. And forget trying to spider the content without having some sort of bizarre Turing machine debugger to try to get at the real content.
    • Yeah, how about mobile devices? If you were doing it right (see above) you wouldn't have to worry about the iPhone or about a special mobile AJAX. It would work fine within the constraints of any device. Google does.
    • How do you plan to interact with the local filesystem? Java has an effective sandbox, signed codebases, and granular user permissions (although the latter are kind of sucky). Are users not allowed to retain control over their own data?
    • How are users supposed to have any confidence about what you're doing to them? The previous model was good. Users knew when they were sending anything to the server, and if the UA vendors would do their jobs they would also know when they were affecting data. What are users supposed to do now, have wireshark running all the time? Not acceptable.

    I'm implementing Web-based applications as of this writing, and I plan to have some dynamic features to simplify some of the UI (such as cascading follow-up questions during user signup). But these will be an optional extra.

    These jokers forget that the World Wide Web is a repository for mutual citation of academic-style documents. New stuff is good, just don't break the old stuff.

    Every improvement on the Internet has been in the direction of better user controls, decentralization, caching, peer-to-peer, transport tunnels, etc. The AJAX people are swimming against the tide and they need to realize it and shape up.

    --
    TO BUY A NEW CAR WOULD MAKE YOU SEXUALLY ATTRACTIVE.
    1. Re:how far HAVE we come? by MightyMartian · · Score: 1

      I'm with you. I've used a bit of AJAX coding, very basic stuff, to make a set of client management pages work a little better (ie, checkbox settings that update the underlying database field without reloading the page). I think, unless you really know what you're doing and are really willing to put the time into it, that pure-AJAX apps are a danger zone.

      While I agree with some other posters that browsers are a horrible application platform, when has that ever stopped an application platform from being useful? I think once some of the more serious concerns can be addressed, then I see no reason why it couldn't be used as a development and distribution platform for some kinds of apps.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:how far HAVE we come? by Garberage · · Score: 1

      So many of your complaints about the abundance of poorly designed AJAX sites are compared to Google. I know that in the companies I've worked for, we strive to support as many browsers and devices as possible. After all, the more places your site works, the more you can sell. However, we are all not Google. Nor do most companies have the financial resources that Google does. For each additional device you want to support, you need further development. Using your example of Google, it can really work great on mobile devices. Do you think this was an accident? No. There is probably a team of 50 or so people dedicated to the task of designing, implementing, and maintaining the portion of the application that works on phones. So while it would be great for all AJAX applications to work everywhere, most of us are just trying to satisfy the 80-20 rule, as that is all the time/money we have available to us.

    3. Re:how far HAVE we come? by Anonymous Coward · · Score: 0

      I wish this could be modded 6. "How are users supposed to have any confidence about what you're doing to them?"

      I don't trust AJAX, and JavaScript to start with is a huge attack vector. How is JavaScript 2.0 better?

    4. Re:how far HAVE we come? by Lord+Ender · · Score: 1

      AJAX isn't about making static content more interactive. It is about replacing thick-client applications with thin-client webapps. [OK, I admit there is some of both].

      You may think AJAX "breaks" the ability to link and index content, but please tell me how you were liking and indexing thick-client apps before? You weren't. Nothing breaks. It's progress.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    5. Re:how far HAVE we come? by khayo · · Score: 1

      My feelings exactly, and a very eloquent post. But I'm afraid it's just the two of us swimming against the tide :-(

    6. Re:how far HAVE we come? by Anonymous Coward · · Score: 0

      You may think AJAX "breaks" the ability to link and index content, but please tell me how you were liking and indexing thick-client apps before?
      You're asking the wrong question. AJAX breaks the ability to know when you're sending information to someone on the internet. When all you were doing was linking content, sending data took an explicit action. You click on a link or submit a form and you send data. If you don't do one of those two things, you don't send data. Period.

      With AJAX, a page can send data without any indication that it's doing so and without any prompting by the user to do so. This breaks the security measures put in place by HTML and forces users to adopt their own security measures (turning off Javascript, and the like).

      You may say that think client applications suffer from the same problem, but there are tools that make monitoring specific applications much easier. I personally use Little Snitch to monitor when applications try to send/receive content. If an application I use is a thick client, I can OK/Cancel every network connection it makes until I'm satisfied that it isn't doing anything malicious. If it's a thin-client application in AJAX, I'd have to OK/Cancel every network connection that Firefox makes, and that breaks the experience of navigating simple static content.

      The whole AJAX fiasco is made all the more lamentable by the fact that we could be using either Flash or Java WebStart to accomplish the same exact thing in a way that offers the user an improved experience, but we don't. And there's only one real reason why this doesn't happen...the vast majority of web developers aren't real developers. They can't adapt to other development environments. So instead the re-invent every wheel that real programmers have already hashed out long ago, only they add the "on the web" suffix. Well, that and their wheel is actually a triangle, but to read all their blogs they try really hard to convince everyone that their wheel is better.

      Sorry...get a CS degree, learn from the teachings of people who've solved the same problem in a better fashion. And when you've proven that you've mastered existing disciplines, then you can build on the work of others. It's a three stage process (and this philosophy is borrowed from martial arts teachings...I believe it's referred to as shu-ha-ri)...first you learn, then you master, then you deviate. You can't skip step 2. And you sure as hell can't skip step 1.
    7. Re:how far HAVE we come? by Lord+Ender · · Score: 1

      Did you just tell me to get a CS degree? I have a software engineering degree. CS would be a step down.

      Privacy? Are you serious? Less than 1% of people care enough to use the privacy tools you use. To think that would drive development is insane.

      Web app developers just don't know how write real software? Ha! I've written software in everything from VB to TK, and I promise you that web apps are quicker and easier to write and distribute by far. They are popular because they are effective and make money.

      The fact that privacy is your #1 concern conclusively demonstrates that you have no sense of the marketplace for software, today.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    8. Re:how far HAVE we come? by Anonymous Coward · · Score: 0

      Web app developers just don't know how write real software? Ha! I've written software in everything from VB to TK...
      I rest my case.

      Seriously, I'm not sure how you consider a "software engineering" degree a step up from a CS degree. But from your comment, it sounds like you haven't done any serious development in C, C++ or Java. These are languages that have ironed out GUIs a long time ago.

      ...and I promise you that web apps are quicker and easier to write and distribute by far.
      I've written GUIs professionally in C, C++, Java and the various scripting languages. I'm also currently employed building an AJAX GUI. And I can promise you that AJAX GUIs are not quicker to write, at least not if you want adequate acceptance tests to ensure that you haven't found Internet Explorer obscure bug number 17,283,405. Meanwhile, I can use something like XSWT or SwiXML to quickly layout a GUI in a Java WebStart application (and the XSWT one will be indistinguishable from a normal native app) and I can write unit tests for the GUI that are far less convoluted than any of the web acceptance testing suites. I promise you, AJAX GUIs are not faster to write if you want to do things the right way. And they're not easier in the long run, they're only easier in the short term since they lower the bar to allow web developers to write things that are normally the domain of real software engineers.

      The fact that privacy is your #1 concern conclusively demonstrates that you have no sense of the marketplace for software, today.
      You don't read too well, do you? The privacy concern was directly addressing your question as to how AJAX has broken something that already exists. It doesn't matter that I'm in the minority, AJAX broke something that used to work. Whether it's an acceptable loss for the gain that AJAX offers is an entirely different question. But I still stand by my original assertion...99% of all AJAX applications would be better served as Flash or WebStart applications. But that would require companies to hire real software engineers, and they cost more. So they've chosen the cheaper route and will have to live with the fact that they've permanently alienated anyone who cares about privacy.
    9. Re:how far HAVE we come? by crh3675 · · Score: 1

      Whatever happened to degrading gracefully? If you look at the apps produced by Google, the poster child for "AJAX", you'll see that they took the time to make most or all of the functionality work without JavaScript, without images, without CSS, or with a deranged hodgepodge of those. I don't see others making the same efforts. The answer to the reason why "others" are not making the same efforts is because a lot of the AJAX functionality is driven by businesses in the private sector. Meaning, retail conglomerates who want grand websites and web marketing pieces. Those business entities don't tend to take well to "extended" time requirements as they have a lot of money to spend. So, it comes down to, who can get the job accomplished fast and cheap which unfortunately leads to incomplete or mangled AJAX code that will not degrade effectively. So, someone needs to tell the "clients" that we as developers to charge them more money and time to make their solution degrade better. Once you tell them that, you will then need a 3 hour lecture about "why" it needs to degrade and chances are, the client will glaze over and go to another company that will just do the work.
    10. Re:how far HAVE we come? by Lord+Ender · · Score: 1

      I said "write and distribute." Add "maintain" to this list, just for good measure.

      Also, CS is a step down from its engineering counterpart because both disciplines typically have equal amounts of algorithm analysis and other classical CS staple, but engineering also includes things like design, project management, digital logic, computer architecture, etc. The relatively higher salaries for the products of engineering colleges speaks for itself.

      You (amusingly) said I need to get a CS degree. I have one--all CS courses required for a CS degree were included in my engineering degree. I suggest you look into getting an engineering degree. It might teach you to consider the entirety of the software lifecycle, instead of merely the ability to analyze algorithms to death and declare thick-clients easier because you learned them first.

      I'm surprised you have continued this thread. Is there some easy way for Anonymous Cowards to track responses to their posts?

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    11. Re:how far HAVE we come? by Anonymous Coward · · Score: 0

      Yeah, how about mobile devices? If you were doing it right (see above) you wouldn't have to worry about the iPhone or about a special mobile AJAX. It would work fine within the constraints of any device. Google does.

      Google offers up the exact same page for everyone and every device regardless of the specified useragent? Why do they even have a "mobile" version of their website if they can use the same HTML everywhere?

  17. From the start... by ThePromenader · · Score: 1

    ...Ajax is a project in hype -- strip all the cruft away and it comes down to one frigging javascript command. That aside, it has its uses. That is, if it is used wisely.

    The only thing I disparage in Ajax is its lack of a back button. All the rest is positive in my books -- time/bandwidth-saving partial page reloads, perhaps the elimination of the "disorientation factor" that can occur with total page reloads (That "Wha? What's taking so long to load? Where the hell am I now?" feeling that grows proportionally the shorter the short-term memory/attention span). I like the feeling of control it gives a user (he's selecting the information he wants without being bandied all over the place). I've built a website using a mix of php/mysql/ajax and it's working fine for our customers -- not one complaint -- au contraire in fact. Have a look here if you like. What I like the most (in that site) is the fact that our customers can always keep their "shopping cart" (rather "rental cart") always on hand, and add/eliminate things to/from it no matter where they are in the site. I'm not sure of the numbers yet, but this has been a big boost to our client base.

    Another Ajax drawback could be its un-friendliness to search engines -- but there is a workaround for that (a liberal use of hard-coded links with added "onClick" functions), but this means that you have to build your website in two different-functioning levels. This takes a bit of thought beforehand, but it can be done.

    As for Ajax's future: of course. But forget the buzzword and the technology behind it; it's what the technology does that will be sticking around in one form or another. For example, it is possible to build a full-Flash website that behaves exactly as Ajax - with even more search-engine limitations and added "plugin" requirements -- so I think more than a few see the merits of partial page reloading.

    --

    No, no sig. Really.

    ThePromenader
    1. Re:From the start... by NiK0laI · · Score: 1

      Cool site, however it pegs my CPU as soon as I click on any of the menus, and they come down really slow. I'm using latest Firefox under Windoze XP on a 2.8 p4.

    2. Re:From the start... by ThePromenader · · Score: 1

      Thanks. Yep, I know what you mean about those unfolding menus... I wish there was a faster/less CPU-taxing way to go about it, but hey. Firefox seems to be deathly slow in all things javascript (especially loops), but I suppose I should be taking that into account as well; I may just add a "bypass animation" button for that. I just added the search engine yesterday, so here's hoping that many will make liberal use of that - I think many will, as, no matter how lovely some animations may be, who likes to comb through menus to find something?

      --

      No, no sig. Really.

      ThePromenader
    3. Re:From the start... by __aawkdb2598 · · Score: 1

      Sibling post is right, the site uses more processing power than Counterstrike. I can't see what it's doing for the draw either...
      I tested in both Firefox and IE.

    4. Re:From the start... by adnonsense · · Score: 1

      Why not just do a simple, old-fashioned on-click change to the "display" attribute? As it is, if I didn't have a very specific interest in that site, I'd close the window quick, because with sites like that, there's a high probability they'll do something nasty to my browser.

    5. Re:From the start... by Nicolay77 · · Score: 1

      I can't see what is the slowness others describe, did you changed the app?... using Opera 9.5

      --
      We are Turing O-Machines. The Oracle is out there.
  18. silverlight by wwmedia · · Score: 5, Interesting

    i know alot of people here hate microsoft (duh!)

    but i believe silverlight will be a large part of the rich web

    now this is my personal opinion and heres why:
    *it was designed with web applications in mind (XAML) unlike the current html/css/javascript mess
    *its more or less crossplatform
    *it brings C# to the clients browser (see javascript mess above)
    *has vector and hd video supprt of the box
    *is designed to be easily updated

    1. Re:silverlight by WWE-TicK · · Score: 1

      I prefer Flex for now because 1) I already know it, 2) Flash has larger market penetration. Presumably, you can use any .NET language for Silverlight development, so that's a major plus for Silverlight IMHO. With Flex, you're stuck with ActionScript 3 and MXML. ActionScript 3 and MXML aren't really all the bad, but it's nice to have options. Also, the Silverlight runtime will probably come standard with all Windows versions from here on out, so it can potentially kill off Flash if Adobe doesn't do something about it.

    2. Re:silverlight by ghempton · · Score: 1, Insightful

      What distinguishes silverlight from flash? Silverlight in its current state is not only less pervasive, but it is also very limited in features and capabilities.

    3. Re:silverlight by Just+Some+Guy · · Score: 1

      but i believe silverlight will be a large part of the rich web

      Or you could try Mozilla's XULRunner:

      • It was designed with web applications in mind (XUL), unlike the current mess
      • It is crossplatform
      • It brings JavaScript to everyone
      • Has support for all kinds of stuff (see Miro for an example)
      • Is designed to be easily updated
      • Already exists in production
      • Isn't some Microsoft hack
      --
      Dewey, what part of this looks like authorities should be involved?
    4. Re:silverlight by moreati · · Score: 2, Informative

      You are wrong, the web is a sloppy combination of repurposed standards and half-implementations that has evolved. It isn't clean, it isn't pretty but it works for the widest range of people: those with a web browser.

      Silverlight is like flash, only worse:
      * It ignores all the work on document layout and styling, instead it chooses to reinvent the wheel. XAML is untested beyond a few Windows developers and power users on Windows with a PC. HTML has been deployed, tested & debugged on about every platform in existence.
      * It is in no way cross platform. The DLR class libraries are not an open specification beyond 'do what MS does', whomever independently implements it will be forever playing catchup. Needless to say MS will not be releasing the a DLR runtime for Solaris on SPARC anytime soon.
      * It brings C# to the browser. It is my opinion that this move to a less expressive, more heavyweight language would be a step backward. In my opinion it would be better to fix Javascript, than to rip and replace with another language.
      * Granted, the web does not have universal vector and HD video native to the browser. Neither would DLR/Silverlight, only Microsoft's implementation could be relied on to have full support of any given video format, due to restrictive licensing of US software patents. SVG support is improving in all browsers except Internet Explorer.
      * Ease of update of a runtime is an implementation issue. It has nothing to do with how widely deployed implementations of a revised standard would be.

      Silverlight is not the web and it is not an improvement in my opinion.

    5. Re:silverlight by modmans2ndcoming · · Score: 1

      the vector graphics in silverlight are XAML so you are dealing with an XML schema that is web searchable and semantically meaningful.

    6. Re:silverlight by modmans2ndcoming · · Score: 1

      silverlight is not a hack... but then you would have to actually learn about it to know that.

    7. Re:silverlight by modmans2ndcoming · · Score: 1

      XAML is an XML Schema, how is it ignoring document standards?

      the plug-in runs on Macs and Windows, it presents the content exactly the same with the same fidelity

      C# is more powerful and more expressive than javascript. just because you are more comfortable with a language does not make it more expressive. weight will remain to be seen.

      explain how XAML schema is problematic to implement? Learn how to write the XAML and your solid.

    8. Re:silverlight by Zepalesque · · Score: 1

      I program in both c# and javascript - though the former is far more capable, I find it much much heavier to build with than javascript. I have even had the pleasure of writing a client-side c# browser component wrapped up in com so that it would be a good little activex control.The experience turns my stomach still thinking about it:) So, I have extreme trepidation thinking about a new client-side c# technology. Yes, javascript has its warts, but it is fairly light weight and doesn't require an ide.

    9. Re:silverlight by coryking · · Score: 1

      Visual Studio and that ooey gooey Microsoft integration goodness. Until I can write flash in a "serious" development environment like Visual Studio instead of "design with a bit of code" Adobe application, I doubt I'll ever touch it. ...no offense to Adobe either, they make excellent design software; the web wouldn't be what it is without Photoshop and Illustrator.

    10. Re:silverlight by __aalwyc6372 · · Score: 1

      a lot of ppl hate microsoft, because they lie and copy a lot and get a way with it pretty much every time. why should it be different this time?

    11. Re:silverlight by slaingod · · Score: 1

      You obviously haven't used Flex, Adobe's XML/Actionscript based dev produce which uses Eclipse for the development environment. There are issues with eclipse, notably memory usage, but it is a pretty 'serious' ide, with integrated debugging, UI Layout designer, etc.

      There is also a new app in the works called Thermo, which should ease some of the issues with design iterations between the things animated in Flash CS3 on a timeline, and those in Flex done using the event model.

      And silverlight isn't going anywhere very quickly, simply because of inertia. People are already familiar with flash, and more and more so flex. You can already go out and buy thousands of commercial Flash components, which can be used in Flex as well. Flash is coming out with x264 HD support and AAC as well.

      Flex 3 is also going Open Source, which is going to go a long way towards ensuring it's continued domination in that area.

      --
      http://blog.slaingod.com
    12. Re:silverlight by moreati · · Score: 1

      XAML is an XML Schema, how is it ignoring document standards?

      The XAML syntax may be specified by an XML Schema, to my knowledge the semantics & meaning of XAML are entirely implementation defined. There is no public standard that specifies how to interpret a XAML document. I said that it ignores document layout and styling, which it does: Silverlight uses WPF. WPF has it's own style model rather than using CSS, and WPF is completely seperated from XForms, SVG & HTML. These are the standards for layout & styling on the web, are you saying that Silverlight uses them?

      the plug-in runs on Macs and Windows, it presents the content exactly the same with the same fidelity

      The Silverlight plugin currently runs on Windows XP/Vista with IE 6SP2/7 and OSX 10.4.8+ with Firefox or Safari.
      Support is planned for Windows 2000 with Firefox, Linux x86/x86_64 with anything, anything with Opera & Linux x86/x86_64 Konqueror.
      Which leaves out mobile phones, PDAs, games consoles, internet tablets, Windows 95/98, earlier versions of OSX and pretty much anything but a modern PC. Two operating systems on 1 architecture does not count as cross platform.
      The web will work on everything I just mentioned, because every single one has atleast one example with a modern browser of some sort.
      Additionally all planned Silverlight support on any platform other than Windows and OSX is through Moonlight, the clone by Mono. Moonlight will not have access to WMA or WMV on most platforms, so Silverlight/Moonlight cannot guarantee 'HD Video support out of the box' as you stated.

      C# is more powerful and more expressive than javascript. just because you are more comfortable with a language does not make it more expressive. weight will remain to be seen.

      I happen to prefer higher level languages that aren't statically typed, but each to their own. I do not agree with you that C# is more expressive than javascript.

      explain how XAML schema is problematic to implement? Learn how to write the XAML and your solid.

      Firstly, the subject of your original post was Silverlight, my post responded to that. XAML is one component of Silverlight, one that I believe is not a publicly specified standard. Unlike HTML, SVG or XForms XAML is not fully implementable by anyone other than Microsoft. This makes Silverlight proprietary, therefore in my opinion it is not part of the 'rich web'. Instead it is an inferior substitute for the 'rich web'.

      Sincerely, Alex
    13. Re:silverlight by modmans2ndcoming · · Score: 1

      the problem you had was COM.

      C# on client side code for a web app would not be using COM.

      C# does not require an IDE either, interestingly both suck to write with without one.

    14. Re:silverlight by modmans2ndcoming · · Score: 1

      so your problem is that they are using an XML schema that is not standardized? so what. it will be more capable than HTML/CSS/Javascript/Serverside scripting for writing dynamic user interfaces for the associated web applications than Silverlight. Silverlight in turn is better than flash because of its use of XAML for its interfaces. It is better to use for Designers and developers because of its front to back integration and its ability to display the same no matter where you show it as long as the plug-in is available (something that will be remedied, MS not make a SL plug-in for phones the boom market right now?)

      Also nice is that the XAML can be(not nessisaraly a reality right now) transformed into xhtml.

      Web Application Development is not going to slow down, but it will need to get easier and Silverlight does that all around. JavaFX has similar language capabilities to Silverlight (both blow Flex out of the water on that) but I am not familiar with its vector graphics system to know if it uses XML or binary.

    15. Re:silverlight by moreati · · Score: 1

      I'm guessing we aren't going to convince each other on this.

      Your position as I understand it, is that HTML/CSS/Javascript are inferior to Silverlight - having less consistency, fewer features and requiring greater developer expertise.

      My position is that Silverlight, Flash & Flex are inferior to HTML/CSS/Javascript because they are proprietary. They are closed formats, tied to their creator and not standardised by an recognised body such as W3C, IETF or ISO. I argue that because they're proprietary they will never be as widely supported as the web and they make everybody dependant on the creator, so called lock in.

    16. Re:silverlight by Zepalesque · · Score: 1

      Good point - you can code C# without an IDE, but doing so generally sucks.

    17. Re:silverlight by modmans2ndcoming · · Score: 1

      Considering that Silverlight /Flex, and JavaFX were created to allow easy and effective web application programing, it seems that HTML/CSS/Javascript are out classed there.

      Rich web applications are stretching HCJ to its breaking point with CSS being the weak point though HTML and javascript have many weaknesses too.

    18. Re:silverlight by moreati · · Score: 1

      I don't dispute your assertion that Silverlight, Flex etc are easier to program in. I also agree that HCJ have weaknesses.

      However Silverlight, Flex etc are proprietary. They are not based on standards and they require additional plugins that aren't available everywhere a browser is. Because of that, I say they are not a suitable replacement for HCJ.

      The solution should not be to rip and replace HCJ, it should be to evolve HCJ itself.

  19. Re:Ajax will be obsolete before it becomes mainstr by WWE-TicK · · Score: 1

    Developing applications in Flash is old school. These days, you're supposed to use Flex.

  20. Interoperability by gsnedders · · Score: 1

    What we still need is to continue moving towards full interoperability. Hopefully having a proper spec will help with that.

    Behaviour such as handling of getResponseHeader(header) when no header exists still varies: IE returns null, Fx/Opera return an empty string. If you want to check if a header exists, claiming it is an empty string isn't helpful.

  21. Do you also welcome AJAX hosts holding your data? by compumike · · Score: 3, Insightful

    Lots of people seem to welcome AJAX, and it does provide a huge step in the interactivity of web interfaces without sacrificing platform compatibility or development time.

    However, one thing that continues to surprise me is how willing most people are to having a third party store all of their data. All AJAX apps essentially require that you do not hold your own data -- it's held by the application provider. A big reason is because Javascript can't touch your local filesystem, but another is that Javascript isn't powerful enough to really be useful for all of the processing, so back to the server-side scripting it goes.

    In fact, one of the things that scared me today was how excited a friend was to discover that Google's chat application logged all of their Jabber conversations -- even if they had been made with a 3rd party GUI client (Pidgin). This, to me, would just be scary.

    --
    Educational microcontroller kits for the digital generation.

  22. Re:Ajax will be obsolete before it becomes mainstr by asaivan · · Score: 1

    >Have you every built an application in flash? It's a nightmare to maintain.

    Yes, I do it all the time. My apps are easy to maintain, because I make them that way. What about yours?

    It's not the code, it's the coder. It's not the language, but the skillful use of that language.

  23. Re:AJAX vs. Flash is the real question by ThePromenader · · Score: 0, Redundant

    Well, as soon as search engines learn how to "read into" flash, for starters. Otherwise the web (for Google) will turn into one giant, blank page.

    --

    No, no sig. Really.

    ThePromenader
  24. Re:Ajax will be obsolete before it becomes mainstr by anomalous+cohort · · Score: 1

    Google, Yahoo, Microsoft, Apple - all using ajax in one form or another in their web applications

    Three of those four vendors have published their own AJAX libraries for outside consumption. This accelerates adoption which is important from the standpoint of going mainstream.

    ...can't speak to Silverlight...design theory of ajax combined with a good JS api...makes it a much more maintainable and IMHO a nice way to build interactive web apps.

    I have not used silverlight either. Those whom I have spoken with about it are jazzed about it because you don't have to use java script as the programming language. IMHO, there are serious problems with java script. Not that there's really a problem with the language itself. Rather, the problems show up in how the code engines are implemented. I have gone into more detail about this here. Good programmers can live with these shortcomings either by rendering most of the GUI via HTML and using java script only lightly (i.e. validating event handlers) or by using good libraries and debuggers.

  25. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 3, Informative

    However, one thing that continues to surprise me is how willing most people are to having a third party store all of their data. All AJAX apps essentially require that you do not hold your own data -- it's held by the application provider.

    How does that differ from regular web applications holding your data? There's been well over a decade of time for users to become comfortable or uncomfortable with the idea of entrusting a third party with their data. So far, users have been leaning toward "comfortable".
  26. Re:Ajax will be obsolete before it becomes mainstr by e4g4 · · Score: 1

    What kind of applications do you develop in flash? And who maintains them once you've released them, you or someone else?

    --
    The secret to creativity is knowing how to hide your sources. - Albert Einstein
  27. Re:AJAX vs. Flash is the real question by LWATCDR · · Score: 2, Insightful

    Why?
    Yes people that use flash for layout and menus are just as stupid as people that used Java buttons.
    But Google doesn't need to read applications.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  28. AJAX is already dead by richieb · · Score: 0, Offtopic
    Move on to FLEX....

    Checkout labs.digg.com for some cool FLEX/Flash apps. Try doing that in AJAX...

    --
    ...richie - It is a good day to code.
  29. Re:AJAX vs. Flash is the real question by Ralph+Spoilsport · · Score: 1
    How long before people abandon AJAX and just use flash for everything? Much more reliable.

    when flash stops sucking? Flash is NOT a solution. Flash is a proprietary disaster in slow motion. AJAX is not a happy thing, either, but between AJAX and Flash, I'd choose AJAX every time.

    RS

    --
    Shoes for Industry. Shoes for the Dead.
  30. Personal experience with AJAX by heroine · · Score: 1

    The main thing I know about AJAX is the traffic nightmare it's boom has created on 680.

  31. Re:Ajax will be obsolete before it becomes mainstr by asaivan · · Score: 2, Interesting

    I've made dozens of web video streaming applications and interactive web pages and right now am working on a multi-user video conferencing app. I maintain them myself, which I know is always easier than maintaining someone else's, however, I always try to write code (any code-HTML/CSS, Actionscript, PHP) very cleanly and clearly. Anyhow, I know Flash isn't the answer to the world's problems, but I do appreciate the advances in Actionscript 3 they've made, by turning it into a full-on OO language which resembles Java in many ways. In fact, I like the clean structure of AS3 so much that I wont program in AS2 or (defintely not) AS1 anymore. Peace.

  32. Re:Do you also welcome AJAX hosts holding your dat by Bogtha · · Score: 2, Interesting

    All AJAX apps essentially require that you do not hold your own data -- it's held by the application provider.

    You're referring to software as a service, not Ajax. An application ran as a service by an outside vendor can hold your data hostage, whether or not it uses Ajax, and an application running within your organisation doesn't, whether or not it uses Ajax. The key is who runs the application, not whether it uses Ajax.

    --
    Bogtha Bogtha Bogtha
  33. Re:Do you also welcome AJAX hosts holding your dat by osu-neko · · Score: 1

    However, one thing that continues to surprise me is how willing most people are to having a third party store all of their data.

    A lot of people don't backup their data regularly, and know that their data is probably safer on some ASP's servers than on their own hard drive.

    Of course, from your comments about Goggle logging conversations being scary (this is one feature I make sure to turn on in every chat app -- it's SO damn useful to be able to bring up the text of old conversations, especially given that my memory is not what it used to be), I'm guessing what surprises you is the privacy concerns.

    I suspect most people have come to grips with the fact that they aren't James Bond. I'm well aware that someone at any of the companies storing my data could read it, that the NSA has probably already scanned it, etc. If there's someone at the NSA reading everything I write, my gods, dude, I'm sorry I've got such a boring life. I feel for ya, man...

    But seriously, who really cares? And why?

    --
    "Convictions are more dangerous enemies of truth than lies."
  34. Re:Ajax will be obsolete before it becomes mainstr by Anonymous Coward · · Score: 0

    That's not mainstream. That's four global players who have figured out a way to make use of asynchronous Javascript and XML. Mainstream is when Ajax is on more than 30% of new webpages. Not going to happen.

  35. AJAX directions by Stan+Vassilev · · Score: 3, Interesting

    I see few recurring themes in the questions asked, so I'll try to cover them briefly:

    Q1: How do you deploy an AJAX application offline?
    A1: You can use integrated HTML/CSS/JS/Flash/PDF runtime, like Adobe AIR.

    Q2: How do I deliver bulky complex AJAX applications over the net, if it's a lot of code?
    A2: You don't. It's not a suitable deployment model, at least until we have a simple delivery vehicle for bundling multiple app elements into a single file, such as a browser downloading and directly reading a ZIP file with collection of resources/JS files (as with Java's JAR). Until then, and for complex UI-s in general, look into established compiled solutions like Flash.

    Q3: Do we need JS2.0?
    A3: No, we don't (right now), since JS2 delivers benefits for larger projects only (refer to Q2 why large online JS projects are not viable). If this is resolved, then JS2 will be highly desirable.

    Q4: Hand-made AJAX or AJAX framework?
    Q4: Framework. Cuts development time, provides consistent code, avoid wheel reinvention (Exception: very large projects may need custom code. Are you Google? Yahoo? If not, use a framework).

    Q5: Is AJAX wide-spread / easy / hard / common?
    Q5: It's easy, wide-spread, and accepted. Fallback is usually present, unless the AJAX is a component of a complex online app that can't have no-JS fallback (example: rich text editor).

    Q6: Do I pick AJAX or Web 1.0 / iPhone SDK ?
    A6: Apply common sense. In general, when a new technology comes around, people abuse it and try to shoehorn it into replacing everything before it. Then comes the backlash ("AJAX sucks"). Only then, people settle to use said tech in moderation, co-existing versus replacing, evolution versus revolution, and solving unique problems not solved before.

    1. Re:AJAX directions by mblongo · · Score: 1

      Morfik has been working on developing the underlying technology of its flagship product for the past 7 years. This development started way before the term Ajax was invented. http://en.wikipedia.org/wiki/Morfik

      Morfik's revolutionary approach in pushing the boudaries of what can be acheived in web applications is a necessary step and it is a bit extreme IMHO to view it as an abuse of any concept.

    2. Re:AJAX directions by Anonymous Coward · · Score: 0

      A6: Apply common sense. In general, when a new technology comes around, people abuse it and try to shoehorn it into replacing everything before it [morfik.com]. Then comes the backlash ("AJAX sucks"). Only then, people settle to use said tech in moderation, co-existing versus replacing, evolution versus revolution, and solving unique problems not solved before.
      ---
      Morfik's revolutionary approach in pushing the boudaries of what can be acheived in web applications is a necessary step and it is a bit extreme IMHO to view it as an abuse of any concept.

      The irony.

  36. Re:Do you also welcome AJAX hosts holding your dat by iamacat · · Score: 1

    It's no different, and that is the problem. Plain web applications require all the processing to be done on the server by definition. AJAX apps are still not allowed to save data locally and Javascript is not fast/powerful/scalable enough to implement significant local logic (for example to encrypt most of the data that it stores on the server). Even wrappers like GWT can not fundamentally solve poor performance, non-configurable security restrictions or lack of threading in the underlying Javascript VM.

    Even if users are comfortable with hosted data, they can not be thrilled over the fact that buying a top-of-the-line quad core computer does nothing to speed up their applications. Eventually there will be a backlash and people will once again start using downloadable thick clients that communicate to the server when needed.

    Java applets should have been AJAX. It's too bad that Sun had crappy UI and browser integration and Microsoft quite possibly leveraged their monopoly position to prevent Java from being widely bundled by OEMs at the critical stage in web app evolution.

  37. First as tragedy, then as farce by Anonymous Coward · · Score: 1, Insightful

    You missed out

    *Is designed to kill the cross-platform web

    Like Active-X before it and Internet Explorer, Office, Exchange email, etc etc, what seems at first to be a useful tool will quickly turn to being a 'Works best on Windows" genuine advantage for the users involved - herding them onto a platform where everything requires a payment to Microsoft.

    1. Re:First as tragedy, then as farce by modmans2ndcoming · · Score: 1

      ummm....

      The plug-in works on OS X and Windows and presents material exactly the same on Safari, Firefox, and IE.

  38. Re:Do you also welcome AJAX hosts holding your dat by rmerry72 · · Score: 2, Insightful

    There's been well over a decade of time for users to become comfortable or uncomfortable with the idea of entrusting a third party with their data. So far, users have been leaning toward "comfortable".

    I'd say users have been leading towards "don't care". Of course the solution is to host your own web/app server. Then your client talks to your server and stores your data.

    Javascript and HTML are for content and presentation, not processing data. That's because browsers are optomised as display platforms, because they are built to display documents. Javascript is not a programming language its a script language to allow designers to customise your display, just like CSS.

    Want a customisable, interactive, client-server GUI. Code one in a real language. Use C, C++, C# or even Java, then throw an XML over HTTP client comms library in. Easy. Well easy for programmers with a little training. Not easy for script monkeys who can't code. AJAX is just a bastardisation of what was easiest for most people to build with.

    AJAX is to the Web what Lego is to the building industry. Useful in its place.

    --
    We do not inherit the Earth from our parents. We borrow it from our children.
  39. How are we to fix the Web? by Infonaut · · Score: 1

    How are we to fix the web?

    If I had a dollar for every time I've seen that question bandied about, I'd have at least enough money to see a matinee. Maybe even the 9pm show. Ever since the commercialization of the Web started in the late 1990s, there has been talk of "fixing" the Web. Java was going to fix it. XML was going to fix it. But nothing will "fix" the Web. It's an inherently messy environment, because of its openness. The bazaar is never as pretty as the cathedral. It's more dynamic, and it adapts to change faster, but it's always chaotic, a bit difficult to deal with, and seemingly on the verge of breaking down.

    --
    Read the EFF's Fair Use FAQ
    1. Re:How are we to fix the Web? by protohiro1 · · Score: 1

      Hit the nail on the head. Although css could use some work...

      --
      Sig removed because it was obnoxious
    2. Re:How are we to fix the Web? by Infonaut · · Score: 1

      Although css could use some work...

      Agreed. It wouldn't fix the Web, but it would make my life a lot easier.

      --
      Read the EFF's Fair Use FAQ
  40. Re:Do you also welcome AJAX hosts holding your dat by MrMarket · · Score: 1

    However, one thing that continues to surprise me is how willing most people are to having a third party store all of their data. All AJAX apps essentially require that you do not hold your own data -- it's held by the application provider. I've always wondered why some of these guys don't sell appliances to companies that insist on keeping everything behind their firewall.
  41. Ajax very useful by Drunkulus · · Score: 1

    Mr. clean has ajax by the nuts

  42. 1 insightful.. laugh. by Anonymous Coward · · Score: 0

    1 radical python fanboy modded you up, good job there bud.

  43. Re:Ajax will be obsolete before it becomes mainstr by tomq123 · · Score: 1

    Flex is not the same thing as developing using Flash. Yes, the end result is a Flash based application but the way you get there is completely different. Macromedia/Adobe has done a great job of making Flex based applications as easy to develop and maintain as any other UI technology. Even going so far as to Open Source the Flex SDK. That being said, they are also charging way to much for the technologies (LifeCycle) to hook it up to Enterprise components. Although, there are some pretty good Open Source technologies (OpenAMF, Granite Data Services.

  44. ASP.NET AJAX by Anonymous Coward · · Score: 0

    AJAX is really easy with ASP.NET, if you have version 3.5 or an older version with the AJAX Framework installed. It's as simple as a few tags. If doing AJAX (or anything else, like database connections) in PHP was as easy as ASP.NET, I would never use ASP.NET.

  45. Divs not quite useless by weston · · Score: 1

    No, they aren't. They are absolutely useless for layout.

    I wouldn't go that far... there are times when positioned/floated divs are more convenient/more powerful than a table-based layout.

    That said, if the sentiment driving that statement is utter frustration with the bitter taste of the CSS-positioning kool-aid, I understand perfectly. It was absolutely the wrong idea to try and get rid of tables as a layout tool, and the fact that it's been taken up as a mantra is a problem.

    1. Re:Divs not quite useless by Bogtha · · Score: 1

      I wouldn't go that far... there are times when positioned/floated divs are more convenient/more powerful than a table-based layout.

      No, you are missing the point. You can position and float any element type. The <div> element type does absolutely nothing for you with regard to layout.

      --
      Bogtha Bogtha Bogtha
  46. KISS by kentsin · · Score: 1

    In the beginning html is simple.

    Once upon a time, Mozilla want to create a platform to develop specific clients.

    Now, comes the iphone:

    You want to run ajax version to edit your document on-line?

    What are web-services?

    Why keeping to chase fancy interface and make the more and more complicate things?

    I want to ask a question: What is the platform you want to develop for the next big thing: the handheld device.

    What platform you want to develop for the device that have no display?

    Can ajax suit a platform for voice only or more innovative interface?

    KISS! with love.

  47. Commoditized? by Anonymous Coward · · Score: 0

    "'On what timeline will AJAX skills become commoditized like HTML skills became?'"

    Well HTML is a markup language for web documents, it became "commoditized" when HTML editors appeared. Some may not like the verbosity of the output over "doing it yourself in notepad" but they made it simple for people to create documents.

    AJAX stands for Asynchronous Javascript And Xml. I ignore the XML part here since we can use JSON or even a custom format in its place, but the Javascript part involves a concept called "programming". As such it will become no more "commoditized" than Perl, Ruby, C++, VB6, C#, VB.NET or Java etc etc.

  48. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 1

    AJAX apps are still not allowed to save data locally
    ...in Internet Explorer. GlobalStorage works fine in FireFox. It's even a standard to boot.

    Javascript is not fast/powerful/scalable enough to implement significant local logic (for example to encrypt most of the data that it stores on the server)

    Not sure what you mean here. Javascript is more than fast enough to implement a stream cipher like RC4. Meebo, for example, encrypts your password rather than using SSL to connect. (An SSL server *is* available, but they ask people to only use it if absolutely necessary due to the high server load.) Having implemented several ciphers in Javascript, I'm not really sure what you're getting at here.

    Here's a few cipher implementations: http://shop-js.sourceforge.net/crypto.htm

    And here's a cool video game: http://java.dnsalias.com/tetris/ie/
    (^^ Java required for those foolish enough to use Internet Explorer. MWHAHAHA! Oh, and click outside the block-dropping area before starting on IE. The Applet shunt for the CANVAS tag doesn't handle keypresses correctly yet.)

    Even if users are comfortable with hosted data, they can not be thrilled over the fact that buying a top-of-the-line quad core computer does nothing to speed up their applications.

    That's true. But not because Javascript is slow. Because your applications are only as fast as the network. And if the network is slow, the fastest processor in the world won't help you. On the other hand, I've seen webapps that are amazingly zippy when the server has low latency and fast response times.
  49. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 2, Insightful

    No offense is intended, sir, but your comment reeks of inexperience. Javascript is far more capable than you give it credit for. And I say that as someone who's coded a variety of applications (including client/server) for well over a decade, in a variety of different languages. The number one problem I've found in Javascript critics? They have no idea how to actually code in the language. They don't understand that it's object oriented, they haven't given more than a cursory glance to the W3C specs, and they are blissfully unaware of where the WHATWG is taking HTML applications.

    Want a customisable, interactive, client-server GUI. Code one in a real language. Like Javascript. If you know what you're doing, you'll actually find it a LOT easier than writing a comparable C, C++, C#, or Java GUI.

    Oh, and Javascript was NOT designed as a "display customization language". It was originally designed to script (drumroll please...) Java. As in Java, Java. Not Java Applets (though that was included in the spec), but straight-up, plain-Jane, gosh-darn-that-looks-like-semantically-funny-Java Java. Mozilla still supports the full Livescript API in case you want to play around at some point.

  50. Stay on the linked page - avoid the non-print one. by Anonymous Coward · · Score: 0

    I normally support sites by not visiting 'print' optimized pages (usually linked on digg) and going to their normal, ad-supported ones. After all, it sounded like an interesting article. But that site was just ridiculously ad-ridden and designed horrendously (not to mention being coded in tables...).

    And after that, it calls itself "The World's Leading Resource For Rich Web Technologies!" ..?

  51. AJAX still sucks by Animats · · Score: 2, Insightful
    Reasons AJAX still sucks:
    • The concurrency model is lame and buggy. Open Google Maps in Firefox 2. Roll the mouse wheel rapidly to zoom in and out. Watch the maps break up as the browser gets out of sync with the server and doesn't properly repair the window damage. It's like a window system from 1990 or so.
    • Firewalls and AJAX still don't play well together. Rewriting JavaScript source in the firewall is not the answer.
    • The conflicts between cross-site scripting, mashups, and security illustrate that Javascript's security model is inadequate.
    • The JSON concept opens security holes. JavaScript has the wrong primitives. In LISP, there's the reader, which takes in a string and turns it into an S-expression, and there's "eval", which executes an S-expression. In JavaScript, there's only "eval", which takes a string and runs it. Oops. Not the right tool for marshalling.
    JavaScript itself isn't that bad a language, though. It's the integration with browsers that's not good enough.
  52. Re:AJAX vs. Flash is the real question by Anonymous Coward · · Score: 0

    Flash has probably the worst dev environment I have ever used. Not a promoter, but Microsoft Silverlight 2.0 is just going to blow it out of the water. Microsoft is much better at building development tools than Adobe+Macromedia. Sun had the right idea with Java applets ten years ago but never fixed/upgraded the technology (slow, even today). Now there is some action on their part, most likely way too late.

    That being said, I wouldn't use any of these tools for an internet facing website at this point in time, for internal intranet/extranet corporate apps yes, but not for use by the general public.

  53. Re:Do you also welcome AJAX hosts holding your dat by iamacat · · Score: 1

    ...in Internet Explorer. GlobalStorage works fine in FireFox. It's even a standard to boot.

    The whole/only purpose of AJAX is to have your app work in IE6/IE7 without installing any plugins not bundled with the OS. If you require an extra download of Firefox, you might as well ask people to download Java or a regular native app which much better UI and performance.

    Javascript is more than fast enough to implement a stream cipher like RC4. Meebo, for example, encrypts your password rather than using SSL to connect.

    Oh, I have no doubt you can encrypt your password. Just try to encrypt the whole online word processing document with many images before saving it to hosted storage space. Oh, and RC4 is not a pinnacle of security.

    On the other hand, I've seen webapps that are amazingly zippy when the server has low latency and fast response times.

    Perhaps more people can invest in zippy servers if clients do 90% of the processing, cache all received data and changes and just connect to synchronize once an hour.

  54. Re:Do you also welcome AJAX hosts holding your dat by Xabraxas · · Score: 2, Informative

    Oh, and Javascript was NOT designed as a "display customization language". It was originally designed to script (drumroll please...) Java. As in Java, Java. Not Java Applets (though that was included in the spec), but straight-up, plain-Jane, gosh-darn-that-looks-like-semantically-funny-Java Java. Mozilla still supports the full Livescript API in case you want to play around at some point.

    Not exactly true. Javascript was not invented to be a scripting environment for Java. It wasn't named Javascript initially and the syntax is similar to C just as Java syntax is similar to C. In fact the name Javascript was more of a marketing ploy than anything else. Javascript was developed by a Netscape engineer and indeed seems to be invented for the purpose of web-based scripting, not Java scripting.

    --
    Time makes more converts than reason
  55. Ajax is Easy by Chulo · · Score: 1

    Assuming you're experienced with html forms, basically you're generating http requests from javascript and 'inserting' the results into a html tag that supports innerHTML . div tags seem to be the most commonly used tags. div tags are very powerful, when combined with css (commonly the display attribute) they can be used for many of the various ajax effects you're already familiar with as well. The main point of ajax is saving pixels and that the page should never have to refresh/reload. So if you're already an experienced web developer it's really just a matter of making the switch to submitting forms in javascript, a lot of other stuff goes with that being said tho. Also, if you think about it in it's rawest form, think about an http request; it has stages, which means it needs a handler function. There are 4 stages to a http request. The handler function is basically a callback. So as the http request progress, it is progressing stages (or changing state).
    Here's some code:
    do ajax(url,elementId);

    function GetXmlHttpObject(handler) {
    var objXmlHttp=null;
    if (navigator.userAgent.indexOf("MSIE")>=0) {
    var strName="Msxml2.XMLHTTP";
    if (navigator.appVersion.indexOf("MSIE 5.5")>=0) {
    strName="Microsoft.XMLHTTP";
    }
    try {
    objXmlHttp=new ActiveXObject(strName);
    objXmlHttp.onreadystatechange=handler;
    return objXmlHttp;
    } catch(e) {
    alert("Error. Scripting for ActiveX might be disabled");
    return;
    }
    }
    if (navigator.userAgent.indexOf("Mozilla")>=0) {
    objXmlHttp=new XMLHttpRequest();
    objXmlHttp.onload=handler;
    objXmlHttp.onerror=handler;
    return objXmlHttp;
    }
    }
    var lastDIV="";
    function ajax(nurl,ndiv) {
    lastDIV = ndiv;
    var url="" + nurl + "";
    xmlHttp=GetXmlHttpObject(stateChanged);
    xmlHttp.open("GET", url , true);
    xmlHttp.send(null);
    }
    function stateChanged() {
    var divname=""+lastDIV;
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
    document.getElementById(divname).innerHTML=xmlHttp.responseText;
    }
    }

  56. AJAX is just a part of "HTML Hell" article ;) by hotfireball · · Score: 1
    Here, foks, here (http://catb.org/~esr/html-hell.html):

    masturbation with Javascript

    There is a large class of Javascript annoyances perpetrated by people whose ability to do cutting and pasting exceeds their negligible sense of taste. Of these, one of the most common is the script that scrolls text in the Netscape status line. To all the disadvantages of this one adds the fact that you can't see where links go any more. Better than that, pages with 25K of Javascript followed by

    *running away, hiding*
  57. (offtopic) SSL & Slow by coryking · · Score: 1

    I see linux has all the compiler switches for "encryption cards". Aren't these designed to speed up SSL sessions? Does anybody use them?

    Just curious. I always thought there was some kind of hardware trick you could pull if everything you do is SSL.

  58. Re:Do you also welcome AJAX hosts holding your dat by rmerry72 · · Score: 2, Insightful

    Oh, and Javascript was NOT designed as a "display customization language". It was originally designed to script (drumroll please...) Java.

    Please check thy facts, kind sir. Javascript was conceived of as a Java-like script language. A poor man's Java for those that found object oriented concepts a little too brain intensive. Thrown in the first netscape browser to allow a little customisation of the DOM on the fly, for things that then then HTML 3 couldn't do properly.

    Javascript is not an object oriented language. It is at best what can be called object-based, but then anything that uses "objects" can make that claim. There is no polymorphesm or inheritance, strong type checking, nor even much encapsulation. Its all function based monolithic code. And even if javascript, per se, is capable of the above, examples of such are very, very rare indeed.

    As for the W3C specs, they aren't worth that much as most of the javascript interpretors - aka browsers - haven't given much more of a cursory glance at them either. No point writing code to spec if the interpretor won't run the code in the same way. At least Sun managed to force JVMs to be written to a more standard standard.

    My brother builds model planes in his spare time. According to your Javascript defence guess he can call himself an "Aircraft Engineer" now. Everytime I see recruitment ads for "HTML / Javascript Programmer" I kack myself. Well, at least it leaves the real programming jobs for those of us that can.

    --
    We do not inherit the Earth from our parents. We borrow it from our children.
  59. AJAX is programming, HTML was page layout by Cid+Highwind · · Score: 1

    "When will AJAX development finally be easy?"

    Shortly after developing the same app for a traditional desktop becomes easy. If you want to write a spreadsheet app, the problems are the same whether you're building the interface with AJAX or Win32 or Java or QT.

    --
    0 1 - just my two bits
  60. Re:Do you also welcome AJAX hosts holding your dat by Unnngh! · · Score: 1

    You can actually get away with inheritance using the prototyping model inherent in Javascript's "object based" programming model. There are some other strange and unusual things that can be done based on prototypes as well, like adding properties to an object or set of objects at runtime. The parent has a limited point, I would agree that Javascript is a "real" programming language as such things go. The problem in my experience is twofold. As you mentioned, the first is with inconsistent JS DOM implementations between browsers. The second is the kludgy syntax and these sorts of "hacks" to make objects try to work like they do in other languages. The C-like syntax is nice as most people are familiar with it but there's nothing I hate more than programming in javascript.

  61. Here's one idea ... by ScrewMaster · · Score: 1

    On what timeline will AJAX skills become commoditized like HTML skills became?

    When you don't need to know fifty languages to make it all work.

    --
    The higher the technology, the sharper that two-edged sword.
  62. Re:Web is bloated. by ScrewMaster · · Score: 1

    Now why does slashdot eat my tags when I post as Plain Old Text?

    Because nobody fed the Trolls today.

    --
    The higher the technology, the sharper that two-edged sword.
  63. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 4, Informative

    Please check thy facts, kind sir. Javascript was conceived of as a Java-like script language. A poor man's Java for those that found object oriented concepts a little too brain intensive. Thrown in the first netscape browser to allow a little customisation of the DOM on the fly, for things that then then HTML 3 couldn't do properly.

    You may be surprised to know that I am well in possession of the facts. I used to believe that Javascript (formerly Livescript, formerly Mocha) got its name in simply a cross-branding deal. In fact, it was far more complex than that. Javascript was created to script Java as well as the DOM. The original concept would have blown today's AJAX out of the water in usability. Alas, it was not to be.

    Here's more history for you: http://safari.oreilly.com/0768666775/ch01lev1sec1

    Also, here's a bit of Javascript for you, demonstrating how powerful it was intended to be:

    <script>
    var myobj = Packages.javax.swing.JOptionPane;
    var Frame = java.awt.Frame;

    var frame = new Frame();

    frame.show();

    myobj.showConfirmDialog(frame, "Hello from Java! See Ma? No applet!");

    frame.hide();
    </script>

    (That will work in FireFox with a recent Java plugin. I guarantee that it will not work on Internet Explorer.)

    You have to remember, Java already existed in the browser when Javascript was created. Netscape internally discussed just using Java itself for scripting, but decided that a new, more dynamic scripting language would be more useful. (Source) Thus the birth of Javascript. Eich described the first revision as "having gotten out of the lab a bit earlier than intended". Javascript 1.1 was much closer to his vision, and what we think of today when we talk about Javascript.

    You also need to understand that the Javascript language went beyond just the browser. Much of its development was driven by its use as a server-side CGI language. So it became a "real" language very quickly, despite its slow start.

    And if you think that's cool, remind me sometime to tell you about how multipart/x-mixed-replace could have been server-side push long before AJAX, Comet, or <event-source> ever existed. ;)

    Javascript is not an object oriented language.

    Incorrect. Prototype-based languages are very much OO languages. They're different from class-based, languages, but that doesn't make them any less powerful.

    There is no polymorphesm

    I think you misunderstand the very meaning of polymorphism if you believe that.

    Here's the "Runnable" interface implemented in Javascript:

    var MyObject1() {}
    MyObject1.prototype.run = function() { alert("Running 1!"); }

    var MyObject2() {}
    MyObject2.prototype.run = function() { alert("Running 2!"); }

    var objarray = [new MyObject1(), new MyObject2()];

    for(var i=0; i<objarray.length; i++) objarray.run();

    The polymorphism appears to work fine?

    or inheritance

    Funny, Netscape's Client Guide has an entire chapter on that.

    strong type checking

    Strong typing is not a OOP requirement. It is a feature of some languages. Nothing more, nothing less. In any case, Javascript actually has quite a few typing fe

  64. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 2, Interesting

    There's a lot of confusion over the origins of Javascript, but it basically went like this:

    Self Java -> Mocha -> Livescript -> Javascript

    Brendan Eich practically never talks about the Self Java/Mocha days of Javascript. Not all that many people even remember the working title "Mocha". (Implying its early relationship to Java.) Scripting of Java was the goal in those revisions. Javascript 1.0 was kicked out the door incomplete, but 1.1 addressed the initial issues. The JavaClass and Package objects were added, and it became possible to run Java code without an Applet. It was pretty darn nifty, and still can be if you have Firefox with a Java plugin. (See my response lower in the thread for more info.)

    The branding concept was stupid, but there was solid reasoning behind it. And it was more than just because Netscape and Sun were partners.

  65. Microsoft *will* kill it by Tablizer · · Score: 1

    Microsoft will cripple JavaScript on Internet Explorer if AJAX cuts heavily into Windows- or MS-centric GUI technology. This is the main reason I don't put much stock in AJAX. But I agree a real GUI-over-HTTP standard is sorely needed.

  66. Re:SLASHDOT SUX0RZ by MrDERP · · Score: 0, Troll

    U SUX0RZ B1@TCH

  67. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 1

    The whole/only purpose of AJAX is to have your app work in IE6/IE7 without installing any plugins not bundled with the OS.

    Uhhh, no. The point of AJAX is to deliver rich applications over the internet through a standard delivery mechanism. Installing software is not network delivery of an application. Webapps generally provide a true network delivery of an application, but AJAX is a part of a toolkit that provides for a far richer set of applications delivered over the 'net.

    If you require an extra download of Firefox, you might as well ask people to download Java or a regular native app which much better UI and performance.

    I don't require the download of Firefox. Most of my apps require the use of a browser that meets standards. Which IE is failing to do. For that, the market should reject it. The sooner that pushes down to the customer level, the better. (IE is slowly dieing. I can't wait until it finally dies off altogether.) That being said, I make a rather huge effort to provide Javascript shunts to dynamically patch IE to the latest standards. Need CANVAS? Use the Google VML widget. No installation, just include the JS file. Need GlobalStorage? Create a hidden Flash component and map to the API to provide that exact functionality through SharedObjects. (Flash is bundled, so there's no installing extra components.) Need DOM2 Events? Patch the event system to wrap addEventListener around Microsoft's proprietary attachEvent. Need SVG? Use Javascript to render it through the VML system.

    The key to these solutions is that they are forcing IE to be compatible with the standards, but in a way that's transparent to the user. It's a sucky solution when compared with getting Microsoft to fix their %$$#@ browser, but it's a forward compatible solution should Microsoft ever pull their head out.

    Just try to encrypt the whole online word processing document with many images before saving it to hosted storage space.

    I have done this sort of thing. It really is not that bad. You won't find any production implementations of it, though, because that's what SSL is for. Additional security is simply paranoia and does not increase security to any appreciable degree.

    Oh, and RC4 is not a pinnacle of security.

    No one said it was. However, it works well enough for any situation you need a stream cipher for. If you need a block cipher or asymmetric encryption (been there, done that, what a major PITA), feel free to implement it. It will be slower than a native implemenation, but not so slow as to be unusable. (Assuming that the encryption you're using would be "usable" in *any* language.) Your example of "saving a document" might require a "Saving..." dialog for a few seconds, but that would probably be there regardless of the encryption.

    Perhaps more people can invest in zippy servers if clients do 90% of the processing, cache all received data and changes and just connect to synchronize once an hour.

    That is the goal, actually. The richer AJAX applications become, the less bandwidth and server-CPU intensive they become. Which makes it easier to provide low-latency results to clients. Of course, a badly designed AJAX app can do the exact opposite, so it's not a panacea.
  68. Re:Do you also welcome AJAX hosts holding your dat by iamacat · · Score: 1

    I am kind of curious about your understanding of standards. Microsoft implemented Javascript with full DOM access at the time Netscape Navigator had rather limited and tedious Javascript support. Now a bunch of folks came together and declared that Microsoft got it all wrong and has to re-implement its browser with 80% market share to conform to minority's opinion of how a web browser should behave. I say punish Microsoft for illegal use of its monopoly power, but otherwise let critics develop their own software and let the best program win.

    I don't think the last part will be easy for standard XHTML+CSS+Javascript. The thing is, IE's implementation is enough to add some animations to a home page or add some form validation for a shopping site. On the other hand, even the standard is a lousy platform for writing apps that actually do something significant on the client side. Java+SWT+a security manager could be a step forward for that, but a really solution should support a free choice of languages and UI toolkits. Perhaps instantly created virtual machines that provide native performance but still maintain security is the answer.

  69. I've had only SOME experience with AJAX by Martian_Kyo · · Score: 1

    while it's not the most difficult thing to use it can be quite frustrating.

    mostly cause of J in ajax. Javscript can be a nightmare to use. I never know if a certain javascript will work on all browsers or even all versions of a certain browser. Most frameworks have solved this by have different code for different browsers, which is another thing I don't like about AJAX, very messy code.

    AJAX is not unusable but it requires (or even demands) a very organized approach from the developer side, something that is not always easy if you are working on tight deadlines.

    If you want to use AJAX, sit down and think about it, understand what it is, because AJAX (again mostly due to Javascript) can produce some of the most unusual and frustrating bugs. Which are usually easy to fix, but at times almost impossible to find.

  70. Re:Ajax will be obsolete before it becomes mainstr by famebait · · Score: 1

    HTML is simply too convoluted for application development.

    Html is not the problem. The differing javascript APIs the browsers offer is the biggie,
    and secondly the roundabout way you have to use to get from server response to a change in page state. And he of course CSS is just bananas even if implemented correctly and consistently, which it never is.

    --
    sudo ergo sum
  71. Re:Do you also welcome AJAX hosts holding your dat by Mr2cents · · Score: 1

    The thing that surprises me is that somehow, people seem to think that javascript is a nice language to write software with. It's an atrocity! It's a scripting language at best! Years ago, we had java applets, and now, somehow, people have decided that javascript is a better way to write a spreadsheet program? That's maddness! It was never meant to do that. I bet these AJAX apps are full of dirty hacks to get around the language's limitations.

    --
    "It's too bad that stupidity isn't painful." - Anton LaVey
  72. Are you high, or do you just suck at English? by Anonymous Coward · · Score: 0

    In the beginning html is simple. "Was". And HTML hasn't been any more difficult since. Quite the opposite. With XHTML, it's easier and more strict.

    Once upon a time, Mozilla want to create a platform to develop specific clients. What? "Specific clients"? What the hell are you talking about?
    Anyway, "wanted"...

    Now, comes the iphone: So?

    You want to run ajax version to edit your document on-line? Why do you care? And anyway, "ajax version" what?

    What are web-services? Try Wikipedia, ignorant.

    Why keeping to chase fancy interface and make the more and more complicate things? Why chasing fancy web page write with English is not Ok and complicated text?

    I want to ask a question: What is the platform you want to develop for the next big thing: the handheld device. Two colons, up my colon! Anyway, do you really care what platform I'll choose to develop the "next big thing"?

    What platform you want to develop for the device that have no display? Why are you asking these questions? Do you even want answers, or just write weird shit on /.?

    Can ajax suit a platform for voice only or more innovative interface? Are you stupid? Yes you are. Ajax is for WEB COMMUNICATION, stupid.

    KISS! with love. What? KISS! my ass.
  73. 'How are we to fix the web?' like this: by master_p · · Score: 1

    'How are we to fix the web?'

    Replace HTML with a real programming language which includes security and distributed computing primitives, and you're done.

  74. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 4, Insightful

    Microsoft implemented Javascript with full DOM access at the time Netscape Navigator had rather limited and tedious Javascript support.

    Correct. And what happened to Netscape's market share?

    Now a bunch of folks came together and declared that Microsoft got it all wrong and has to re-implement its browser with 80% market share to conform to minority's opinion of how a web browser should behave.

    I hardly think that a "minority" of the development community are the ones mad at Microsoft. Anyone who has used IE to any appreciable degree is mad at them. When 5.0 came out back in '99, it was incredible. The best browser, bar none. Microsoft released a fairly insignificant update called 6.0 in '01 and that was where the browser sat. For about 5 years. Then when everyone had almost given up hope that Microsoft would keep developing their browser, they announced 7.0. They also announced how they were going to meet W3C standards and make developer's lives better. 7.0 came out, and it turns out that Microsoft couldn't even be bothered to add support for simple things like DOM2 Events or SVG. (Things which they effectively already had support for, just in a proprietary-yet-not-quite-dislike manner.) In reality, they stamped out a few CSS bugs, screwed up the IE interface, then developed a new certificate scheme that was practically the same as the old one but made more money for all involved.

    I say punish Microsoft for illegal use of its monopoly power, but otherwise let critics develop their own software and let the best program win.

    The funny thing is, the only reason why IE hasn't died out is aforementioned monopoly power. I have met very few users who prefer IE over Firefox or Safari. However, I have met managers who force the use of IE (thus leaving themselves vulnerable to IE's massive security holes) for the purpose of 100% Microsoft "corporate standards". As a result, IE has lost market share in the home computer segment, but is not taking any losses in the B2B arena. And it's NOT because it's a good product.
  75. Commoditization by BVis · · Score: 1

    'On what timeline will AJAX skills become commoditized like HTML skills became?'"
    I think you can read this as "On what timeline can we send our AJAX work overseas in order to make the beancounters happy and get rid of all our expensive in-house developers?"

    This is *not* a good thing for American Web developers. They tried this with technical support, and while it worked well in some cases, it was a complete disaster in others. Not to mention the fact that you can't save as much money by outsourcing these days, due to the dwindling/more expensive supply versus increased demand.

    I've talked to some very talented Indian developers and tech support reps. I've worked with some extremely competent IT workers from Bangalore. As demand rises, these high-quality workers will become scarcer/more expensive. It gets to the point where the extra overhead/infrastructure and annoyed customers isn't worth putting your own employees out of work.. not to mention when they lose their houses it aggravates the crisis in the housing industry.
    --
    Never underestimate the power of stupid people in large groups.
  76. Re:Do you also welcome AJAX hosts holding your dat by dwarfking · · Score: 1

    Thank you.

    I learned something new today, always the best way to start a day.

  77. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 1
    Slight bug in my code. This:

    for(var i=0; i<objarray.length; i++) objarray.run();
    should read:

    for(var i=0; i<objarray.length; i++) objarray[i].run();
    But I'm sure all ya'all already knew that. ;-)
  78. Time to Move On by RAMMS+EIN · · Score: 1

    (This post is a dupe, but it seems appropriate here, and I don't think many people have read the original.)

    HTML was a great way to get things up and going back in the day, but we have reasons to move on. Moreover, I think we have a good way forward.

    One of the problems with HTML is that it tries to be too many things at once. One, a semantic representation of data. Two, a page structure in which to present the data. Three, a description of how to render the data (this has been downplayed, but the fact to the matter is that tags like i and u still exist). It falls short on all three, and there is so much legacy code and mini-languages that writing a web browser is a total pain. So I really don't believe in HTML for the future.

    Instead, I believe in a more rigid approach. Data formats that are simple and easy to parse, without all the exceptions and special cases that are in HTML. No more mixing of semantics and presentation. Different jobs, different tools.

    So here is the proposal. For every kind of data, we invent a mini-language, specifically for that kind of data. It will have all the elements needed to represent data of that kind, and nothing else. These mini-languages can be standardized, but they don't have to be.

    One such mini-language will be a presentation language. This one will be standardized, and it will be what "viewers" will implement. It will be a language with everything needed to make proper interfaces to information; formatted text, graphics, GUI widgets, the lot.

    To add interactivity to the presentation, and possibly to perform the transformation from the semantic language(s) to the presentation language, there must be a programming language, which must also be standardized, as it will be run by viewers.

    Now we have everything we need. A semantic language for representing data, without any presentation junk. A presentation language for _presenting_ data, without any semantic junk. And a way to transform data into presentation.

    To ease the transformation from semantic language to presentation language, it would probably help if both used the same syntax. I would like it to be lightweight, perhaps s-expressions, but I could live with XML. As for the programming language, I am sure everybody has their favorites. ECMAScript would be one of the candidates. And there is no reason we couldn't have more than one of each language.

    I think, technically, all challenges have been solved. The problem will be getting things adopted. I foresee endless debating about which languages should be in the standard, large corporations baking their own, and lots of people arguing in favor of just using an existing proprietary solution that accomplishes the same task. In the meantime, developers will keep plodding along with HTML.

    --
    Please correct me if I got my facts wrong.
  79. Solitaire with AJAX by Sembiance · · Score: 1

    AJAX Solitaire has come a LONG way too, as shown here: http://worldofsolitaire.com/

  80. Ajax questions by bronsinbound · · Score: 1

    First, never ask the "experts" what questions you should be asking.

  81. Different paradigms by s2theg · · Score: 1

    ASP.NET alone was enough to slow the adoption of the AJAX technique at the last firm I worked at. ASP.NET uses a component framework where every page is a form that uses POST DATA to maintain page state. Being bound to a framework that works like that makes AJAX development difficult if not awkward. Once Microsoft created an AJAX library for .NET we were able to start slowly adopting the AJAX method but it mostly happened on new websites.

  82. ajax vs flex by oxyelki · · Score: 1

    ajax seems like a doomed technology. well, there are few good ajax application out there (gmail etc), but as a mainstream it is doomed. it falls somewhere between html and adobe flex (and possibly silverlight). it departs from pure html world but never arrives to what flex is capable of. ajax loses the simplicity of html, becomes slow and awkward and tied up by by legacy standards. why would one use it then? only monsters like google who can trow tons of money into building and using their own obscure development kits (i remember looking into google web toolkit, first thing that crossed my mind "what the fuck is that??! why all this hustle??"). i ran into client once who had invested into an ajax financial application. this application was a total disaster and perfect example of how developers high on technology drive project into the ground. site was slow, ugly and unusable. so we ended up rewriting it in flex at a fraction of original cost.

  83. two sides by bandmassa · · Score: 1

    AJAX has two sides (assuming well developed code)

    The user experience is awesome on a good site. AJAX apps look mostly as usable as any local desktop app and it generally works.

    For the developer (and I speak as a hobbyist who taught themselves HTML in an evening in 1994, and can code some crappy PHP when pushed) is an arse tiring pile of dog mess.

    HTML was simple to learn, did pretty amazing stuff with bugger all skill required, but wasn't quite as elegant to look at as all this XHTML+PHP+Javascript+Java+whatever-the-f***-is-the-latest-craze.

    Too many technologies held together with string and gaffa tape is the usual approach boffins use to lock out non-boffins, and create artificial elites.

    So, combine the user experience of AJAX, with the boffin factor of the developer experience, and how that boffin factor is used to lock out ordinary people, AJAX is here to stay.

    --
    "I hope you like Guinness, Sir. I find it a refreshing substitute for, er... food." Col. Jack O'Neil, SG-1
  84. What's right-side up, then? by weston · · Score: 1

    No, it's not pedantry. This isn't merely a case of wrong terminology, it's a sign that a developer is looking at something in a completely upside-down way.

    You'll have to expound at length on what the correct philosophy a person who uses that terminology is missing, then, because I don't see it. My experience suggests the terminology is a poor test of whether a dev is doing so as an imprecise shorthand for CSS positioning or because they haven't realized that one can do CSS-positioned layout on elements other than divs. In fact, my experience suggests there are *very* few devs in that latter category.

    And to be a little pedantic myself, it's also technically wrong to suggest that the div tag has no layout value... any block-level element does, even if it's not much.

  85. Re:Ajax will be obsolete before it becomes mainstr by wing.wu · · Score: 1

    I have met an problem Ajax make the browser work with more and more trouble. compare it when you use ajax and don't use ajax, and the browser have a high per to shutdown with ajax. so the browser may be a common client(linked to the c/s model), it do too much for us. it seems strange, and i think something will appear to solve this problem

  86. Re:Do you also welcome AJAX hosts holding your dat by Xabraxas · · Score: 1

    Self Java -> Mocha -> Livescript -> Javascript

    Javascript is influenced by Self. Java is not. Java is very different from Self and Javascript.

    --
    Time makes more converts than reason
  87. Re:Do you also welcome AJAX hosts holding your dat by AKAImBatman · · Score: 1

    "Self Java" was a language that Mr. Eich worked on that allowed scripting of Java using Self syntax. That is about the sum of what I know about it.

  88. Thin client is good by magi · · Score: 1

    The thin client approach is good, because it practically removes one tier from the architecture. Programming with multiple fat tiers is a mess, but programming with a thin client is very similar to programming single-tier desktop applications. Well, plus plus database tier, etc.

    For example, IT Mill Tookit (http://www.itmill.com/) uses AJAX simply to turn the browser into a thin client or a terminal. The UI logic runs in the server-side in a Java servlet, with the thin client tier just passing most of UI events to the server. Only some very trivial logic that is usually not specific to the application is done in the client. The application development model is so simple that this approach is really the future of AJAX.

    1. Re:Thin client is good by smittyoneeach · · Score: 1

      Assuming fat pipe, of course, which is an increasingly good assumption.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
  89. Re:Do you also welcome AJAX hosts holding your dat by magi · · Score: 1

    Want a customisable, interactive, client-server GUI. Code one in a real language. Use C, C++, C# or even Java, then throw an XML over HTTP client comms library in. Easy. Well easy for programmers with a little training. Not easy for script monkeys who can't code. AJAX is just a bastardisation of what was easiest for most people to build with. Take IT Mill Toolkit (http://www.itmill.com/). It allows you to forget that's you are even coding for the web. The UI logic runs in the server and the AJAX code in the browser simply turns the browser into a thin client or a terminal. The server-side programming is pure Java and looks much like SWT or Swing or whatever. In case you need client-side customization, the client-side is written in Java and compiled with Google Web Toolkit (GWT) into JavaScript. So it's all Java.
  90. AJAX best done without JavaScript by magi · · Score: 1

    Doing big AJAX applications is not practical with JavaScript. You would need to do both client and server development, handle communications, and do that in two different languages.

    Take the approach of IT Mill Toolkit, for example. You don't need to see a line of JavaScript. Actually, you don't need to code anything on the browser, but all the UI logic is done in the server-side application. The JavaScript running on the browser simply turns it to a thin client that does some trivial user interaction in the browser and forwards most of user events to the server-side application. And if you need some custom client-side stuff, you program it in Java with Google Web Toolkit (GWT).

    Disclaimer: I work for the company.