iOS and Twitter OAuth Login

I have recently been working on a iOS (iPhone) application for a client. This app needed to have the ability to post things to Twitter and Facebook.

Facebook provides a really nice SDK which (with a few hacks) provides an inline login dialog which handles all the oAuth details for you. It looks good and works well.

Twitter unfortunately does not do the same and while there are hundreds of Twitter-iOS libraries out there, they are all overly complicated and provide a UI which is not consistent with how the Facebook SDK does things, which if i want my app to appear good and consistent then they must look and behave the same.

The other main reason was because the libraries were overly complicated, they used the “Out of band” oAuth authentication which means a user has to copy a pin from a web page into the application, which is hardly a nice thing to do. Yet Facebook doesn’t have to do this. After a bit of investigation i found out twitter didn’t have to either.

To solve all of this i have created a simple demo application and library, utilizing the Facebook-iOS-SDK and PlainOAuth (by Jaanus Kase) projects as a basis and building what i wanted on top.

A lot of the code should be self explanatory. And below is a screen shot of what the end result is. You can find the project on git hub here:

So I bought an iPad

I have been looking at tablets for quite a while and was trying to decided between the Motorola Xoom and the iPad. It was quite a difficult choice between the two but I decided on the iPad for one simple reason, the quality of the device ( hardware and software ) is just so much better than the Xoom or any other android tablets. If I had gotten the android one I would have spent a lot of time hacking around with android to get it to work well, like I did with my phone when I had a HTC Hero. The iPad just works much like my Windows Phone 7 HTC HD7.

That said it’s not perfect, it doesn’t fit in with my microsoft dominated computer setup that I use, and it is just a stop gap solution to when Microsoft bring out there tablets next year.

It is a very good device, and very able to do a lot of. The things I wanted a tablet to do but there are a number of key features missing that I believe Microsoft will be including in there tablets from the way the development of Windows 8 is going. The first issue is the lack of user account or begin able to put the device into a “guest mode” so that i can lend my device to someone else without worrying that they can access all my email, social networking and work details. I believe Microsoft will have this feature in there tablet version of Windows 8. This feature would mean that a family or couple could share an iPad without having their different account settings clashing with each other. The second issue that I have noticed is that the keyboard always just has the capital letters on the keys, rather than switching between lowercase and uppercase letters when suitable during the writing process, or when the shift key is pressed, as a better indication of the change, because as i am writing this article on my iPad using both hands I cannot see the shift keys, and therefore can see if it is capitalised or not.

I will follow up this article once I have spent more time on the device, but so far it seems to be really good even if it isn’t perfect for my needs, it will be a far more pleasurable year to spend using it rather than the android equivalent.

MacBook Pro – Review

So i have had my MacBook Pro for a few weeks now so i thought i would write down some comments about it, and any improvements Apple could make.

  • Matt Screen Option for 13” MBP (I am looking at getting a Matte screen protector)
  • Ability to Boot Windows Installer from USB without rEFIt (It can boot OS X / Linux from USB just not Windows – which seems weird as all modern bioses can (yes i know the MBP has EFI instead of a regular BIOS))
  • Option not to have a Super Drive, maybe replace with secondary hard disk drive, or bigger battery (think how many more hours that could add would make it the ultimate portable laptop).
  • I have set Windows 7 to be the default start-up partition, but every time i boot into OS X (rarely) it resets this to OS X, which if well – annoying. Imagine if Microsoft pulled a trick like this with the default web browser.
  • Maybe have options for or to remove the IR receiver and card slot they take a bit out of the minimal design, and the card slot will just collect dirt.
  • Move the sleep light to one of the sides, so the front is that bit cleaner.
  • Have some sort of covers for the various ports on the side, might improve the design a bit, and keep the unused ones clean (I mean who ever uses the Ethernet one? Which for me with just collect dirt and bits.)
  • Make the Touchpad slightly bigger, there isn’t much space, but every millimetre counts on these things.

Apart from that its a pretty good machine, and while i am not using OS X that much (it is more of a “Fisher Price My First OS” type of OS) as Unix OS’s go its pretty good, and while i have been on a rubbish internet connection it has made a good substitution for SSH’ing into my server, although i do not know how much longer it will remain on the laptop.

I should be getting some stickers soon from @bennuk (Microsoft Developer Evangelist), which should make my laptop look awesome. Will blog some pictures when i get them.

Domains Names for Sale / Transfer

So i brought a new domain name today and I’ve realised how much I’m spending on domains each year so i have decided to sell / get rid of some of them.

If you are interested in any of the following please post a comment and we can arrange a transfer of ownership if an offer isn’t made on a domain by the lay day in october i will simply unregister it, and it will fall back to my registrar who will probably charge a lot more for you to acquire it.

Anyway the domain names are:


If your interested post me a comment (with your email address so i can reply) or email me if you have my email address.

So I brought a MacBook Pro

As my old laptop is rather crap (battery, speed, graphics) and it was restricting me from getting any real work done I decided to move up my intended purchase of a new laptop mainly a MacBook Pro 13.3/2.4/4/250.

Now I am a Microsoft fan and i generally hate Apple so why did I buy a MacBook Pro?

  • Student Discount – only £860
  • Lovely Screen with a good pixel density (1280×800 on 13.3” which is same resolution as my old laptop which is 1280×800 on 15”)
  • Exceptional Battery Life
  • Pretty damn good quality of hardware and design (although the Apple logo on the back annoys me)
  • Runs OS X without messing about so I can use OS X as a test/dev environment.
  • They are well known for running Windows exceptionally well.

Ok so that’s why I brought it, but how did it go? It didn’t go so well. In the space of 7 days I have had to have my MBP replaced twice due to dead pixels on the first two. The nearest Apple store is in Bristol which is a good 5-6hour round trip and I have now made that journey 3 times which as you can imagine is quite annoying. Anyway i finally got a non faulty MBP and it is now setup with all my favourite software, but there were some issues with this.

First issue is that you cannot boot a Windows installer from USB using the default EFI firmware, to get around this you need to install rEFIt which does allow it.

The second issue was turning off the annoying Start-up boing to turn that off you need to get StartupSound.prefpane.

At the moment I am on a terrible internet connection (only getting 40KB/s) and OS X wanted over 1gb of updates (including X-Code update) which it will download in the background if you don’t turn it off. To turn it off go to Apple Logo –> System Preferences –> Software Updates and turn off automatic downloading.

The most recent issue i have had is in Windows and finding the hash-key (which doesn’t work in Live Writer for some weird reason). After about 15minutes of playing around and downloading the Microsoft Keyboard Layout Creator i found out it is Alt-GR (the Alt on the right hand side of the keyboard) + 3

Anyway I’m really pleased with it, and it runs Windows 7 like a dream, its almost as powerful as my desktop. With some initial testing Windows does get a good 7+ hours out of the battery which while begin 3 less than OS X, its still very good.