Ask Gremlin…
I’ve received a couple of interesting emails recently from people asking for advice. I figured my answers might be of use to others so here are the (redacted) emails:
Android App
The email:
I am wanting a Android Application designed for me. I am wanting to know a little more about Android Applications and how to go about getting one designed for me. How do the laws work around making a app and around how much would someone have to pay to get one designed? If a Android developer was to make a app for me would the rights of that app be mine or the creator? Sorry for the inconvenience I’m really new to this. Any information would be appreciated.
My response:
Hi ****,
A few years ago there was a move in NZ to better clarify ownership of intellectual property and copyright for “commissioned works” which includes software developement. However this amendment did not pass see: http://www.med.govt.nz/templates/ContentTopicSummary____18836.aspx
Although there are some existing laws that cover this area, what you want to ensure is that there is a clause in any contracts you sign (and you should ensure you have a contract with anyone who is written apps for you) that you own ALL the IP and copyrights on the work that is produced.
In terms of how much will it cost, the answer is it depends on how complicated the app is :)
Basically there are two general models followed for software development: “Time and Materials” (T&M) or Fixed Price.
With T&M you generally pay the developer an hourly rate. For software development you can pay anything from $25/hr through to $150/hr. Typically the more senior or skilled the person, the higher their rates. Of course paying more doesn’t guarantee quality or success.
With Fixed price the price is determined ahead of time and that is the amount you will pay for the completed software. Whilst this seems a “safe” option, software development is often complicated and unexpected things turn up all the time, as such Fixed Priced contracts are often padded with a “contingency” to ensure that the developer makes money. If the project looks risky the contingency can be as high as 50% which means you would be paying far more for the work then it is worth. The other issue with fixed price contracts is that they often have a “change request” (CR) process which allows the developer to make additional charges for work (eg features of the app) that were not covered by the original specification (or “scope”) of the project. CR processes are often confusing & abused and you land up paying way more then you intended to in the end.
The best way to “protect” yourself against unforeseen costs is to be very, very, very clear on what you want to have built. In software development this is often called “scope” or the specifications of the project.
For an Android app I would suggest that you create what is called a wireframe or mockup of the app. You can use a tool such as http://balsamiq.com/ or http://yeblon.com/androidmockup/ or even paper & pen and sketch out each of the screens of the app, add notes about what each screen should do and how you navigate from one screen to another.
Once you have your wireframe sorted you can then shop around and get different quotes from different developers to find a price and developer you like. If you think your idea is particularly unique, you might want people to sign a non-disclosure aggreement (NDA) before you show them your wireframes or talk to them about the app.
Lastly you might want to try and write the software yourself ! Have a look at http://appinventor.googlelabs.com/about/ as a “gently” intro to Android development. It will let you create a working prototype that you can actually run on your phone :)
Hopefully the above has been helpful.
Cheers
QR code generation
The email:
I saw your comment on the hack-a-day QRcode post. You seem to have quite a bit of experience in QRcodes and other scanning apps. One thing that I have been looking for (and maybe you might be able to help) is a program that creates unique QRcodes from list of URLs. I’m helping out a non-profit ****** with their website and I was trying to find an easy solution to automatically create printable QRcodes for all of the ****** at once. This way each **** has their own QR code to an info page on a WordPress blog. It could be done manually, but the **** change every two weeks! :)
A bonus would be automatically taking Bitly URLs and turning them into a bunch of printable QRcodes.
Just thinking
My response
Hi *****,
The Google Charts API can be used to quickly create QR codes. Check out: http://code.google.com/apis/
chart/infographics/docs/ and http://code.google.com/apis/overview.html chart/infographics/docs/qr_ codes.html So the following URL: https://chart.googleapis.com/
chart?chs=150×150&cht=qr&chl= would create a 150px by 150px .png QR code containing a URL to my blog (http://blog.rabidgremlin.com)http://blog.rabidgremlin.com You could probably use a tool such as Curl or WGET to script the fetching of the bar codes.
Cheers
New theme is a go
Well, it has been a while since I posted something meaty, I’ve been kinda doing a lot of micro-blogging and tinkering with other things like my Privacy Check for Facebook, so haven’t really had time to sit down and write a decent post.
Of course as soon as I did sit down to write something, I got hideously distracted with the idea of creating a new theme for my blog…
Luckily due to some very handy tools, it did not take nearly as long to finish off my new theme as it could have.
First up Blueprint CSS, this is a fantastic CSS framework. I used it for contactprotocol.org and for my Privacy Check for Facebook app so it was a no brainer to use for the theme. If you are not a hard-core webcoder then this is the easiest way to put together a good looking website that just works.
Next up: jQuery, which, is a fantastic Javascript framework. I’m really getting to grips with it and there is no way I would ever build another site without using a Javascript framework of some kind.
For instance I have a lot of code examples on the blog. These I format into <pre> blocks so that they are easier to read. Problem is that they are often very wide and would get cut off with this new theme. A bit of digging around on the web and little bit of Javascript and we have the following; a code block that expands when you hover the mouse over the it. Here is an example (and the actually code):
//this code finds all pre tags and makes them expand on hover
//code has been formatted to be extra wide to demonstrate the effect
$('div.entry').find('pre').wrapInner('').hover(function()
{
var contentwidth = $(this).contents().width();
var blockwidth = $(this).width();
if(contentwidth > blockwidth)
{
$(this).animate({ width: '950px'}, 250);
}
}, function()
{
$(this).animate({ width: '640px' }, 250);
});
I also used Fancybox to create a lightbox effect for images and image galleries. For example try clicking on one of the images below:
Lastly I used the new Google Font API (that was released this week) to embed the cool font I used for the blog & post titles in a cross browser compatible way. The font is Reenie Beanie by James Grieshaber.
So what do you think? Leave a comment :)
Google’s timetable for dropping IE6
I received the following email from Google yesterday. It details their timetable for dropping IE6 support:
Dear Google Apps admin,
In order to continue to improve our products and deliver more sophisticated features and performance, we are harnessing some of the latest improvements in web browser technology. This includes faster JavaScript processing and new standards like HTML5. As a result, over the course of 2010, we will be phasing out support for Microsoft Internet Explorer 6.0 as well as other older browsers that are not supported by their own manufacturers.
We plan to begin phasing out support of these older browsers on the Google Docs suite and the Google Sites editor on March 1, 2010. After that point, certain functionality within these applications may have higher latency and may not work correctly in these older browsers. Later in 2010, we will start to phase out support for these browsers for Google Mail and Google Calendar.
Google Apps will continue to support Internet Explorer 7.0 and above, Firefox 3.0 and above, Google Chrome 4.0 and above, and Safari 3.0 and above.
Starting this week, users on these older browsers will see a message in Google Docs and the Google Sites editor explaining this change and asking them to upgrade their browser. We will also alert you again closer to March 1 to remind you of this change.
In 2009, the Google Apps team delivered more than 100 improvements to enhance your product experience. We are aiming to beat that in 2010 and continue to deliver the best and most innovative collaboration products for businesses.
Thank you for your continued support!
Sincerely,
The Google Apps team
Inside Google Wave
ClearPoint held one of its regular tech-drop get-togethers last night covering Google Wave.
The Cloudbreak team gave a good walk-through of the product and I gave a quick overview of some of the technology inside Google Wave and it’s APIs.
Here is my slide deck:
Click to see next slide
The PDF (with notes) can be downloaded here.
For those of you who know nothing about the wave, here is short intro video:


