17 years at the BBC

Ian PORTRAIT at work

I never thought I would stay at the BBC so long but today its been 17 years.

I have talked many times how little the BBC impacted in my young life as a young black man in inner city Bristol, immersed in the underground rave scene. So won’t drag that up again, except to say that drive to change the BBC is still very much there.

What keeps me going? Being in a the research and development department is key for me. Its fitting with my personality and my ambitions for a better world. A world where public service can be the viable alternative to the surveillance capitalism and government surveillance. We need different models to keep each one honest, accountable and transparent.

Working with personal data stores, human values, decentralised protocols/systems, in a collaborative manor with the likes of Publicspaces, Mozilla, Nesta, universities like Lancaster, Nottingham, etc. Keeps me excited.

So here’s to another year, maybe one day it will be 20?

BBC R&D: We do things differently!

We do things differently at BBC Research & Development. We’re curious and bold with a collective passion for making positive change. We’re inclusive and diverse – as well as collaborative and open by nature.

Quite a different view on the place I work daily, BBC R&D. Vicky did a amazing job creating a fresh and challenging video. You can see why the last post about Brexit is a difficult one to write/imagine

The Business of Film with Mark Kermode

Mark Kermode and Ray Winstone

I have to give film critic Mark Kermode’s series about  the economic realities of the film industry, a thumbs up. Its in 3 parts and available forever as a podcast. Its well worth listening to if you are a film fan

Ep 1: Development Hell

Mark Kermode charts the cycle of ‘development hell’, where producers turn in scripts, listen to conflicting opinions and resubmit their work hoping for that magical green light.

I especially love the donnie darko reference and I do think Matthew Vaughn has a very good point.

Ep 2: Getting to the Screen

Mark Kermode examines how films get financed and distributed. The challenge, of course, is that nobody knows the ultimate appeal of the film.

I’m really feeling this as I try and put a project I’m working on forward (I’ll explain more in the future).

Ep 3: The Business of Showing

Mark Kermode considers the crucial moment in a film’s life – the opening weekend. Marketing may convince us of a film’s merit but a tweet can ruin even the most inventive campaign.

I’m pretty sure I’ve talked about this type of thing many times over this blog but its fascinating to hear regardless.

Client side development now?


As they say, Serenity now? Insanity later?

A couple blogs which sum up the current state of front end development it would seem…

Tim’s software in 2014 and Chris’ what sucks about frontend development.

First Tim,

The client-side mess · Things are bad. You have to build everything three times: Web, iOS, Android. We’re talent-starved, this is egregious waste, and it’s really hurting us.

JavaScript is horrible.
> [5, 10, 1].sort();
[ 1, 10, 5 ]

Et cetera. Thus Coffeescript and Dart and other efforts to route around TheElephantInTheRoom.js.

The browser APIs suck too. Sufficiently so that jQuery (or equivalent) is regarded as the lowest level that any sane person would program to; in effect, the new Web assembler.

And from Chris

managing JavaScript dependencies still sucks, and Bower has fundamental flaws that limits it’s utility

table designs are bad, so why are we re-implementing them with non-semantic class names? We should use our CSS frameworks to have only abstract classes that we make concrete by extending them with semantic class names. Also, progressive enhancement isn’t dead and still has value.

…I only feel these issues because I’m comparing it directly to other parts of the software stack rather than considering the front-end in isolation, but front-end development still feels very immature and like the wild west, rather than the engineering discipline we’re striving to be. We need to make it better.

I will admit its been a while since I’ve done any front end development but to be fair I’m also wondering if developers are taking full advantage of whats available to them? For example in my twitter stream I saw someone link to a post about SVG and DOM manipulation for icons. And finally…

More or less everything is expected to talk HTTP, and it’s really easy to make things talk HTTP.
Its easy to under-estimate how great this is, specially as we move towards coding for the mobile, offline, internet of things and exotic screens/devices. REST won out and who was stupid enough to bet against this? Oh yes… where are they now? Dead! Good riddens SOAP and other craziness…

Develop for the platform please

I have been tweeting recently a post which Sam tweeted a while back.

Reading it, reminds me of a quite major company asking me to try out their newly created Android app because they don’t actually have any designers or developers who ran Android regularly. Ok this was a good 3 years ago but still how the heck can you expect to create a Android app with no real understanding what your building for?

Worst still there were so many classic mistakes which clearly pointed to iOS developers just porting the app to Android. Simple things like pressing the menu button did nothing. The back button would take you right to start of the app again instead of a logical back step. There was no sharing button or option just a email this or post to FB/Twitter. The splash screen seemed to take forever and I always thought it was weird and out of place, all the other apps which have splash screens you can disable using a preference if they had one at all.

Syncing wasn’t a big deal in this case because it didn’t do anything so fancy but (if it did this little rant would count) boy oh boy the app went back to the developers and designers with a massive list of wtf’s…

I hate to say it but they lived up to the stereotype of designers being stuck in a bubble, this bubble was the iOS bubble.

As the writer writes…

