Font Size: A A A   Layout: Left | Right

58bits - Tech

Six bits short of sixty four...

# Monday, August 25, 2008
Monday, August 25, 2008 4:07:33 PM (SE Asia Standard Time, UTC+07:00) (Other Tech)

UPDATE:  20 Oct 2008 - have spent some time playing with both handsets, and even more time looking at Windows Mobile as a whole. Since I travel a lot, and will not be buying a handset as part of a plan or contract, I'll be buying an unlocked, full retail price device - and have decided to wait a little longer before taking the plunge.

The HTC Diamond Pro suffers from Windows Mobile's clunkiness once you get beneath 'touch flow'. And I can't get past the dialler problem (which not only Nokia solves, but so do both Samsung and Sony Ericsson, each with copy or send to dialer options).

As for the Nokia N96 - they have taken the N81 (and other) style handset, made it wider and thicker for the N96 - and it just doesn't work - feels flimsy and cheap - and definitely not right for the price tag. Nokia really needs to lift their design game, or another player is going to knock them from their number 1 spot. In fact the Samsung INNOV8 (i8510) is already a viable alternative to the N96, and the future of Android based handsets looks very interesting indeed.

UPDATE: 09 Sept 2008 - saw a demo model of the Nokia N96 today - not a working model - just one of the mock-ups they use to show size, design etc. in the shops. Not looking good for the Nokia. The aluminium ring surrounding the front bezel looked very cheap and lightweight. Will wait of course until the real-deal is in the shops.. but it looks like they've produced yet another design that is not consistent with the price tag... we'll see - may have just been the mock-up.

 

Original post...

Getting close to that time again where I'll be in the market for a new mobile device.

About a year ago I dropped back to a POT (plain old telephone) mobile handset - a very basic Nokia 3110c. I had decided to reign in my gadget attachment disorder and wait another generation or two before moving back into the world of multifunction/media/pda/smart phones.

My previous experience wasn't great. A couple of years ago I bought an HTC Wizard - the Qtek 9100 version. Initially I was impressed - and really liked the QWERTY keyboard. But after a couple of very bumpy ROM updates, major disappointment with the Windows Mobile dialer (which continues to this day) and big problems with screen calibration as well as using the touch screen in hot weather - I gave up. Windows Mobile 5 wasn't there yet - just didn't feel right; that combined with my first HTC experience and I figured waiting it out a generation or two was a better idea.

Fast forward to August 2008 - and my choice has narrowed (I think) to the Nokia N96 vs.the HTC Touch Pro.

As an aside - the Apple iPhone is definitely a game changing phone - a very cool device, and I would love to put my hands on one.  But I just can't understand why they don't sell both unlocked versions, and the freedom to choose any media player I like. I refuse to use iTunes, and as Jeff Atwood has remarked - Apple hardware is in reality just a dongle for all your software. Really - I'm especially confused by the locking issue and wonder why trading standards bodies haven't intervened.

Anyway - back to the shootout.

There are - broadly speaking - two groups of mobile device users. Those who want phones with some extra bits including a PDA, and those who want a PDA with a phone. I'm definitely in the "give me a phone that works" camp, and then I'll  look at the extras bits second. The Nokia N96 is in the 'phone first' category as far as I'm concerned, while the HTC Touch Pro has more of a PDA lineage.

