Yahoo! 360° News | Beta Feedback
Start your own Yahoo! 360° page

Mohammed Arif < Y! ID: arif_iq >

Top Page  |  Blog  |  Feeds  |  Friends  |  Lists

  • Work: Sapient Corp.

Add

Mohammed Arif is not connected to you in Yahoo! 360°.

Last updated Thu Dec 18, 2008 Member since September 2005

Let s make the web beautiful, usable, all across the browsers adhering web standards.--> Click here

1 - 5 of 13 First | < Prev | Next > | Last

Mohammed Arif's Blog Full Post View | List View

UX & Web Standards Developer

JavaScript outside of the browser
http://javascript.weblogsinc.com/2006/08/06/javascript-outside-of-the-browser/

After reading given article, questions comes in mind, why JavaScript outside the browser?

So let's go through on some points which strongly recommend the future of “the world's most misunderstood programming language

1. JavaScript will be treated as a significant programming language in the upcoming days

2. JavaScript speed and performance, of course would be increasing in the future of ECMAScript 4th edition

3. Increasing popularity of HELMA* using Rhino, it's not as popular yet as it should be, would be hearing soon in the future about HELMA

4. Major enhancement of some JavaScript Engines like Rhino*, SpiderMonkey*

5. Popularity of Tamarin*

*Helma: It is an open source web application framework for fast and efficient scripting and serving of your websites and Internet applications.

*Rhino: Rhino is an open source JavaScript engine. It is developed entirely in Java and managed by the Mozilla Foundation. The Foundation also provides an implementation of JavaScript in C known as SpiderMonkey.

*SpiderMonkey: SpiderMonkey is the code name for the first ever JavaScript engine, written by Brendan Eich at Netscape Communications, later released as open source and now maintained by the Mozilla Foundation. SpiderMonkey is also the JavaScript engine for Yahoo! Widgets.

*Tamarin: Tamarin is a JavaScript engine written in C++. It currently implements Adobe ActionScript™ 3 (a superset of ECMAScript Edition 3) and is embedded within the Adobe® Flash® Player 9. Tamarin will be extended to support ECMAScript Edition 4 and will be used by both SpiderMonkey and the Flash Player.

Can say that, JavaScript is going to be next full fledged Object Oriented Programming Language which not only serves the web pages but also would be capable to do the task outside the browser in more efficient way, may be we need to write some widgets purely in JavaScript & CSS as Apple does in our way :)

Cheers

Mohammed Arif

IE 7 and IE 8 bug list

In terms of browser market share, yes it is but the way Firefox is coming up and grown at this point in time, I will not wonder to see fallen down the share of MS IE in the up coming days.

See some experts from WSJ:

Mozilla, which makes the Web browser, served up more than 8.3 million downloads in 24 hours, according to CEO John Lilly’s blog. At the height of the Firefox frenzy, Mozilla logged 17,000 downloads per minute, or 283 per second, and people in over 200 countries acquired the new software. The launch, planned for 10 a.m. Pacific Time, was delayed by over an hour as Mozilla’s servers were overwhelmed with traffic. At present, the number of downloads tops 12 million.
http://blogs.wsj.com/biztech/2008/06/20/firefox-wins-the-battle-but-the-browser-war-still-wages/

Now let's talk about IE 7 and IE 8 bug list
http://css-class.com/test/bugs/ie/ie-bugs.htm

Chris Wilson, Internet Explorer 7 and CSS 2.1 compliance:
http://www.gtalbot.org/BrowserBugsSection/MSIE7Bugs/CWilsonMSIE7AndCSSCompliance.html

MSIE 7 bug collection sites:
http://www.gtalbot.org/BrowserBugsSection/MSIE7Bugs/

92 Bugs in Internet Explorer 8 for Windows:
http://www.gtalbot.org/BrowserBugsSection/MSIE8Bugs/ (Here you will find individual test cases or webpage’s that fail in MSIE 8 in the last)

There are good news too, they have removed number of previous bugs but also created some weird one :(

And of course I am not against MS IE, it is just let them know to improve the standards, this is really a focus area to imporve upon and they are working towards it.
We hope to see some more good news in the future from Bill Gates :)

Cheers
Mohammed Arif

Monday June 23, 2008 - 11:16am (IST) Permanent Link | 0 Comments
Opera 9.5 - out now after Firefox 3.0

Now it's Opera turn after most awaited release of Firefox 3.0

