Archives for : June2011

1 more Android app and improvements to Virgin Mobile app

In just a few days I will have finished all my exams for this semester, and will have a good week and bit before I go back to work for the holidays. This means I’ll have some time to work on both the Virgin Mobile app, and a new one. The new one’s a secret for now, but it is another Australian based one.

That said, I’m a firm believer in making quality apps, and there’s definitely a lot of work that I need to put into the Virgin Mobile app, so I’m going to have a good day fixing bugs and making general improvements before I make too much effort on the new app. I’d rather have a handful of quality and well supported apps rather than a large number of half-hearted attempts. So all the ones that I do publish, I do plan on continuing to improve them, both by fixing bugs (most important,) making a better user interface (a new one for Virgin Mobile is coming soon) and adding new features (after the other two things are done.)

Why Google needs to buy Dropbox

With Apple making a fourth attempt to offer cloud services has generated a lot of buzz, and whilst many are predicting that it won’t work well (the same reasons that the others didn’t work: they are just too restrictive. See previous link,) they are bound to get it right one sooner or later. This means that pretty much every major computing company is offering some form of cloud computing service, and whether you like it or not, it looks as if cloud computing is the future of computing.

So, let me explain why I think Google should buy Dropbox, and why it would be the best cloud computing decision Google has made if they do. It’s going to be hard to keep cloud computing free. If it’s the future of computing, then people are going to start wanting to do everything in the cloud, and eventually a few gigabytes isn’t going to cut it. The other thing is, people don’t want to be paying for each service individually. If people are going to start paying (which, to be economically viable, is going to have to happen at one point or another,) then they want to pay one fee and get all the services. They (well, at least I) want services to be able to share their storage space.

This is where Dropbox comes in. Currently, if I was to pay for cloud storage, it would be with Dropbox, because it’s the most versatile (it is just a hard drive in the sky after all, but a very smart hard drive at that.) If I paid for storage, I would put my music collection in there for starters. Though Google has Music Beta (which is free… while in beta.) I already have a good collection of documents in my Dropbox, but wouldn’t it be nice that, if I were stuck on a computer without Word or Open/Libre Office, I could just log into Google Docs and edit a document quickly, and the changes be reflected in my Dropbox?

I’m already starting to get to the reason. The main reason, well, reasons, are:

  • People only want to pay once (so have it so that services use storage as needed from Dropbox)
  • Having multiple copies of data is annoying (for example, with Google Music, I’m not going to go and delete my music collection off my hard drive, or how about photos in Picasa web? It can apply to anything really)
  • It will help the transition. People are still using office suites (I know I am,) and some just can’t give that up for a limited feature set in Google Docs. Having Google Documents appear in Dropbox, and vice versa, will allow for a smooth transition.
  • Internet connections aren’t always reliable. Since Dropbox syncs with your PC, if an Internet connection isn’t available, then you’re out of luck.
Dropbox incorporates the best features of cloud computing and traditional computing into one product, and if Google had that, then they would have the best cloud computing service on offer. I would quite happily pay a small fee for that.

PC Case Gear: Tracking Link Grease Monkey Script

PC Case Gear is one of the best, if not the best, specialist computer hardware and modding stores in Australia. I’m more than happy to buy something from there even if it’s slightly more expensive than other stores (though in my experience, most items I’ve looked at, PC Case Gear have always been in the top 5 cheapest, so it’s the most consistently cheap.)

Anyway, one thing that I’ve noticed, is that on the order tracking page, they give you the tracking number of your order, and a link to the website of the courier. The courier that they seem to be using the most these days (Australian Air Express) allows you to directly link to the order tracking page, so in theory it would be possible to link directly to a tracking page. PCCG doesn’t do this automatically, so I thought I’d have a go at my first grease monkey script to add a link in there. It isn’t terribly long, but it is my first one.

A quick before and after shot:


You have a link to Australian Air Express where you can copy and paste your tracking number, but that just sounds like too much effort.


The tracking numbers now link directly to their tracking page!

Download the script here. It will work in Firefox (with the Grease Monkey extension installed) and Chrome. Since it’s only a small script, I’m not going to go ahead and put an open source licence on it, rather just say it’s public domain, though it would be nice if you left the credits there.

