Latest Publications

Color Theory for Designers

I think this is a great read, even for non-designers out there.

Color Theory for Designers, Part 1: The Meaning of Color

Color in design is very subjective. What evokes one reaction in one person may evoke a very different reaction in somone else. Sometimes this is due to personal preference, and other times due to cultural background.

Color Theory For Designers, Part 2: Understanding Concepts And Terminology

If you’re going to use color effectively in your designs, you’ll need to know some color concepts and color theory terminology. A thorough working knowledge of concepts like chroma, value and saturation is key to creating your own awesome color schemes.

Color Theory for Designer, Part 3: Creating Your Own Color Palettes

Here we’ll be talking about methods for creating your own color schemes, from scratch. We’ll cover the traditional color scheme patterns (monochrome, analogous, complementary, etc.) as well as how to create custom schemes that aren’t based strictly on any one pattern.

Singapore Silverlight User Group 1st Meeting

The first meeting of the Singapore Silverlight User Group at HackerspaceSG went pretty well yesterday.

We had Michael Sync talk about the new features of Silverlight 4.0. We had a bunch of guys who came from Microsoft Singapore to witness the formation of this group. We had about 10 people who turned up just to join the group! After that, we had a great discussion on MEF with Silverlight, F# and C# language features, and various other discussions on the side. I thought it was a great night with a good mix of discussions, random thoughts, Mac vs Windows clashes, and I hope that the community loved it.

Our next meeting will be sometime in March, so look out for the announcements! :)

Take a look at some of the photos.

HackerspaceSG: Events of Week 6 (Feb 8 – Feb 14)

There isn’t a lot of events happening this week, in anticipation of Chinese New Year and Valentines Day. However there is 1 important event happening at HackerspaceSG this week.

Singapore Silverlight User Group
Wed, Feb 10 7:00 pm Tue, Feb 10 10:00 pm

This is the FIRST meeting of the FIRST Silverlight User Group in Singapore, and it is also the FIRST time we have a Microsoft-oriented event at HackerspaceSG. Yes. That’s right. There will be a very short lap around Silverlight 4.0, followed by a discussion based meeting. Come and join the fun if you’re writing Silverlight applications, or if you’re interested to find out more.

DigressCast Episode 10 by Tech65

Our Cellphone episode. Whip out your search engine and start looking for all these old cellphones we’ve been talking about.

DigressCast Episode 10: The Cellphone Episode

Lenovo RapidDrive Technology

When Lenovo announced this new RapidDrive Technology that they’ve been working on during CES 2010, I was scoffed it off as another hybrid SSD + HDD implementation that wasn’t anything interesting. That is until I read up more about it from possibly Lenovo’s only article that talks about the technology in-depth – Introducing RapidDrive technology. I realized it wasn’t really just some cheap implementation that uses RAID 0 striping combining both physical drive into 1 “logical” drive, but possibly some interesting optimizations built on top of it to bring out the full potential of an SSD and HDD hybrid. (more…)

HackerspaceSG: Events of Week 5 (Feb 1 – Feb 7)

Yes, I know. This is late. But nevertheless, I will still post this out.

Hackerspace Hack Time
Mon, Feb 1 6:00 pm Tue, Feb 2 12:00 am

We’ve finally set up our security access system and will be activated soon. We also have the following projects being worked on – Sucktionator, Water Rocket, Stop Motion Animation, and many other miscellaneous projects currently worked on by our members. So come join in and hack on any of your projects!

JFDI Presentation
Tue, Feb 2 7:00 pm Tue, Feb 2 8:30 pm

Ever wondered what is JFDI? Still wondering what is happening with it? Come on down for a status update on the progress and future of JFDI.

Singapore Ruby Brigade
Wed, Feb 3 7:00 pm Wed, Feb 3 10:00 pm

Today, we have a face-off between Chef and Puppet. If you speak Ruby and have that dying question which configuration management automation tool to use, then you’ll have an engaging time listening to our 2 resident Arun and Ohad fight it out! You want a match, you’ve got one! Be prepared to draw blood.

LinuxNUS HackFest
Sun, Feb 7 1:30 pm Sun, Feb 7 5:30 pm

LinuxNUS has decided to do a mini CrisisCamp in the good name of helping people. I’m not too familiar with this topic, but feel free to browse this on how to organize a CrisisCamp. It is for a good cause, so come and help out.

How not to write a proposal – Part 1

I’ve been writing a lot of anti-patterns and “not to do” code. I’ve kind of exhausted out my “Code You Should Not Be Writing” series because I’ve completed this project and moved on to another project. So this will be another new series of some interesting quirks I’ve encountered reading proposals, reports, requirements specification documents, etc. I don’t know how this will take off or if I have enough content to even make a series out of it, but let’s just try it out.

First up! Objective statements! Here’s one objective statement I’ve often read in various proposals that should not be followed.

To build an application that is intuitive and user-friendly.

How many of you who have read proposals ever seen these things in objectives? This is not the first time I’ve read something objectives that are similar to that effect.