You can argue about which is easier to use or more polished, but at the end of the day, iOS does not have as many features as Android and that means it should not be used as the “golden standard” that all apps are targeted for. Take advantage of the features and capabilities of a given device. If iOS has a better WebView, use it; if Android has better sharing support, use it. Don’t let a desire for the lowest common denominator harm your app.

In total agreement, yes I know its more expensive and requires more time, etc… but do a proper job otherwise your userbase will tell you exactly what they think by not installing your app. I think I said it before but developers this isn’t good enough sorry.

Shocking to think it was the BBC News app!

The rainforrest will dry out if you don’t let it grow into the open

The Apple iPad

Everyone is talking about Steven Johnson piece in the New York Times titled Rethinking a Gospel of the Web. Steven Johnson a very good author of some fine books and clever guy generally, is starting to question if open platforms is not a technological-utopianism.

FOR about a decade now, ever since it became clear that the jungle of the World Wide Web would triumph over the walled gardens of CompuServe, AOL and MSN, a general consensus has solidified among the otherwise fractious population of People Who Think Big Thoughts About the Internet.

That unifying creed is this: Open platforms promote innovation and diversity more effectively than proprietary ones.

In the words of one of the Web’s brightest theorists, Jonathan Zittrain of Harvard, the Web displays the “generative” power of a platform where you don’t have to ask permission to create and share new ideas. If you want democratic media, where small, innovative start-ups can compete with giant multinationals, open platforms are the way to go.

I’ve long considered myself a believer in this gospel and have probably written a hundred pages of book chapters, essays and blog posts spreading the word. Believing in open platforms is not simple techno-utopianism. Open platforms come with undeniable costs. The Web is rife with pornography and vitriol for the very same reasons it’s so consistently ingenious. It’s not that the Web is perfect, by any means, but as an engine of innovation and democratization, its supremacy has been undeniable.

Over the last two years, however, that story has grown far more complicated, thanks to the runaway success of the iPhone (and now iPad) developers platform — known as the App Store to consumers.

He then lists what he sees as the successes of the appstore, iphone platform.

More than 150,000 applications have been created for it in less than two years, transforming the iPhone into an e-book reader, a flight control deck, a musical instrument, a physician’s companion, a dictation device and countless other things that were impossible just 24 months ago.

Hold on a second, this is also true of other platforms like windows mobile. Yes there hasn’t been 150k of apps but I’ve seen all type of things developers for windows mobile have done.

The decision to route all purchases through a single payment mechanism makes great sense for Apple, which takes 30 percent of all sales, but it has also helped nurture the ecosystem by making it easier for consumers to buy small apps impulsively with one-click ordering.

Agreed but I think a open system could also have benefited some very interesting payment and delivery models. Up till recently Bluetooth transfering of apps and media was huge but with the apps store everything has to go through a central server, how else will apple get there 30%?

And I think this is the point, an open system gives you the freedom to get really creative.

Apple could certainly quiet a lot of its critics by creating some kind of side door that enables developers to bypass the App Store if they wish. An overwhelming majority of developers and consumers would continue to use the store, retaining all the benefits of that closed system, but a secondary market could develop where more experimental ideas could flourish.

But whatever Apple chooses to do with its platform in the coming years, it has made one thing clear: sometimes, if you get the conditions right, a walled garden can turn into a rain forest.

I will be the first to admit Apple have done a good job with the illusion of freedom, its a bit like dark city where people forget there is a daytime and how to get to shell beach. Few people rub against the sides of the rain forrest or the dark city. However this illusion is only sustainable for so long.

Even those who bought ipads and tried to use them on the way home noticed the lack of ability to be used till synced with itunes on a laptop. Theres also something Apple did in there recent announcement about iphone software v4 development. New iPhone Developer Agreement Bans the Use of anything but there own software to build software for the appstore.

Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

So something like Adobe’s Flash-to-iPhone Compiler is completely out the window. As you can imagine this has outraged developers and pissing off developers. This has to be like poking in the eye of each one of the great apes, its just not what you want in a rainforrest, unless you want chaos. Or back to the darkcity analogy, John Smith is working things out. And finally Apple’s idea of one device for everyone is now just a theory,

The fact that the iPhone platform runs exclusively on Apple hardware helps developers innovate, because it means they have a finite number of hardware configurations to surmount. Developers building apps for, say, Windows Mobile have to create programs that work on hundreds of different devices, each with its own set of hardware features. But a developer who wants to build a game that uses an accelerometer for control, for example, knows that every iPhone OS device in the world contains an accelerometer.

The iphone 3GS has different features to the ipod touch 2nd generation. Not only that but some generations will now have the iphone 4th generation software with all those extra apis and older phones wont. Same for the ipod touch, some will some won’t. Throw in a ipad with its already different screen size, cpu, etc then give it different software based on when the upgrade comes out in the world. Yes this is sounding a lot closer to the Windows Mobile world than Steve Jobs would care to admit. From my understanding by Christmas this year, there will be 2 types of iphones running v4 software, ipod wise, 1 v4 and 1 v3. throw in a Ipad and who knows what happens when the Apple TV joins in on the fun? Theres no doubt that Apple will tie the AppleTV to the rainforrest in someway and apps will make it on the platform at some point. Goodness knows what specs and capabilities that device will have, lets alone what software platform?

