Red Badger – Developer Insight
Back when Windows Phone 7 was new on the smartphone scene the choice of Twitter apps was limited. Birdsong was one of the most interesting clients of the time, it was 100% accurate in getting the aesthetics right for how an app should look and work on WP7. Making good use of smooth scrolling, panoramic slide overs whilst embracing the best feature of Windows Phone, Metro.
At the time Birdsong was innovative, indeed Red badger became a poster child for how Metro style apps should look and feel, receiving praise from its users and even Microsoft. I wanted to catch up with the team and see how their start-up is going and what brought them back to re-kindling development for Birdsong. I met with one of the founders, Cain Ullah and Red Badgers newest team member, Joe Stanton to see what’s happening...
Robert: Okay, let’s kick things off, tell us a bit about Red Badger.
Cain: Red Badger was founded in May 2010, so we’re just a little bit over two years old & was formed by three directors that are all ex Conchango people after it was bought by EMC. We’re building up a consulting business, primarily doing client services for organisations such as News International, BMW & the German government. Our long term goal is to become a product company but that’s something we can’t really discuss at the moment for obvious reasons.
Robert: Joe, tell us a bit about yourself.
Joe: I applied for an internship with Red Badger about seven or eight months ago after seeing a vacancy on their blog. I completed their programming challenge which then lead to an interview at their St Pauls office, from that I started part time for a few hours a week. This was whilst I was in my 2nd year of my degree, since then Red Badger have offered me a placement for a year after which I will then go back and finish off my degree in computer science.
Cain: Joe represents quite a long term investment for us as he won’t be joining us permanently until 2014.
Robert: What programming are you mainly focused on in your degree?
Joe: Mainly its Java based at University, although I did allot of .net stuff in my spare time which is what mainly gave me the chance to get on board with Red Badger.
Robert: So how are you finding developing for Windows Phone, especially interested to know how you’re getting to grips with the Birdsong codebase as it’s essentially a fully baked product.
Joe: Initially it was a little overwhelming, with allot to get my head around. Stu & Dave have lots of great experience and they have designed the app really well. But the app itself has over 1000 different specs which are run through tests every time we change some code, that’s one of the reasons everything within the app is smooth and fluid, its properly unit tested. We run with a “test first” style development which leads to a much more stable codebase, meaning any code release should be more reliable.
Developing for Windows Phone, there are two sides to the coin. On one side it’s very natural, it’s all .Net so very familiar due to it being within Visual Studio which is really good. The other side though there are times where there is a noticeable lack of tools, perhaps due to Windows Phone being a less popular platform than others. For example we do continuous integration to a build server which takes any code changes, builds them & runs all the tests, this is very difficult to get setup with Windows Phone libraries, partly because it’s not been done that much before or it’s certainly not been blogged about that much. But overall it’s quite nice to develop for.
Robert: So is it only Joe who’s developing Birdsong?
Cain: No its Joe and another developer Jon, working on it at the moment. Dave, the original architect is overseeing those two but as he’s the Director he’s very busy with other projects so isn’t actually developing on Birdsong.
Robert: Whilst a great app, Birdsong has since had its technical lead eroded by more recent Twitter clients, all of which started with a similar feature set. They now have both more features and more market share which no doubt has been achieved through their rapid incremental updates. What are your thoughts on where Birdsong would be now had it maintained its technical lead in the marketplace?
Cain: Firstly we love Birdsong, it’s our pet project and it’s got a good following, it has been neglected due to our client commitments. As an example our company makes in a day what Birdsong has made us in two years, so Birdsong is very much our pet project.
I still think that Birdsong has a brilliant UX, it’s probably one of the fastest apps for scrolling performance out there. Sure, there are some key features missing like auto complete and remembering where you are in the timeline etc. So if it was as feature complete as all of the other competitors then I think it would have a very good chance of still being the #1 premium twitter app on the platform. We designed Birdsong so it’s all BDD driven, (behaviour driven development) which is like test driven but written in a layman’s language.
Joe: So it’s in terms of the user rather than in terms of the program. For example “when I hit this button, this happens” rather than programing language you should be able to read those specs like plain English and it should tell you story of how Birdsong works.
Cain: It’s been done in that way so that we can bring in someone like Joe and use it as a training tool as everything in Red Badger is made this way. We have resurrected Birdsong development as a way to get Joe up to speed with the correct engineering practices for Red Badger, this forms the primary use for Birdsong at the moment.
Robert: Have you maintained a good relationship with your Birdsong users, any insights you wish to share on that, have you still got a dedicated userbase?
Cain: I think so, yeah. We definitely saw allot of requests when the authorisation issue with Twitter popped up and for the push service not working. Most of the complaints we see from support are around the push, we really want to see that fixed. Once that’s fixed it will be much easier managing support for our users.
Robert: Do you see a problem with Windows Phone and how it deals with push notifications?
Joe: In the tests that we have done it’s about 30-40% reliable, so even building the best push service in the world at the backend means relying on the accuracy of the Microsoft Push Network. Even if we’re 100% accurate the MS push is only 30-40% accurate, we haven’t really spoken as yet to Microsoft about that so maybe there are things we can do to improve that. But from what we have found so far it’s not all that reliable, making it unpredictable when developing against it and difficult to debug. So that’s our challenge.
Robert: Thoughts on Windows Phone 8 & Windows 8?
Joe: In terms of Windows Phone 8, we’re not going to know anything for a while on development for WP8, it could be completely different. We don’t know how well apps will scale to the new form factors, Birdsong is certainly architected to work on different form factors very well.
In terms of Windows 8 it’s a really interesting product, whereas WP7 doesn’t have a big userbase Windows 8 will likely be huge so for us it’s going to be very important to have a presence there and think we can do something with the larger screen sizes and bring a great experience to it.
Microsoft have changed some big things with Windows 8 UX, like things being done as horizontal scrolling rather than vertical, everything is touch first but equally we need to develop for mouse and keyboard. We see allot of opportunity to do good things with it. I think it’s a good direction Microsoft is going in and it will be a really good experience given enough time.
Cain: I think that Windows Phone 8 might upset people that currently have Windows Phone 7 due to MS essentially changing the codebase. I think it’s the only move Microsoft could make to make the codebase the same as Windows 8. Everyone that uses Windows Phone 7 loves it apart from a few niggles. I see Windows Phone 8 as analogous to Xbox v1 to Xbox360 in terms of penetration in the market, in a way this could be make or break for Microsoft.
Joe: Now they have the Metro user interface across Xbox, Phone & PC, so consistent interface, consistence codebase, if it is really consistent it will certainly make developers lives allot easier.
Cain: That is a big question, if it will be consistent.
Joe: Well they have tried it before with .net but there are a number of issues with plenty of API’s being available on one but not on another platform. So if they do this, it has to be done properly & if it is truly unified, and you can use just one codebase with different interfaces for your app then that will be really good for Microsoft.
Cain: One of our clients has apps they are building for iPad & android tablets, there’re not interested in Windows Phone 7, they don’t have a penny of budget for developing an app for it. Conversely they know that Windows 8 will be everywhere so they have set aside budget to build similar apps to what they have on the iPad. Windows 8 is going to be bundled on every desktop & laptop PC sold, but will be interesting to see how successful Windows 8 is on Tablet.
Rob: Lets touch on the WP7.8 upgrade and WP8 not getting back ported to WP7 devices.
Joe: Sooner or later you have to shed legacy stuff so you can move forward and create new products, experiences and innovate, I’m holding out now for a Windows Phone 8.
Cain: Regardless of WP7.8 I will just get a WP8 anyway.
Robert: So you’re planning on a Windows 8 client, tell me more..
Cain: When we’ll do it we’re not sure but some of the UX has already been done, we have a Win8 Tablet, from Microsoft. We have a big client project starting in four weeks so the guys on Birdsong have four weeks to get push fixed before we work on that.
Joe: The next thing is to get push working as that will feed directly into the Windows 8 client, due to it being more like Windows Phone it’s got strict requirements for battery saving so apps don’t run in the background anymore so it means you do need a push service to do what a desktop app would have done just by running all the time.
Cain: The Windows 8 version of Birdsong will now take precedent over the WP7 version for the time being because we are unsure what the app experience will be like for ported WP7 apps on WP8. Once we know what they will be like on WP8 we can decide what to do concerning future development.
Thanks Cain & Joe for your time, I certainly look forward to the prospect of seeing a Birdsong Client for Windows 8 and would hope that the experience will feedback to the Windows Phone platform at a later date.
Pick up Birdsong Twitter client here in the Windows Phone Marketplace.