7 ms·
The BBC's Glow effort has always confused me. They were using jQuery on the main BBC web site a few years back and I ended up chatting with them about it. They
by jeresig 17y ago
The BBC's Glow effort has always confused me. They were using jQuery on the main BBC web site a few years back and I ended up chatting with them about it. They mentioned that they were working on their own library since they needed support for Safari 1.3 (if you've ever had to support that browser version, it's miserable - I'm not even sure it could be described as 'functional'). This was a little bit odd since they hadn't actually submitted any tickets or patches requesting that Safari 1.3-related bugs be fixed.
Now, I should take a step back and mention that some people are just set to be framework authors. They see a problem and want to write their own framework that matches their mental model. This isn't a bad thing - I certainly did that when I wrote jQuery (decided not to use Prototype back in 2005 and wrote my own instead) and the BBC guys are of the same ilk. It's important to realize that the BBC's Glow effort is less about filling a specific void in the market and more about them wanting to write and run their own framework. In an organization as large as the BBC this scale does tend to make its own brand of sense.
If you look through the timeline for when changes were made to the level of browser support, v3.3 shows when support for Safari 1.3 was dropped to "Level 2" (a.k.a. "The web page must be functional in a gracefully degraded state.") - this was in September of 2008 (long before the public release of the library, today).
Timeline: http://www.bbc.co.uk/guidelines/futuremedia/technical/browser_support.shtml#history http://www.bbc.co.uk/guidelines/futuremedia/technical/browse...
If you look at the support table for which browsers they support (the important ones are Level 1) it's interesting to note that they actually support less browsers on less platforms than most other libraries. For example, jQuery supports Firefox 3.5 (on Windows, OSX, Linux), Chrome 2 (on Windows), Opera 10 (on Windows and OSX), and Safari 4 (on Windows and OSX) in addition to the browsers listed in Glow's Level 1.
Support Table: http://www.bbc.co.uk/guidelines/futuremedia/technical/browser_support.shtml#support_table http://www.bbc.co.uk/guidelines/futuremedia/technical/browse...
In the end I think some seriously short-sighted planning went into the creation of Glow. When I was talking with some of the guys at the BBC who were working on it (before they were using it internally) I asked them: "Don't you think that you will have dropped support for Safari 1.3 before you end up finishing and releasing the library? Writing a framework isn't trivial, it's going to take a while and Safari 1.3 is already effectively dead." (At the time Safari 1.3 had a 0% marketshare.)
And now, sure enough, here we have yet another JavaScript library that does similar, but not quite the same, things as every other library - with worse browser support, less uptake, less documentation, and more fracturing of the community.
- jacquesm 17y agoPretty much the same happened around CMS in the Netherlands broadcast sphere, I always figured that it must be really comfy when your paycheck is based on taxation and not on some kind of competitive success. If you're a business and your opponent can leverage an existing solution vs you hacking out your own in the basement you'll find out the hard way that this was not a very smart move.
- deadwisdom 17y agoYeah, I don't really get it. Going through their code, docs, it doesn't seem to really offer anything new. I commend them for the open source, but in the end: meh.
- Ovid 17y agoThere's another problem at work. We have many different teams at the BBC and if one needs a different version of a popular JS library, they need to ensure that this version can be loaded and not muck up other versions. Glow gives you that, something I'm not aware that any other JS library handles. The BBC Web site is huge and with so many different teams working on different projects, expecting all of them to march in lockstep with the same JS library versions is not realistic. Disclaimer: though I work for the BBC, any views expressed are my own and not official BBC statements.
- jeresig 17y agoActually, jQuery has had support for having multiple versions of jQuery working, simultaneously, on the same page since August 2007: http://blog.jquery.com/2007/08/24/jquery-114-faster-more-tests-ready-for-12/ http://blog.jquery.com/2007/08/24/jquery-114-faster-more-tes... We introduced this functionality back then for precisely the reason you outline: Large organizations, coordinating on a single version of code, can be challenging. It's been working out really well so far. (It should be noted that this release likely happened before the work on Glow was even started.) More details on the noConflict method can be found here: http://docs.jquery.com/Core/jQuery.noConflict http://docs.jquery.com/Core/jQuery.noConflict http://docs.jquery.com/Using_jQuery_with_Other_Libraries http://docs.jquery.com/Using_jQuery_with_Other_Libraries