I was given the chance to order a new work phone recently and whilst I could’ve upgraded from the iPhone 3GS to the iPhone 4 I decided to make the jump to Android with a shiny new Samsung Galaxy S2, I’ve still got the iPhone for testing though so I’ll be jumping from one to the other. Having been a long term iPhone user it does feel somewhat like a switch to the dark side but if I’m going to design Android apps I’m going to have to understand the good and the bad parts of both platforms.
One of the most important considerations when designing mobile apps is the user’s expectations and that varies considerably from one platform to the next and despite their differences iOS and Android are comparable platforms, much more so then Windows Phone 7 or Blackberry. Both Apple and Google have created thriving downloadable app ecosystems that together are fast becoming the platform of choice for the modern smartphone, I’m confident Windows Phone 7 will become a major player in the space but there’s a long way to go before it gets there – as for Blackberry and HP/Palm – who knows?
So now to the results of my little experiment, in this post I’ll focus on the features and capabilities that I like about Android and whilst I will cover the things I don’t like, this is not a rant for or against either platform, it is intended to be as Bill O’Reilly beautifully puts it without a hint of irony: “fair and balanced”.
The best features…
The “back” button – at first it seems redundant to have a hardware based button for just one purpose but once you get used to it you realise how handy it really is. Every time I go back to the iPhone I end up in a situation where I find myself bailing out of an app when all I really meant to do is back up a step, everyone that owned a Sony Playstation or PS2 will know how natural it felt to always use the triangle button to go backwards and I really do find I miss it when I’m on the iPhone.
The pull-down notifications bar – this may well be more of a Samsung customisation but the top status bar can be pulled down like a roller blind to reveal some quick key settings (turn on/off bluetooth, Wifi, GPS) as well as showing notifications such as apps needing updates, new emails, push messages, etc. It’s a brilliant way of accessing those features without compromising on screen real-estate.
Swype – if you’ve not come across Swype already you have to give it a try, it is an alternative keyboard where you type words not by tapping each letter but by drawing lines between them. This might sound a bit odd and it is at first but once you get up to speed it really is a delight to use. The main issue I have is that whist you’re in the middle of a sentence and you’re flowing nicely from word to word if you suddenly hit a word that Swype doesn’t recognise or isn’t in the dictionary your entire flow is broken and a hole is punched straight through the fourth wall of user experience. As soon as you have to start thinking about what you’re doing it’s game over in UX terms, something Apple have turned into an art form and most find hard to emulate.
‘Front Screen’ and ‘Back Screen’ applications – the iPhone has a ‘desktop’ and you’re stuck with it, sure you can have folders but even they’re a little limiting and I find myself completely unable to organise my apps in a way that makes sense. Android on the other hand has a distinct separation between the ‘desktop’ where you can have both apps and widgets (time, calendar, twitter, etc.) and the full list of apps, this makes it easy to de-clutter the main screens of your phone but you’re only ever one click away from your entire app library.
The bad parts…
Massively modal menus – I really, really, really don’t like the way that most of what you might call ‘right-click’ actions bring up giant, screen-filling menus from which to choose options. For example, if I’ve opened an email and I want to mark it as unread I have to come back up to the inbox, hold my finger on the email for a second or so then the screen is filled by a giant ugly menu (with plenty of dead-space) from which I can choose to mark the email as unread. On the iPhone if I’m reading an email I’d just press the “Mark Unread” button. No really, that’s it.
General flakiness – it’s hard to qualify this exactly but I’m referring to the many times where I’ve tried to do something and received some weird obscure error message and thought “oh well, that didn’t work then” without knowing why or what to do instead. As an example when I first started playing with the phone I bounded like an excited puppy towards the Android Market, I signed up for an account and picked up a few freebie apps before deciding I really had to have Nmap so I clicked to buy and got the message: “A server error has occurred”. After a little Googling around I finally determined that the cryptic “server error” was just because I didn’t have my card registered in Google Checkout – why couldn’t it have just told me that in the first place? Issues like this really make me think that Google just doesn’t “get it”, at least not yet.
Text selection – again it’s hard to describe but in a nutshell – it’s horrible, I almost never end up putting the cursor in the correct spot and about a third of the time I end up opening a modal menu where you can copy and paste (it works but it’s clunky not very intuitive).
Security – I’ll start by saying that I’ve not personally had a bad experience of security on Android but I know there are plenty of known instances and I can’t help feeling a little ‘ooky’ about download strange and unheard-of apps knowing that anyone could have put them into the Android Market and they didn’t have to go through any approval process.
The hardware…
The first thing you notice upon seeing the Galaxy S2 in the flesh is the size of the screen, it’s big, it’s bright and it’s enormous – brilliant for watching movies or taking advantage of the bundled BBC iPlayer app. The downside to that huge screen is a pretty poor battery life, once you get used to charging it regularly it’s not too much of a pain although there will be the odd time where it doesn’t last a day (my worst was 6 hrs) which gets old quickly. The camera boasts an 8 megapixel resolution but has such a poor low light performance that it’s all but unusable indoors or on a rainy day, definitely not a point-and-shoot replacement for sure.
I don’t mean to be down on the Galaxy S2 though, I thoroughly enjoy having it with me and for cross platform apps I tend to choose it over the iPhone since the bright and beautiful screen really makes the content stand out. Another plus is that despite the screen size the phone itself is relatively light and thin and doesn’t sit awkwardly in the pocket as you might think.
Conclusion…
There are plenty of things to love about the Galaxy S2 and I honestly think that if you’ve never owned an iPhone you’d pick this up and be pretty happy with it but switching from iOS to Android still feels like a step backwards to me. There’s a reason why more iPhone users pay for applications (
here) and why more iPhone users make use of apps and the web (
here) – it’s because iOS provides a simple, pleasant interface and like a good movie soundtrack adds to the experience without every really coming to the user’s attention.
Despite my lukewarm reception I do like Android, as a technical user I do like being able to run apps like Nmap, wifi scanners, penetration testing software and so on but as normal user I think it’s got some way to go before I’d put it on a par with iOS. In the long run I’m sure it will get there – the open nature of Android almost guarantees it, we’ll be seeing plenty of phones, tablets, TVs, cars, set-top boxes and fridges running Android over the next few years and I expect that from 4.0 onwards we’ll start to see the platform mature both in feature-set and user experience design.
I’ll be keeping my Android phone and if I were to choose a handset again right now I’d still choose the Samsung Galaxy S2, I look forward to seeing where this thing will take me.

