This document analyzes browser compatibility issues for AJAX-enabled web applications, focusing on Internet Explorer. It discusses standard compliance tests (Acid2 and Acid3) that test rendering of HTML, CSS, images and other technologies according to W3C and IETF specifications. The tests show that while Safari, Firefox, Chrome, and Opera score well, IE scores poorly (20/100 for IE8 in Acid3). Case studies show that some major web applications like Apple MobileMe do not support IE due to standards compliance and performance issues. The document also discusses browser market share trends showing a decline in IE's share.
Things I wish someone had told me about Istio, Omer Levi HevroniSoluto
We at Soluto decided to give Istio a try, and started to gradually roll it out in our production environment. While doing that, we had a lot of *interesting* experiences that we weren't aware off - and we'll be happy to share it with you so you can learn from our experience. In the talk, I'll cover issues like high availability, reliability and monitoring - and also production issues we encounter. We do hope that until the meetup we can say that we have istio deployed in production :)
CSI – IT2020, IIT Mumbai, October 6th 2017
Computer Society of India, Mumbai Chapter
The presentation focuses on Microservices architecture and the comparison between MicroService with Standard Monolithic Apps and SOA based Apps. It also gives a quick outline of Domain Driven Design, Event Sourcing and CQRS, Functional Reactive Programming and comparison of SAGA pattern with 2 Phase Commit.
http://www.csimumbai.org/it2020-17/index.html
Building a scalable microservice architecture with envoy, kubernetes and istioSAMIR BEHARA
Talk from O'Reilly Software Architecture Conference San Jose 2019
Microservices and containers have taken the software industry by storm. Transitioning from a monolith to microservices enables you to deploy your application more frequently, independently, and reliably. However, microservice architecture has its own challenges, and it has to deal with the same problems encountered while designing distributed systems.
Enter service mesh technology to the rescue. A service mesh reduces the complexity associated with microservices and provides functionality like load balancing, service discovery, traffic management, circuit breaking, telemetry, fault injection, and more. Istio is one of the best implementations of a service mesh at this point, while Kubernetes provides a platform for running microservices and automating deployment of containerized applications.
Join Samir Behara to go beyond the buzz and understand microservices and service mesh technologies.
Building Cloud-Native App Series - Part 3 of 11
Microservices Architecture Series
AWS Kinesis Data Streams
AWS Kinesis Firehose
AWS Kinesis Data Analytics
Apache Flink - Analytics
Mastering Chaos - A Netflix Guide to MicroservicesJosh Evans
QConSF 2016 Abstract:
By embracing the tension between order and chaos and applying a healthy mix of discipline and surrender Netflix reliably operates microservices in the cloud at scale. But every lesson learned and solution developed over the last seven years was born out of pain for us and our customers. Even today we remain vigilant as we evolve our service architecture. For those just starting the microservices journey these lessons and solutions provide a blueprint for success.
In this talk we’ll explore the chaotic and vibrant world of microservices at Netflix. We’ll start with the basics - the anatomy of a microservice, the challenges around distributed systems, and the benefits realized when integrated operational practices and technical solutions are properly leveraged. Then we’ll build on that foundation exploring the cultural, architectural, and operational methods that lead to microservice mastery.
Building Cloud-Native App Series - Part 4 of 11
Microservices Architecture Series
NoSQL vs SQL
Redis, MongoDB, AWS DynamoDB
Big Data Design Patterns
Sharding, Partitions
Building Cloud-Native App Series - Part 2 of 11
Microservices Architecture Series
Event Sourcing & CQRS,
Kafka, Rabbit MQ
Case Studies (E-Commerce App, Movie Streaming, Ticket Booking, Restaurant, Hospital Management)
This file is the final report for the course Digital Content Retrieval (DCR) presented at Pavia University as Computer Engineering Master's course. The report explains the procedure for the development of a personal website and a video curriculum describing its development aspects using proper project management techniques. The source of the personal website and the video curriculum are available at https://github.com/kooroshsajadi/personal-website and https://vimeo.com/843032358?share=copy respectively.
Things I wish someone had told me about Istio, Omer Levi HevroniSoluto
We at Soluto decided to give Istio a try, and started to gradually roll it out in our production environment. While doing that, we had a lot of *interesting* experiences that we weren't aware off - and we'll be happy to share it with you so you can learn from our experience. In the talk, I'll cover issues like high availability, reliability and monitoring - and also production issues we encounter. We do hope that until the meetup we can say that we have istio deployed in production :)
CSI – IT2020, IIT Mumbai, October 6th 2017
Computer Society of India, Mumbai Chapter
The presentation focuses on Microservices architecture and the comparison between MicroService with Standard Monolithic Apps and SOA based Apps. It also gives a quick outline of Domain Driven Design, Event Sourcing and CQRS, Functional Reactive Programming and comparison of SAGA pattern with 2 Phase Commit.
http://www.csimumbai.org/it2020-17/index.html
Building a scalable microservice architecture with envoy, kubernetes and istioSAMIR BEHARA
Talk from O'Reilly Software Architecture Conference San Jose 2019
Microservices and containers have taken the software industry by storm. Transitioning from a monolith to microservices enables you to deploy your application more frequently, independently, and reliably. However, microservice architecture has its own challenges, and it has to deal with the same problems encountered while designing distributed systems.
Enter service mesh technology to the rescue. A service mesh reduces the complexity associated with microservices and provides functionality like load balancing, service discovery, traffic management, circuit breaking, telemetry, fault injection, and more. Istio is one of the best implementations of a service mesh at this point, while Kubernetes provides a platform for running microservices and automating deployment of containerized applications.
Join Samir Behara to go beyond the buzz and understand microservices and service mesh technologies.
Building Cloud-Native App Series - Part 3 of 11
Microservices Architecture Series
AWS Kinesis Data Streams
AWS Kinesis Firehose
AWS Kinesis Data Analytics
Apache Flink - Analytics
Mastering Chaos - A Netflix Guide to MicroservicesJosh Evans
QConSF 2016 Abstract:
By embracing the tension between order and chaos and applying a healthy mix of discipline and surrender Netflix reliably operates microservices in the cloud at scale. But every lesson learned and solution developed over the last seven years was born out of pain for us and our customers. Even today we remain vigilant as we evolve our service architecture. For those just starting the microservices journey these lessons and solutions provide a blueprint for success.
In this talk we’ll explore the chaotic and vibrant world of microservices at Netflix. We’ll start with the basics - the anatomy of a microservice, the challenges around distributed systems, and the benefits realized when integrated operational practices and technical solutions are properly leveraged. Then we’ll build on that foundation exploring the cultural, architectural, and operational methods that lead to microservice mastery.
Building Cloud-Native App Series - Part 4 of 11
Microservices Architecture Series
NoSQL vs SQL
Redis, MongoDB, AWS DynamoDB
Big Data Design Patterns
Sharding, Partitions
Building Cloud-Native App Series - Part 2 of 11
Microservices Architecture Series
Event Sourcing & CQRS,
Kafka, Rabbit MQ
Case Studies (E-Commerce App, Movie Streaming, Ticket Booking, Restaurant, Hospital Management)
This file is the final report for the course Digital Content Retrieval (DCR) presented at Pavia University as Computer Engineering Master's course. The report explains the procedure for the development of a personal website and a video curriculum describing its development aspects using proper project management techniques. The source of the personal website and the video curriculum are available at https://github.com/kooroshsajadi/personal-website and https://vimeo.com/843032358?share=copy respectively.
LaTeX InDesign merupakan pengembangan LaTeX untuk menghasilkan dokumen yang mendekati hasil dari perangkat lunak Adobe InDesign CC sebagai salah satu yang terdepan dalam hal menghasilkan publikasi dengan hasil tingkat tinggi.
AthTek WebXone is an intelligent RIA (Rich Internet Applications) builder for software developers to create web based applications with C++Builder, VC, VB, Delphi and PowerBuilder. If you already got the project in any of these development environments, WebXone can assist you to convert the project from client based software to web based app in seconds. Without any web development skill is required, WebXone greatly extends software developers' ability in web app development. If you are looking forward to creating web app with C++Builder/VC/Delphi, WebXone is the creator we highly recommend!
webapp2 is a lightweight Python web framework compatible with Google App Engine’s webapp.
webapp2 is a single file that follows the simplicity of webapp, but improves it in some ways: it extends webapp to offer
better URI routing and exception handling, a full featured response object and a more flexible dispatching mechanism.
webapp2 also offers the package webapp2_extras with several optional utilities: sessions, localization, internationalization,
domain and subdomain routing, secure cookies and support for threaded environments.
webapp2 can also be used outside of Google App Engine, independently of the App Engine SDK.
For a complete description of how webapp2 improves webapp, see features.
Research: Developing an Interactive Web Information Retrieval and Visualizati...Roman Atachiants
Finding the needed information (images, articles or other) is not always as simple as going to a search en-
gine. This paper aim at developing an interactive presentation system, able to cope with live presentation
challenges.
Big data - ‘Big Data’ is similar to ‘small data’, but bigger in size.
But having data bigger it requires different approaches:Techniques, tools and architecture.
Web development- React.js,angular js,Vue.js
Mobile application development-API in mobile applications (cURL API),Develop in mobile applications (react-native)
elementary OS
Concurrency
Building Cloud-Native App Series - Part 11 of 11
Microservices Architecture Series
Service Mesh - Observability
- Zipkin
- Prometheus
- Grafana
- Kiali
Building Cloud-Native App Series - Part 7 of 11
Microservices Architecture Series
Containers Docker Kind Kubernetes Istio
- Pods
- ReplicaSet
- Deployment (Canary, Blue-Green)
- Ingress
- Service
Building Cloud-Native App Series - Part 5 of 11
Microservices Architecture Series
Microservices Architecture,
Monolith Migration Patterns
- Strangler Fig
- Change Data Capture
- Split Table
Infrastructure Design Patterns
- API Gateway
- Service Discovery
- Load Balancer
Building Cloud-Native App Series - Part 1 of 11
Microservices Architecture Series
Design Thinking, Lean Startup, Agile (Kanban, Scrum),
User Stories, Domain-Driven Design
Docker Kubernetes Istio
Understanding Docker and creating containers.
Container Orchestration based on Kubernetes
Blue Green Deployment, AB Testing, Canary Deployment, Traffic Rules based on Istio
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
IE issues with AJAX Apps
1. AJAX enabled apps and browser Compatibility – A Case study
IE Issues with Ajax enabled Apps
A study on issues faced by the developers
Author: Araf Karsh
Contents
1. Introduction .................................................................................................................................... 3
2. Executive Summary ......................................................................................................................... 3
3. Document Scope.............................................................................................................................. 3
4. Web 2.0 Compliance tests ............................................................................................................... 4
4.1 Acid 2 – Web Standards, Wikipedia .......................................................................................... 4
4.2 Acid 3 – Web standards, Wikipedia .......................................................................................... 4
5. Browser Test Results – IE, Firefox, Safari, Chrome and Opera ........................................................... 5
5.1 Acid 3 Results for Desktop Browsers......................................................................................... 5
5.2 Acid 3 Results for Mobile Browsers .......................................................................................... 6
5.3 Acid 2 Results for Desktop Browsers......................................................................................... 7
6. Case Study: Web 2.0 Applications and IE .......................................................................................... 8
6.1 Apple MobileMe Web 2.0 Application – http://www.me.com/................................................. 8
6.2 Google dropped support of Google Wave for IE browsers (all version IE 6 to IE 8) .................... 9
6.3 YouTube will be next to kiss IE 6 support good bye ................................................................. 10
6.4 Google tells users to drop IE 6 ................................................................................................ 10
6.5 'Kill IE6' campaign gains force; 30M Web users get switch pitch - ComputerWorld ................. 11
6.6 IE 6 no more ........................................................................................................................... 11
6.7 Microsoft starts serving IE8 upgrade to enterprises – Article in Computer World ................... 12
6.8 News Articles on IE 7, 8 Issues ................................................................................................ 14
6.9 Next Generation Web Apps .................................................................................................... 14
7. Support for HTML and CSS ............................................................................................................. 15
7.1 Compatibility Guide – HTML5, CSS3, SVG, PNG etc ................................................................. 15
7.1.0 Summary ........................................................................................................................ 15
7.1.1 CSS table display............................................................................................................. 15
7.1.2 CSS generated content - Candidate Recommendation .................................................... 16
7.1.3 Data URIs - IETF standard ............................................................................................... 16
7.1.4 Canvas (basic support) - Working Draft ........................................................................... 16
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 1 of 27
2. AJAX enabled apps and browser Compatibility – A Case study
7.1.5 Independent JavaScript threading (Web Workers) - Working Draft ................................. 17
7.2 Microsoft IE Program Manager: Chris Wilson ......................................................................... 18
8. JavaScript Engine Performance comparison .................................................................................. 19
8.1 SunSpider Test ....................................................................................................................... 19
8.2 Dromaeo with DOM ............................................................................................................... 19
9. Browser market share and Trends ................................................................................................. 20
9.1 Stats by W3Counter.com – October 2009 ............................................................................... 20
9.2 Browser Statistics Month by Month – http://www.w3schools.com/....................................... 20
9.3 Net Applications stats ............................................................................................................ 21
10. Conclusion ................................................................................................................................. 23
11. Appendix ................................................................................................................................... 24
11.1 Microsoft HTML Support Matrix ............................................................................................. 24
11.2 IE 8.0 pull down issues with data elements............................................................................. 27
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 2 of 27
3. AJAX enabled apps and browser Compatibility – A Case study
1. Introduction
The objective of this document is to highlight the issues with IE browser with modern Web
Applications and highlight Microsoft’s inability to support open standards (from W3C and IETF) which
the whole world follows.
2. Executive Summary
AJAX apps are developed using Web 2.0 technologies (the next generation web applications).
The technology standards used in Web 2.0 are based on open standards developed by W3C (World Wide
Web Consortium) and IETF (Internet Engineering Task Force). AJAX Apps followed these standards while
building the AJAX Apps Web User interface. There are standard compliance tests for web browsers to
check whether they are compliant with W3C and IETF standards. Acid3 is the latest testing standard
which tests browser compatibility. Microsoft is the only browser vendor which doesn’t follow any
standards and fails miserably in Acid 2 and Acid3 tests. These tests focuses on UI rendering – same set of
issues faced by the AJAX Apps development team.
Apple Safari and Google Chrome scored 100 / 100, while Firefox scored 93 / 100 and Microsoft
1
IE 8.0 scored a miserable 20 / 100. AJAX Apps performs flawlessly in Firefox, Safari, Opera and Google
Chrome. We spend a lot of time tweaking the external API’s to support Microsoft IE 7.0 and 8.0. Section
5 let you test your browser and you can see the score for yourself.
3. Document Scope
Purpose of the document is to introduce various standard browser compatibility test cases and
see how each browser fares and where Microsoft IE 8.0 standards today when the world is moving
towards Web 2.0 applications. Following section explains these testing standards, test results, case
studies, documentation from Microsoft MSDN discussing about support on various standards etc.
1 Web 2.0 compliance Tests (Acid)
2 Test results comparison of various browsers
3 Case Study: Apple MobileMe doesn’t support IE browser
4 Microsoft MSDN Report on standards compliance
5 Performance Requirement for the Web 2.0 applications
6 Browser market share
1
In my system IE 8.0 scored 13 / 100
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 3 of 27
4. AJAX enabled apps and browser Compatibility – A Case study
4. Web 2.0 Compliance tests
4.1 Acid2 2 – Web Standards, Wikipedia
Acid2 is a test page published and promoted by the Web Standards Project to expose web
pagerendering flaws in web browsers and other applications that render HTML. Named after the acid
test for gold, it was developed in the spirit of Acid1, a relatively narrow test of compliance with
theCascading Style Sheets 1.0 (CSS1) standard, and was released on April 13, 2005. As with Acid1, an
application passes the test if the way it displays the test page matches a reference image.
Acid2 tests aspects of HTML markup, CSS 2.1 styling, PNG images, and data URIs. The Acid2 test page
will be displayed correctly in any application that follows the World Wide Web Consortium (w3c) and
Internet Engineering Task Force (IETF) specifications for these technologies. These specifications are
known as web standards because they describe how technologies used on the web are expected to
function. The creators of Acid2 were dismayed that Internet Explorer did not follow web standards, and
that because of this, Internet Explorer was prone to display web pages differently from other browsers.
When such a discrepancy between browsers is encountered, web developers spend time tweaking their
web pages in order to make the pages be displayed correctly across different browsers.
On October 31, 2005, Safari 2.0.2 became the first browser to pass Acid2. Opera, Konqueror, Firefox,
and others followed. With the release of Internet Explorer 8 on March 19, 2009, the latest versions of all
major web browsers now pass the Acid2 test. Acid2 was followed by Acid3.
4.2 Acid 3 – Web standards, Wikipedia
Acid3 test displays a gradually increasing percentage counter with colored rectangles in the background.
The percentage displayed is based on the number of subtests passed. It does not represent an actual
percentage of conformance as the test does not keep track of how many of the subtests were actually
started (100 is assumed). In addition to these the browser also has to render the page exactly like the
reference page is rendered in the same browser. Like the text of the Acid2 test, the text of the Acid3
reference rendering is not a bitmap, in order to allow for certain differences in font rendering.
Acid3 was in development from April 2007,[1] and released on 3 March 2008.[2] The main developer
was Ian Hickson, who also wrote the Acid2 test. Acid2 focused primarily on Cascading Style Sheets, but
this third Acid test focuses also on technologies used on modern, highly interactive websites
characteristic of Web 2.0, such as ECMAScript and DOM Level 2. A few subtests also concern Scalable
Vector Graphics (SVG), XML, and data URIs. Controversially, it includes several elements from
the CSS2 recommendation that were later removed in CSS2.1 but reintroduced in W3C CSS3 working
drafts that have not made it to candidate recommendations yet.
2
Acid - http://www.webstandards.org/action/acid2/guide/
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 4 of 27
5. AJAX enabled apps and browser Compatibility – A Case study
5. Browser Test Results – IE, Firefox, Safari, Chrome and Opera
You can do this test by typing the following URL in your browser
Acid 3 - http://acid3.acidtests.org/
Acid 2 - http://acid2.acidtests.org/
5.1 Acid 3 Results for Desktop Browsers
Apple Safari and Google Chrome scored 100 / 100 and Firefox scored 93 / 100 while Microsoft IE 8.0
scored a miserable 20 / 100 (in my system IE scored 13 / 100).
Desktop layout engine progress for the Acid3 test
Screen shot of latest release
Layout engine Major browsers Screen shot of current release Screen shot of preview release
at time of Acid3 release
Safari None
100/100 (passing)
41/100 Safari 4.0.2
Safari 3.0.4 (WebKit 530.19.1)
WebKit
Google Chrome None
100/100 (linktest failed)
100/100
Google Chrome 2.0.172.37
Chromium
(WebKit 530.5)
Presto Opera
46/100 85/100 100/100
Opera 9.27 Opera 9.64 Opera
Gecko Mozilla Firefox
52/100 93/100 94/100
[24][25]
Mozilla Firefox 2.0.0.12 Mozilla Firefox 3.5.1 Mozilla Firefox
Trident Internet Explorer None
14/100 20/100
Internet Explorer 7.0 Internet Explorer 8.0
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 5 of 27
6. AJAX enabled apps and browser Compatibility – A Case study
5.2 Acid 3 Results for Mobile Browsers
Layout Screen shot of latest release
Major browsers Screen shot of current release Screen shot of preview release
engine at time of Acid3 release
Iris Browser None None
100/100
Iris Browser 1.1.7
Mobile Safari
97/100 100/100
40/100
Mobile Safari 4.0 IPhone OS X v3.1 Beta1
Mobile Safari 3.0
(WebKit 528.18) (Non-Passing)
WebKit
Android browser None None
93/100
Android 1.5
Nokia Mini Map
None
Browser 47/100
S60 5th Edition
Opera Mobile
2/100 2/100 100/100
[27]
Opera Mobile 8.65 Opera Mobile 8.65 Opera Mobile 9.7b1
Presto
Opera Mini None
80/100
Opera Mini 4.1.1.11320
Gecko Fennec None None
94/100
Fennec[28]
BlackBerry BlackBerry Browser None
54/100
NetFront PSP Browser None
11/100
NetFront 3.5
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 6 of 27
7. AJAX enabled apps and browser Compatibility – A Case study
5.3 Acid 2 Results for Desktop Browsers
Test URL http://acid2.acidtests.org/
Chrome 2.0 Firefox 3.5.1 Safari 3.2
Opera 9.6 IE 8.0 IE 7.0
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 7 of 27
8. AJAX enabled apps and browser Compatibility – A Case study
6. Case Study: Web 2.0 Applications and IE
6.1 Apple MobileMe Web 2.0 Application – http://www.me.com/
Apple stopped the support of IE with the launch of MobileMe application in the net. Internet Explorer 7 has known
compatibility issues with modern web standards which affect Web 2.0 applications such as MobileMe. You can use Internet
Explorer 7, but you will not have access to all MobileMe features and will experience slower performance.
IE 8.0
Apple’s MobileMe Web
2.0 application is
supported in all modern
web browsers except IE
Chrome 2.0
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 8 of 27
9. AJAX enabled apps and browser Compatibility – A Case study
6.2 Google dropped support of Google Wave for IE browsers (all version IE 6 to IE 8)
Chrome Frame – Article in New York Times
When Google launched Chrome Frame, it's Internet Explorer plugin that can replace the IE rendering engine with
Google Chrome, the Wave team already announced that it would support this feature. And indeed, when you go to
the Wave homepage with IE, you will now be prompted to install Chrome Frame. As Lars Rasmussen told us, the
team is very enthusiastic about Chrome Frame, as it allows the developers to focus on features instead of making
sure that Wave runs in Internet Explorer.
In our own experience, Wave definitely works best in Chrome. It will work just fine in Safari and Firefox, though for
the most fluid experience, Chrome is currently the best browser.
Following screen shot shows the support of Chrome plugin in IE browser and using open tests to test the compatibility.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 9 of 27
10. AJAX enabled apps and browser Compatibility – A Case study
6.3 YouTube will be next to kiss IE 6 support good bye
by Robin Wauters on July 14, 2009
Judging by this screenshot taken by an IE6 user who was watching some videos on YouTube, it
appears the Google company will be phasing out support for the browser shortly. I don’t have Internet
Explorer 6 installed on my computer, so I can’t verify this first hand, but illogical it seems not and a
simple Twitter search shows multiple people confirming the news. Heck, some are even downright
ecstatic over the news.
Read more .. http://www.techcrunch.com/2009/07/14/youtube-will-be-next-to-kiss-ie6-support-
goodbye/
6.4 Google tells users to drop IE 6
By Christian ZibregWednesday, 31 December 2008 08:49
Chicago (IL) - Taking a page out of Apple’s book, Google is now urging Gmail users to drop
Internet Explorer 6 (IE6) in favor of Firefox or Chrome that, according to the company, run
the popular web-based email service "twice as fast." Google also labels IE6 as an
unsupported browser, meaning it fails to run some Gmail features.
Following recent release of Chrome 1.0, Google is increasing the visibility of the browser. In addition
to a direct download link on Google.com, YouTube and within the Adsense advertising program, the
company is now advising Gmail users who access the service with IE6 to ditch the browser and
upgrade to Firefox 3 or Chrome. Google claims the two browsers run the popular webmail service
"twice as fast".
IE6 users are greeted with a new "Get faster Gmail" message in the menu bar of the web interface.
The link leads to a page that promotes Chrome and Firefox 3. "Browsers are getting faster and better
at running web applications like Google Mail that use browser technology to its limits," the page reads.
"In order to get the best experience possible and make Google Mail run an average of twice as fast,
we suggest that you upgrade your browser to one of the fastest Google Mail supported browsers that
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 10 of 27
11. AJAX enabled apps and browser Compatibility – A Case study
work on Windows." The page offers direct download links for Firefox 3 and Chrome. IE7 and Apple's
Safari are listed as supported Gmail browsers.
Read more .. http://www.tgdaily.com/software-features/40785-google-tells-users-to-drop-ie6
6.5 'Kill IE6' campaign gains force; 30M Web users get switch pitch - ComputerWorld
'You are using an outdated browser' offer follows similar moves by Facebook, YouTube
By Gregg Keizer - August 5, 2009 01:06 PM ET
Computerworld - The campaign to kill Internet Explorer 6 (IE6) gathered steam this week when a
California site builder led nearly 40 Web start-ups to urge their users to ditch Microsoft's eight-year-old
browser.
Microsoft acknowledged it's pushing IE6 users to upgrade to the newer IE8, but again promised it would
support the creaky browser until April 2014.
The anti-IE6 move followed reports last month that Google's YouTube was doing the same, that Digg
would soon curtail support for the ancient browser and a petition on Twitter collected nearly 10,000
signatures supporting the effort. Facebook has been prompting IE6 users to swap out their browsers
since February 2009.
"Developers can't wait until IE6 is gone," said David Rusenko, the CEO of Weebly, the San Francisco Web
site creation and hosting company that's leading the newest campaign. Weebly has more then 2.2
million users, said Rusenko, and used connections with the venture capitalists who funded the firm to
reach out to the 38 sites that have joined its campaign.
Read more ..
http://www.computerworld.com/s/article/9136286/_Kill_IE6_campaign_gains_force_30M_Web
_users_get_switch_pitch
6.6 IE 6 no more
Why?
Enough is enough. Microsoft Internet Explorer 6 was released in late 2001. For its time, it was a
decent browser, but in 2009, it is still in use by a significant portion of the web population, and
its time is now up.
As any web developer will tell you, working with IE 6 is one of the most difficult and frustrating
things they have to deal with on a daily basis, taking up a disproportionate amount of their
time. Beyond that, IE 6's support for modern web standards is very lacking, restricting what
developers can create and holding the web back.
Read more .. http://www.ie6nomore.com/
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 11 of 27
12. AJAX enabled apps and browser Compatibility – A Case study
6.7 Microsoft starts serving IE8 upgrade to enterprises – Article in Computer World
Makes good on promise, pushes new browser to businesses via WSUS - By Gregg Keizer
August 26, 2009 12:59 PM ET
Computerworld - As promised more than a month ago, Microsoft Corp. yesterday began
pushing Internet Explorer 8 to enterprises via Windows Server Update Services (WSUS).
The IE8 upgrade for Windows XP, Vista, Server 2003 and Server 2008 was cast as an "Update
rollup" to WSUS, Microsoft's most popular tool for deploying patches within businesses.
Read more ..
http://www.computerworld.com/s/article/9137150/Microsoft_starts_serving_IE8_upgrade_to_enterprises
What about the corporate users?
We've set up a page specifically to address this question.
Who?
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 12 of 27
13. AJAX enabled apps and browser Compatibility – A Case study
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 13 of 27
14. AJAX enabled apps and browser Compatibility – A Case study
To have your logo featured here, please implement the IE6 no more code on your site, and then
email david+ie6nm@weebly.com with your site address and a copy of your logo.
6.8 News Articles on IE 7, 8 Issues
Internet Explorer has never properly supported HTML and CSS standards but developers worked around these
incompatibilities. With the more standards-compliant IE8, many of these hacks won't be needed, but should an IE8
browser hit an older page, the layout may not render correctly unless the user is employing Microsoft's special
compatibility mode.
https://www.networkworld.com/slideshows/2009/040609-next-gen-
browser.html?ts0hb&story=ts_ff35#slide6
https://www.networkworld.com/slideshows/2009/040609-next-gen-
browser.html?ts0hb&story=ts_ff35#slide7
6.9 Next Generation Web Apps
Mozilla says its main goal from now on will be to turn Firefox into the ideal platform for running Web-
based applications. It shares the belief, also fervently embraced by Google that consumers will gradually
migrate away from programs stored on their computers’ hard disks to those stored in “the Cloud,” the
industry’s term for the servers that run the Internet.
Browser Comparison (Article from Wall Street Journal)
While Firefox 3.5 is about twice as fast as the previous version 3.0, and handily beat Internet Explorer 8
in my tests, it lagged behind both Safari 4.02 and the beta edition of Chrome 2.0 a bit in most test
scenarios. Overall, Safari was fastest in most of my tests, both on Mac and Windows (yes, Apple makes a
little-known version of Safari for Windows).
http://online.wsj.com/article/SB10001424052970204271104574290451340763322.html
Faster JavaScript (Article from Network World)
Speed is a primary battleground in the browser wars, and Mozilla says its new TraceMonkey engine
makes JavaScript twice as fast as Firefox 3. By recent estimates, that puts Firefox 3.5a bit closer to
Safari while leaving Internet Explorer 8 in the dust. Microsoft may very well claim that JavaScript is little
more than a "drag race," but it couldn't hurt to quietly work on getting competitive.
http://www.networkworld.com/news/2009/063009-5-features-ie-will-likely.html?hpg1=bn
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 14 of 27
15. AJAX enabled apps and browser Compatibility – A Case study
7. Support for HTML and CSS3
7.1 Compatibility Guide4 – HTML5, CSS3, SVG, PNG etc
This section shows the compatibility of various browsers with open standards. The Following summary
chart shows the compatibility percentage of each browser.
7.1.0 Summary
Calculation of support of currently displayed feature lists
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0: 4% 2.0: 34% 3.1: 42% 1.0: 53% 9.0: 34%
Past 7.0: 12% 3.0: 47% 3.2: 66% 1.0: 53% 9.0: 34%
Present 8.0: 29% 3.5: 78% 4.0: 87% 2.0: 76% 9.6: 57%
Near Future (2009) 8.0: 29% 3.5: 78% 4.*: 89% 2.*: 80% 10.0: 62%
Future (2010 or later) 9.0: 29% 4.0: 86% 4.*: 89% 3.0: 83% 10.*: 71%
Legend
Supported Not Supported Partially Supported Support Unknown
This section highlights the key areas required for AJAX APPS and how each browser is compatible for
those feature sets.
7.1.1 CSS table display - Candidate Recommendation
Method of displaying elements an tables, rows, and cells
Resources: Detailed article on usage
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0 2.0 3.1
1.0 9.0
Past 7.0 3.0 3.2
Present 4.0 2.0 9.6
8.0 3.5
Near Future (2009) 2.* 10.0
4.*
Future (2010 or later) 9.0 4.0 3.0 10.*
Conclusion: Not ready. Waiting for Internet Explorer 7 to expire
3
Cascading Style Sheet
4
Guide – http://a.deveria.com/caniuse/
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 15 of 27
16. AJAX enabled apps and browser Compatibility – A Case study
Legend
Supported Not Supported Partially Supported Support Unknown
7.1.2 CSS generated content - Candidate Recommendation
Method of displaying text or images before or after elements
Resources: Examples of different types of generated content
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0 2.0 3.1
1.0 9.0
Past 7.0 3.0 3.2
Present 4.0 2.0 9.6
8.0 3.5
Near Future (2009) 2.* 10.0
4.*
Future (2010 or later) 9.0 4.0 3.0 10.*
Conclusion: Not ready. Waiting for Internet Explorer 7 to expire
7.1.3 Data URIs - IETF standard
Method of embedding images and other files in webpages as a string of text.
Resources: Example image Inline Images with Data URLs Wikipedia
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0 2.0 3.1
1.0 9.0
Past 7.0 3.0 3.2
Present 4.0 2.0 9.6
8.0 3.5
Near Future (2009) 2.* 10.0
4.*
Future (2010 or later) 9.0 4.0 3.0 10.*
Conclusion: Not ready. Waiting for Internet Explorer 7 to expire
Note: Support in Internet Explorer 8b2 is limited to images and linked resources like CSS files, not HTML files. Max
URI length is 32KB.
7.1.4 Canvas (basic support) - Working Draft
Method of generating dynamic graphics using JavaScript
Resources: Wikipedia Tutorial by Mozilla Animation kit experiment Implementation for Internet Explorer
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0 2.0 3.1
1.0 9.0
Past 7.0 3.0 3.2
Present 4.0 2.0 9.6
8.0 3.5
Near Future (2009) 2.* 10.0
4.*
Future (2010 or later) 9.0 4.0 3.0 10.*
Conclusion: Not ready. Waiting for Internet Explorer 8 to expire
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 16 of 27
17. AJAX enabled apps and browser Compatibility – A Case study
Legend
Supported Not Supported Partially Supported Support Unknown
7.1.5 Independent JavaScript threading (Web Workers) - Working Draft
Method of running scripts in the background, isolated from the web page
Resources: Web Worker demo
Internet Explorer Firefox Safari Chrome Opera
Far Past 6.0 2.0 3.1
1.0 9.0
Past 7.0 3.0 3.2
Present 4.0 2.0 9.6
8.0 3.5
Near Future (2009) 2.* 10.0
4.*
Future (2010 or later) 9.0 4.0 3.0 10.*
Conclusion: Not ready. Waiting for Internet Explorer 8, Opera 10 to expire
Note: Support in Chrome uses the auto-included Gears plug-in. Functions are similar, but not the same.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 17 of 27
18. AJAX enabled apps and browser Compatibility – A Case study
7.2 Microsoft IE Program Manager: Chris Wilson
In its browser blog, MSFT acknowledged that IE 7 would not pass the Web Standards Project's Acid2
test, which examines a browser's support for W3C (World Wide Web Consortium) recommendations
including CSS1 (Cascading Style Sheets), HTML4 and PNG (Portable Network Graphics).
"We will not pass this (Acid2) test when IE7 ships," Chris Wilson, lead program manager for the Web
platform in IE, wrote in the IE blog. "We fully recognize that IE is behind the game today in CSS support.
We've dug through the Acid2 test and analyzed IE's problems with the test in some great detail, and
we've made sure the bugs and features are on our list--however, there are some fairly large and difficult
features to implement, and they will not all sort to the top of the stack in IE7."
Standards advocates and Web developers have criticized MSFT for letting Internet Explorer go without a
significant upgrade for years. http://www.webdesignsnow.com/news/080205a.html
Internet Explorer 8 was released as a beta around February of 2008. About the time of the beta release
Microsoft announced that the IE 8 had passed the Acid2 test. Everyone was shocked that Microsoft
actually was able to get a version of IE to even past the test, since everyone’s view is that Microsoft has
turned their back on industry standards. On March 19th, Microsoft finally released the final version of
IE.
http://www.acomment.net/internet-explorer-8-microsoft-starting-to-comply-with-industry-
standards/672
Following section is from Microsoft MSDN (http://msdn.microsoft.com/hi-in/library/cc817571(en-
us).aspx) showing hardly any support for IE 7.0 on industry standards. These standards play an
important role in AJAX application.
CSS Support
Support for the CSS standard has steadily improved with each new version of Windows Internet
Explorer, culminating in full support for CSS 2.1. The following tables show, at-a-glance, the various
improved CSS properties supported in Windows Internet Explorer 8 as compared to Windows Internet
Explorer 7. These tables do not show a comprehensive list of CSS properties supported by Windows
Internet Explorer 8; they show only the CSS properties that either were not supported or were only
partially supported in Windows Internet Explorer 7 but that are now supported in Windows Internet
Explorer 8. For more information regarding CSS compatibility in Windows Internet Explorer and
expanded CSS element support tables, see CSS Compatibility and Internet Explorer.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 18 of 27
19. AJAX enabled apps and browser Compatibility – A Case study
8. JavaScript Engine Performance comparison
8.1 SunSpider5 Test
Let's start by taking a look at some results from WebKit's SunSpider test (which covers a wide selection of
pure-JavaScript functionality). Here is the breakdown:
We see a fairly steady curve, heading down to Chrome We already see TraceMonkey (under development for
(ignoring the Internet Explorer outliers). Chrome is about 2 months) performing better than Chrome V8 6
definitely the fastest in these results - although the results (under development for about 2 years). Firefox 3.5 is
from the new TraceMonkey engine aren't included. released with new TraceMonkey Engine.
8.2 Dromaeo with DOM
Finally, let's take a more holistic look at JavaScript
performance. I've (John) been working on the
Dromaeo test suite, adding in a ton of new DOM
and JavaScript library tests. This assortment
provides a much stronger look at how browsers
might perform under a normal web browsing
situation.
Considering that most web pages are being held
back by the performance of the DOM (think table
sorters and the like) and not, necessarily, the
performance of JavaScript (games, graphics) it's
important to look at these particular details for
extended analysis
The results of a run against the JavaScript, DOM,
and library tests (thanks to Asa Dotzler for helping
me run the tests): No results for IE were provided
as the browser crashes when running the tests.
5
Performance – http://ejohn.org/blog/javascript-performance-rundown/
6
Chrome V8 – JavaScript Engine : http://code.google.com/p/v8/
V8 benchmark suite - http://v8.googlecode.com/svn/data/benchmarks/v5/run.html
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 19 of 27
20. AJAX enabled apps and browser Compatibility – A Case study
9. Browser market share and Trends
There is a misconception the IE is the current market leader. Look at the following trend which
will show a different picture. IE 6.0 was released in 2000 which is an outdated browser.
9.1 Stats by W3Counter.com – October 2009
Web Browsers
1 Internet Explorer 7.0 19.33%
2 Internet Explorer 8.0 19.06%
3 Firefox 3.5 18.74%
4 Internet Explorer 6.0 12.83%
5 Firefox 3.0 11.59%
6 Safari 4.0 4.37%
7 Chrome 3.0 3.90%
8 Firefox 2.0 1.56%
9 Opera 10.0 0.93%
10 Opera 9.6 0.57%
Source: w3counter http://www.w3counter.com/globalstats.php
9.2 Browser Statistics Month by Month – http://www.w3schools.com/
2009 IE8 IE7 IE6 Firefox Chrome Safari Opera
October 12.8% 14.1% 10.6% 47.5% 8.0% 3.8% 2.3%
September 12.2% 15.3% 12.1% 46.6% 7.1% 3.6% 2.2%
August 10.6% 15.1% 13.6% 47.4% 7.0% 3.3% 2.1%
July 9.1% 15.9% 14.4% 47.9% 6.5% 3.3% 2.1%
June 7.1% 18.7% 14.9% 47.3% 6.0% 3.1% 2.1%
May 5.2% 21.3% 14.5% 47.7% 5.5% 3.0% 2.2%
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 20 of 27
22. AJAX enabled apps and browser Compatibility – A Case study
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 22 of 27
23. AJAX enabled apps and browser Compatibility – A Case study
10. Conclusion
Current set of Modern Web Browsers are far superior in performance and handling UI function
in comparison to IE. Acid test proves UI rendering. Browsers like Safari, Chrome and Firefox released the
latest version with high performance JavaScript Engines. This will be a key element for Web 2.0
applications. Until Microsoft comes out with release (IE 9 or IE 10) which supports new standards, issues
will crop up in IE browsers.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 23 of 27
24. AJAX enabled apps and browser Compatibility – A Case study
11. Appendix
11.1 Microsoft HTML Support Matrix
A value of "Partial" in a cell indicates that that feature is only partially implemented in that version of
Windows Internet Explorer. For more information, click the link to view that feature's reference page on
MSDN. http://msdn.microsoft.com/hi-in/library/cc817571(en-us).aspx
Pseudo-classes
CSS 2.1 IE 7.0 IE 8.0
:active { sRules } :active Partial Yes
:after { sRules } :after No Yes
:before { sRules } :before No Yes
:focus { sRules } :focus No Yes
:lang(C) { sRules } :lang() No Yes
Lists
CSS 2.1 IE 7.0 IE 8.0
{ list-style-type : sStyle } list-style-type Partial Yes
Color and Background
CSS 2.1 IE 7.0 IE 8.0
{ background-position : sPosition } background-position Partial Yes
Font and Text
CSS 2.1 IE 7.0 IE 8.0
{ font-weight : sWeight } font-weight Partial Yes
{ white-space : sWrap } white-space Partial Yes
{ word-spacing : sSpacing } word-spacing Partial Yes
Generated Content
CSS 2.1 IE 7.0 IE 8.0
{ content : sContent } content No Yes
{ counter-increment : sCounter } counter-increment No Yes
{ counter-reset : sCounter } counter-reset No Yes
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 24 of 27
25. AJAX enabled apps and browser Compatibility – A Case study
{ quotes : sQuotes } quotes No Yes
Border and Layout
CSS 2.1 IE 7.0 IE 8.0
{ border-collapse : sCollapse } border-collapse Partial Yes
{ border-spacing : sSpacing } border-spacing No Yes
{ border-style : sStyle } border-style Partial Yes
{ caption-side : sLocation } caption-side No Yes
{ empty-cells : sEmptyCells } empty-cells Partial Yes
Positioning
CSS 2.1 IE 7.0 IE 8.0
{ bottom : sBottom } bottom Partial Yes
{ display : sDisplay } display Partial Yes
{ left : sPosition } left Partial Yes
{ right : sPosition } right Partial Yes
{ top : sTop } top Partial Yes
{ z-index : vOrder } z-index Partial Yes
Printing
CSS 2.1 IE 7.0 IE 8.0
{ orphans : nLines } orphans No Yes
{ page-break-inside : sBreak } page-break-inside No Yes
{ widows : nLines } widows No Yes
User Interface
CSS 2.1 IE 7.0 IE 8.0
{ outline : sOutline } outline No Yes
{ outline-color : sColor } outline-color No Yes
{ outline-style : sStyle } outline-style No Yes
{ outline-width : sWidth } outline-width No Yes
CSS 3 IE 7.0 IE 8.0
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 25 of 27
26. AJAX enabled apps and browser Compatibility – A Case study
{ box-sizing : sSizing } box-sizing No Yes
Functions
CSS 2.1 IE 7.0 IE 8.0
counter() No Yes
attr() No Yes
Keywords
CSS 2.1 IE 7.0 IE 8.0
Inherit No Yes
For more information regarding CSS compatibility in Windows Internet Explorer and expanded support
tables, see CSS Compatibility and Internet Explorer.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 26 of 27
27. AJAX enabled apps and browser Compatibility – A Case study
11.2 IE 8.0 pull down issues with data elements
Following image shows the issues with pull down in Microsoft site itself. Check the circled area. These
issues are not there in other browsers.
By Karsh http://arafkarsh.blogspot.com November 13, 2009 - 2:36 AM v1.0 Page 27 of 27