Blogging Mobile Application Development University

Hull CS Blogs App for Windows Phone 7 Submitted

Last night I finally submitted Hull CS Blogs for Windows Phone 7 to the Windows Phone Marketplace. The concept started out because I wanted to make a few applications for the Windows Phone Rewards program, which rewards you with a point for each application you successfully get on the Marketplace. These points can in turn be exchanged for prizes such ranging from XBox controllers to Helicopter Lessons and Surround sound systems to track days.

Original versions of the application just showed the blog RSS stream from Hull Comp Sci Blogs, and required the user to download the entire steam each time, which saved some data compared to going to the full desktop-orientated website but not much. Building on that core feature I incrementally added more and more features, making sure each one worked correctly before moving the next. In order I added:

  1. Contributor blog feeds
  2. Contributor twitter feeds
  3. Image backgrounds for the pages
  4. Caching of the contributor blog and twitter feeds, as well as the latest blogs feed
  5. Featured application hub tiles
  6. An about page
  7. An “Email support” task
  8. Enhancements to the twitter experience
  9. Progress bars for everything.

After point 7 I issued a beta of the software to some of my fellow computer scientists through the Windows Phone Marketplace Beta feature. Everything worked as expect and I got lots of good feedback from little things such as “You’ve mis-spelt download in the about page” to “Sometimes the main feed doesn’t update unless you press the back button and reenter the application”, which is obviously a more serious glitch.

Some people even offered suggestions for what they’d like to see added to the app, James Czerwik-Hampshire asked for the ability to click a twitter name and go to the persons twitter profile which is implemented in this version and James Croft asked for the ability to pin a contributor to the start screen, which I’ve started work on but jumped back to version 1.1.

Issuing a beta was definitely a good experience, and made the product a much better experience for its target audience. I had particularly good experiences because I know my target audience very well, they’re my fellow students, and so could tailor it to their exact needs and get them to test it for me.

Over the last few days, since my last post, I’ve been fixing bugs and adding in features that have been requested. Last night I submitted the app for certification and hopefully it should be on the store by Monday 18th June, if everything goes to plan and the reviewers don’t find any bugs.

I shall be writing about the many, many things I’ve learnt about Windows Presentation Foundation and C# throughout the course of making this application over the next few days. So keep your eyes peeled 🙂


Blogging Mobile Application Development University

Year 1 In Numbers

Today I had my final exam, which was for my Software Engineering module, specifically on project management. It went really well and I’m expecting and hoping for a really good grade. 🙂

That being done means I’ve now finished my first year in Computer Science at The University of Hull. It’s been a great year, I’ve learnt loads, made some great friends and had some good laughs! I’d go so far as to say its been my best year ever! 🙂

I thought it might be cool to reel off some important numbers to do with the year, so here it goes:

  • 104 Blog posts
  • 8203 Blog Views
  • 153MB of Lecture Notes, Programming code and associated assets
  • That’s 1,140 Files
  • 2 Windows Phone Applications submitted to the Windows Phone Marketplace
  • 308 Downloads of Sweepy Cleaner
  • 201 Downloads of Evil Squash
  • That’s 509 downloads in total
  • 3 Windows Phones – 1 I bought and 2 from Microsoft 🙂
  • 1 Year of fun!

Thanks for reading the blog this year and please do continue to check back. I shall blog over the summer as I work on and complete projects and shall continue throughout next year and into the future.

Thanks to everyone at the University of Hull — Lecturers, fellow students and friends alike for making it such a great year.


Blogging Conferences Life

Reasons to be Appy – All Booked

Today I booked up my train ticket and hotel reservation for my first ever Tech conference, Reasons To Be Appy — which by the way is a name that I cannot decide if its brilliant…or not?

It started when Phil Cross, Academic Audience Manager at Microsoft, posted in the Microsoft UK Students Developer group asking if anyone wanted some free tickets, in return he asked

For you to blog about the event, post stuff on your facebook page, the UK Student page, we will link to your blog and for you use relevant #tags to tweet about it. Maybe a target of a couple of tweets per session? Basically so the organisers and MS can see you being active!

This seemed like a good deal and I emailed Phil asking if I could go, and he replied saying I could!

In particular I’m looking forward to a talk by Remy Sharp — who’s work helped me get into web development, especially through his role as curator on

Also of interest to me are talks by Christian Heilmann, who works at Mozilla and Andrew Spooner who works at Microsoft, most recently on “applications for Windows 8 and Windows Phone and explorations into Natural User Interfaces.” — all of which sounds interesting.

You can see a full list of sessions at the events website.

I shall keep this blog updated, possibly including a live blogging of some sessions, and as mentioned in the brief I will also be tweeting and posting on the Microsoft UK Students Facebook page.


Blogging Mobile Application Development

UX not Specs – A Second Take

After writing my previous blog post on the topic of “UX not Specs” I posted a link to it on the “Microsoft UK Students Developer Group” — A facebook resource set up by Microsoft exclusively for students who have submitted apps on App Hub for Windows Phone or XBOX — in order to try and get some opinions on both the topic and my writing. I was very pleased with the responses I got. Due to the fact they were posted on Facebook I was a bit annoyed that some day I might no longer have access to them, so I thought it would be nice to write them up in this blog post and respond to a few of the comments made. 🙂

