<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Keith's Web Blog RSS Feed</title>
<language>en-us</language>
<link>http://www.keithwatanabe.net/index.php</link>
<description>Keith Watanabe's Website</description>
<item>
<title>Killer Javascript Framework: Ext JS (And A Vision of the Future for Web Programming)</title>
<link>http://www.keithwatanabe.net/blogs/2008/2/29/1180c6e83e1c8bf081761a3540944d4a.html</link>
<description><![CDATA[My boss pointed out this new <em>killer</em> <strong>Javascript</strong> framework called <strong>Ext JS</strong>.  It's hot!  Basically, it looks like <strong>Java Swing</strong> for Javascript.  It's also quite huge at nearly 1 mb for the main file.  However, I believe it's quite worth it.  While I enjoy programming with <strong>JQuery</strong> because of the slick, simply style, <strong>Ext JS</strong> is far more powerful for building professional looking GUIs.  It seems to have taken <strong>Java's Swing</strong> approach for creating UI components.  Even some of the naming conventions appear to be the same.<br />
<br />
This Javascript component architecture looks like the future of Javascript.  <strong>Scriptaculous</strong> and even <strong>JQuery</strong> look ancient by comparison.  Just to demonstrate some of the major adapters, you can see sites such as the Dow Jones Industries make use of the component as well as a few other sites.  The main thing to me is that the components <em>look good</em>.  You can create professional looking windows like the one linked below.<br />
<br />
The primary negative issue I see is that the coding complexity increases drastically.  <strong>Swing</strong> never was a fun API to work with.  In fact, I think one of the primary reason that Java never took off as a purely client side programming language is that <strong>Swing's</strong> API was bulky and cumbersome.  HTML was more comprehensible such that a kid could program it.  Even scripting languages was smoother to program.  With <strong>Ext JS</strong>, it seems as if we've just moved back to <strong>Java Applets</strong>.  Secondly, the fact that the library is ENORMOUS, this is almost similar to the loading time of an <strong>applet</strong>.  The only advantage here over an <strong>applet</strong> is that no <strong>JRE</strong> is required for the browser.<br />
<br />
Regardless, the biggest contribution I can see is that this library and it's expansion could imply two things: the increase of the Web/Browser as the OS and the death of Windows.  Combining the power of this library with other rich media, it's beginning to look like the need for Windows based applications is over.  The biggest problem in Web 1.0 applications was the interface and lack of interactivity.  Now, the interfaces have become incredibly sophisticated and interactive, making the need for Windows based applications nearly useless.<br />
<br />
Whenever I see these elements come alive for the web, I keep thinking back to two things.  First is the network computer as proposed by <strong>Larry Ellison</strong> from <strong>Oracle</strong>.  He kept promising the network computer as being the huge thing.  He definitely had the vision, but he was far ahead of his time.  He even understood the cost.  Unfortunately, because his timing was bad, his product couldn't sell.  <strong><br />
<br />
I'm going to make a bold prediction here and say that 85% of the applications will be completely web driven in 5 years time</strong>.<br />
<br />
The other thing that comes back to me is the constant battle between client-server computing.  It seems inevitable that this battle will continue to rage as paradigms shift.  Ultimately, I see the end form (to a degree) being a mixture of the following.  A home server appliance that contains all user data.  It will be open with tight preferences linking one to all the communities on the web.  Users will have the option of backing up data through rentable massive online storage facilities similar to how one can put their furniture and items away in physical storage.  Obviously, companies like <strong>Amazon</strong> (with <strong>S3</strong>), <strong>Google</strong> (<strong>Gdata</strong>), <strong>Box.net</strong>, <strong>XDrive</strong>, etc. are already in this market, but capacity will be in the petabytes range.  Data will be segregated into fine grained segments such as photos, video, documents, etc. helping the user organize data.  While we do have that now, what will follow is a greater number of these services as well as consolidation of such services that users can easily choose from menus during the backup/storage of their data.  This is where the portal idea will make a major comeback, except that the interface will be designed in a slicker, more customizable manner.  There will be a client loaded service on their local system that will also interface with the online backup utility.  In turn, this will maximize the redundancy and privacy aspects of the user's data.<br />
<br />
All terminals will be dumb in the household.  <strong>Bill Gates</strong> recently stated that he sees the death of the keyboard.  Well, I doubt that the written word will ever permanently cease.  There's too much culture in written language that will kill it from history.  However, in going back to the dumb terminals idea, I'm a firm believer that every room in the house will hold some form of interface to your data system and all major appliances will be intelligently interconnected with your local server.  For business related points, the keyboard will still play a predominant role.  Let's be honest here: unless there's a plug to read our minds, the keyboard will be a continued interface for creating ideas.  I doubt that people are going to be dictating into a microphone.  The psychology between writing and speaking are far too different (just as a simple example, my reading/writing skills for Japanese are far better than my listening/speaking skills).  Not to mention, I doubt that most offices would really want to allow dictation in sending information between people.  We just have to be practical about such issues.<br />
<br />
Either way, the end vision again is going to be a hybrid because of psychological reasons.  People want to <em>own</em> and <em>control</em> their data, where ownership means physical keeping in a tangible location.  However, contingency and reliability require redundancy.  I doubt these two axioms will go away anytime soon so we should start building with these elements of architecture and psychology in mind.]]></description>
<pubDate>Fri, 29 Feb 2008 19:30:22 -0700</pubDate>
<guid>http://www.keithwatanabe.net/blogs/2008/2/29/1180c6e83e1c8bf081761a3540944d4a.html</guid>
</item>
</channel>
</rss>
