Finally My Google Apps account is a first class citizen

If you use Google Apps this will be all to familiar to you. As Google Apps users we all lived in this kind of limbo where we had to have our Google Apps account as well as a Gmail account since outside of Google Apps your Google Apps login was useless. In fact, it was so useless that you may have even accidentally created a 'ghost' Google profile using your Google Apps credentials for services like Google Reader etc where the account your using wasn't your Google Apps account but a ghost version using the same email address etc.

But no more! Google has started rolling out 'transitioned' accounts (apply by filling out this spreadsheet). It's a painless process but the end goal is that your Google Apps login becomes a first class citizen so you can use it on Google Reader and other Google properties. From what I can understand they transition accounts from Google Apps accounts to normal Google accounts (renaming any ghosted accounts in the process) so you can now login to gmail.com using your Google Apps credentials - this allow lets you use Google Multiple Account so you can switch been Apps/Gmail/Multiple Apps logins.

Woohoo, this is great news for any Google Apps user!

Comments [0]

This is why I love Ruby on Rails

On Sunday morning I received a phone call from my boss who was on site at Farnborough Airshow installing an application for a client for use throughout the airshow. I was the 3rd number on the 'On-Call' list over the weekend and hadn't worked on the application during it's development - all I knew was that it was built in Ruby on Rails. 

We'd built the application in a Virtual Machine which was working in the office so it should have been a case of just booting it up and connecting to it from a browser. Previously getting phone calls about failed applications was mostly a chore, not knowing what flavour of a tech the application was using, what CMS it was built using or more importantly what framework it was using - not so in this case.

I was able to connect to the machine, diagnose the problem and put a fix in place in under 10 minutes, conventions rule!!!

Comments [0]

Android 2 months on - Blimey!

Blimey, two months now since I've changed over to Android. Since my last posting iPhone 4 has been released. Do I wish I'd waited and got an iPhone - absolutely not. I'm still 100% behind my decision going over to Android. Why have to wait for applications to be 'upgraded' to support background running - Android's done it from the beginning. Does it really seem wise to have glass front and back of device? Not to mention the radio issues that iPhone 4 seems to be plagued with because it's being held wrong!! Granted, I'm still waiting for my phone to receive the 2.2 update via HTC but it's strongly rumoured to be landing at the start of Q3 which is only a few days away.

My wife now has my iPhone 3, running iOS 4, jez, what a waste of time that was - aside from the alleged 30 odd security fixes it's crucifying the phone for not much additional functionality - no multitasking, home screen wallpapers etc...all the serious stuff in iOS4. I'd advise anyone with an earlier phone to seriously consider not upgrading to iOS4.

Anyhow, details of Gingerbread (Android 3.0) are beginning to emerge, concentrating on user interface so we'll see where that stands when it drops in October (apparently).

Comments [0]

Android - 1 month on

Rooting and returning to the vanilla HTC Desire ROM instead of the messed with Orange ROM has proved to be the best decision. I now get much better battery life compared to the Orange ROM.

I have applied a Zagg Invisible Shield screen protector as I noticed a few minor scratches. It's a little more expensive than most screen protectors but it comes with a good installation kit and instructions - you actually float the protector on and then squeegee the liquid out so there is zero chance of bubbles under the protector - these will become my standard screen protectors from now on!

I hadn't needed to install Settings Profile for battery conservation as I spoke about in a previous post but ended up doing so but instead of using it to conserve battery I'm now using it purely for changing settings based on my environment - activating airplane mode at night but another profile for when I'm in the car and want GPS, no screen time out, speaker phone etc.

I've also bought a car mount and for sub £15 it's pretty damn solid and holds the phone well, reviews say that it holds the phone too tight or scratches it but I've not experienced that - plus it comes with a car charger!

I'm still absolutely not regretting making the jump to Android from iPhone - it's a little frustrating waiting for Android 2.2 (Froyo) to make it's way to me having been announced by Google a few weeks ago but there's a rumour circulating that it may make it to the Desire late June - fingers crossed!

Comments [2]

Developing with multiple environments on Heroku

This is for my own benefit as much as is it to share but I hope it helps.

Heroku is by far the easiest platform I've ever used for deploying applications too, if you're familiar with git, deploying an application is as simple as

git push heroku master

Anyhow, the purpose of this post is to act as a reminder to myself on how to work with different environments on Heroku.

Our scenario is that we have a local project that has a master and a staging branch and we want to be able to push either branch to a different application on Heroku. 

First up, in the master branch create and push to Heroku

heroku create myapp-production --remote production --stack bamboo-ree-1.8.7

For those unfamilar with Heroku this one line will create an application in my Heroku account named 'myapp-production' it will add the remote destination named production to my .git/config file and it will be on the bamboo 1.8.7 stack.

So at this point to deploy from the master branch to Heroku you would issue;

git push production master

To create a staging environment first create a branch and checkout your new branch

git branch staging
git checkout staging

Now create a new staging application on Heroku 

heroku create myapp-staging --remote staging --stack bamboo-ree-1.8.7

This time the remote destination will be added named 'staging' - you can check this in your .git/config

