Activate your free membership today | Log-in

Thursday, June 18th, 2009

“Get the facts” from Microsoft Marketing

Category: Browsers, IE, Microsoft

There are some good engineers working to make IE a better browser. I don’t want to belittle their work, but I couldn’t let go the recent work of various marketing groups this week.

First up, we had the the chaps from down under try to buy downloads with 10 grand, ripping into other browsers along the way…. as they use all images and no type in their lovely page. I have found Aussies to be a hilarious bunch, but not so much this time? I can see how the idea would seem good in a meeting room…..

Michael Yoshitaka Erlewine quickly realised that tengrandisburiedthere.com wasn’t taken so built his fun retort for the Mozilla community.

Then we had the new “get the facts” campaign that showed an angry “we don’t suck like you think” angle:

Lately, there’s been a lot of talk about Internet Explorer’s speed, security, and adaptability. But many of the claims are comparing older versions of Internet Explorer to competitors’ newest releases.

These pages somehow manage to claim that IE is more secure, is the only browser with privacy features, is the easiest browser to use, has great Web standards support, fantastic developer tools, is more reliable, and customizable, and on and on. They even use their monopoly baggage to claim that all of those annoying “built for IE” pages of the past make IE more “compatible”. Oh, and obviously the performance of IE 8 is vastly superior to other browsers. Sure the “benchmarks” don’t tell that story, but that isn’t what matters. Of course, anyone who has USED THE DARN BROWSERS can get a decent feeling on performance.

IE 8 is a decent browser, much better than IE 7 and before it. However, it drives me nuts to see the marketing spin and bare-faced lies that come across here. It denigrates the work that the engineers are doing.

To finish up, I feel like I have to end with the third piece on IE this week:

Posted by Dion Almaer at 11:21 pm
37 Comments

++++-
4.2 rating from 23 votes

Friday, April 17th, 2009

Quince: UX Pattern Explorer (in Silverlight)

Category: Design, Microsoft

A reader recently pointed us to Quince, an on-line directory of UX design patterns created by Infragistics. At first glance, Quince seems an Ajax application with some interesting animated effects, but it turns out to have been written using Silverlight (no surprise given Infragistics background).

Run-time platform notwithstanding, Quince contains around 100 patterns with large numbers of examples from desktop, web, and other platforms.

What other UX design pattern resources do you use?

Posted by Ben Galbraith at 11:07 am
28 Comments

++---
2.2 rating from 65 votes

Tuesday, March 31st, 2009

The VML changes in IE 8

Category: IE, Microsoft

We mentioned that a new excanvas was released to keep up support with IE 8. Well, Louis-Rémi Babe has detailed his travails finding out what what changed in IE 8 VML land:

Although the VML specification hasn’t undergone any improvements or modifications since its publication back in 1998, Microsft development team felt like considerably changing the way their own standard should be handled:

  • The namespace declaration has to take a second argument to be functional:
    document.namespaces.add('v', 'urn:schemas-microsoft-com:vml', "#default#VML");
    instead of simply:
    document.namespaces.add('v', 'urn:schemas-microsoft-com:vml');
  • The selector for the behaviour rules needs to be slightly modified (more information follows).
  • For a standard compliance purpose, when setting dimensions or position of an element, the unit no longer defaults to ‘px’. It has to be explicitly specified
  • It is no longer possible to create a VML element outside of the DOM:

    var myFragment = document.createDocumentFragment();
    myFragment.insertAdjacentHTML(’beforeEnd’,
    ‘<v:rect id=”myRect” fillcolor=”blue” style=”top:10px;left:15px;width:50px;height:30px;position:absolute;”></biv:rect>’
    );
    document.body.appendChild(myFragment);

    This rect element will not be displayed! And don’t try to modify its CSS properties with the developer tool, you are likely to crash the tab or even the browser, if you’re lucky. Fortunately, there is an easy fix for this bug: you just have to copy the outerHTML of the element into itself:
    var myRect = document.getElementById('myRect');

    myRect.outerHTML = myRect.outerHTML;

  • It’s no more possible to use % unit! This one is my favourite. The advantage of vector graphics is that they can be scaled without quality loss. Now tell me how you scale a graphic from which all components dimensions and position are set in pixels! You have to resort to using the onpropertychange event to recalculate one after the other those values each time you want to resize your graphic. But there is a lot of case where you simply can’t fix this bug. For example, if you had an rectangle in a div: the div has no dimensions and scales with its content, and you want the height of your rectangle to scale with the div. There was a time when it was possible to simply set the height of the rectangle to 100% (providing the position of the div is relative, of course). But it was probably too easy after all.

