Slashdot Mirror


Key Web App Standard Approaches Consensus

suraj.sun tips a report up at CNet which begins: "Browser makers, grappling with outmoded technology and a vision to rebuild the Web as a foundation for applications, have begun converging on a seemingly basic but very important element of cloud computing. That ability is called local storage, and the new mechanism is called Indexed DB. Indexed DB, proposed by Oracle and initially called WebSimpleDB, is largely just a prototype at this stage, not something Web programmers can use yet. But already it's won endorsements from Microsoft, Mozilla, and Google, and together, Internet Explorer, Firefox, and Chrome account for more than 90 percent of the usage on the Net today. 'Indexed DB is interesting to both Firefox and Microsoft, so if we get to the point where we prototype it and want to ship it, it will have very wide availability,' said Chris Blizzard, director of evangelism for Mozilla. ... Microsoft publicly endorsed Indexed DB on its IE blog: 'Together with Mozilla, we're excited about a new design for local storage called Indexed DB. We think this is a great solution for the Web,' said program manager Adrian Bateman."

14 of 143 comments (clear)

  1. The Web is not the Net. by John+Hasler · · Score: 4, Informative

    > ...Internet Explorer, Firefox, and Chrome account for more than 90 percent
    > of the usage on the Net...

    The Web is not the Net.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    1. Re:The Web is not the Net. by John+Hasler · · Score: 3, Funny

      > How do you find non-Web resources on the Internet other than through search
      > engines on the Web?

      I use Gopher.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    2. Re:The Web is not the Net. by WrongSizeGlass · · Score: 3, Funny

      You forget spammers and botnet operators, both large and growing markets.

      Well, they'll just have to abide by the new HTML standards like the rest of us. What's fair is fair.

  2. Re:Golden age of the web set to continue by John+Hasler · · Score: 3, Insightful

    > ...it looks like the Golden Age of the web will continue...

    Provided that your definition of a Golden Age includes many new and exciting exploits.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  3. Slowly reinventing the wheel in the browser by dirkdodgers · · Score: 4, Insightful

    Congratulations, you've developed a framework for client-server application development. Welcome to 1990. But wait, it's different this time because it's lightweight? Only it's not. Your framework runtime (the browser) consumes many times the resources that existing client-server applications ever did, and you still can't provide the same level of functionality.

    Progress in the software industry today looks like this:
    - 2003: Microsoft releases Office 2003
    - 2008: Google releases quirky, limited-functionality clone of Office 2003 that runs in the browser
    - 2016: Google releases quirky but fully functional clone of Office 2003 that runs in the browser, only it's progress because it's Web 5.0!!!

    Thanks but no thanks.

    1. Re:Slowly reinventing the wheel in the browser by raddan · · Score: 4, Interesting

      I think your comment is spot-on, and I think the reason is this: programmers hate network programming. They hate concurrency. CODER WANT SIMPLE.

      When you look at much of the development of platforms, a great deal of effort has been expended to make sure that the programming model is simple. E.g., from the perspective of a typical process running in a typical modern OS, the world still looks like a simple OS: your own flat address space and simple system calls to use to write to disk, etc. Generally, you don't have to deal with interrupts, shared memory, etc. But networking is where all of this breaks down. The location of your storage is important, because while hard disks are slow, network storage is really slow. Some parts of your application run here, and some run there, and here and there may even be wildly different platforms (e.g., 'there' could be a functional language running on a cluster, while 'here' could be a mobile web browser on a cellphone), so race conditions and slow network links and processors are a real problem.

      This constant shifting around is an attempt to find the right complexity balance. I don't know if there is a 'right' balance for all scenarios, but it doesn't look like that's going to stop people from trying to find it. Just look at all the iterations of RPC out there. They all suck, too (you just can't pretend the network doesn't exist!), but that does not stop them from being useful. Just look at NFS.

  4. Re:That sounds great. by larry+bagina · · Score: 3, Informative

    html 5 already has local storage

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  5. Re:Piled Higher and Deeper by John+Hasler · · Score: 5, Funny

    > ...look just like a local app did ten years ago.

    No, no, no. It will look completely different. It'll have rounded corners. Or something. I know! It'll have animated 3D shadows! How can anyone get any work done using a program that lacks animated 3D shadows?

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  6. I'm glad Microsoft is involved in the early stages by Hero+Zzyzzx · · Score: 3, Insightful

    so they have plenty of time to plan the (seemingly) minor but maddeningly frustrating ways they'll deviate from the standard.

  7. Need to decouple Javascript before it's too late by dirkdodgers · · Score: 4, Insightful

    And I see that our options as developers for interacting with this stunning new invention are still limited to one: Javascript.

    With application development increasingly moving to the browser, we as developers are going to find ourselves locked into a one language platform.

    The browser platform should standardize on a VM, not on a language. Say goodbye to traditional paths of evolution of programming languages driven by competition. Want to innovate by using a functional language to bring your solution to market faster? No can do. It's JavaScriptway or the highway.

  8. Re:I must have missed something by BlueBoxSW.com · · Score: 4, Informative

    Yes, and I've already written apps using it. Safari supports the html5 local storage pretty well, including in the iPhone.

    I, too, am unsure how this differs from other new local db storage techniques.

    What's missing, by the way, in my opinion, to make these REALLY useful, is a simple javascript call to determin if you are currently web connected, something like isNetConnected() found in some applications. This would let you customize the option you present to the user (ie, you can only sync your data when you're web connected).

  9. Re:Golden age of the web set to continue by 93+Escort+Wagon · · Score: 3, Funny

    Don't look now, but someone used one of those exploits to replace your comment's font.

    --
    #DeleteChrome
  10. Re:Golden age of the web set to continue by user32.ExitWindowsEx · · Score: 4, Insightful

    I read that pushState / replaceState link and it scared me. Note the following from it:

    Suppose http://mozilla.org/foo.html executes the following JavaScript:


    var stateObj = { foo: "bar" };
    history.pushState(stateObj, "page 2", "bar.html");

    This will cause the URL bar to display http://mozilla.org/bar.html, but won't cause the browser to load bar.html or even check that bar.html exists.

    Why do I have a feeling that said effect can and will primarily be used for horribly evil purposes?

    --
    "Evil will always triumph because good is dumb." -- Dark Helmet
  11. The Web is better by Geof · · Score: 3, Insightful

    Your framework runtime (the browser) consumes many times the resources that existing client-server applications ever did, and you still can't provide the same level of functionality.

    I think you're wrong. Functionality is not the name of the game. Communication and content are. Look, I was doing client-server development in the 1990s: Mac Programmer's Workshop (C++), Unix sockets (C), Microsoft Foundation Classes (C++). I would never go back. True, your example does illustrate your point. There are whole classes of application, like word processors, for which the Web is not (currently). But those are mostly stable, well-defined categories. The Web is not a better way to write Word, but it is a better way to create other software we want even more.

    1. The Web is social. When you develop an application, communication between users is practically a given. Back in the day, client-server software was deployed within organizations and was focused on access to data or business processes. Communication was rare and tended to be limited.

    2. The web centers on content to which developers add various functionality. You may have to work harder on your applications controls, but HTML and CSS give you tremendous power. A framework like Flash or .NET may let you put things exactly where you want them, but this takes flexibility (e.g. text sizing) away from the user. And they are still missing significant chunks of what HTML+CSS can do.

    3. The Web is simple. The learning curve for web applications is dramatically lower than for the kinds of apps you are talking about. HTML gives you hyperlinks for free. It also gives you a history with forward/back buttons, bookmarkable URLs, and a world of users who have been trained to use them. Programmers who try to develop apps without these features loose out on core benefits of the Web (hello, Flash).

    4. The Web is relatively unified and transparent. I can view source on any page, or if that doesn't work use Firebug to break down the DOM. These days the standards are complex, but there are real advantages over a mess of competing frameworks. Browser implementations are inconsistent: but that beats writing client-server software that works on some mix of Mac, Windows, and assorted Unix flavors, then trying to persuade the wider world to install client software.

    5. Javascript doesn't suck. I was surprised too when I found this out. It has some real weaknesses for sure (dynamic scoping!). It's no Python or Ruby, but it is powerful and its idiosyncrasies pale beside, say, C++ or PHP. Perhaps its biggest flaw is the pathetically poor standard library.

    If you want to write a word-processor, the weaknesses of the Web compared to traditional client-server development may be very frustrating. You could still go with client-server, which seems like the right tool for the job. But you don't. The advantages of the Web are overwhelming. It's easier to be nostalgic about the benefits of client-server than to reinvent the benefits of the web.