Some best features of opera 9.5:

  • More than 2x faster than Opera 9.2 in rendering JavaScript and HTML
  • Faster handling of third party plug-ins
  • Much faster start up time
  • Superior support for Web standards
  • Download Manager with BitTorrent
  • Built-in e-mail and newsfeeds
  • Opera Dragonfly same as Firebug, the most useful feature to web developers all though still the current release version in alpha but looks good prospectus to the future of web.

Features of Dragonfly:

  • JavaScript debugger
  • DOM inspector
  • CSS inspector
  • Command Line to allow commands to be inputed
  • Error Console that outputs validation errors and warnings exhibited by the CSS and JavaScript connected with the page
  • Proxy to allow debugging directly on mobile devices

Seems bit hard to understand Dragonfly developer tool, surly because of firebug: but indeed worth to have if you support opera too.

Compared to Opera, Firefox is possible to remain a slower and heavier browser, for a simple reason, its very structural design. Firefox is very open and modular, and allows users to install an excess of extensions, while opera don’t.

And off course Opera adopt most of the latest standards first but Firefox is also catching up.

I don't think, latest IE stands anywhere compare to Firefox and Opera :)

Cheers
Mohammed Arif

Tags: opera, firefox, browser, webstandards, dragonfly
Friday June 20, 2008 - 11:32am (IST) Permanent Link | 0 Comments
Show Love to the Object Literal | Core JavaScript 1.5 Guide:Literals
Defining an object is via literal notation. Supported in JavaScript1.2 and above, it's a more robust form of creating an object on the fly.
Neat and clean approach to write reusable, readable and maintainable JavaScript code.

Show Love to the Object Literal:
http://ajaxian.com/archives/show-love-to-the-object-literal

Object literals beauty lies in Namespaces, which reduces the number of global variables in your pages. It uses a technique known as branching, which allows you to use common utility
functions without worrying about browser sniffing.

That's where Singleton Design Pattern comes into the picture, as far as I know, it is the most widely use design pattern these days in JavaScript world.

Using global variables in your page presents a huge risk, and a namespace created with a singleton is one of the best ways to remove those global variables. I stuck many times using global variables and also consume good amount of memory.

Core JavaScript 1.5 Guide:Literals [Here we have some basics of literals]:
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Guide:Literals


Cheers
Mohammed Arif
Tags: singletondesignpattern, namespaces, object, literal
Tuesday June 10, 2008 - 10:47am (IST) Permanent Link | 0 Comments
JavaScript Deployment Issues - 1 | Use the DOM sparingly
Hi,

One of the most time-intensive operations in JavaScript is DOM manipulation. Anytime you add, remove, or otherwise change the underlying DOM structure of a page, you are incurring a significant time penalty. This happens because every DOM manipulation alters the appearance of the page to a user, meaning that the entire page must be recalculated to ensure that the page is rendered properly.

Do you see any performance issue in the code below?

var oUL = document.getElementById("ulElem");
for (var i=0; i < 10; i++) {
var oLI = document.createElement("li");
oUL.appendChild(oLI);
oLI.appendChild(document.createTextNode("Item " + i));
}

Yes, we do, what's wrong with that?

Two problems arise with this code in terms of execution speed. The first is the oUL.appendChild() call at the middle of the loop. Each time through, this line executes and the entire page must be recalculated to allow for the item to be updated. The second problem is the following line that adds the text node to the list item, which also causes page recalculation. With these two problems, every trip through the loop causes two page recalculations for a total of 20.

Hmmm sounds strange :)

To fix this problem, the list items should not be added until after the text nodes have been assigned. Additionally, you can use a document fragment to hold all the created list items until it’s time to add them to the list:

What about this?

var oUL = document.getElementById("ulElem");
var oFragment = document.createDocumentFragment();
for (var i=0; i < 10; i++) {
var oLI = document.createElement("li");
oLI.appendChild(document.createTextNode("Item " + i));
oFragment.appendChild(oLI);
}
oUL.appendChild(oFragment);

In the rewritten code, a document fragment is created before the loop begins. Then, inside the loop, the list item is created and the text node is added to it. The last step in the loop is to add the list item to the document fragment. Because the fragment isn’t a part of the DOM document, no recalculation is necessary. After the loop has executed, the list items are added to the list all at once by using the appendChild() method and passing in the document fragment.

Cheers
Mohammed Arif
Tags: dom, javascript, deploymentissues, fragment
Tuesday June 10, 2008 - 10:45am (IST) Permanent Link | 0 Comments

Add Mohammed Arif's Blog to your personalized My Yahoo! page:

Add to My Yahoo!RSS About My Yahoo! & RSS
1 - 5 of 13 First | < Prev | Next > | Last