So how do you write a proper objective then? Let’s first understand what an objective is, and the purpose of writing an objective statement.

An objective is your goal in this project or proposal. It can be to solve a current problem, or to create a tool to increase productivity or reduce cost, or anything along those lines. From Merriam Webster,

an objective is something toward which effort is directed : an aim, goal, or end of action.

So an objective statement is a statement about the end result. Some might argue that the statement mentioned above is a valid end result, building an application that is intuitive and user-friendly. If you can elaborate what kind of application it is, and what concrete measurement of intuitive and user-friendliness that will make your application a success, then that will be a better objective statement.

The purpose of the objective statement is to give you a summary of your problem, your success criteria and additional details that might support your claims. This becomes the “What” of your proposal. Here are some questions you might ask yourself while thinking of what you’re to write for your objective statement.

  • What is your problem?
  • What is your proposed solution?
  • What is the aim of this solution?
  • What are your success criteria?

A lot of your answers to these questions will overlap with each other, and hopefully you’ll start realizing that this is exactly your objective statement.

Here’s what an example of a better (not the best) objective statement.

To build a solution that will at the very least half the time taken to process the business accounting of the company.

Notice that there are several detailed points you can gather from this initial objective statement, which can be elaborated further in sections below the proposal. For example, now I know this project is about a business accounting problem. I also know that the measurement for success is time. Furthermore, I now understand what you’re trying to achieve and I can come up with a rough idea that can solve your problem specifically. Now, with this short statement I know more about this proposal than just the initial statement.

What do you think? Have you read any interesting proposals, or reports lately that is so ambiguous?

Ninite – The Easy Way to Get Apps on Windows

Ninite

Recently, I was just scavenging the web looking for ways to make my life easier because my constant reinstallation of an Operating System, namely Windows 7, takes me at least 2 hrs to do a complete install with my favourite applications (does not include my development environment). One way was to create an unattended answer file to automatically handle my installation, which I’ve yet to figure out installing custom applications during the setup.

Anyway, I found this cool tool called Ninite which will create an installer that will download your favourite apps. All you do is select the apps you want from a list and it will create a custom installer which you can download and start the installer. The installer will download the selected app installers from the internet and install each one with the default settings, saying no to all adware, toolbars, and crap, getting you what you just want, the application.

If you don’t see an application on the list, submit a request and get your friends to do so too!

Try it out. Ninite.

HackerspaceSG: Events of Week 4 (Jan 25 – Jan 31)

We’re at the end of the month and HackerspaceSG is 2 months old this week. We’ve come pretty far these 2 months with lots of good times and many teething problems. Nevertheless, we’re slowly growing and figuring out as we go along.

Hackerspace Hack Time
Mon, Jan 25 6:00 pm Tue, Jan 26 12:00 am

Our regular scheduled reserved time for our members to get anything done is back to Mondays. We currently have the following projects being worked on – Security Access System, Sucktionator, Water Rocket, Stop Motion Animation, and many other miscellaneous projects currently worked on by our members. So come join in and hack on any of your projects!

Take a look at what we experimented 2 weeks ago. We’ll continue experimenting until we get it right.

Show and Tell: 3 Young Indie Film-makers
Fri, Jan 29 6:30 pm Fri, Jan 29 9:30 pm

Today, we welcome 3 young Indie film-makers to showcase what they have been working on for the past 1 year. Lincoln, Teck Siang and Michael will be screening 3 films from their portfolios, all festival awarding winning pieces, followed by Q&A session. It’s open to all hackerspace regulars, vagabonds and passerbys. Just anyone interested to know a little bit more about the local independent film scene… from the perspective of these 3 younglings. Be creative, be critical, and support our independents!

The Weekend
Sat, Jan 30 6:30 pm Sat, Jan 30 9:30 pm

This idea started on NYE 2009 when the guys and gals were sitting in HackerspaceSG, high on beer and bouncing ideas off the wall. The problem we are facing now is that bloggers doesn’t know what the PR folks wants and the PR folks doesn’t know what the bloggers want. So to solve this problem, we decided to have this networking session where people from social media meet together and discuss on how they can work together better. Since we can’t think of a better name, we decided to call it “The Weekend”.

Most Ridiculous Windows 7 Bug

I have some time to sneak in while waiting for my flight at the airport in Singapore, so I decided to post the most ridiculous bug I’ve ever come across.

The Welcome screen may be displayed for 30 seconds during the logon process after you set a solid color as the desktop background in Windows 7 or in Windows Server 2008 R2

Yes. You read that right. If you use a solid color as your desktop background, it will take you 30 seconds to log in. My colleague encountered this yesterday, rebooted multiple times because he thought his computer hung on logging in and caught a virus.

Workaround? Put a pretty picture as your desktop wallpaper. Turn off the Desktop Window Manager Session Manager service. Or download the hotfix in the link above.

Do you think it is ridiculous? I do. If you’re wondering, I’m already in Hyderabad, India by the time this post is out.