Feeds:
Posts
Comments

Here is the books I read for January.

image BlackBerry Planet: The Story of Research in Motion and the Little Device that Took the World by Storm

Available in National Library



This book chronicles the history and rise of BlackBerry devices and the company RIM. RIM shows that the secret to the company’s success is to develop core competency, sustainable innovation and entrepreneurial culture.  A substantial part of the book also highlights on how BlackBerry is used as a effective and indispensable tool in Obama campaigning for president-ship.
image After the Software Wars

Free download at http://www.lulu.com/content/4964815 


This is must read for those who want to get excellent insight into the changing world of Information Technology. A wide range of interesting topics are covered, including Linux, open-source movement, DRM, Google and Java. Basically, all the important things you ever want to know about computer world is covered in this book. Do not miss it especially when it’s free.
image  Programming Clojure

Available in National Library


Functional programming and concurrency are all the rage now as multi-core CPU becomes commodity and trend of the future. Clojure, a derivative of the venerable LISP language running under the powerful Java Virtual Machine, has caught the computing world by storm due to its elegance and uniqueness, combined with unmatched performance. By merging the flexibility and power of LISP with Java, Clojure provides a attractive language for those Java veterans who want to take their skill to another level. And for that, one will need Programming Clojure, the only book currently available for the language. This book provides a great reference and tutorial for those who want to come to speed in learning and using Clojure.
image  iPhone User Interface Design Projects


How does one create a world class attractive iPhone application that is easy-to-use ? What is the thought process in designing and building iPhone application ? What better way to learn about building iPhone application than by learning through actual experience of those who been there.  This book is for those who will want to get valuable insight in creating beautiful GUI for iPhone.
image  Beginning Java Google App Engine


Google App Engine is a disruptive cloud platform not only because of its power. scalability, reliability and ease of use, but also because one can deploy and use application for free compare to other cloud vendors like Amazon. This book will provides a excellent introduction to those Java developers using Google App Engine and explain the concept and technology behind the engine.

Do you know what it means to be a innovator ? According to Professors Jeff Dyer image and Hal Gregersen image , it means to develop a set of skills and traits that necessary for creative innovation.

 

Dyer: The first skill is what we call "associating." It’s a cognitive skill that allows creative people to make connections across seemingly unrelated questions, problems, or ideas. The second skill is questioning — an ability to ask "what if", "why", and "why not" questions that challenge the status quo and open up the bigger picture. The third is the ability to closely observe (observing) details, particularly the details of people’s behavior. Another skill is the ability to experiment (experimenting) — the people we studied are always trying on new experiences and exploring new worlds. And finally, they are really good at networking with smart people who have little in common with them, but from whom they can learn.

Fryer: Which of these skills do you think is the most important?

Dyer: We’ve found that questioning turbo-charges observing, experimenting, and networking, but questioning on its own doesn’t have a direct effect without the others. Overall, associating is the key skill because new ideas aren’t created without connecting problems or ideas in ways that they haven’t been connected before. The other behaviors are inputs that trigger associating — so they are a means of getting to a creative end.

Gregersen: You might summarize all of the skills we’ve noted in one word: "inquisitiveness." I spent 20 years studying great global leaders, and that was the big common denominator. It’s the same kind of inquisitiveness you see in small children

To read on, click here

