Programmatic DOM Node Manipulation on IE

January 2, 2008 – 7:01 am by coachwei

Programmatic DOM node manipulation is actually not straightforward, given that Internet Explorer has so many unique DOM behaviors. I ran into quite a few issues recently when I was playing with Dojo Toolkit . I didn’t find a thorough answer to my questions when going through Dojo source code (Pardon my ignorance here. I am very sure that Dojo folks have run into these issues before and have solved them. It is just my stupidity of not being able to find the answers via source code reading). Further, I was surprised that I couldn’t find a lot of information about this on the web either. Hence this blog entry is created as a note to whoever is interested in programmatic DOM on Internet Explorer. Let’s take a really simple example. Let’s say that you want to programmatically create an HTML DOM node, and programmatically set its attributes. The value of these ...more »

The Misleading Business vs. Technology Argument - Tips for Startups

December 21, 2007 – 5:20 pm by coachwei

In this high tech industry, one of the most misunderstood and potentially misleading conventional wisdom about startups is the separation of "business side" and "technical side" and "technical people should listen to the business people". This is the teaching from almost every business school textbook: don't lead with technology, instead, should lead with business. You should look at things from a business perspective, not from a technology perspective. Yes, I agree that the above is right and makes sense. But such teachings can be misleading, especially since that the other side of this argument is not mentioned enough. In particular, the evolution of this high tech industry is making such teachings more and more dangerous if not taught from a balanced perspective. The reality is that our society has been tinted by the side effects of such teachings. All these well publicized examples of how various companies failed for being technology-centric or ...more »

Is This a Little Too Much Hacking for Prototype.js?

November 21, 2007 – 9:20 am by coachwei

Prototype.js is a popular Ajax toolkit for web developers. I have enjoyed using it despite the complains I heard from people about how Prototype.js does too much JavaScript hacking that breaks other people's code. One of the common one complains is that Prototype.js adds methods to built-in JavaScript objects (such as String object). I tend to brush such complains aside - "well, there is nothing wrong per se by adding some methods to JavaScript objects via standard permitted means". But this recent incident with my adoption of the latest and greatest Prototype.js 1.6 really made me wonder: is this a little too much hack for Prototype.js? Or is it just bad coding practice? I built a little application using Prototype and Scriptaculous. The application was fairly straightforward and Prototype+Scriptaculous made building such an application fairly easy too. Well, then. I used a JavaScript compression tool to compress the JavaScript files. ...more »

Low Level Ajax Coding GotCha

November 17, 2007 – 5:45 am by coachwei

People say Ajax is hard...and this may be why. I spent some time playing with Bob Buffone's newest work on Ajax over the last few days. Bob built an xModify processor that runs on either jQuery, Dojo or Mootools. The xModify processor is powerful but quite lightweight (10KB without gzip). There will be more news on xModify but that is not the point of this post. Anyway, I wrote a little app that uses his stuff. The entire application uses three JavaScript file: jQuery library (70KB), xModify processor (10KB) and my little JavaScript file (2KB). My target is to run the little app on Internet Explorer and FireFox. In particular, I have used FireBug on FireFox during development. FireBug is a popular FireFox browser add-on that provides JavaScript debugging capability. After a little while, without a lot of effort (thanks to FireBug, jQuery and xModify), my app is working. It ...more »

Building a WebSite Using Java?

November 6, 2007 – 8:00 pm by coachwei

Here is a question that I have been pondering on and off for quite a while: Why do "cool kids" choose Ruby or PHP to build websites instead of Java? I have to admit that I do not have an answer. Why do I even care? Because I am a Java developer. Like many Java developers, I get along with Java well. Not only the language itself, but the development environments (Eclipse for example), step-by-step debugging helper, wide availability of libraries and code snippets, and the readily accessible information on almost any technical question I may have on Java via Google. Last but not least, I go to JavaOne and see 10,000 people that talk and walk just like me. The other reason that I ponder this question is that the power of Java is a perfect fit for the areas where websites may need more than markups or scripting, such as ...more »

OpenAjax Hub 1.0 and InteropFest

September 22, 2007 – 12:28 am by coachwei

