Back in June, we surveyed 450 developers from the community about the current browsers they use, what browsers they support in their applications, and what their future browser support plans were. 95%+ of the developers we surveyed were using Ext JS to create business applications split somewhat evenly between business to employee, business to business and business to consumer apps.
1) Developers Choice for Personal Browsing
The vast majority (over 83%) of the Sencha developer community uses Chrome and/or Firefox for personal browsing, and either have auto-updating turned on or manually update their browsers as new versions become available.
Even if the browser does not support auto-updating by itself, most developers keep up with the latest releases by manually installing the latest versions for an improved browsing experience.
However, 6% percent of the respondents reported that they are often required to use a specific older version, which may be due to the IT policies of their organizations.
2) Developers Choice for Development Platforms
Even if other browsers need to be supported, most developers (over 77%) use Chrome or Firefox as their primary browser for development. We believe this is because of the quality of debugging tools (Chrome Developer Tools, Firebug) for Chrome and Firefox.
3) Developers Awareness / Perception of their End-Users
Developers are typically not aware whether their end-users are auto-updating or they have very little confidence in end-users’ auto-updating their browser versions. The vast majority of developers reported that their end-users are using legacy browsers today.
These stats remain more or less the same when asked whether the end-users will be auto-updating or using legacy browsers in the next twelve months.
It is likely that this is due to the level of control the end-users have on their systems. Again, something that may be attributed to the IT policies.
4) Browser Support Plans (now through 2015)
Table 1: For Ext JS applications already developed and in use.
|Support into 2015||Drop Support Next Year
|Drop Support This Year
|No Support Today|
|Firefox 3 & 4||9%||10%||14%||68%|
|Firefox Latest (17)||84%||4%||3%||9%|
|Chrome Latest (27)||85%||3%||2%||10%|
Table 2: For Ext JS applications currently being developed.
|Support Through 2014+||Drop Support
|No Support Today|
|Firefox 3 & 4||10%||7%||14%||68%|
|Firefox Latest (17)||87%||3%||3%||8%|
|Chrome Latest (27)||88%||2%||2%||8%|
Both for current applications, and for applications now in development, IE 8 will continue to drag out as a supported browser into 2014 and beyond. An overwhelming number (59%) reported that IE 8 support is either mission critical or very important in their development plans.
As you can see from Table 1, when it comes to modern browsers, there is already a plan (or at least an assumption) for not needing much support for Safari 5, Firefox 5–16, Chrome 6–26, and Opera 10, which are not the latest versions. In other words, for modern browsers, developers are already relying on the auto-updating functionality and are confident that users who are already using modern browsers will have the auto-updating features turned on.
We should also note that there is a subset of developers who do not support their apps on the latest auto-update of modern browsers. And Safari is commonly not supported.
While all of us would like to drop legacy support for legacy browsers, it is clear that the continuing need to support IE 8 will be a non-negotiable requirement for business app developers for some time. At this point, it looks like 2016 could be first year where Enterprise app developers are considering dropping IE8 support. The only thing that could change this is a wholesale move to upgrade to modern browsers by IT departments worldwide or a switch to auto-updating. Given the historical practice of many IT departments of certifying apps for production on a specific version of a browser, we think this is probably unlikely.
Finally, we want to thank all the developers in the survey who spent the time to fill out the survey, we hope the results are informative and helpful.
.right, .alignright float: right; margin: 0 0 10px 10px;
.left, .alignleft float: left; margin: 0 10px 10px 0;