News for hackers. Stuff that matters.
Re:BBC open source their "Glow" Javascript library by jaffathecake on Wednesday July 08, 2009 @12:20PM (#694137)
Glow does support Firefox 3.5, Chrome 2, Opera 10 and Safari 4. We're certainly not going to ignore new versions of browsers until they appear on that list.

At some points, we've been ahead of jQuery when it comes to new browsers. Basically because we were able to quickly patch and release in order to fix high-profile BBC pages. This isn't a criticism of jQuery, but it shows the benefit of us being devoted to the BBC.

The BBC will always have to support older browsers because of our users. I think it would be unfair to ask other libraries to hang back with us (I'd much rather they advanced actually), and I wouldn't want to be using a library that left us behind.

At the moment, our support table is actually closer to other libraries' than it has ever been, that support gap will naturally increase and decrease over time.

We're not trying to steal your thunder at all, although I can see why it may have came across like that. My advice to developers is: use the library which has the most features you require. Whichever you pick, request the features that are missing.

With all the libraries innovating and others taking note, the quality of all libraries increases. Having one library to rule them all doesn't drive things forward, a good example of this is when IE6 was the only major browser, browser development stagnated.

We're not about filling a void in the market, but filling a void at the BBC. We're open sourcing our efforts because we should.

You mention you communicated with us? I'm not aware of this at all.

Having said all this, we're looking at the possibility of using Sizzle in Glow 2.0, although it's a bit vague about which browsers it intends to support. Would be great to know the details!

http://groups.google.com/group/sizzlejs/browse_thread/thread...

Cheers, Jake.

Re:BBC open source their "Glow" Javascript library by jeresig on Wednesday July 08, 2009 @12:29PM (#694161)
Thanks for your feedback, Jake - and your note on the improved browser support, that's good to know. I stand corrected.

> Having one library to rule them all doesn't drive things forward, a good example of this is when IE6 was the only major browser, browser development stagnated.

I think that's a poor analogy. Everything stagnated because no one could improve upon IE 6 - it was a proprietary browser which had no way to add in new functionality. This is very different from an Open Source project run by a community of people and companies interested in seeing it improve and strive.

> You mention you communicated with us? I'm not aware of this at all.

I had talked with a member of the team at some post-@Media event (I think it was @Media Ajax, maybe @Media proper). Maybe I'm mis-remembering who exactly but I've definitely chatted with a few people at the BBC about jQuery and Glow.

> Sizzle in Glow 2.0, although it's a bit vague about which browsers it intends to support. Would be great to know the details!

What I mentioned in the post still stands: It supports at least as many browsers as jQuery does. I'm absolutely open to accepting patches to fix any deficiencies in older browsers (same goes for jQuery as well!). I'd love to see Glow utilize Sizzle, definitely contact me if you have any questions or concerns.

Re:BBC open source their "Glow" Javascript library by manonthemoon on Wednesday July 08, 2009 @01:07PM (#694228)
I'm less concerned about jQuery's thunder and more concerned about the BBC's use of public money to fund developers' vanity projects.

How is the time and cost which of building and maintaining Glow outweighed by the level of page degradation that Safari 1.3 and other tiny niche users would have experienced (where it could not be mitigated by other page design considerations) using, for example, jQuery?

Re:BBC open source their "Glow" Javascript library by frazor on Wednesday July 08, 2009 @02:31PM (#694380)
Due to the BBC's public service remit it has to support a very wide range of use cases - many of which fall outside of the accepted norm. For example the BBC has to provide its contents to libraries and schools, many of which have more heavily 'locked down' machines than your typical corporate network, and who do not have the money or time to upgrade their machines. There are a lot of smaller user groups in situations that prevent them from upgrading too. You'd be surprised how many older machine users this equates to. Thus the BBC has to support the thin end of the wedge of web browsers, and the stats we have (unfortunately) back this up.

The Glow team itself is actually a very small team, even in BBC terms (which usually has small teams compared to a lot of companies). Add to this the in-house support they give to all of the other web products in terms of a library and general JS support and you have in effect a net gain in web producing ability - not a loss, so its more effective to do this and thus a more efficient use of BBC funds.

Re:BBC open source their "Glow" Javascript library by jaffathecake on Wednesday July 08, 2009 @04:11PM (#694576)
It's common for people to see something they don't think directly benefits them and decide it's a waste of the licence fee.

Perhaps you're not tied down to older browsers, so Glow has no benefit compared to other libraries, for you personally.

I'm a fan of the Radio 4 programme "More or Less", a review of stats in news stories. It's audience would seem insignificant compared to reality TV shows and soap operas, should the BBC scrap "More or Less" and reassign its budget to reality TV?

Would you say it's wrong that we support screen reader users, even though their numbers are small? Is time spent helping these users a waste of their licence fee?

No, we're happy to cater for minority users even if it means being behind other libraries. I wouldn't want other libraries to do the same, as they can be the choice for people who don't need the support of old browsers, and they can perhaps be faster and leaner for it.

Re:BBC open source their "Glow" Javascript library by seasoup on Wednesday July 08, 2009 @04:36PM (#694620)
But you're missing the point that you could have spent the time you spent developing Glow on extending jQuery to do all of these things that you want Glow to do. Then you would have the benefit of everything that jQuery does plus everything that Glow does... but going down separate development paths is not helping anyone at this point.

Unless Glow is doing something nifty that jQuery is not other then supporting screen readers and older browsers.

Re:BBC open source their "Glow" Javascript library by manonthemoon on Thursday July 09, 2009 @04:39AM (#695480)
Of course the BBC should support screen reader users, and of course it should keep producing quality programming which could not otherwise be made.

This is not a matter of providing something people would otherwise not have access to. Safari 1.3 users would have been able to use the site without Glow, but their experience of it would have been a bit degraded. No doubt less so if a fraction of the time put into developing Glow had been put into finding the best ways to mitigate the page degradation. Safari 1.3 may have had its problems but it is essentially a capable rendering engine for the kind of page functionality the BBC uses. After all the BBC is hardly pushing the envelope for HTML & Javascript technology, nor does it need to in order to deliver its content.

I don't see that there is any serious business case for this amount of development to support this level of refinement for such a small group of users. The fact is that developers are in a luxurious position of following what appeals to their vanities rather than delivering value for public funds.

Someone mentioned the team was small. How many of them are contractors vs permanent? I bet they are not all permies. Even so, one permanent salary for two years is a heck of a lot of money to throw after a project replacing something which is 'good enough' and available for free.

Can you point to pages or features on the BBC site which, without the use of Glow, would render content inaccessible or completely unusable to Safari 1.3 users if jQuery had been used?

Re:BBC open source their "Glow" Javascript library by pbhj on Wednesday July 08, 2009 @10:19PM (#695085)
I don't want to broaden this too much, but you feel the BBC has to support Saf 1.3 with 0% market share because you don't want to force a software update on those 80 odd people whilst on the other hand transitioning to digital forcing a hardware change/purchase on the entire user base?? Seems a bit of a weak argument.

If indeed (as reading between the lines you appear to suggest) if a javascript framework needs to be hobbled to support screenreaders (good!) and obsolete browsers (bad!) then it may not be right to weigh in with one of the top frameworks. But you asked them first though right?

"More or Less" is great. But if commercial radio had a free-to-air program "Less or More" and the only difference was that you transmit at a frequency that's better for reception on crystal sets then I'd hope the BBC wouldn't bother but would add to the diversity of broadcasting some other way.

Re:BBC open source their "Glow" Javascript library by seasoup on Wednesday July 08, 2009 @02:39PM (#694396)
It seems like Glow is YAJSL (Yet Another Javascript Library). After looking through the documentation, it doesn't seem to provide anything that jQuery, Prototype, Dojo, Extjs or Mootools doesn't already provide.

Selectors, DOM Manipulation, Events, Ajax, UI Widgets. At least it looks like it doesn't extend js primitives or DOM elements like Prototype and Mootools. It's sad that the BBC is continuing along this path despite the original reason for it... browser support... being a moot issue at this point. The JS world would be better off if they abandoned their support of their internal library and instead focused on using, supporting, and extending one of the existing open-source libraries.

jQuery is so open to user development and its plugin architecture lends itself nicely to the BBC team being able to add any functionality they feel is missing. I hope they at least consider dropping Glow and taking up jQuery instead.

Re:BBC open source their "Glow" Javascript library by codepants on Wednesday July 08, 2009 @04:48PM (#694653)
As I read it, the point is less about providing more functionality than any existing library and more about tailoring the features that Glow does support to match the very specific requirements of the BBC. (If you happen to think some other library is a better match for your needs then I'm sure the folks at the BBC would urge you use it.) But what would happen if the BBC tied all its web apps to one of those third-party libraries and then that library suddenly announced they were dropping support for some minor browser or screen reader the BBC were mandated to deliver to? They'd end up having to maintain some parallel version modified to match their own particular needs. I hardly see how making the work they've done open source and free for everyone to use they're hurting "the JS world."
Re:BBC open source their "Glow" Javascript library by pbhj on Wednesday July 08, 2009 @09:50PM (#695050)
"if the BBC tied all its web apps to one of those third-party libraries and then that library suddenly announced they were dropping support for some minor browser or screen reader the BBC were mandated to deliver to?"

Do you really think that picking up support for an EOL browser would be more time/effort/expense than developing an entirely separate javascript framework? Even given that others using the framework would also be interested in maintaining support?

Re:BBC open source their "Glow" Javascript library by frazor on Thursday July 09, 2009 @08:18AM (#695681)
In the short term, what you are suggesting may seem to make sense, but with the sheer size and breadth of the BBC website and our business requirements, the longer term picture is completely different. It might take a few months for a couple of talented JS dev's to 'fix' an existing library to add in support for a minority browser for which the BBC has what it deems to be a 'significant enough' user base, plus add extra accessibility features, and screen reader support, etc, which that library doesn't support effectively enough. But that's not the whole story.

What will have happened there is that library will have been branched for the BBC and then that branch needs to be maintained long term such that updates and patched have to be vetted and tested across our whole site before applied so they don't break this backwards compatibility. That starts to become a lot of work.

Plus you also now need to take into account that its not the BBC's project, its somebody else's and the BBC is just using it. For a big company with its own set of business objectives and varied project needs, its a risk to be relying on someone else's product. Its much better for that business to be able to steer its own products and have consistency between them and their road maps.

Please don't get us wrong. We did very seriously consider our approach. Its not a decision we took lightly. We sat down and rationalised all the options, risks and factors. If we hadn't have had some seriously talented JavaScript developers working at the BBC at the time, the decision may have been made for us.

Re:BBC open source their "Glow" Javascript library by seasoup on Thursday July 09, 2009 @12:09PM (#696132)
The argument that its not the BBC's project doesn't hold water, you are using someone else's web server technology (Apache?), someone else's programming language (Java? So, Sun... now Oracle), another company developed the hardware, doubleclick to serve your ads, pulse for your surveys, why not also jQuery for your js library?

You also did not need to branch jQuery, as if you had contributed to it then screen reader support would already be in its core now, or available via plugins. The point is, that with libraries that are truly open source like jQuery, all that work put into glow could have been put into jQuery. No branching necessary.

If jQuery chose to drop support for a browser you felt was necessary, you could have simply not upgraded to the next version of jQuery or complain about it and offer to do the work to make it compatible with those browsers.

Plus you would have been benefiting from the serious testing that the jQuery team puts jQuery through. All that testing and bug fixing is work the Glow team does not need to do, or at least bugs that the Glow team doesn't need to fix themselves.

I've used jQuery as the example here, because I feel its the best choice, but Prototype, Dojo, Mootools, ExtJS, could have also been good choices, though only Dojo of the four has such open contribution to the core as jQuery.

On a side note, something you guys may want to look into is concatenating, minifying, and gzipping your js and css files. It could reduce the js/css file size and number of http requests by as much as 2/3 on your pages.

Re:BBC open source their "Glow" Javascript library by paulmorriss on Thursday July 09, 2009 @04:52AM (#695493)
You say we should use the library with the most features. What I want to do is pick a library for our organisation to use for the forseeable future. I can't forsee what features I will require in the future. I'm currently using JQuery because that's the one I hear most about.

Whilst it's very kind of you to give your stuff away, I think it makes life harder for those of us having to choose which Yet Another Javascript Library to use.