Wednesday, February 3, 2010

I think the iPad is f#@%ing awesome. But I probably don't want one - I want all my friends who come to me for help to get one!

If you're not a developer of some sort, computers shouldn't be this hard (even you, Mac OS X)! I've been thinking for ages (I'm 40!!!) that computer interfaces have barely advanced since the Mac went mainstream. Really, OSX doesn't look that different to my Atari ST!?!?! As for Windows!

Usability has been dreadful and I think computers have just been wrong. The idea of having a machine that can do anything (and thus can do almost nothing well) is stupid. I think the iPad and the devices that follow (and the iPad won't be truly hardware great until competition comes along, but again, the average user shouldn't care!) will redefine how people interact with computers.

In fact, people shouldn't know they are interacting with a computer. Eventually, they shouldn't even know the difference between a local app and surfing the web, or that there is a difference!

[edit] then moments later, I read this: On iPads, Grandmas and Game-changing

Thursday, January 7, 2010

iPhone Software

I'm still waiting for the iPhone application that changes my life. My wife would say the iPhone has changed my life as I'm always distracted when we're out (I'd argue not ALWAYS)!

Since my last iPhone posting, I've moved on a lot. Jailbreaking a 32GB phone, requiring a full restore every time a new version comes out, got painful, so I have a totally legit phone at the moment. There are a few things I miss.

Cell coverage is very bad at home, so I leave Wi-Fi on a lot and when I go out and don't turn it off, the battery dies about twice as fast. Biggest thing I miss from jailbreaking is the SBSettings app (review), where from Springboard or any app you can turn WiFi on and off and adjust the brightness (so those geo-tracking apps don't kill your battery when you leave them running!). I'm going to jailbreak again soon just to get these!

Now I've got heaps of (mostly free) apps. Use a few regularly, but it's a pain to find them and arrange them in any order that makes sense. Bruce Tognazzini (Original Apple UI Guru) has a great post on how apple should fix springboard. I'd love to see some of these get implemented.

There's no immediately obvious task list app that syncs accross machines/the cloud. Remember the Milk is good, but expensive at $25USD/year. There are others, but most seem over the top (open to sugestions!). I end up using a web link to google tasks. And waiting for the GData API to be released, so someone makes a nice iPhone front end to it.

For controlling the mac mini/TV set up at home, I have:
  • EyeTV: for watching live and recorded TV
  • IceTV: For remote controlling TV recording scheduling
  • TouchPad: Use iPhone as a mouse/trackpad/keyboard
  • Keymote: Use iPhone as a remote
  • Remote: Control iTunes.
Others I use a fair bit:
  • The Amazon App is very handy now Kindle for iPhone is released in Australia, preview the first chapter of books you're interested in!
  • PocketMoney for tracking cash expenditures and uploading to GNUCash/MoneyWell (this is a paid feature)
  • BOMRadar: For seeing when I should cycle home to avoid the rain
  • Surf Report: check swell and tides
  • SportyPal: Count Calories burnt while tracking where/how far/how fast I went on my bike (or feet or ...)
  • iTrailMap 3D - worth paying for: 3D map of ski resorts with GPS tracking - detects when you're on a lift and doesn't count it in the distance boarded. Can download kml's for google earth etc.
  • Oh, and foursquare, for, umm, what is this for??? I'm not sure yet...

Monday, August 24, 2009

Google Wave Vision and Usability

I'm confused about Google Wave.

I got excited about it at first, I thought, wow, this is huge, it's going to replace email, IM, wiki's, Word, you name it...

Then I went to the Sydney Wave API Day and actually got an account and used it. Tried to use it, that is.

It's not broken, far from it, what it does is amazing. Sure, it crashed a few times, but you refreshed and you never lost more than a word.

It's Noisy. As a member of a group (of about 80 people), I got added to about 20 waves. I had a few waves with just me and some friends. Every time anyone in that group typed a character in one of those waves, it went to the top of my Inbox - I may not have read it yet, I may have read it and not been interested. There was nothing I could do to stop it becoming the most prominent wave in my inbox. My waves with my friends got buried; Since waves don't really properly have a title, or a subject, it was even hard to find them, when it's far more likely that they are the ones I'm really interested in.