Remarkably, none of this change has been announced by the IE dev team, as far as I know. The only announcement made about VML can be found on a blog post

Posted by Dion Almaer at 12:19 am
7 Comments

++++-
4 rating from 21 votes

Thursday, January 29th, 2009

A little bit of Microsoft…. CSS tests and open source Web Sandbox

Category: Microsoft

There have been a couple of interesting bits of news out of Microsoft over the last couple of days.

Firstly, they submitted a boat load of CSS 2.1 tests to the W3C:

Today, the IE Team is submitting 3784 new test cases to the CSS 2.1 Working Group for inclusion into the CSS 2.1 test suite. These cases were developed since IE8 Beta 2. This brings Microsoft’s contribution to the CSS 2.1 Test Suite to 7005 tests. IE8 RC1 passes all of these tests today. All but 52 of these cases also pass in at least one other major browser. We’re working closely with the CSS working group to swiftly include these in the official test suite. For now, these tests are available at the Windows Internet Explorer Testing Center. The last key element to web layout interoperability is actually passing the tests. IE8 RC1 is the first browser to pass all valid tests in the suite thus meeting the interoperability requirements in the 2.1 spec.

It’s important that the spec, the browser, and the tests all agree on a behavior. This is when web developers really win. While developing these test cases, we found instances where all other browsers implemented something a specific way. That syntax pattern was in pages all over the web, creating a broad dependency on that behavior. In those cases, we proposed a change to the spec and developed an associated test case to ensure the web continues to work and browsers can implement the spec as written. We sincerely hope this helps the committee finish the 2.1 spec and move it into the Recommendation phase.

Secondly, the Live Labs Web Sandbox from Scott Isaacs and team, has now been released under an Apache license.

The post makes it a little hard to know what exactly is open sourced (mentions the runtime, is that everything?). It also doesn’t link to an actually repo. The only code that I can find is this piece which is copyright Microsoft. I have an email into the guys to get more info.

Posted by Dion Almaer at 7:50 am
7 Comments

+++--
3.2 rating from 24 votes

Monday, December 1st, 2008

Kojax? Huh?

Category: .NET, Microsoft, Mobile

Mary Jo Foley has an article called Move over, Ajax. Here comes Microsoft’s ‘Kojax’. The thing is, I don’t get what it actually is:

Kojax is a mobile development platform, according to my sources, that will allow Microsoft- — and third-party-developed — applets run in an Ajax-like way, using a combination of Visual Studio tools and JavaScript, on Java-based mobile phones.

Erm, is this just JavaScript running on the JVM? This is the big deal instead of the PDC touted “write using .NET and deploy everywhere”?

Mary goes on:

What kinds of mobile applets are we talking about here? Nothing iPhone-like, such as restaurant reviews or “I am Rich.” More like a virtual wallet for online payments, a group messaging service and photo-sharing app — things that build on top of Windows Live for Mobile services. Some of these Kojax-based applets will ad-funded; others will likely be transaction- and subscription-based.

Another interesting part of the Kojax tips I’ve received: Microsoft allegedly is aiming its Kojax applet plans primarily at users in emerging markets.

The Kojax work may or may not be related to a recent Unlimited Potential initiative about which I recently heard, known as “Mobile First.” Mobile First is all about users whose first Microsoft-related experience tends to be in the mobile-phone, rather than the PC, realm. (Given Microsoft’s recent acknowledgment that China Mobile will offer the first handsets running Internet Explorer 6, it’s not far-fetched to see how/why Microsoft is putting so much emphasis on emerging-market customers.)

I haven’t been able to glean much more about Kojax and Microsoft’s mobile applet plans. So before you ask, I don’t know what stage Kojax is at: It could be anything from a glimmer in a Microsoft development team’s eye, or something in private beta.

Posted by Dion Almaer at 4:00 am
6 Comments

++---
2.1 rating from 47 votes

Tuesday, November 11th, 2008

JavaScript Object Observability in ASP.NET Ajax 4.0

Category: Atlas, Microsoft