Edit 3 July 2011: Well, there is no longer a need for this script. When I wrote it, I also made a suggestion in the suggestions box that they implement this into their website, and it looks as if they have. Great work PCCG, can’t say many retailers actually listen to suggestions, never mind actually implement them.

Back to Ubuntu (sort of)

It’s been a good 2 to 3 years since I’ve used Ubuntu as a full time OS (for about 2 years it was the only OS I used.) I didn’t install it on my desktop PC when I first got it as, Windows could do everything Ubuntu could do, and it was a gaming PC, so I more or less needed to put Windows on it.

Since I’ve found myself doing more and more developing on my computer, and Uni work (which for some subjects needed a Unix based machine!) I thought, why not try Ubuntu on my desktop again? There’s no way I’m getting rid of Windows (I paid too much for this graphics card just to have it do nice Compiz effects in Ubuntu!) but I have reverted to a nice dual boot setup.

All I can say is: wow! Where have I been? I suppose, all the new features that come about slowly through releases I have missed, because I haven’t really been keeping up to date with Ubuntu. On top of that, I’ve installed 11.04, and that’s probably the biggest deviation for a long time with the Unity interface.

Granted, I still haven’t got dual screen’s setup yet (actually, I’ve never tried Ubuntu with dual screens,) I’m just waiting for some downloads to finish before I go ahead and restart my computer after installing the AMD restricted drivers. Hopefully it won’t be too much trouble. (Edit: It wasn’t! AMD Catalyst took care of dual screen with no problems) The only other problem I’ve had so far is I can only get sound when I have my headphones plugged into the front port, I can’t get it out of the speakers when they are plugged in the back. (Edit: It’s a bit embarrasing, the volume was turned down on the physical speakers. Worked without a problem) I suppose this is something that I can fix, but it’s definitely no where near as much trouble as I, and many other people, have experienced with Ubuntu in the past.

So whilst I plan to keep Windows on my computer (as mentioned, graphics card cost too much, and I’ve invested a lot of money into Steam games,) I think I’ll use Ubuntu for any Uni work or development related tasks that don’t involve .NET (which I’m slowly moving away from, ever since the future of the Mono project was put into uncertantity. One of the reasons I was happy to develop for .NET was that Mono would mean it was almost as versitile as, say, Java)

So, I’m back. At least for a bit. Hopefully I can keep it up.

The joys of developing software with no API

I’ve finally pushed out my first Android app, one that I’ve put a lot of time into (and still am, got to improve the UI experience and fix up a few bugs!) and one thing I realised in the development process is, it isn’t fun trying to develop for something that has no external API, or a company that even wants this to happen.

In the development process, I have been blocked from logging into Virgin Mobile’s website, where I just kept getting 404 Not Found or 405 Not Allowed errors (fun times.) That said, it was linked to my IP address, not my account, because it worked when I tried it at uni. And right now, I can no longer pay any bill by credit card, as I made a few mistakes in a yet unreleased feature (though I’m sure you can guess,) and whilst those mistakes have been fixed in the program (I think), I cannot make payments to my from my IP address (changed IP address, same problem), account (tried a different account, same problem) credit card, making it very hard to test.

Not to mention the lack of ability to simulate events that either don’t happen that often (turn of the month, to ensure that the app handles data and months properly,) or that you don’t ever want to happen (overdue bill.) I can also only test it on my own account, which severely limits the testing scope. I do have a friend from Uni who I get to do beta testing, but without many different accounts at your disposal and connected to your debugger, it does make finding and fixing bugs quite difficult. For example, I have had 2 bugs so far that I cannot simulate, I can’t work out why the data isn’t been fetched properly without an account that it happens on. One of them I’ve put in if and try…catch statements that prevents the error from happening, but it comes at a cost (the data usage for that user will not be displayed. That said, maybe Virgin Mobile still have postpaid accounts without data? If so, the bug should be fixed.) What I really need is users to bombard me with emails, screenshots of their account and the HTML source code of some of their account pages (I don’t need username and passwords, just the user to be willing to test it after I’ve made a few changes.)