On the Nokia side, one thing that has really impressed me is the huge improvements they've made in PC client and synchronization software over the years. The Nokia PC Suite just gets better and better. They've adopted a universal client application strategy which makes a lot of sense. Just one download for all your Nokia phones (your own and your friends' should they want to connect to your PC to transfer files, photos etc). Very easy to install, configure and use and it's worked well for me in terms of synching my contacts and diary with Outlook - which at the moment is about the limit of my PDA needs (although this could change when I finish studies and head back into full-time employment).

The Nokia OS  - both the 'Nokia OS' and Symbian versions - have always been stable and easy to use. The general consensus seems to be that Nokia's operating systems have been more stable and less power hungry when compared to Windows Mobile devices - although the gap in this respect is narrowing no doubt.

To me the only downside to Nokia has been the consistency which which they seem to produce flimsy, ugly, and generally very poor designs. On many of their models I find the buttons and plastic components feel rather cheap and certainly not as firm or positive as I think they should be in the more expensive models - especially the number pads. I was VERY close to taking the plunge on an N95 - but then heard about the N95 8GB and decided to wait. In terms of design at least the N95 8GB was a big disappointment and a step back from the N95. Very flimsy button action, a crowded central button panel and certainly not the look and feel of a 400 GBP, or 650+ USD mobile device. What a shame.

n96 Enter the N96 - I've yet to put my hands on one - but it looks great - and if the design improvements and positive reviews so far live up to expectations this looks set to be a brilliant device. 16GB storage, quad-band, WiFi, micro-SD, GPS and lots else. I've wanted to play with a GPS system for a while as well, although not sure yet whether this will just be the "toy in the phone", or something useful.

 

 

 

htcpro Enter the HTC Touch Pro. I took a quick look at the HTC Touch Diamond while I was in Hong Kong a month ago - and it looked and felt pretty good. I also remember how cool it was having a good QWERTY keyboard in a mobile device during my early days with the HTC Wizard. The HTC Touch Pro has a full five row QWERTY keyboard so typing numbers will be much easier. Windows Mobile 6.1 Pro, Quad-band, WiFi, GPS and an FM radio plus lots more. I'm really looking forward to putting my hands on one of these as well to see if the build quality, keyboard, UI etc. live up to the price tag. That said, and as crazy as this sounds - the Windows Mobile dialer may still be the show stopper. I blogged before on this topic. The problem is that there isn't a way to take a telephone number from a contact, load it into the dialer, and make ad-hoc changes to the number before you dial (like dialing prefixes, dial out extensions, calling cards etc). This is a standard feature on all Nokia devices - the 'Use Number' option. On the other hand - developing software for WM is reportedly easier than for the Symbian OS - so maybe writing a custom dialer will be my first WM dev exercise. 

Another deciding factor between the two is the choice in application software. Since I'm still in the 'phone first' camp - this isn't a critical area for me although I do want good support for mail, IM, VoIP and even a decent Twitter client. Initially I was concerned about Symbian support in this area - but having found both Gizmo  (a very cool universal SIP based IM and VoIP client), as well as  Fring (another very cool universal IM client with Twitter support) I think I'll be ok if I decide to go with the Nokia.

In either case these are both Q3, Q4 devices in this part of the world - so it will be interesting to watch the reviews shape up and see how the two fare before making a final decision.

In the longer term (and unless projects like OpenMoko and the Neo Freerunner really start to gain market share) - I'll almost certainly be headed over to Windows Mobile Android. Either I or MS will fix the dialer, and the opportunity to easily build client apps that fit nicely into LOB and other connected systems will make Windows Mobile hard to resist as a development platform for much longer.


Comments [0] | | #  
# Monday, August 18, 2008
Monday, August 18, 2008 9:16:17 AM (SE Asia Standard Time, UTC+07:00) (SQL Server | Utilities)

A recent tweet led me to an Alt.Net Canada video - which was discussing the build process, build skill-sets and the complexity of maintaining a large build scripts. In the middle of the video - a guy with a ThoughtWorks t-shirt on mentioned a toolset that amongst other things, helps with database change management (from development, to testing, to release). The project is called Tarantino Database change management and it looks really good. I LOVE the solution statement... 

  • Each developer using their own local database to do their development work.
  • Each environment using it's own database. i.e. Development, Testing, Staging, Production
  • Each developer maintains his changes locally. When the database changes are ready to commit along side the application source code, the developer follows these steps:
    • Create a change script that wraps all of the database changes into a single transactional change script. A Tool like Red Gate SQL Compare makes this a 30 second operation.
    • Save the change script in to a folder in your source tree call Update.
    • Commit the change script along with the source code that corresponds to the change.
  • The continuous integration server detects changes to the source control repository than it:
    • It builds the application code.
    • It executes the applications unit tests.
    • Executes the database create task to create a new database with all of the changes that are in source control.
    • Executes the projects integration (data access) tests.
    • Marks the builds a success when all the tests pass.
  • Each developer runs the build script locally after receiving new schema changes scripts from the source code repository.
  • The testers, developers, change management managers execute the script using the Database Update (windows form) tool to run the database scripts against the Dev, Test, and staging environments when the environments receive their next update of the source code. 

About 7 years ago - (and still to this day), one of the most useful on-the-spot mentoring exercises I've ever had, was in database change management. A co-worker showed me the process they'd come up with at their previous employer for giving each developer a local database to develop against, using local work files to maintain their changes (SQL scripts) and then a consolidated SQL release script for combining individual changes, all numbered and versioned against the DB which was matched (and backed-up) against the release version of the application (and all under source control).

I've worked this way every since and I've always been able to track schema changes against releases. That said - not too long ago I was in an office where I was actually accused of 'working dangerously' because I refused to use the 'shared' dev database that all the other devs were using. Ok - so if NOT breaking other developers' build environments, and being able to track and even rollback on schema changes  is a dangerous practice - then feel free to call me Danger Man.

Looking forward to taking a closer look at the Tarantino bits...


Comments [0] | | #  
# Wednesday, August 06, 2008
CBC
Wednesday, August 06, 2008 3:24:50 AM (SE Asia Standard Time, UTC+07:00) (CSS/XHTML)

I got all nostalgic and Canadian this evening - after I took my first good look at the Canadian Broadcasting Corporation's web site. A fantastic site - I was totally blown away. Easily as good as the BBC site if not better and a top level example of brilliant design, XHTML, CSS and JavaScript (including jQuery).

cbc


Comments [0] | | #  
# Sunday, August 03, 2008
Sunday, August 03, 2008 3:34:28 PM (SE Asia Standard Time, UTC+07:00) (Other Tech)

Ok - well I'll at least give Microsoft credit for posting this... but argh....... I tried in vane to find an option from within Media Player for about 20 minutes before Googling. Now that I'm using Ultramon - I want WMP to minimise to the taskbar for the screen it's currently playing on- and not on the main taskbar in mini player mode. Grrrrrr....


Comments [0] | | #  
# Saturday, August 02, 2008
Saturday, August 02, 2008 2:08:07 AM (SE Asia Standard Time, UTC+07:00) (Other Tech)

Having spotted a tweet on Pandora.com - and then of course discovering that Pandora.com is not available outside the U.S., I was inspired to take a proper look at Last.fm. Incredible. Download the desktop app, and the appropriate plug-in for your media player - and Last.fm will "scrobble" whatever you listen to, building up a recommended playlist; similar artists, genres etc. I wonder how Peter Gabriel's venture over at We7 will fare in the same space.


Comments [0] | | #  
# Thursday, July 31, 2008
Thursday, July 31, 2008 12:07:46 PM (SE Asia Standard Time, UTC+07:00) (WPF)

Just like Josh Smith I was looking around for some pre-rolled themes for WPF, and wondered why there was so little activity in this area. I would have thought the ability to take a professional looking UI (adjusted to match an organization's in-house style) would be a popular approach for building new business applications.

wpftheme Although there's quite a bit of work involved in creating a complete set of control templates (for all the required controls; textboxes, dropdowns, checkboxes, tab controls, lists, splitters, scrollers etc.) it can  be done (and it's a great way to learn WPF - even if you only override a few). Included here is a screen shot from my 'learning' WPF application in which I created a nearly complete control template set from scratch - including a custom toolbar strip, and dropdown/context menu system. What's more I give the user some options on basic color themes and backgrounds - just like Windows Live Writer does.

Commercially available themes must surely be on the way. Maybe they're just waiting for WPF adoption to reach higher levels, or perhaps visual designer support to improve. I'd estimate that it would take about 20 person days to complete a full theme set - and that's with a good graphic designer working with a good WPF developer together to assemble the theme.


Comments [3] | | #  
# Friday, July 18, 2008
Friday, July 18, 2008 5:18:34 PM (SE Asia Standard Time, UTC+07:00) (Books)

IMG_2179_02_s You know sometimes I wish I'd been a plumber...

Not all of these are cover-to-cover magnifying glass reads, and this is only a small part of my library - however these are currently at the top of the pile.

Linq in Action has so far been a brilliant book - and it will be a cover to cover careful read. CLR via C# is a must read for anyone that's been programming in .Net for more than a year or two (I'm thumbing through it for the 2nd time in my spare time). C# 3.0 in a Nutshell has so far proved to be an invaluable desktop reference and Joseph Albahari is a brilliant author.  What I particularly like about this book are the examples and gotchas included with every entry; much more than just MSDN in print and much better than an "I feel lucky" Google attempt. With ASP.Net 3.5  I was worried (like a lot of people) that this 1626 page tomb would be just the docs... in printed form; however it is a good combination of reference material and author input. Head First Design Patterns is really a fun read. I've opened other design patterns books, including the famous GoF Design Patterns and various C# flavors - but the format of the Head First series is just fantastic - humorous and educational.

The rest are a mixture of things I'm interested in, things I need to read to try and stay ahead of the avalanche, and things I'll need to read for my course.

Security Engineering (now in second edition) is a classic for anyone interested in computer security and should really be read in combination with Secrets and Lies from the very famous Bruce Schneier.


Comments [0] | | #  
# Wednesday, July 16, 2008
Wednesday, July 16, 2008 8:31:47 PM (SE Asia Standard Time, UTC+07:00) (C# | Visual Studio)

Yet another tool I've been late coming to - JetBrains ReSharper.

While working though Link in Action I was experimenting with ReSharper 4.0. So cool and extremely helpful when looking at delegates and lambdas.

Here's a delegate assignment..

Predicate<DateTime> isMinimum = delegate(DateTime input) { return (input == DateTime.MinValue); };

And here's the equivalent as a lambda..

Predicate<DateTime> isMinimum = input => (input == DateTime.MinValue);

And here's the ReSharper magic that converts from lambdas to delegates and back again...

resharper4


Comments [0] | | #  
# Monday, July 14, 2008
Monday, July 14, 2008 2:16:15 AM (SE Asia Standard Time, UTC+07:00) (Utilities)

Well - I admit it - apart from some installation batch files I wrote when I was a junior helpdesk guy a long time ago - I'm a bit of a late bloomer to the command line.

cmdI've got some time off over the summer before heading back to school in October - and so I've been working through a backlog of to-do items and small projects; the most important of which was finally getting up-to-speed with automated builds, testing and deployment using NAnt, MSBuild and the very cool WiX - which of course leads to the command line and editing build and batch files.

I know Notepad2 and Notepad++ are popular replacements for notepad in the hacking community - but I've become rather attached to EditPadPro - so that will do for now. I've renamed the .exe to ep.exe - and added the path to EditPadPro to my system wide path environment setting.

I also love this post from Scott - Prompt(s) along with PushD and PopD and the very cool prompt tip...

$P$_$+$G Which, when I set it via either the prompt command or the PROMPT environment variable, gives me a command line that looks like this:
C:\data\Projects\flexwiki\FlexWikiCore
++>

TAB AutoCompletion is hot too - and I honestly didn't know it was there. :-(

Last on my list of productivity improvements is a replacement for Windows Vista Explorer - and I'll be trying both Total Commander and [xplorer²] - because Windows Vista Explorer is driving me nuts.

Back to the command line and build scripts... :-)


Comments [0] | | #  
# Sunday, July 06, 2008
Sunday, July 06, 2008 11:56:46 AM (SE Asia Standard Time, UTC+07:00) (Hardware | Other Tech)

Update: In Search of The World's Best Computer Keyboard Part II

For a couple of years now - on and off, I've been trying to find the perfect small form factor mini size keyboard. Like David Bau in his own quest to find the World's Best Computer Keyboard, I came to the conclusion that I really don't want a full length, full size, 101 to 104 key keyboard on my desk. I rarely use the number pad, and when I do -  I don't mind it being separate.

My old keyboards I want my posture to be straight when I'm using my computer - from my back, to my shoulders, to my arms, wrists and hands. I found that when I was using a full size keyboard with a built-in number pad on the right, that the extra length on the right side of the keyboard was causing me to reach just a few inches further than I wanted to in order to use my mouse; just enough to change my posture - and enough for me to feel it in my shoulders and wrist when using my mouse.

So that started the search... and man did I search. I tried a bunch - including an expensive Cherry POS keyboard as well as the ThinkPad Travel UltraNav, but they were all far from perfect. The UltraNav in particular was a disappointment (it's up there in my little keyboard mountain) since it was nothing like the real ThinkPad keyboard in my notebook; the quality, key action and feel was very different.

I don't understand why PC users have such a poor choice in desktop keyboards. If you took the average manufacturer's PC desktop keyboard and tried to put it into a notebook, the notebook wouldn't sell. In fact it was while using my notebook that I realized my posture was better. Not only that but the keyboard in my notebook was so much better than my desktop - it was the famous IBM ThinkPad keyboard - the benchmark in notebook keyboards.

For a while I was using a Deck Legend - and I loved the key backlighting, but this was before my quest for a smaller keyboard. I actually contacted TG3 - the manufacturer of the Deck Legend, hoping that they might be about to update one of their current small form factor models, or possibly modify a BL82 for me into the standard Windows keyboard layout. I was prepared to pay. My keyboard is a tool I use for work, just like a tool any other professional would use in their job.

HP8150W    The first thing you'll discover when you start looking for small form factor keyboards is that there's a variety of different keyboard layouts. That was the first big stumbling block. I'm a CTRL-S freak. I hit CTRL-S for nearly every line I write, code or otherwise - so having the CTRL key in the usual position - bottom left - is important (although I confess I've 'adapted' when using my ThinkPad, which has a function key in the bottom left position - but that's my only complaint with the ThinkPad). The standard CTRL-Windows-ALT arrangement bottom left would be great, followed by, from the top right, down the right side - DELETE, HOME, PG-UP, PG-DN, END, and then the arrow keys. This is the layout used by most notebook manufacturers these days and it would be good to have a matching desktop and notebook keyboard. The HP 8150W (shown) has a good keyboard - although I whish they'd put the Function key to the right of the spacebar.

The other thing you'll discover when looking for a keyboard of any size - is that most of the models advertised online don't have a good quality larger version picture of the keyboard. It was pretty hard to figure out how the keys (especially top row keys) were arranged before shortlisting a keyboard for purchase.

I've also looked at the growing number of media keyboards that are slowly coming onto the market. The growth in home media centers means that more people are now actually looking for smaller (and wireless) keyboards - but again - quality, keyboard layout and in particular function keys vary a lot. I've looked at the Logitech diNovo Edge - which is just a fraction wide, and the key action wasn't quite what I was looking for - but it was close. Also the Microsoft Wireless Entertainment Desktop 8000 - another close call - but again, a little wide and poor function key support since the function keys are in a flat membrane key strip across the top.

Slimblade Media Set My current keyboard (and mouse) is the Kensington Slimblade Media Notebook Set. So very very close. The layout is almost perfect. I wish the function keys were full-size - but they work. Key action is superb and the closest so far I've come to feeling like I'm on a ThinkPad. The right side key arrangement is a little odd - with END at the top-right - followed by PG-UP, PG-DN, INSERT, DELETE and then the arrow keys. It's taken me a little while to get used to the DELETE key in this position. Still - this is the closest I've come to finding the perfect small form factor keyboard. Kensington have always made good quality accessories. Want to know why? Well I think it's because they make accessories for the Macintosh as well. And Mac users, having become accustomed to brilliant design and ergonomics, wouldn't tolerate a low quality accessory (in fact I popped into a local i-Studio Mac shop recently and saw a brushed aluminum small form factor keyboard that was just lovely).

So what would my dream small form factor keyboard look like? It would be matt-black brushed aluminum, use the keyboard layout shown in the HP8150W keyboard above - but with full size function keys. It would have illuminated keyboard characters (blue back-lit LEDs) and would totally rock in terms of quality and keyboard action. Until then... my Slimblade will do nicely. I may even give the IBM SpaceSaver II a try (as mentioned in David Bau's article) if I can find one.

While searching - I came across these two very expensive honorable mentions...

The Optimus Maximums from Art.Lebedev Studio. This is an incredible keyboard - would love to put my hands on one, and if they ever make a smaller version with a separate number pad - I'll buy it.

And then there's Datamancer - not sure whether to be scared, or in love with this stuff. Maybe when I'm wealthy, one day - I'll ask this guy to make me a keyboard (the equivalent of American Chopper for geeks - so cool).


Comments [2] | | #