Dave Reed wrote in to tell us about an article he's written about Microsoft ASP.NET Ajax's utility for adding observability to JavaScript objects. The idea is simple:

The Microsoft AJAX 4.0 preview includes this Sys.Observer class that allows you to be notified of updates to POJO's, provided you use its APIs to modify them.

Sys.Observer provides a mechanism for registering (and de-registering) listeners to be notified when values change in the object:

JAVASCRIPT:
  1. Sys.Observer.addPropertyChanged(objectToObserve, callbackFunction);

However, you must use Sys.Observer to make changes to the objects being observed:

JAVASCRIPT:
  1. Sys.Observer.setValue(objectToServe, "property", "newValue");

Alternatively, you can have the framework add a setValue() function directly to the object being observed:

JAVASCRIPT:
  1. Sys.Observer.observe(objectToObserve);

See the full article for more details.

Posted by Ben Galbraith at 7:00 am
20 Comments

++---
2.7 rating from 26 votes

Monday, October 27th, 2008

Not Possible to Use IE’s Web Slice Icon In Other Browsers

Category: IE, Microsoft

Update: Jane Kim from Microsoft posted a message about this issue:

Hey folks, we created the guidelines with this scenario in mind - we definitely want to support applications using the icon to indicate Web Slice content.

We will update the documentation to make this clearer. Thanks!
- Jane Kim [MSFT]

Thanks for clarifying things Jane!

Original post:
Web Slices are a cool new feature coming in Internet Explorer 8, where you can subscribe to portions of a web page and see updates to them in the Favorites toolbar. There is even an open specification for Web Slices (partially based on hAtom) so that others can implement it. Daniel Glazman has been working on a Firefox extension to implement the spec.

Just as RSS has a standard icon where a site can indicate it can be subscribed to:

Web Slices have a similar icon to indicate you can subscribe to a portion of a page when the standard is being used:

Unfortunately, the terms of service for this icon got switched around and Daniel noticed that it looks like other browsers therefore can't use it. From the terms of service for the icon:

DO NOT use the icon:

  • As a logo or favicon for a Web site or online content, whether Web Slice enabled or not. The icon represents the Web Slice technology, and not the Web site or content itself
  • As an application icon
  • As an icon or logo for any product or service, or as a feature or design element of another icon, logo, trademark or service mark
  • In any manner that expresses or implies an affiliation with, sponsorship, or endorsement by Microsoft or any third party

I'm sure this was unintentional, as often happens with licenses, since Microsoft has provided a simple standard in good faith. Microsoft should just open source the icon, just like the RSS icon was, so that there can be a standard UI mechanism to indicate to users that a Web Slice is available. As an alternative, if they want to retain control to ensure the icon is used properly, they should update the terms of service so that other browsers to use the icon to indicate a portion of the page can be subscribed to.

Posted by Brad Neuberg at 9:00 am
13 Comments

++---
2.7 rating from 43 votes

Friday, October 24th, 2008

Blast from the Web Past: DirectAnimation, Microsoft Chrome, and Cartoon Chat

Category: Microsoft

Awhile back Dion kicked off a series of posts looking at past technologies on the web, web archaeology if you will. Sometimes its good to know where we've come from to figure out where we are going. In this spirit I want to talk about a few web technologies from the past.

Before there was Silverlight, there was DirectAnimation starting in Internet Explorer 4:

...DirectAnimation offers the only solution of its kind in the industry, with features that include the following:

Consistent interface for dealing with 2-D vector graphics and sprites, 3-D geometry, text, video and audio media types.
Versatile run time with a breadth of multimedia playback services that are easily incorporated into tools and applications. Integration into Internet Explorer 4.0 helps ensure a broad target audience of Web users with DirectAnimation playback capability.
Uniform time/event model that enables highly coordinated interaction among various media types, along with rich user interactivity.
Highly scalable solution for developers with various levels of programming expertise using a variety of programming and scripting languages, including HTML, the Microsoft Visual Basic® development system, Scripting Edition, JScript development software, Java and the Visual C++® development system.
High-level multimedia controls for setting motion paths, sequencing, sprite controls and low-bandwidth vector graphics.
Integration with Dynamic HTML and Windowless Control support, making DirectAnimation ideal for applying scripted animation anywhere on a Web page.