It’s always a risk upgrading to a brand new operating system and clearly so on the day of release so why have I done it? Because I’m insane? Because I’m an Apple fanboy? Not really (though maybe a little bit of both), I’ve only upgraded my laptop which isn’t really used for anything overly critical so I’m free to have a play and chase down the gremlins before upgrading the development boxes and production hardware.
So, on to the meat and potatoes of the post – is it any good?
The Good Bits
- File Vault 2 – now with whole disk encryption, a must for road warriors and anyone whose laptop is regularly out of the house and clearly missing from previous versions.
- Mail – I’m loving the favourites bar in the new mail app and the conversation style view is pretty slick without being annoying – a UI that adds to but doesn’t dominate the user’s attention.
- Dashboard – I couldn’t say quite why but I used to find the old dashboard irritating, the new one seems better but only time will tell if I actually use it.
- Calendar – oooh it’s pretty. That’s not a reason to love it but it is pretty, it may sound kinda wooly and like one of those things that PC users hate but it just feels nicer.
- Full Screen Apps – I was skeptical and to some degree I am still but when you go full-screen the apps really do look nicer and it’s especially handy for reading PDFs in Preview.
- Quicktime - exporting the audio portion of a video is a great feature and something I’ve often needed to do. The ability to make screencast recordings is brilliant, coupled with the trim feature and instant sharing to YouTube and Vimeo just makes it so easy to produce quick tutorial videos.
- Electronic Distribution – you might think this is a lame pick but downloading from the Mac App Store just worked and it’s clear to me that it will be the future of software distribution.
Where I’m Nonplussed
Sure, there’s a whole load of shiny in Lion but there are a couple features that I’m underwhelmed by, namely…
- Launchpad – provides an iOS style application launcher but whilst you can make folders by dragging icons on top of one-another you can’t rename the folder whilst double-clicking and you can’t drag a folder to the dock. It’s one of the few examples of Apple UX design where I’ve found that what feels natural doesn’t work.
- Facetime and iChat – having both never made sense and solidfying this in the new release makes even less.
The Bad Bits
On a new upgrade there will always be a few third-party apps that won’t work and in this Lion is no exception, so far I’ve only had trouble with the LastPass plugin for Safari but the FireFox version works just fine so it’s no biggie – I’ll update the post if I find anything else but you should check out the community compatibility wiki at roaringapps.com.
Overall I will say that the new look and feel is a tad blocky, I suppose I’ll get used to it but it does seem a little bit 1994. The additional UI tweaks also push my old black MacBook a little close to the edge performance wise, the fans seem to be running a little more often than they used to do.
Recently I’ve been working more in the smartphone world than in BI and SQL although for the time being at least I’ll be doing a bit of both so you’ll probably see more mobile app related posts in the feed. In order to provide some degree of separation I’ve created a Mobile User Interface Blog at usabl.net which contains links and screenshots of interesting designs, though any longer more technical articles will still appear here.
If you’re wondering what the crossover is between mobile apps and Business Intelligence it’s all about the user experience, in BI you generally aim to give people the information they need as quickly and efficiently as possible not necessarily in terms of software performance but in report design. I’m not the only one that’s thinking along these lines, Jen Stirrup gave an interesting talk on Data Visualisation at the inaugural SQLHerts meeting and if you’re interested in either topic you’ll most likely be able to catch both of us at the next meeting on July 28th at the University of Hertfordshire (register here).
I’ve been doing a little research into how best to manage the whole iOS Development / Ad Hoc Distribution (UAT / beta) / App Store (prod) lifecycle and whilst I’m not quite at the stage where I’m ready to write-up a workflow document I’ve come across some useful resources that I thought might be worth sharing. Since all compiled iOS apps must be signed there are some extra considerations when compared to rolling out regular compiled or interpreted code, sure you can brute-force your way through the process (I did this for my Veggie Phrases app) but that can only ever work well when you’re a one-man-band developing apps for your own purposes.
If you’re developing apps for clients or have a distributed development / testing team you’re almost certainly going to think a little more carefully about how you manage keys, certificates, provisioning profiles, App IDs, bundle seeds, bundle identifiers and so on. There’s not much structure to this post since it’s just a ‘what I’ve found so far’ effort but hopefully the resources might prove useful…
I’ll start with what is probbaly the best piece of Apple documentation I could find: the iTunes Connect Developer Guide. After banging my head against the desk trying to get Veggie Phrases onto the App Store it’s the document that made all the pieces fall into place, athough it’s a pretty high-level overview.
Antonio Holguin has written an excellent post: Apple iOS Development Process Summary which explains the whole end-to-end process in depth. It’s not for the faint-hearted but it answered a lot of the questions I had where I’d found the rest Apple’s documentation lacking (please correct me if I’m wrong, perhaps I’ve just not found the best bits?).
Benjamin Ragheb has put together his thoughts on iPhone development best practices, again this provides a lot of deep explanation and will help you get your head around the issues.
Diary of a Code Monkey has a complete walkthrough of the Ad-Hoc App Distribution process with XCode 4, a simple step-by-step process for Ad-Hoc rollouts.
If you need to write applications that share Keychain Access there’s some useful information on UseYourLoaf.com, even if you don’t need to do this it will help understand how to use Bundle Seed IDs correctly.
Another challenge with iPhone app development is how to distribute applications to remote testers and how to conduct a beta / trial without going via the App Store, thankfully TestFlight solves this by providing a simple way to gather device UDIDs and distribute the Ad Hoc executable over-the-air. The service is clearly evolving and it currently does a very good job of what it does but seems to be suited to small-scale development and lacks some of the features that a corporate development team might need (audit trail, alerting, security hierarchy).
I’ve also come across the iOSDev UK Conference which may be interesting, I’m not yet sure whether I’ll attend since I’m only a casual developer but some of you may find it worthwhile.
Well, I hope that helps people, if anyone has suggestions for additional resources covering process management, workflows, etc. I’d be glad to hear it.
Who’d of thought it – it’s early April and I’ve come back from a SQL Server technical conference with sunburnt arms and a smile on my face. Usually when I tell people that I’m going to a Microsoft SQL Server conference they sarcastically say things like “have fun”, or “rather you than me” and when I tell them that it also runs into Saturday and that I’m not even getting paid for it they’re even more incredulous. I can understand the attitude since on paper it sounds like a rather dry affair but nobody that’s ever attended a SQLBits event would ever agree with that sentiment because it’s the strangest thing, somehow against all odds the SQLBits organisers have built an event crammed full of technical talks from some of the leading lights of the industry and they’ve also made it fun. The craziest thing of all is that the Saturday ‘community day’ is also completely free and with over 40 talks it’s every bit as good as the the paid days, couple that with the prizes and other swag on offer from the sponsors and you can’t fail to walk away better-off than you went in!
Friday’s keynote was delivered by Microsoft’s Mark Souza and gave an insightful rundown of some new features coming in the next release of SQL Server codenamed Denali, there were some interesting High Availability and Disaster Recovery (HADR) features, a new Column Store styled index, the new data visualisation / dashboard tool Crescent as well as some additional enhancements that sound minor but will probably yield a large benefit (Windows Core support, Contained Databases, FileTable). Also sharing the stage with Mark was David Flynn, CEO of Fusion-IO who gave a short but interesting overview of their ioDrive product which can provide amazing performance increases by moving IO bottleneck from the SAN onto NAND Flash directly attached to the PCI Express bus – though some nearby graffiti (pictured) showed that there’s still some loyalty to old storage media!

My top talks of the weekend included Jamie Thompson‘s session on SSIS Performance and Vincent Rainardi‘s talk on Advanced Dimensional Modelling but my ‘best of show’ goes to Martijn Evers’ talk on Data Vault – a data modelling technique that complements use of the well established Kimball and Inmon approaches to data warehousing. I took a lot of useful hints, tips and tricks away from many of the talks I attended but the Data Vault talk gave me something much more valuable – an entirely new idea, something I’d never heard before but will make me think about data modelling in a slightly different way. It’s the inclusion of these satellite topics (i.e. not directly related to SQL Server) that really makes SQLBits stand out and one of the reasons I keep coming back. Aside from the talks my other highlights were sitting on the beach eating lunch and getting my first go on the Xbox 360 Kinect!
It’s worth mentioning that the entire event couldn’t happen without the sponsors and in particular I think a lot of good will should be shown to Microsoft. Windows users tend to see them as a giant corporate entity that they never get to interact with but somehow it’s different in the SQL Server product team and they make a lot of effort drafting in some of their best people including Thomas Kejser, Ewan Fairweather, Lubor Kollar, Mark Souza, Connor Cunningham and Andrew Fryer (who completely schooled me on Kinect boxing). Many of these guys fly in from the US and of course Microsoft can afford it but the point is that they don’t make a big deal out of it, these guys run sessions and wander around conference offering support to anyone that asks – where else do you get that?
There’s nothing quite like listening to a talk from someone who’s utterly engaged in what they do and wants to share the information with others and that’s what SQLBits is all about so if you’re a SQL Server developer or DBA you just have to go, it’s that simple but if even you’re a .NET developer or work with other database and BI products it’s well worth attending – for now I’ll look forward to seeing you all at the next SQLBits.
Today I attended the SAP BI 4.0 launch event at the Royal College of Physicians in Regent’s Park London, the first major launch event for Business Objects since being firmly under the SAP banner lending it a degree of expectation amongst the BO user community. With all said and done the day had a slightly unusual structure, interleaving the “new features” sessions with “the future of BI” and “other interesting stuff” talks so the remainder of this post covers the main themes of the day and the “big picture” topics whilst I’ve broken out the new features into a “What’s New in Business Objects XI Release 4 / SAP BI 4.0?” post.
The morning’s main talk came from SAP’s Technology Evangelist, Timo Elliott (for those of you from the SQL Server world think of a cross between Brent Ozar and Andrew Fryer) who delivered a punchy and informative overview of the ‘big ticket’ enhancements coming in 4.0. The main themes of Timo’s talk an of the day in general were the forthcoming enhancements in the Enterprise Analytics space including the recently acquired Column-Oriented data store Sybase IQ and AP’s latest iteration of In-Memory analysis, HANA (High-performance ANalytical Appliance). HANA will run on hardware from vendors such as IBM and HP with upwards of 1TB RAM and sit between SAP BW and other large data sources providing lightning-fast (up to 350x faster in SAP tests) though later iterations of HANA will all-but replace the current storage engine behind SAP BW (planned late 2011) and ultimately will replace the entire data storage infrastructure behind SAP’s ERP systems and potentially other third-party applications.
Timo’s enthusiasm for these new technologies clearly showed and having been in the industry (and the company) for 20 years it’s worth noting that he described the advent of large-scale in-memory analytics as a “once in a decade” leap in capability and for Enterprise-class organisations I’m quite sure it will be but having worked in much smaller companies I’m somewhat sceptical about how much of an impact it will make at the lower end of the market.
Another major theme for the day was the advent of Analytic Applications, essentially packaged BI and Data Warehouse products pre-built for specific industries (e.g. Healthcare, Retail, Manufacturing) or for departmental purposes (e.g. Finance, HR). Demoed by Jeff Veis and Andy Hirst, these applications are presented as a series of dashboards but since much of the underlying KPI definitions and data architecture are already built they can reduce implementation time to as little as 12 weeks vs. 6-9 months for a ‘from scratch’ implementation. It’s easy to be sceptical about this as we all tend to believe that our problems are unique but each application is focused so closely on a particular industry/department that even if they’re only able to meet 70% of the core requirements out of the box the simplicity and reduced timescales ought to be well worth the sacrifice, especially since they’re customisable after the initial setup.
The third major theme of the day was Data Quality, in fact in addition to the session on Information Steward by Barry Dodds and Dave Pugh four other speakers made a point of telling the audience that everybody in the room had data quality problems – it’s probably true but I couldn’t help feeling a little nagged by the end of it all! The tool itself seemed very capable and for a DQ application it was remarkably visual and included dashboard-style elements (to paraphrase Barry) “using analytics to improve analytics” which despite being a cool soundbite is a actually a very sensible approach to take.
Also announced was the new Complex Event Processing engine Event Insight, essentially these CEP engines (like Microsoft’s StreamInsight) take an incoming stream of events in real-time from operational systems and provide monitoring and alerting capabilities as well as processing for more traditional reporting and dashboarding. Additional products mentioned but not thoroughly explored were a collaboration tool sapstreamwork.com and a new unstructured text processing engine that is able to parse free text such as Twitter feeds and provide “sentiment analysis” as well as tagging various context indicators including geography.
Roadmap wise we were told to export more along the lines of Pervasive BI, Big Data, Social / Collaboration and more in the Mobile BI space. On the latter we should expect enhancements to the existing Business Objects Explorer mobile app as well as a native WebI application, mobile platforms mentioned included Blackberry, Symbian, Windows Mobile, iPhone, iPad and even the RIM Playbook but oddly no mention of Android. I’m not sure if it was left off of the slide by accident or there are legitimately no Android plans, I’d assume the former since Android is almost certain to become the market leader in terms of wide-spread adoption.
In addition to the Business Objects staff there were also a couple of external speakers both of whom gave interesting talks…
Tony Harper of Capgemini who spoke on the general topic of Mobile BI, highlighting the increased user expectations presented by high quality consumer-oriented smartphone and tablet apps as a particular challenge. The talk was thought-provoking and in particular it Tony’s statement that Mobile BI projects will be “sending information farther from the walls of the data centre than ever before” really underscored one of his main themes that providing so many people in so many disparate locations live access to your data will significantly stretch both performance and data quality and these expectations should be factored into Mobile BI projects from the beginning.
Following Tony was Alys Woodward from the research firm IDC who gave a good talk on the factors influencing BI uptake within organisations listing the most important contributing factors as being as Degree of Training (including training on KPIs as well as the tools), Design Quality (of architecture and processes), Non-Executive Involvement (i.e. get the business users involved), Importance of Governance and Use of Performance Management Methodology (the last two being important drivers in organisations where they are relevant).
Don’t forget to check out my ”What’s New in Business Objects XI Release 4 / SAP BI 4.0?” post too for more detail on the core Business Objects product stack.
Categories:
Business Intelligence, Business Objects, Sybase, The Cloud Tags:
Analytical Applications, Andrew Fryer, BI, BI 4.0, Blackberry, BO, Brent Ozar, Capgemini, CEP, Column-Oriented, Data Quality, DQ, ERP, Event Insight, HANA, IDC, In-Memory, Information Steward, iOS, iPad, iPhone, IQ, Mobile BI, Playbook, SAP, SAP BW, Sybase, Timo Elliott, WinMo, XIR4