Important: This version is not the official release by the original author of NanoXML (http://nanoxml.cyberelf.be/). It appears that the development for NanoXML has ceased.

Issue in NanoXML

Back in 2008, a version of NanoXML v2.2.4 is “unofficial” released to add comment feature (Javalobby mirror). However, there is one problem that persists which prevent developers from using NanoXML to manipulate xml file. The developers might use xml file for to store profile for their application and will need to manage xml file (etc delete, rename, add). However, it turns out that NanoXML is locking the xml file while waiting for the Garbage Collector to kick in and release the file. However the GC is behaving unpredictably and might not release the file as and when the program expects it. The developers will thus want more control over the release of file resource. Unfortunately, there is currently no API to force release of file resource under current release.

NanoXML v2.2.5

Therefore, I have modified NanoXML and released it as  NanoXML v2.2.5 to allow developers to use a specific method to release file resource manually so that the file can be manipulated (etc delete, rename).

  • public void close()
    This will release all file resource that are held up by Reader.

The aforementioned method will release the file resource that is created using the static method IXMLReader fileReader(String filename) in StdXMLReader class.

Example

public class XmlTest
{

// ## means new features added.

    public static void main(String[] _args) throws Exception
    {
        IXMLParser parser = XMLParserFactory.createDefaultXMLParser();

        /*// If pass string, use stringReader
        IXMLReader reader = StdXMLReader.stringReader(“<root></root>”);
         */
        // Pass by file. Important to use toURL method otherwise exception will be thrown.
        IXMLReader reader = StdXMLReader.fileReader(
                new File(“c:/test.xml”).toURI().getPath());
        parser.setReader(reader);

        // parse() method does not include comment
        IXMLElement xml = (IXMLElement) parser.parse(true);   // ## true means parse comment too

        IXMLElement _x = xml.createElement(“newChild”);
        _x.setComment(“This is new child”); // ## Adding comment
        _x.setAttribute(“att1″, “me1″);
        _x.setAttribute(“att2″, “me2″);
        xml.addChild(_x, 0);  // ## Adding at specific position.

        IXMLElement _b = xml.getChildAtIndex(1);
        xml.removeChild(_b);  // Remove tag

        XMLWriter writer = new XMLWriter(System.out);
        // Default for write is excluded comment
        writer.setIncludeComment(true); // ## Include comment at generation.
        writer.write(xml, true);

        reader.close();

    }

}

 

Download NanoXML v2.2.5

The following file contains the full source code and the library jar file. To check on those changes that I have made, you can search for ‘GeekyCoder’ in the source code.

image
NanoXML-2.2.5.zip (93kb)

Released on 6 Feb 2010


Experimenting with “Office 2007” Zoom interface

image

I have to admit that I like the Default FullZoom Level extension which significantly improve on the FireFox’s rudimentary Zoom feature.

Continue Reading »

imageI am always fascinated by Japan’s history and culture. Not only is the country beautiful, but its historical culture is full of vibrancy and elegance. The author image of this blog (wonder if she is a Japanese) talks everything about Japan, visits the heritage site and narrates the history of events, all accompany by abundance of well-captured photos. Better still, you don’t need to learn Japanese because the blog is written in English. So for those who is interested to find out more about Japan yet without burning your pocket, this site is must-visited site.

Pictureimage, Food image  , building image   , relics  , history image, scenery image . This site has it all (http://mananya.jugem.jp/).

Japan is really a fairy tale to me. Look like I need to start saving up to visit this mystical land one day.

imageTaken from http://1.bp.blogspot.com

The following Software and settings are tested on Windows 7. It will also work on Windows XP, Vista.

Introduction

Okay, I understand your frustration of having to read those CHM Help (** CHM refers to format whereas CHM HELP refers to the standalone Help Viewer) that doesn’t offer control over the text sizeimage. It can be torturous and straining to read ant-like text in high resolution screen. There is really a ton of CHM Help out in wilderness that doesn’t have a Font option to control the text size. I baffled me what is in the mind of those CHM producers who couldn’t add the Font option image  to enhance readability as the CHM is supposed to be ubiquitous distributed format that as common as PDF and to be readable over many types of screen, big and small alike.

Despite the PDF been the de facto standard for document distribution, CHM is still a widely popular format due to its simplicity, size, performance and speedy search capability. Unfortunately there is no way to add a Font options in existing CHM Help unless you want to decompile the CHM and regenerate the CHM, which by no mean a trivial effort.

Continue Reading »

Time really flies fast. The end of 2009 is coming soon and soon we have a new year ahead. And with this, I like to end the year with this last post for the year about the books I read from October till December. Sound pretty lame and dry post to end the year though.

image This book chronicles the history of software programming languages (eg C++, Basic, Java) which contribute to innovation and advancement of software and internet industry. By studying the history of programming language, one can come to appreciate the amount of thinking and work involve in developing a programming language.
http://www.amazon.com/Go-Superheroes-Software-Programming-Internet/dp/1861972431/ref=sr_1_1?ie=UTF8&s=books&qid=1262243005&sr=1-1
image This is a excellent book on business case study of various technological companies competing in the volatile, unpredictable and fast-growing internet-based Information Technology industry. Many disruptive companies like Netscape and AOL are profiled and critically analyzed for their strategies and business models.
http://www.amazon.com/Winners-Losers-Creators-Casualties-Internet/dp/1590202759/ref=sr_1_4?ie=UTF8&s=books&qid=1262242627&sr=1-4
Available in National Library
imageFor those who strive to be better passionate programmer should read this book. The pragmatic and practical advises given by the author is shared by his own experience, which make this book a valuable companion throughout the course of programming career.
http://www.amazon.com/Passionate-Programmer-Remarkable-Development-Pragmatic/dp/1934356344/ref=sr_1_1?ie=UTF8&s=books&qid=1262242328&sr=1-1
imageGoogle has to be the most popular technology company apart from Microsoft to garner the interest of book publishers. Almost every year, you bound to see a new book written on the company, its founders and business. Still, this book provides interesting read on Google and distinguish itself by placing more focus on the founders themselves. For those who are fascinate with Google and its rise to power, this book will not disappoint.
http://www.amazon.com/Inside-Larry-Sergeys-Richard-Brandt/dp/B002XULXWO/ref=sr_1_1?ie=UTF8&s=books&qid=1262240741&sr=1-1
Available in National Library
image JavaFX is still relatively a new RIA technology which differentiates itself by using a unique and easy-to-learn scripting language, and by leveraging on the  Java platform. However, the technology and language are still evolving. A book by Manning, a book publisher with reputation for delivering high-quality technology book, therefore comes at the right time. Simon’s concise and cohesive style of writing does make JavaFX learning a very positive experience. This is a must-have book for those who want to learn the in-and-out of this promising technology.
http://www.amazon.com/JavaFX-Action-Simon-Morris/dp/1933988991/ref=sr_1_1?ie=UTF8&s=books&qid=1262241763&sr=1-1

Last but not least,

Goodbye 2009. Welcome to 2010

Tested on
- Windows Vista/7
- NetBeans 6.71 with JavaFX

If you need to customize the AutoIt script , you need to install the AutoIt v3 environment (http://www.autoitscript.com/)
Note that AutoIt ONLY works in Windows environment.

Issues

NetBeans is the official IDE for JavaFX development. However, the latest v6.71 (or beta 6.8) of NetBeans is unable to beautify JavaFX Script (JfxScript) code as the “Format” option is not working (It just do nothing.  See Bug acknowledgement).

The code beautifier is one of the most important tools for learning and using  JavaFX as most raw code copied from Internet/ebook tends to be unformatted, making it hard to read and use. Performing manual format is just too tedious. So until the next NetBeans’s release, users have to resort to using painstakingly manual code formatting .

Code beautifier turn this (The following JfxScript code is formatted in NetBeans ! Read on to see how it’s done.)

image

into this

image

Continue Reading »

imageimage Back then in 2003, Toshiba Portege M200 Tablet PC notebook reigns as one of  the most innovative and beautifully designed Tablet PC (TPC)  notebooks. With black-coated magnesium chassis and the highest screen resolution (1400×1050) display housing the state of art components, the attractive-looking Portege M200 is undoubtedly a work of timeless beauty and engineering, which even today continue to attract buyers who want to own a piece of this classic.

However, like any computers, the technological marvel of today will be obsolete tomorrow. Traditionally, the notebook vendors support a computer notebook for 5 years for driver update and repair. Hence, M200 has enjoyed its heyday running Windows XP and Windows Vista. However, with Windows 7 image , Toshiba no longer support M200 in term of updating compatible system software and optimized driver. With no official support, Windows 7 no longer can take full advantage of the hardware capability for performance and functionality.

Continue Reading »

image The truth is that there is no direct way to remove the maximize button off the  Resizable JFrame as it is created by Windows and it is not painted using Swing so U can’t touch this.

Still many posts on the net are giving “creative” suggestions on how to remove the maximize button of “JFrame”. The simplest and yet effective solution is to replace JFrame with JDialog as the latter does not have a maximize button. Other feasible “Java-based” solution is  remove the title bar and painstakingly implement customized title bar.

Continue Reading »

Older Posts »