Phil Cross – Academic Audience Manager at Microsoft said:

Couple of typos in it Danny but it reads well (and a good photo). I like the way it starts, grabs your attention and then moves onto the commentary

After seeing this I went ahead and fixed the typos, it turns out Google Chrome hadn’t been catching all my typo’s whilst writing up the blog post on the WordPress website, but Microsoft Word did when I pasted the blog into the program. In future I think I’ll write my blogs in MS Word and then copy them to wordpress in order to reduce typos as much as possible. I appreciated the comment about my writing style, that’s what I was trying to achieve 🙂

Richard Walters – Developer of Calculator² and a PhD Physics student at Oxford University said:

Good article and I completely agree with you, quad core is currently completely unnecessary for a phone (I say currently because who knows how we’ll be using phones/tablets in 10 years time). The interesting question is why your friend, and a large proportion of the consumer market in general, go for Specs not UX.

Specs not UX is certainly one reason for Windows Phone not taking off as well we’d all like, although it looks like Microsoft are addressing this with Windows Phone 8. My impression is that the initial purchasers of any new gadget are technology ‘geeks’. For much of this audience, but not all, specs will matter because they’re doing things with the device which makes use of the improved/newer features. These are then the people who will review, blog, and create a buzz about a product so that the masses hear about it. Average Joe hears that there’s this new product with lots of new, fancy features and wants one, even though he’ll hardly use any of them. Even if he can’t afford the top of the range, he’ll go for the same brand because it’s associated with the best. In the technology World, specs means cool, and cool sells.

Of course, the other issue with specs for phones is that they are used above UX to sell the devices. In every phone shop or website the specs are listed with a device and are used to compare them. Why should I go for the Lumia 800 above the Galaxy S2 when the S2 has dual not single core? Dual core is better right? Unfortunately it’s similar with the number of apps. 70,000 vs 500,000 is a huge difference and used all over the place to compare WP7 to Android/iPhone, and that’s what Average Joe sees (although Windows Phone is still behind in the quality debate too with the lack of top apps from third parties).

Admirably, Microsoft went for UX not Specs and concentrated on building an operating system that works well on low-end devices and is developer-friendly. In the long-run I believe Windows Phone will succeed because of this, while high end devices will also appear to help with the specs factor. It’ll also be interesting to see how Nokia’s Beautifully Different campaign will work, because I think it’s a very good strategy. As much as I like the Smoked by Windows Phone campaign, I don’t believe it will work as well because (I hope this doesn’t sound too horrible) logic doesn’t apply to the masses, who will certainly go for cool over better.

I hope that didn’t sound too condescending. I guess what I was driving at is that many consumers don’t make informed decisions about their purchases, often because this takes time (for research, etc.) that many people simply don’t have. Consumers can then be swayed by brands, marketing, peers’ opinions, etc. With phones, a spec sheet is a way to make the most informed decision possible in a short period of time.

Richard seems to be on the same wavelength as me and I agree with a lot of what he has to say, a user experience is a wholly subjective thing – manufacturers can’t write down hard data on user experience, it simply doesn’t exist, they can however show you hard data on specifications and — frankly — most modern smartphones have better specs on paper then even the most high end Windows Phone 7 device. That specificationis what people can compare with other devices and therefore that is, in the end, what makes a customers decision on which phone to buy.

Michael Hough had an opposing opinion and explained how quad core processors are not always necessarily running all 4 cores and therefore can be more power efficient than you would expect:

Your major point seems to be that quad core processors aren’t necessary, and more importantly that Tegra 3 has less battery life. I contest that. I have the Tegra 3 processor in question on my Asus Transformer Prime, and my experience is that I have around the same battery life as a dual-core iPad 2, twice as much as the (also dual core) OG Transformer. Tegra 3 has a power-saving core that means that the 4 cores are only used for taxing activities such as “console-quality gaming”.

Your opinion of quad cores not being necessary is slightly flawed, because it’s based on experience of using a Windows Phone alone. Because Windows Phones are all essentially the same (800×480 display, 1.4ghz cpu, 512mb RAM), developers know the limits of the system. With the Tegra 3 and the (dual core but still ridiculously powerful) Snapdragon S4 on Android, and the (again, dual) A5X processor on iOS, app developers have much more processing power to play with, allowing games and media to contain significantly more detail.

Personally, being an owner of the Nokia Lumia and a dated HTC Desire, I’m struggling to decide between the two. A big down side of WP7 for me is that all my paid apps are on Android, but this isn’t a huge problem. What is, from a user experience standpoint, is that Windows Phone lacks apps that I use every day – a train finder that covers my area, or a decent free sat-nav app, for example, both of which are available on Android.

Quite frankly, it’s a shame I’ll have hit my upgrade on my Desire before Windows Phone Tango comes out. I think that will fix a number of the issues I have with the system, but I’ll probably be using an Android as my daily driver by then. Although I’ll keep developing for both platforms, of course.