DirectAnimation was discontinued starting with IE 7 due to some security issues. In fact, Microsoft so wanted to erase the existence of this technology that they removed all of the documentation from MSDN! Here is a page from one of the original developers of DirectAnimation talking about its history. Here's a sample screenshot of a DirectAnimation example from an article on the technology:

Direct Animation Sample

Direct Animation Sample

A small code snippet. First, the sample above embeds the DirectAnimation ActiveX control:

HTML:
  1.  
  2. &lt;OBJECT ID="danim" WIDTH=400 HEIGHT=400 ALIGN=Center
  3. CLASSID="CLSID:69AD90EF-1C20-11D1-8801-00C04FC29D46"&gt;
  4. &lt;/OBJECT&gt;
  5.  

Next is some JScript that does the work:

JAVASCRIPT:
  1.  
  2. m = danim.PixelLibrary;
  3. img = m.ImportImage("spiral.gif");
  4.  
  5. // rotate at the rate of 60 degrees per second
  6. rotImg = img.Transform(m.Rotate2RateDegrees(60));
  7.  
  8. danim.Image = rotImg;
  9. danim.BackgroundImage = m.SolidColorImage(m.colorRgb (1, 1, 1));
  10.  
  11. danim.Start()
  12.  

Crazy times.

Next, before there was Google Chrome there was.... Microsoft ChromEffects around 1998. This was finished and announced and ready to ship:

The Redmond, Washington-based software titan unveiled today its new 3D graphics software developers kit, called Chromeffects and code-named Chrome. It will be available for download August 17 free of charge for software developers.

Chromeffects is an add-on for the Windows 98 operating system that allows high-powered PCs to play 3D graphics and video either through a Web browser or in separate player software.

...but never made it out the door due to controversy over Microsoft creating their own de-facto 3D tag markup:

Microsoft's multimedia efforts faltered this week as the company back-burnered its Chromeffects 3D graphics technology and shuffled its multimedia management team...Chromeffects, built to arm everyday Web sites with the kind of powerful multimedia and animation found in gaming environments, has encountered a barrage of criticism from the developer community since its launch three months ago. Dominating the developer wish list are requests for better compliance with World Wide Web Consortium recommendations, both those already ratified and those currently under consideration.

At the end of the day, ChromEffects was really an XML-based markup layer above the DirectAnimation technologies discussed above to make it easier for non-programmers to develop for. I'd love to show a code sample but I can't seem to find any on the Net. The SDK was never released (it was apparently only on the MSDN CD); anyone ever actually worked with this technology?

There is a great book, named Renegades of the Empire, detailing the 'renegade programmers' who drove these technologies at Microsoft behind the DirectX and ChromeEffects technologies:

Renegades of the Empire, by Michael Drummond, charts the fables and fortunes of the three "renegade Beastie Boys" who secretly created and championed DirectX until it became a key technology in Windows. These three software developers were also responsible for Chrome (nee Chromeeffects), the ill-fated "Web browser on steroids" that would have brought stereo 3D effects to the Web had not internal politics finally brought the project, and the renegades, to their knees. It's an amazing story of insider intrigue, well told.

And finally, only because it's Friday, I leave you with Microsoft's Comic Chat IRC client that was bundled with Internet Explorer 3.... what set it apart as an IRC client is that chatting happened in cartoons!

Microsoft Comic Chat IRC Client

Microsoft Comic Chat IRC Client

Posted by Brad Neuberg at 8:00 am
15 Comments

++++-
4.1 rating from 13 votes

Wednesday, July 23rd, 2008

Embedded OpenType and the W3C

Category: Microsoft, Standards

CSS:
  1.  
  2. @font-face {
  3.   font-family: Cambria;
  4.   font-style: normal;
  5.   font-weight: normal;
  6.   src: url(CAMBRIA2.eot);
  7. }
  8.  

We discussed the new font-face / EOT work yesterday. Ben loves typography, hence him wanting to give Tahoma a rest.

Then we see Microsoft weighing in on the topic, and it made me ponder the politics going on.

Bill Hill has a new post on the IEBlog about Font Embedding on the Web.

The first couple of paragraphs says a lot. First we have the "look at the companies supporting it":

It’s Bill Hill here again, still fighting the good fight to make typography on the Web as good as we’re used to seeing in print. We made significant progress this week, when one of the USA’s most prestigious font companies announced its support for the Embedded OpenType format for font embedding on the Web, and launched a new website to promote other browsers to support it in addition to Internet Explorer (which has had EOT support built-in since 1996).