OpenAjax Alliance has made substantial progress in the last 12 months since its inception. The cornerstone is OpenAjaxHub 1.0 (OaaHub 1.0). OaaHub 1.0, an open source project under Apache V2 license, focuses on interoperability - it enables different Ajax components to inter-operate with each other using a "pub/sub" mechanism while these Ajax components may have no knowledge of each other at all. OaaHub 1.0 is extremely small (6KB, uncompressed, and with comments) but it is powerful and extremely useful for building Ajax applications. The power and the adoption of OaaHub 1.0 are both demonstrated at OpenAjax InteropFest, to be hosted alongside the coming AjaxWorld Conference. At the time of writing this post, there are 17 Ajax toolkits participating the InteropFest. These toolkits are: Apache XAP (http://incubator.apache.org/xap) Dojo Toolkit (http://www.dojotoolkit.com) Ext (http://www.extjs.com) ILOG JViews (http://jviews.ilog.com) IT Mill Toolkit (http://www.itmill.com) JQuery (http://jquery.com) Lightstreamer (http://www.lightstreamer.com) Microsoft Ajax Library (http://ajax.asp.net) Nexaweb Ajax Client (http://www.nexaweb.com) OAT: ...more »

Dojo Grid and Open Source Community Contribution

September 17, 2007 – 8:27 am by coachwei

My company, Nexaweb, together with SitePen, Mozilla Foundation, Redfin, etc, joined force in making an important contribution to the open source community. See SitePen, Mozilla Foundation, Nexaweb Technologies, Redfin, & SnapLogic Announce Open Source Contribution of TurboAjax Group’s High-Performance Grid Widget to Dojo Foundation. This is interesting not only because it bridges a gap in Dojo toolkit. Dojo has been the most credible offering in the Ajax marketplace so far (there are a few other good ones too, such as jQuery and EXT, though they have different design focus from Dojo). A lot of customers have been asking for a high quality "grid" widget from Dojo. TurboAjax guys already developed one based on Dojo 0.4. It looks fairly good(though there are obvious areas for improvement, see my wishlist below). So instead of trying to re-invent the wheel, why not try to work something out with TurboAjax folks so that the entire Dojo community ...more »

Sun Changes Ticker to JAVA

August 23, 2007 – 6:12 pm by coachwei

This is going to be a very short blog because the story itself is too good to add any comments: Sun Microsystems changes ticker to JAVA On August 23, 2007, "Sun announced Thursday that it would retire its SUNW moniker on Nasdaq and replace with JAVA effective Monday. The software known as Java has become Sun's best known brand since it was its introduction 12 years ago." Wah! I was going to make some comments, but there is nothing that I can say after reading comments from Jonathan Schwartz's blog on this annoucement (some are quoted below): Numpty says this is a "TERRIBLE idea" because the usage of "Java" confuses people. J. Dabney commented "As a Sun investor I see this as a horrible idea" because "What does matter is JAVA is more of a limiting factor than this illusion of infinite possibilities". 127.0.0.1 commented this as a "PR stunt" and "It's to ...more »

Dojo 0.9 Released

August 21, 2007 – 5:10 pm by coachwei

Congratulations to the Dojo team in getting 0.9 out! It is something that I have been looking for. Alex Russell showed me some significant improvements comparing to Dojo 0.4 a while ago (much smaller footprint, 10X performance improvement, etc). Now these guys have delivered it! See the release note for details. I did some study of Dojo 0.4 a while ago and posted my thoughts here Dojo Footprint and Ajax Performance Recommendation. I'll try to find some time to do a similar study on Dojo 0.9 to see whether/how much improvement 0.9 is bringing us. more »

Is W3C’s Widget Work Going The Wrong Way?

August 10, 2007 – 6:36 pm by coachwei

I have been involved with W3C's Web Application Format (WAF) Working Group(WG). WAF has been working on "widget" for about one year. Marcos Caceres, a smart recent PhD graduate from Australia, has been doing some good work here. A year ago, I was neutral about WAF's widget effort, even supportive primarily due to technical merits of some of the work Marcos did. I do have my own share of guilt though. Like most WAF working group members, I didn't pay enough attention to it. However, during the last many months, the market has evolved and my understanding of widget has evolved as well. As I started to pay more attention to "mashup" and "widget",WAF seems to be going the wrong way to me. My opinion could be wrong, but it is a good idea to write it up to stimulate some conversation. 1. WAF does its work around ...more »

Enterprise Web 2.0: IBM, Cisco, Microsoft and SAP

June 19, 2007 – 7:01 pm by coachwei

Enterprise 2.0 Conference (http://enterprise2conf.com/) is going on here at Boston Westin Waterfront this week. Nexaweb is showing its Enterprise Web 2.0 Platform here. Enterprise 2.0 is a term initially coined by Harvard Business School professor Andrew McAfee just about one year ago. His definition was much more around things like wikis, blogs and social networking. I personally think Enterprise 2.0 is more fundamentally about user interaction – the interaction among users, data, and media in a business context. Blogs and wikis are only a part of such interactions. There are other more significant and powerful ones, such as the interaction between business users and enterprise data. As a result, I personally prefer the term “Enterprise Web 2.0”, referring to the adoption of web 2.0 technologies and paradigms for enterprises. (Not surprising, Nexaweb is all about enabling the interaction between users and enterprise data by leveraging web 2.0 technologies such as Ajax, Java, ...more »

OpenAjax CommunicationHub Problem Definition

May 29, 2007 – 5:38 pm by coachwei

Introduction OpenAjax Alliance has been growing well with over 70 members. The initial OpenAjaxHub received immediate community response - most are positive and a few responses were negative but turned out to be very helpful. Over ten Ajax offerings demonstrated support for OpenAjaxHub already (such as Apache XAP, Dojo, Nexaweb AjaxClient, Tibco, etc). Addressing the feedback received so far, the upcoming release of OpenAjaxHub 1.0 in the next few months is going to be really good - tiny footprint (under 5KB), focused on interoperability and event propagation between Ajax widgets and highly functional . CommunicationHub is another part of the technical work that OpenAjax Alliance has been working on. The goal of CommunicationHub is to identify and propose solutions for communications related interoperability issues, eventually leading to the formation of a working group around this area. The CommunicationHub Task Force consists of 19 members currently(Dojo, LightStreamer, SAP, IBM, Nexaweb, WebTide, OpenSpot, ...more »

Situational Application@MIT CIO Symposium

May 17, 2007 – 4:12 pm by coachwei

Today is the fourth annual MIT CIO Symposium. The weather could have been better and parking could have been much better (my house is within 25 minutes walking distance from MIT. I drove instead and spent 30 minutes looking for parking) - but the conference is fairly well attended. My JavaOne style outfit stands out a little bit among the business attire crowd at CIO Symposium - but, hey, CIOs need developers, in particular, a developer who just came back from JavaOne and just learned about JavaFX, right? Right before JavaOne, I was at IBM Mashup Summit (see Jeff Nolan's blog coverage) organized by Rod Smith and David Boloker at IBM. At Mashup Summit, "Situational Application" was the pop phrase of the day. Interesting enough, the concept of "Situational Application" seems to be fairly popular here at CIO symposium as well. Jo Hoppe (CIO of Pega Systems) talked about her orgnanization ...more »

JavaFx and Rich Internet Application

May 8, 2007 – 5:22 pm by coachwei

Quite a few people are asking me what I think of Sun's JavaFX annoucement . It is funny and we saw this coming - Who wouldn't anticipate Sun to make some big annoucement at JavaOne ? People were predicting the annoucement is going to be "open sourcing Java" - Oh, no, that was last year :-) It is quite amazing that rich internet application is suddenly getting so much attention. Adobe has been pushing Flash as a platform. Microsoft is pushing .NET via Silverlight , and now Sun is positioning the Java Platform for RIA via this JavaFX announcement. Of course, we all know the Ajax Wildfire . All of these establish that RIA is the next generation application paradigm. Over the last 20 months, press has been dominated by Ajax and Flash. Microsoft’s Silverlight announcement tells the world not to ignore .NET. Java pioneered rich web applications years ago, ...more »

Adobe to Open Source Flex?

April 26, 2007 – 7:31 pm by coachwei

Adobe sent out a press release this morning titled "Adobe to Open Source Flex ". Is that so? Dana Blankenhorn from ZDNet says this is A sign of desperation from Adobe ...Is that so? After reading the press release a few times, the title "to Open Source Flex" seems to be misleading a little bit. Adobe is NOT open sourcing Flex. Adobe is only open sourcing a part of Flex, only the part that will help Flex adoption without giving away revenue source(side note: nothing wrong with this, but just thought it would be helpful to have it clarified). More in detail: The part of Flex that is open sourced (this is what was called as "Flex SDK" as part of Flex on Adobe's website): Java source code for the ActionScript and MXML compilers the ActionScript command line debugger the ActionScript libraries that make up the client side Flex components The part of Flex that ...more »