Nope shame on you Steve Johnson for falling for this trap (its a trap!) Open systems are better, there just unpredictable and when your worried about the stock price, this is would be off putting.

Jonathan Zittrain of Harvard and the book I’ve been shouting about the future of the internet is right, the Web does display the “generative” power of a platform where you don’t have to ask permission to create and share new ideas. If you want democratic media, where small, innovative start-ups can compete with giant multinationals, open platforms are the way to go.

Is Design really seedy?

Blackbelt Jones wrote this great post about Seedcamp and the lack of design involvement.

From the Seedcamp about pages:

“There will be a diverse mentor network of serial entrepreneurs, corporates, venture capitalists, recruiters, marketing specialists, lawyers and accountants that will help the selected teams put together the foundations of a viable business.”

How about designers?

Technology plays alone are starting to lose their distinctiveness in many of the more-crowded areas of the marketplace.

Great service and interaction design are on the rise as strategic differentiators for products as diverse as the iPhone and Facebook.

He's right, The only thing desiresable about the iphone is the interface, the technology is under powered or frankly from 2005. Thankfully its not all bad.

The line between hackers and interaction designers is blurring as they start small businesses that are starting to make waves in the big business press.

As I mentioned, my experience of HackDay Europe was that

“It really does seem that the hacker crowd in London/Europe at least is crossing over more and more with the interaction design crowd, and a new school of developers is coming through who are starting to become excellent interaction designers – who really know their medium and have empathy with users.”

This reminds me of my made up position name while at Ravensbourne, Designer/Developer. At the time I design was far too form based while development was far too programming based. Web designer meant you created HTML pages, Information designer meant you didn't actually touch any data or apis and Interaction designer meant you were too focused on art, hanging out in Hoxton and convince your clients they were always wrong. Things have changed for the better. The grey area between design and development
has been intersected by a 3rd force the hacker. So now you get pursuits like hardware hacking, alternative reality games, product user interface hacking. The fact is that its not about the titles, its about what vision you have in your head and how much effort your willing to put in to it.

Business-wise I think we have yet to see what affect the greying of design, development and hacking will have on startup culture.

Comments [Comments]
Trackbacks [0]

My current development setup

I was asked today, what kind of setup I use for developing web applications. I tried to explain but failed because of the lack of common development tools and services. So I thought I'd try and blog it instead.

On my desktop I run,

  • XMLSpy 2005 Home Edition (discontinued the free version I think. Might switch to Oxygen XML soon)
  • Notepad++
  • WinSCP
  • Putty

On the server I run,

I tend to do lots of stuff in Cocoon and am slowly starting to use ZK for my front end display. Cocoon is perfect for the plumbing and ZK means I don't need to screw around with Javascript and DOM scripting. If I was deeply into the Ajax stuff, I might not need ZK but frankly I don't have the time.

 Yeah its very odd but it works for me.

Comments [Comments]
Trackbacks [0]

A XSL transformation mindset

Someone asks on Metafilter.

When you imagine XSLT transformations happening in your mind's eye, what does it look like?

Its a really good question and opens up a whole range of thinking about the differences in peoples thought processes. So first Jeff talks about the question.

This is a very powerful question to ask, because ancient, procedurally oriented developers like me sometimes have trouble following the non-linear, pattern-driven processing that takes place when an XSLT template is applied to a tree of XML elements. In fact I have noticed that non-developers sometimes have an easier time with XSLT than do experienced developers, because they don't try as hard to figure out what is happening beneath the covers.

I would kind of agree with that statement. Theres something about XSL and XML which just makes sense in my head. I'm not from a traditional software or computer science background, so I still find it weird to be called a programmer by some of my peers. John wrote this fantastic comment.

My first project with XSLT a few years back was to actually generate XSLT *from* XML and XSLT and forced me to break my ideas of how it worked. When I finally got the whole “it happens all at once” approach, it started to make sense. However, every programmer that I've brought on board to an XSLT project since has had trouble getting out of the procedural thinking and that ends up being the biggest source for their mistakes.

Unfortunately, like MagicEye images, some people just aren't able to unfocus their minds in the right way to really grok XSLT beyond the simplest examples.

I have heard of programmers comparing XSLT to Prolog and even Lisp, I'm not sure how true this is but its certain that you can't approch XSLT in a regular way. Recursion is one of those things which seems to drive people mad. In XSL there's a lot of recursion and declaration which seems to fit the way I think. I always wanted to create a SVG of a XSLT process. So you can see in lines and boxes what templates are being called and add some kind of dimension to XSL. I'm sure its not that hard and even my experiements with transforming Cocoon's Sitemap file into SVG didn't require too much work. Talking about recursion someone posted this nice animated gif of how it all works. There's no douht that XSL requires a different mindset and working with a programming language like Java or Perl will be more of a hinderance that an advantage.

I posted this question to a few of the XSL developers I know and got a variaty of answers. In my own mind I see lots of lines and trees which get broken into branches

Comments [Comments]
Trackbacks [0]