And then the fear about font linking ;)

At the same time, Ascender Corporation and its collaborators in the typographic community also warned of the legal dangers of using the Font Linking mechanism currently supported by other browsers.

So, EOT is "in front of the W3C". What are your thoughts?

You can give Bill Hill's work a peak and look at the Assender post too.

Posted by Dion Almaer at 8:15 am
11 Comments

+++--
3.9 rating from 14 votes

Friday, July 4th, 2008

Microsoft ASP.NET Ajax Road Map

Category: Microsoft

Microsoft has come out with a road map for the Ajax side of ASP.NET, which has been simplified to be just: Framework and tools in one versioned package; Ajax components will be released separately on Codeplex.

There is a bold goal at the beginning of the document (why is the doc a PDF/.doc and not just HTML!!!):

Make ASP.NET Ajax the first-class choice for all Web 2.0 developers

They are going to be catching up with richer CSS selection and DOM manipulation:

JAVASCRIPT:
  1.  
  2. $query(“textarea.rich”)
  3.   .addHandler(“focus”, function(e) {
  4.     Sys.Debug.trace(“focused into “ + (e.eventTarget.id || “?”));
  5.   })
  6.   .setStyle(“width”, function() {
  7.     return (document.body.clientWidth – 10) + “px”;
  8.   })
  9.   .create(Contoso.UI.RichTextBehavior, {
  10.     showToolbar: true,
  11.     fonts: [“Arial”, “Times”, “Courier”]
  12.   });
  13.  

We have got some animation going on:

JAVASCRIPT:
  1.  
  2. $query(“.sprite”).animate([
  3.     new Sys.Animation.FadeIn(300),
  4.     {
  5.       “style.backgroundColor”: “#ff0000”,
  6.       “style.fontSize”: “2em”),
  7.       duration: 500
  8.     },
  9.     new Sys.Animation.FadeOut(300)
  10.   ])
  11. );
  12.  

What else?

  • Accessibility
  • Drag & Drop
  • Client-side Controls and Behavior
  • Interoperability: OpenAjax hub support
  • Tooling, tooling, tooling

Posted by Dion Almaer at 7:50 am
4 Comments

++---
2.7 rating from 31 votes

Tuesday, June 10th, 2008

Silverlight 2 beta 2: cross domain connections, more controls, and animation

Category: Microsoft

Microsoft launched Silverlight 2 beta 2 last Friday (which seemed a bit strange....).

I saw this on the same day as some Adobe folks showed me an old thread that showed MLB.tv sneaking a context menu saying "About Silverlight" into the Flash version ;)

What is new in the latest beta? Danny Thorpe is looking forward to digging into the "new support for cross-domain connections using sockets, sibling to Silverlight’s existing cross-domain HTTP request."