Now, we're talking computers here. These issues can and most likely will be solved, but the noise made my Vision of Google Wave ruling the universe become very blurry.

How do I want Google Wave to rule the universe? Maybe what I want is not what Google thinks Wave will be and I'm barking up the wrong tree, but I still know what I want. As a software developer at a big company, I have multiple work flows I have to tend to on a day-to-day basis. Email, internal forums, external forums, bug tracking systems, wikis, HR Systems, Timekeeping systems, the list is endless.

I want all of these things in one place. I want a huge centralised work flow system, detailing all the tasks I need to attend to. With Google Wave it's definitely possible to do this (with some extra features added to wave, like input validation, extra permissions etc.), but with the current Inbox scheme, it would be a nightmare.

So I was thinking about the Inbox. As I've said, it doesn't really work, but it doesn't really work in email either. It works OK if I get a small amount of email, any more than that (or a few days off reading email) and I get flooded, have to set up loads of automatic rules to filter out things I'm not really interested in etc. in an attempt to find the emails I really care about. I think this is a flawed paradigm.

I don't know what a better paradigm is, but Wave certainly has a chance at improving it because it has to, it's currently unusable!)

Monday, July 6, 2009

James Strachan's Blog: Scala as the long term replacement for java/javac?

James Strachan's Blog: Scala as the long term replacement for java/javac?

This mirrors my thinking exactly! I'm really excited by Scala.

Back at university, I did a Functional Programming course, where we did some lisp programming. I loved it, but always felt like I was missing something. Even years of hacking my emacs to get it to do just what I wanted just made me feel like I wasn't getting it.

Now with scala, and the Programming Scala book, I really feel like I'm starting to get what Functional Programming is all about. Java/OO feels like second nature to me (some users and maintainers of my code might disagree!) but now, every programming task has a new dimension:

How would I approach this from a FP perspective?
Can I make the API more expressive, more concise, cleaner?

Sometimes I don't have the time to think through it and stick with the OO approach, but when I do the answer always seems to be "Yes". I feel this is due partly to FP and a lot to Scala.

I've spent time learning Ruby and Rails, Python and Groovy. There was a lot I could do in those languages that felt a lot easier and nicer to read than Java code. Groovy/Grails really sped things up for the presentation and model layer. Yet, for anything serious, I went back to Java. I missed the tool support, the automatic imports, class name completion, refactoring.

Scala doesn't have all the refactoring or automatic import support yet in it's IDE providers, but they're coming fast. And they'll be as good as Java's once they've arrived, which will never be true for dynamic languages.

I went to the Scala Lift Off after JavaONE and was inspired by the excitement in the community and the smart people it was attracting. I'm hoping to do more and more Scala programming in the future.

Tuesday, June 23, 2009

iPhone software

I've found some very useful free iPhone apps, I thought I'd share with other iPhoners.

First, the list of jailbreak apps:
* PdaNet - Use your iPhone's 3G Connection for surfing the web from your laptop (or iMac, if your adsl broke down!)
* NemusSync - As well as syncing your .Mac.MobileMe calendars over the air, sync your google calendars
* GRiS - RSS Reader that syncs your read state with your Google reader account, so you don't have to skim articles in your feeds twice.
* Backgrounder - Let any iPhone app run in the background...
* BossPRefs - fast access to turning wireless etc. on/off as werll as SSH, Mail Accounts
* Cycorder - Video Recorder
* Macman - Accelerometer controlled pac man - very cool
* Stumbler Plus - Look at your local WiFi networs in detail
* MIM - Change your network name to something useful (Mine says "Matt's" to identify my phone from andrews...)

