Skip to main content


Better Samsung DeX Experience

Samsung Dex is a pretty amazing technology that turns phone into a full fledged desktop PC. The original device costs about $150 but has some limitations such as not being able to use headphone jack and basically having the phone locked down.

A cheaper, and arguably a more functional device can be had for less than $40 with things like the Melopow Doc that leaves the device in a more usable state with full access to the devices ports at a much better price.

And while using DeX, make sure to use the fantastic Dex MaX app to add support for fullscreen to all your apps.

Happy DeXing!

Recent posts

Programming for Kids

I have started to see if I can get my 7 and half year old son interested in programming. This has been quite an educational experience for me. I have always had fond memories of myself self-learning GW-BASIC as a kid in the early 80s. So I was on the look-out for a modern way to teach programming for the young minds.

I started with the usual suspect of MIT's Scratch project. However for some reason, beyond structured learning through tutorials, my kids were not too attached to the setup there. I was finding that the environment was too abstract in some sense - for example it expects you to be familiar with messaging passing techniques to do any form of mildly interactive programming. Regardless, it is a good starting point.

Similar to Scratch, the GUI based programming available with Lego's Mindstorm EV3 got my attention. Unlike Scratch, this can be an expensive venture but the physicality of actually moving parts can help connect young minds with programming concepts. And it…

Tripping on Convention over Configuration

It is with dismay that I sometimes find the trend of moving traditional configuration heavy programming models to convention based troubling. Case in point - I've been trying to adopt the newfangled Spring Data based repository framework. It's been working wonders and I got the QueryDSL support and naming convention based query generation going.

After creating a bunch of these repositories, I ran into an issue with one of my custom repositories. It was not recognizing that a method in the custom repo is part of the custom side and not to be a candidate method for spring to do its voodoo magic. For some reason Spring thought the method is a property of the entity bound to the repository. After digging through the Spring code base and spending a lot of time, it finally was clear why this was happening: I had made a typo on the repository naming and the "y" was missing from custom RepositoryImpl class. If only Spring was smart enough to tell me that this is what was ca…

Why Microsoft fails on Usability with Win8

GWT: Emulate tab on Enter

Sometimes users expect text boxes to move focus on to the next element after pressing Enter, similar to most spreadsheets. If you are using GWT and jQuery, here is a little snippet to help you along:

publicclassAutoTabbedTextBoxextendsTextBoximplements KeyUpHandler { public AutoTabbedTextBox() { super();         addKeyUpHandler(this);     }
@Override publicvoid onKeyUp(KeyUpEvent event) { // emulate tab on key if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER)             focusNext(event.getNativeEvent());     }
publicnativevoid focusNext(NativeEvent event)/*-{ var inputs = $wnd.$(':input:visible');             inputs.eq(inputs.index( + 1).focus();     }-*/; }

Microsoft Error Reporting crashed on Mac!

Just got this on my Mac:
Should I report the crash of the Microsoft Error Reporting to Apple??

System Overload!