Full Feature List

  • Animation
    1. Support for animating custom data points
    2. Object Animation support (animating structs)
  • Deep Zoom
    1. New XML-based file format
    2. MultiScaleTileSource to wire up your own images and get the Deep Zoom experience
    3. Better notifications when sub-images enter the view
  • Controls
    1. Customize the look and feel of controls using Visual State Manager. Interactive control templates were never so easy.
    2. Some base controls are now part of the core platform, rather than packaged into apps. Say hello to smaller app sizes.
    3. Calendar now supports multi-selection and blackout dates
    4. New TabControl
    5. Control properties changes (Background, Tooltip, FontFamily, FontSize…)
    6. DataGrid improvements: auto size, reorder, sort, performance and more
  • TextBox
    1. IME Level 3 input support
    2. Text wrapping and multiline selection highlighting in textbox
    3. Scrolling and clipboard support
    4. Document level navigation keys
  • Improvements in error handling, reporting
  • Parser and Property system
    1. DependencyProperty.Register/RegisterAttached now supports PropertyMetadata
    2. New DependencyObject.ClearValue
    3. Visual tree helper
  • Data-binding
    1. Per binding level validation
    2. Support for element syntax for binding markup extensions
    3. Binding to attached properties
    4. ItemsControl extensibility (OnItemsChanged method)
    5. Fallback in value conversion (Binding.UnsetValue)
  • Input
    1. Support for limited keyboard input in Full Screen mode (arrow, tab, enter, home, end, pageup/pagedown, space). I've seen more than a few requests for this on the forums.
    2. Managed APIs for Inking and stylus input
  • Networking and Data
    1. Cross Domain support in Sockets
    2. Cross Domain security enhancements
    3. HttpWebRequest and WebClient callable from background threads
    4. Upload support in WebClient
    5. Isolated Storage: default size increased to 1MB and new ability to change quota with user consent. Also a new management UI.
    6. Duplex communications ("push" from server to Silverlight client with no need to "poll" for data)
    7. LINQ -to- JSON serialization
    8. Significantly improved SOAP interop
    9. "Add New Item" template in Visual Studio for "Silverlight-enabled WCF Service"
    10. ADO.NET Data Services support
  • UIAutomation and Accessibility support in the platform
  • Media
    1. Platform support for Adaptive Streaming (also referred to by people as multi bitrate), the ability for Silverlight to switch between media depending on network and CPU conditions
    2. Content protection with PlayReady DRM and Windows DRM
    3. Basic server-side playlist (SSPL) support
  • Localization
    1. Changes to localized application model. You now create one xap per locale, instead of one monolithic multilingual app
    2. Expanded localization languages of runtime and SDK
    3. Japanese SDK Installer and documentation (July 10)
  • Several changes to make API and behavior more compatible with WPF
  • Tools
    1. Beta 1 projects will be automatically ported to Beta 2
    2. Remote debugging for VB on the Mac
  • CLR
    1. A new developer-oriented runtime package with debugging binaries, localized strings, docs etc.
    2. Support for OS fallback logic for resources
    3. CurrentCulture and CurrentUICulture isolation to AppDomain level
  • DLR
    1. Performance improvements
    2. Various new DLR and IronPython 2.0 Beta 2 language features
    3. Various new IronRuby features

Posted by Dion Almaer at 5:13 am
5 Comments

++---
2.3 rating from 35 votes

Monday, June 9th, 2008

Is “finally” the answer to all IE6 memory leak issues?

Category: IE, Microsoft, Testing, Tutorial

Hedger Wang has been scanning a lot of Chinese blogs lately for solutions to IE6 and memory leak issues. One of the things he stumbled upon is a pretty nifty way of nulling the objects to stop memory leaks by using the try ... finally construct. So instead of this solution which leaks memory:

JAVASCRIPT:
  1.  
  2. function createButton() {
  3.       var obj = document.createElement("button");
  4.       obj.innerHTML = "click me";
  5.       obj.onclick = function() {
  6.         //handle onclick
  7.       }
  8.       obj.onmouseover = function() {
  9.         //handle onmouseover
  10.       }
  11.       return obj;//return a object which has memory leak problem in IE6
  12.     }
  13.     var dButton = document.getElementsById("d1").appendChild(createButton());
  14.     //skipped....
  15.  

You can use the following which doesn't:

JAVASCRIPT:
  1.  
  2. function createButton() {
  3.       var obj = document.createElement("button");
  4.       obj.innerHTML = "click me";
  5.       obj.onclick = function() {
  6.         //handle onclick
  7.       }
  8.       obj.onmouseover = function() {
  9.         //handle onmouseover
  10.       }
  11.       //this helps to fix the memory leak issue
  12.       try {
  13.         return obj;
  14.  
  15.       } finally {
  16.         obj = null;
  17.       }
  18.     }
  19.     var dButton = document.getElementsById("d1").appendChild(createButton());
  20. }
  21.  

More demos, proof of concept examples and the "finally" explanation is available on Hedger's blog: Finally, the alternative fix for IE6's memory leak is available

Posted by Chris Heilmann at 10:22 am
30 Comments

++++-
4.2 rating from 33 votes

Thursday, May 29th, 2008

Testing IE Versions Just Got a Little Easier

Category: Microsoft

Testing your sites on different versions of Internet Explorer has always been notoriously difficult mainly due to the fact that Microsoft prevents you from running to different versions of the browser in Windows. Sure there have been solutions to get around this limitation but in my experience, they've always caused unexpected results and instability for the operating system or required you to run a VM. Not ideal.

Jean-Fabrice RABAUTE, the man behind the IE debugger DebugBar, has come up with a nice solution he's called IETester. This free tool allows you to have the rendering and javascript engines of IE8 beta 1, IE7 IE 6 and IE5.5 on Vista and XP, as well as the installed IE in the same process.