It’s also annoying when you can only work with the information you’re given, but that information isn’t available. For example, I want to have a progress bar throughout the month of how much credit the person has used, but I can’t find anywhere on the accounts page a value that states how much credit the user has in their cap (it does for data, but not for cap credit.) I’ve tried to overcome this by detecting the type of cap (that information is available,) and storing the credit allowance and the amount for that cap in the code of the program, and matching it up. This isn’t the best way to do it (though it’s the only way I can,) as I have to manually keep it updated, and what if it’s wrong? To overcome it been wrong I’ve set it to alert the user when they login what the cap is detected as, and that they can change it if it’s wrong, but it’s better when the user has to input as few things as possible. I’m just getting away with username and password, I’m hoping when I implement a prepaid account it can automatically be detected (which reminds me, I need to run out tomorrow and get a prepaid SIM, I need an account to test it with!)

I haven’t yet heard from Virgin about unusual activity on my account, and I hope to keep it that way, but there’s only so much you can develop without actually testing it on your own account a few times, and things inevitably go wrong. It would be nice if Virgin Mobile released an official app, or an API, as it is what users want.

IntelliJ IDEA Java IDE: Second Impressions

Edit: Just bought it. It is that good after a few days of use.

I have already given my unfavourable first impressions of IntelliJ IDEA, but I was forced to continue editing the post with an apology (the errors that were created were my fault) and another edit saying that I actually found it to be really good.

I decided I’ll give it another go (on my desktop, as the trial on my laptop has pretty much expired… or will expire in a few days, and my desktop has a lot more screen real estate, so is a much better developing environment.) Any all I can say, is if you look past the interface (it doesn’t blend into Windows too well, but you sort of get used to it,) all I can say is wow. Eclipse, I’m leaving you.

It’s true, IntelliJ does have everything. It is absolutely amazing, especially the static analysis tools that it offers. What are some of the absolutely amazing features I’ve noticed? Well, for one, the static analysis tool. Not only does it detect potential problems in your code, it can go ahead and fix them, without any problems at all! And how good are these static analysis tools? Well, I have a for loop. I could have used a for each loop, but didn’t because I was too lazy. IntelliJ suggested I use a for each loop, and actually went ahead (with my approval of course) and changed it to a for each loop, without breaking any code! Or maybe the small, but nice thing, when I was developing a reg-ex in another program, it automatically put a ‘\’ in front of every quote that needed it. I could quite literary paste the string and not have to change it at all.

I have barely scratched the surface and I’m already loving it. I don’t think I could use Eclipse again, unless it all of a sudden got really better or I don’t have a choice (e.g. in a work environment.)

So, this isn’t a review, but just a correction to say my first impressions weren’t correct. I’m definitely going to buy it when I get the funds together.

Virgin Mobile Usage Australia: Released to Market

What started off as a hobby Android application 3 months ago (Uni work got in the way, I have barely altered it for 2 months) has finally been released to the market. This is my first Anrdoid app, so please be kind! I am confident that there will be bugs, as I can only test it with my account and cap, though I plan on getting them fixed as fast as possible once they’re reported (report either by email, or comment on this blog post.)

Check out Virgin Mobile Usage Australia in the market if you’re on Virgin Mobile. Currently only supports postpaid, though I plan to support prepaid when I get hold of a prepaid account.

Developed on Ubuntu with Intellij IDEA.

Learning Dvorak

So, as a challenge to myself, I thought that I’d set myself the challenge of learning the dvorak keyboard layout. That also means that this post may be the longest I’ve taken considering it’s length. It’d be a bit silly to write about learning dvorak using the qwerty layout, wouldn’t it now? So yes, to type all that I just wrote took about 5 minutes… I could possibly do faster if I wanted too, but I think accuracy is very important when learning a new keyboard layout.

So I will continue to post as I go. So far I can get to about 25 wpm, and it’s really hard to resist the temptation to go back to QWERTY just to get things typed faster!

Update 9th June 2011:
40 words

Update 13th June 2011:
47 words

