Posted: 2011

Java Global JFrame Key Listener

Do you know what happens when you add a KeyListener to JFrame to capture global keystrokes? Nothing. Much to my frustration, I discovered recently that KeyEvents are not bubbled up through the JComponent hierarchy by default. The only component that consumes the event is the one currently focused.… Read the rest

PHP Puzzler: Forgetful Variables

Today I present to you a PHP puzzler that in fact had me stumped for a day or two. I do enjoy when a language throws a curve ball; it presents an opportunity to gain insight on the mechanics and become acquainted with the nuances of the language in question.… Read the rest

Java 7 launches – new language features introduced

Java 7 is now officially available as of July 28th 2011. The intent of this blog entry is to introduce the new language features. For further details, consult the Java 7 SDK. Binary Literals Underscores in Numeric Literals Strings in Switch Statements Type Inference for Generic Instance Creation Try-With-Resources Improved Exception Handling Improved Compiler Warnings and Errors When Using Non-Reifiable Formal Parameters with Varargs Methods Binary Literals [Official Docs] Long awaited, Java now allows for integral literals (byte, short, int, and long) to be expressed in binary.… Read the rest

Readable Code vs Compact Code

Inspired by a thread on Facebook to which I contributed, a few words concerning readable code vs compact code. When writing applications, a common scenario involves setting a variable from some external source. What immediately ensues is a check to ensure that our variable has some meaningful value.… Read the rest

Website slideshow made easy with jQuery

Original article from http://planetjon.ca/2011/07/12/website-slideshow-made-easy-with-jquery/ I just wanted to share this gem that I stumbled upon. If you’re looking to add a slideshow or image slider to your website, this Cycle plugin built on jQuery is a really painless way of going about it.… Read the rest

Code Commenting – a delicate art of balance

Taken from my reply to a post regarding the topic on Facebook, a few words introducing key guidelines I follow when commenting my code. Regarding classes, I like to provide a class summary stating the intent and purpose. Accessors, Mutators, Constructors – I don’t feel the need to comment them as their roles are (and should be) rather self-explanatory.… Read the rest

Array unpacking in PHP

One of PHP’s less known language constructs is list(), very useful for unpacking indexed arrays. Consider the following simple example denoting its usage: <?php //populate an array with values $record= array('me', '1.800.123.4567', 'me@example.com'); //unpack the array into variables, skipping the phone number list($name, , $email) = $record; //print the output echo("name: $name; email: $email"); ?> This clean, readable, scalable approach is great for processing data records, unpacking an SQL result row, etc.… Read the rest