You can check out IETester in action below:


ScreenCast IETester from WebInventif.fr on Vimeo.

Posted by Rey Bango at 7:00 am
27 Comments

++++-
4.6 rating from 44 votes

Friday, April 4th, 2008

ASP.Net Ajax Site and Silverlight

Category: Microsoft

Silverlight on MS Ajax Page

This is an interesting one. If you go to learn about ASP.Net Ajax at the Microsoft site itself you not only see info about the product, including this:

ASP.NET AJAX is a free framework for quickly creating efficient and interactive Web applications that work across all popular browsers.

ASP.NET AJAX is built-into ASP.NET 3.5. It is also available as a separate download for ASP.NET 2.0.

But, you may get a full screen modal popup that tells you how much better Silverlight is than anything the Open Web has to offer ;) NOTE: Some people see this, and others do not.

I don't see this when I go to Adobe Spry. There is no "FLEX FLEX FLEX" message.

How do you feel about that?

Posted by Dion Almaer at 2:10 pm
11 Comments

-----
-882352938.6 rating from 34 votes

Friday, March 28th, 2008

Doloto: Code Splitting for Network-Bound Applications

Category: Microsoft, Performance

I missed the Microsoft Research paper on Doloto: Code Splitting for Network-Bound Web 2.0 Applications:

Modern Web 2.0 applications, such as GMail, Live Maps, Facebook and many others, use a combination of Dynamic HTML, JavaScript and other Web browser technologies commonly referred as AJAX to push page generation and content manipulation to the client web browser. This approach improves the responsiveness of these network-bound applications, but the shift of application execution from a back-end server to the client also often dramatically increases the amount of code that must first be downloaded to the browser. This creates an unfortunate Catch-22: to create responsive distributed Web 2.0 applications developers move code to the client, but for an application to be responsive, the code must first be transferred there, which takes time. In this paper, we present DOLOTO, a system that analyzes application workloads and automatically performs code splitting of existing large Web 2.0 applications. After being processed by DOLOTO, an application will initially transfer only the portion of code necessary for application initialization. The rest of the application’s code is replaced by short stubs—their actual function code is transfered lazily in the background or, at the latest, on-demand on first execution. Since code download is interleaved with application execution, users can start interacting with the Web application much sooner, without waiting for the code that implements extra, unused features. To demonstrate the effectiveness of DOLOTO in practice, we have performed experiments on five large widely-used Web 2.0 applications. DOLOTO reduces the size of initial application code download by hundreds of kilobytes or as much as 50% of the original download size. The time to download and begin interacting with large applications is reduced by 20-40% depending on the application and wide-area network conditions.

They take examples with varying degrees of download-i-ness and show how their system can or can't help:

Doloto

As we play with the techniques for getting the best performance, it does feel like we need an abstraction that handles dependencies, loads only what is TRULY needed right away in onload, and loads other payloads as required / later.

Posted by Dion Almaer at 7:48 am
1 Comment

++---
2.4 rating from 19 votes

Wednesday, March 5th, 2008

Dynamic Silverlight Launched: Ruby and more in the browser

Category: Microsoft, Ruby

John Lam has posted about a new release, DSL: Dynamic Silverlight. I can't believe that Microsoft is going to take the DSL TLA ;)

Our team is happy to announce Dynamic Silverlight (DSL), which integrates our DLR dynamic languages with Silverlight. It requires Silverlight 2, which includes the cross-platform CLR and a set of libraries for rich graphics, media and web programming. It is packaged as a Silverlight extension, which means that it is downloaded in addition to Silverlight on an as-needed basis.

DSL has a runtime and an SDK component. The runtime consists of two assemblies: Microsoft.Scripting.dll, and Microsoft.Scripting.Silverlight.dll. You'll also need the language assemblies, which are IronRuby.dll and IronRuby.Libraries.dll for Ruby and IronPython.dll and IronPython.Modules.dll for Python. The runtime component is a small additional download. Today, the IronRuby Silverlight runtime is just a 712KB download, which takes less than 5 seconds to download over modern broadband.

Now you can get Ruby in your browser:

John also talked about Chiron, a mini Web server that lets you develop against a local file system with ease. We will find out more, and get access to the bits, on Friday when John gives his MIX talk.

Posted by Dion Almaer at 10:43 am
2 Comments

+++--
3.5 rating from 21 votes

Next Page »