I also want to set my Heroku environment for staging (you would also need to add staging.rb to config/environments and any relevant environment variables)

heroku config:add RACK_ENV=staging --app myapp-staging

When you deal with multiple apps you need to specify the application name - this is due to how the heroku gem works, if not only to be explicit in your instructions to make sure you're not making changes to the wrong app! Especially with db:push and db:pull!!!!

So assuming that you're still in the staging branch to push to the new app to the new staging application

git push staging staging:master

This time we're saying use the remote destination 'staging' and push my local staging branch into the master branch on the remote - this is because Heroku only looks at the master branch in it's own git repo for the project.

And that should be all working for you now.

 

Filed under  //

Comments [0]

Quick Android Update

Just a quick update 2 weeks on with my HTC Desire.

I ended up rooting the phone lastnight - for a number of reasons. Firstly to be rid of all the useless customisations Orange had made to the phone - I mean, why do they bother? They added 5 game demos of pretty naff games which couldn't be removed, their own AppStore and a few other 'Orange' apps. Secondly, I've been experiencing pretty poor battery life - in a scientific experiment over lunch yesterday I lost 10% of my battery compared to a colleagues 2% with the same features switched on so I decided it was about time that I went back to the HTC default ROM.

It was a painless exercise which had no dramas attached so now I'm back to the vanilla HTC Desire ROM and so far am experiencing WAY better battery life.

Filed under  //

Comments [0]

Lunch time kiting at Epsom Downs

       

Posted from Reigate And Banstead, United Kingdom

Comments [0]

Overcoming the Android MarketPlace problem

With the Android MarketPlace set to pass the 50,000 application count just in time for Google I/O later this month finding decent apps is getting tough, the same applies in the Apple AppStore. The Android market place has grown almost 6 times the size in a year (Apple only 3 times) [source] but let's not forget that Apple heavily restricts apps that appear in the store whereas with Android anything goes - but then that's not to say that this is the full count of available applications. There's nothing to stop me creating my own Android app and selling it directly from my own website via download and these numbers won't go reported. Given that both platforms have been out for similar amounts of time the Android numbers are low but the explosion that we're now seeing in the shere number of available handsets across the operators is going to help drive these numbers up at a massive rate.

The Android MarketPlace app is much like the Apple Appstore, you see feature a few 'Featured' Applications and then can find applications by categories or search - there's no popularity, download count filters etc. There's a bunch of websites that provide an alternative view on the marketplace with some real value added like SlideMe, but I really like one called AppBrain. As well as showing you application rankings, downloads, categorizations, summary of your spending - they also provide their own Android Application.  What's neat about it is that you are able to manage the applications both from your phone or their website in that you can set an application to install from the website and it would then appear on your phone, uninstall it etc but you can also sync and share your installed applications list, here's my list of installed applications for starters so let's see yours!

Filed under  //

Comments [0]

Saving battery life on Android devices

If you're used to the iPhone you'll be well accustomed to probably charging your handset once a day, that is, if you use it for listening to music, push email, browsing over 3G/Wifi etc. The HTC Desire (as most Android devices are) is no different to the iPhone, it's a hungry little beast when you've got all the stuff it's able to do switched on - but thankfully there are ways to add a little more life.

I started hunting around for a power profile management app and found Setting Profiles - it's available in a lite and paid version ($3.95 - don't forget that if it doesn't work for you just uninstall and get a refund) - where the lite version is limited to a single rule. The idea of the app is simple. You create rules (multiple if required) which then activate profiles. Rules are based on conditions which can vary from a simple time period, an entry in the calendar, battery state, location and a few others. Locations can be either based on a connected wifi network or lat/long data which can be retrieved by GPS or cell information. Profiles allow you to control the state that the various phone features are in, wifi on/off, airplane on/off, volumes, gps, auto-sync etc etc.
 
I looked at a typical day and my movements and ended up with a couple of rules;
  • I get up at 7am (after going to bed around 11pm) so I created a profile that enables Airplane mode and activate that between 23:00-07:00 - who want's to be disturbed during those hours?
  • When I'm in the office (identified by a wifi network) I really don't need push email so I disable Auto-Sync, GPS, set 42% volume.
  • When I'm at home (identified by cell) I turn off GPS and turn on Wifi
  • Should my battery drop below 10% I turn off everything
Outside of these rules I have auto-sync on and GPS on when I need it - I still need to refine these rules a little bit to make sure I'm not wasting battery life but it definitely seems to have improved my battery life and prevented those calls/text at night!

     

Filed under  //

Comments [0]

Taking screen shots on Android devices

There doesn't seem to be an easy way like on the iPhone (pressing both buttons at the same time) to take a screen shot on Android devices - however if you've got the Android SDK installed it's pretty easy.
  1. Connect your device to your computer via USB
  2. On the device (Android 2.1) go to Settings > Applications > Development and enable 'USB Debugging'
  3. In your Android SDK folder run the DDMS app in the tools folder
  4. From the left panel select your device and press CTRL + S
  5. Now find the screen you want to screen shot and click 'Refresh' and then save the image.

Filed under  //

Comments [0]