Almost reached the 50 mark (which is described as a “practical typing speed”). It would be nice to get to 60 by the end of the month. As a comparison, my qwerty typing speed before I started learning dvorak was around 80wpm (though because of visual queues, I can no longer type qwerty on the touch typing website I use, I get around 30wpm when I try)

Update 14th June (at 12:30AM):
51 words

Well, I made it to 50. It did take a few tries, but I am definitely getting faster. Can’t wait until I hit 60. That will be close enough to my old speed such I won’t be able to justify going back to QWERTY just to type something faster.

Update 21st June:
56 words

I am regularly getting above 50 wpm now (last post took a few tries to get above the 50 mark.) Hoping to get to the 60 mark soon!

Update 22nd June:
59 words
I got one word wrong, which bought me down to 59. Though I got 328 cpm, which is actually a more accurate measurement, because the length of words doesn’t matter as much. That said, I’ve definitely increased my speed.

Update 2nd July:
58 words
On the face of it I haven’t improved, but I did 346cpm this time, unlike 328cpm. Characters per minute is a much more accurate measurement. Technically wpm is supposed to be (characters per minute) / 5, though the website I am using to measure and track me speed just counts words, which is wrong.

Update 21st July:
64 words
366 cpm

Update 31st July:
381 cpm (apparently 62 words, but it’s better than last update. WPM on the website I’m using is deceptive. 381 cpm is about 76 wpm)

Should Christians be offended by new advertising campaign?

A new advertising campaign hit Sydney in the past week, with a bit of a twist. We have definitely seen religious related campaigns before (Jesus All About Life!) but never before (or at least to my knowledge) has Sydney seen an Islamic campaign on this level.

A direct attack on the identity of Jesus, a very good way to get people talking (and by blogging about it, I’m definitely no exception to it.) I want to ask the question: should Christians’ be offended? My yes/no answer would be no, but I do want to elaborate on it a bit more.

Firstly, it really depends how you define “offended.” I don’t agree with what they are saying. They are wrong. Nothing can change that. Why should I really worry what other people think? It’s not really any different from attacks from atheists, which I’ve learnt to deal with (there’s no reasoning with you guys!) Yes, it’s a direct attack on my fundamental beliefs, so in a way it is offensive. Though, I want to try and define offensive by how you react to it, and how you deal with it.

I don’t think there should be any reaction other than continual love. That’s what (should) seperates Christian’s from everyone else (though, quite often it doesn’t, and sometimes is the reverse.) Constantly loving your enemy is the one thing that people just can’t come to terms with. I know it’s one of the best apologetic tools when it comes to defending Christianity against atheists… after all, they know how much they attack Christians, what does it say if you just keep loving them no matter what? Now, I think the same should come with all interactions with other world views, whether it be atheist world views, or Islamic world views.

Having been involved in dialog between Christians and Muslims before, I have seen a few Muslims get offended very easily about the smallest thing (and, in one of the instances that I was there, was very vocal about it, though I am by no means generalising that about all Muslims, I’m just reporting what I saw,) and I was cautioned by the Christian chaplain when I just suggested that possibly, Muhammad was a false prophet to be tactful with what I say (I hate political correctness, so I’ll just say it: I believe that… Muhammad was a false prophet.) So, what I am suggesting, isn’t to fight fire with fire, but instead turn the other cheek. Don’t get all upset and vocal about other people’s beliefs. Keep loving them, no matter how much they attack you and your beliefs (not to say that I don’t do the same: I have to when making my beliefs clear, hence the last set of parentheses.)

Ultimately, I think the best summary of the whole thing is… the truth doesn’t need defending. Jesus is Lord and Saviour, and no amount of billboard and website promotion is going to change that. So it’s really a non-issue then, don’t you think?

(P.S. Too all my Muslim friends: Whilst I’m not going to water down my beliefs to try and not offend you, so inevitably I will, I love you all! I hope one day you’ll see the truth and I’ll see all of you in Heaven!)

(P.P.S If you’re interested in browsing the website, check out In order to try and be fair to all views, you should probably also check out I’m sure Google can find you some atheist websites, but I don’t actually know too many (actually, scrap too many, I don’t know any) off the top of my head.)