Regular Apps that are useful
* Shazam/Midomi - Identify any song playing over the speakers or the radio, or even (if you are good enough) sing it a song and it'll tell you what it is.
* Dual Level - spirit level - yet to use this for real, but cool
* AirSharing - Make your iphone appear as a network drive to copy thigns from/to over wireless
* BOMRadar - check the rain before cycling home
* SydTraffic - live feeds from RTA's traffic cameras
* IceTV - Remotely program your EyeTV (What, you don't have one???)
* GPS Tracker - Track where you've been on a google map - also gives average speed, length etc
* Remote - Control iTunes

Anyone got others they've added that are really useful?


Welcome, Visitor, to my Blog!

Welcome, Matt, to the world of Blog Posting!

Always wanted to have a blog. Mostly for when I came across something in the world that bugged me badly, so I could have a public rant about it.

I got an account and wrote a few drafts of things that had bugged me recently I wanted to rant about, then thought, but what will I write First, that'll have to be good!

Well, instead, I've sat on the idea for months until a issue arose that bugged me so much I have to write Blog about it immediately! But it's not really a good First post...

Well, this is neither good, nor first, but I want to get everything right and often it stops me from getting started, so here goes...

Optus iPhone Tethering Rip-off

I used to use my Nokia N73 as a modem for accessing the internet, which wasn't bad, as I didn't do it too often, so the speed was OK and it would work all over the place, like at the snow and on holidays. Quite handy.

Since getting a 2G iPhone, I sacrificed a lot of functionality for form and usability. Here in Australia, it is GPRS only, and doesn't support access the internet from a laptop, so I bought an off-contract Three 3G Modem to use for my laptop when away from home. It costs me $15/month for 1GB of data and I'm lucky if I use half that in a month.

Now that IPhone OS3.0 supports tethering (accessing the internet from your computer via your phone), I'm thinking of upgrading from the old (but tough and sexy, brushed aluminium!) 2G iPhone to a new iPhone 3GS, so I'm looking around at what the carriers offer.

Optus has updated their pricing plans, to cater for iPhone OS 3.0's tethering capability. The ways that mobile phone carriers come up with to screw customers for new features that cost them nothing staggers me.

If you want to tether your laptop to your phone on Optus (the only carrier that says it supports it), it costs you $9.99. That's $9.99 for something your phone does anyway to use your included data that you've already paid for! They do waive this if you pay more then $9.99 for extra data, but seriously!

So, Note that if you have a normal 3G Mobile, Like a Nokia N73, that can be used as a modem, Optus cannot tell you are using it as such and have no way to stop you, thus no way to charge you for the privilege of using your data as you see fit. Apple have bowed to AT&T (whose network presumably can't support everyone using 3G data services as hard as laptops could) and put in a carrier override feature on the iPhone tethering capability, which Optus are using to blatant money-making effect. I can only recommend jailbreaking your phone and using PDANet (among others, very easy to use!) to circumvent this, but these solutions require you to connect via WiFi, addng load to your battery.

All carriers have or will have iPhones. Only Optus has announced it's iPhone 3GS pricing, but I put together a table of carriers data charges. Note that until last week, Optus' excess data was $2048/GB!

Included Data
Extra Data
100MB ($19cap) - 700MB ($79cap) - 3GB ($129 timeless)
1GB (5GB on $100cap)
1GB (2GB on $114 unlimited)
0GB (based on current plans)
?? $2048/GB ??
Some of the excess charges are hard to find on the carriers sites, so if the links don't make it obvious it applies to your plan, call them to check (especially for Virgin!)
Three will have the iPhone 3GS in July, but I'm basing their rates on their current plans.

Note also, that you should check out coverage (Three is in capitals only). I read that Optus are extending their 7.6MB coverage countrywide, but anecdotal reports have their speed and 3G coverage being less than exemplary. And i's not known if the iPhones frequencies of 850/2100 support Optus' 7.6MB network, which seems to be a dual-band 900/2100MHz network.

From talking to friends with 3G iPhones, I don't understand why they have these problems with 3G and calls dropping out. I never had problems with my N73, it seemed to go from 3G to 2G seamlessly, is this some problem with the iPhone's chipset or software integration? Hopefully the 3GS sorts some of this out, as it may have new chips, with the 7.6MB support.

There's no doubt the new iPhone will give me some sort of tethering ability, but there is also no doubt that there are better phones than the iPhone to do this. All things are a considered trade-off, but in this case I think I'll choose form and usability over function.