John Nolan who is studying Computing: Application Development at Edge Hill University chimed in with some important insights into WP as a platform and refuted some of the points made by Michael:

Your article does raise a nice point on battery life, but then crucially to your point comparing with WP, WP as an OS does not support multiple cores, not that it needs it, even if it did – the OS does not support it. I would also like to address Michael, I completely disagree with your argument that all WP are the same, they are not, they do however have the same minimum requirements so the basic experience from the products over point of view is the same. You also said that the OS lacks a free Sat Nav application, well you said you owned a Lumia 800 and funny enough I spent an hour in Halfords today and found that Nokia Drive outperformed many Nuvi’s and Navmans, Tom Tom struggled too finding and building routes.

Anyway back to my main point – we all came from a generation of phones we class as “dumb phones” when in fact I class it as a phone – it did do phone calls right? I mean that’s all they were supposed to do, we had text and some games with a little customization of the OS, but at the end of the day we charged that “dumb phone” once a week. I now have to charge my phone daily, sometimes I get a day and a half out of it but my new habit at night is to put my phone on charge.

I welcome any design that becomes more efficient whilst either maintaining performance or even increase it. So the likes of Android and iOS who support such hardware is completely outrageous waste of energy and a poor solution to their bigger problem and that is the OS lacks efficiency with tasks, something I have not come across on my Omnia 7 or my Lumia 800. Microsoft are on the right route, they put a real threat out to Android and iOS with their OS and the only way they could respond is to make the UX worse by decreasing the functionality period of a device to compensate its lack of performance compared to their competitors.

Whats really funny is that this is a complete repeat of the GHz race, we should all know by now that bigger and higher numbers does not always mean better, I remember the days my AMD Hammer Core running at 2.1 GHz smashed everything Intel had who claimed their sales through the lack of information the public had on how their products actually worked. I think its important that we all educate the people on why this OS is better and why we like it so much compared to the competitors, no we dont have dual, quad or octo cores, no we dont have silly resolutions but we do have a functional platform that is designed to make the everyday task a little easier whilst keeping us connected to our social networks which is currently driving the world.

Finally Jack Betts who is studying at Glamorgan University said:

You raise an interesting point that Quad cores are not useful in a mobile phone and i agree with you. However you seem to lose track of your argument and only focus on battery life. What about battery to processing power ratios?
What about the scenario in which a single core take 100secs to complete a task and a quad core takes 25secs, would the quad core use more power than single ?
You then bring in Windows phone at the end to cover user experience. I agree the windows phone operating system is a joy to use and is great for developing for (apart from 3D XNA games then i have some ranting to do) . However you completely neglect apple who are mostly about the user experience.

User experience also covers personalisation and the windows phone is very strict about what you can and cannot change. Control is also about user experience and Windows Phone 7 takes a lot of control away from the user, some times this is good sometimes this is bad.

Battery life, you are right about the usage time of a smartphone being about a day and they do take a while to charge however its not just about the battery hardware that affects battery life. Battery technology hasn’t changed in years, we are still operating on chemicals to produce an electrical current. It will be a long long time until a new power source comes to the consumer market so i believe that concluding that “we need to wait for better batteries” is poor.
A better angle to look into is how Mobile Operating systems take measures to preserve battery life and proposing new/updated methods on battery conservation.

“UX not specs” however is a brilliant concept and i do think you should develop it further into a full paper.

In some ways this comment provided the most food for thought. 🙂 In answer to his second point I don’t think that any quad core processor is exactly 4 times more efficient than a similar single core processor, controlling multiple threads on multiple cores takes quite a bit of overhead and many applications themselves are not actually developed in a way to fully utilise multi-core architectures, this is still true today on Windows, which has had multi-core support for years.

He is also right that I neglected Apple in the post, and again he is right that Apple are famed for their user experience. I must say this is one thing I really admire about the company and the software they produce, they can make relatively complex tasks simple and easy to understand and use even for the least technologically inclined among us, however in my somewhat biased opinion I would say that Microsoft are doing an even better job (perhaps even inspired by Apple) than Apple themselves at the moment with Windows Phone 7 and indeed even Windows RT (A.K.A Windows on ARM for Tablets)

The idea that Battery’s aren’t keeping up with the rest of technology seems to be an unfortunate fact of life. 😦 I’m hoping we will make progress on this in the near future but if not Jack is right, we need to look into how we can make our software more efficient at saving power. Some android devices provide an application which can be used to see how much of the battery each application/piece of hardware is taking and it always seems to me that Wi-Fi and the screen take the most power.

Microsoft have aimed to reduce this in Windows Phone by turning off Wi-Fi when the phone is locked, so you don’t waste power connected to a network when you’re not using it, and dimming the display if you have a white background. This is because white takes the most power to display on AMOLED screens. Another interesting thing Microsoft have done regards battery power is to make the default background black — this is because on modern AMOLED screens the display literally turns off in the areas that are black and this saves a lot of power.

This post has become pretty big now so I’ll leave it here. If you have anything else to say please whack your ideas in the comments section below. Thanks to all my commenters on Facebook.