Woot? 2012 ALREADY???



Wow, been a while since my last blog went up...
What I've been up to:

  1. Starcraft II - Chapter "Climbing the ladder to Silver League"
    • Wow... How did these people manage to manage so many stuffs in a split seconds??? I'm furious!!! 
    • Hehe, on the top 8 of Bronze League (which is the sh*ttiest league rank)
  2. "TheGame" Studio - (name to be revealed :) )
    • Polish the darn Android game
    • Legal issues, payment processor findings, reading up "Marketing 101"
    • Oh... Gonna begin registering a domain name and set up the entire "one man army" studio
  3. Chinese New Year!!! Hooray!!! HUAT AH!!!
  Good luck, and HAVE FUN!!!

Nearing completion, getting tired, and happy Mother's Day!!!

Wow, a WHOPPIN' QUARTER since my last post... But hey, its all good, why?

 Marketing is about to be started, project is nearing testing phase, assets are coming along really well AND I'm a little tired... :). Ah... The last one wasn't "all good", but hey, its most good ya...

Actually, maybe I'm "tired" of being alone? Really, who'd you go to when you achieve something great? Who'd you go to when you feel sad, lonely? Who'd you go to when you have lows in your life? Who would you go to when you need support in making decisions? Maybe I need pretend to be strong for a little more while, a little while until the project is completed, then I should stop pretending and start looking at this "fatigue" more seriously... Or maybe not, and I should seriously get this "fatigue" fixed?

I used to be a guy who's so sure about things - Life, money, relationship, love, family, and yeah, dogs and cats... After working for a couple of years, I'm not so sure anymore... Is it me? Or is it life and job changes everyone? I don't know, but I guess I'll find out soon... Soon enough...

And its Mother's day in Malaysia today, wish all great mothers a happy Mother's Day :)

Waste of time

Often times we hear people say, "you're wasting your time". Please, Define waste of time.

Is watching movie a waste of time? How about playing games? Oh, facebook, is it? Or maybe blogging, twitting?

Personally, I define "waste of time" as not balance.

- Balance -
Striking a balance between work, and "Rest and Relax". Anything that makes you unbalance, is called waste of time. Overloading yourself with work, is a waste of time. Spending a whole day playing game, neglecting your work, time with your family, is waste of time. Spending a couple of hours on it, and its called taking a break from your life...

Same goes for reading: Some considers reading not a waste of time. I've seen a bunch of people read the book entire day, doing nothing else. Thus, do you think that "Addicted reading Harry Potter" not a waste of time? I don't think so.

0.5 years... Where have you been?

Been long since I last blogged... Suddenly have the urge to do so, likely, this will be a no content blog...

First off, game...Where's your game??!?! It's getting there, but not done. I've finally managed to get some asset up and running, so I do no longer see boxes and spheres. A simple level loader is also created, so that I can start designing levels... On the other hand, the base game logic is not up and running yet. Character can move, but there's no action other than moving or jumping... Ah well...

Also, I found that developing game on Android takes much less time, thus I'm currently focusing on developing on Android, a simple, hardcore, precision driven game... Details, soon :)

Last but not least - Life cycle of new engineering project:

Guy A: Hey dude, lets create project A so that its scalable
Guy B: Sure!!! Let's put 10 months of work here
12 months later...
Guy A: Hey dude, we've gotta develop a new framework so that our solution is more scalable!!!
Guy B: Yeah, even though project A is scalable, it's not enough, let's scrap it and rebuild a new project A so that it's scalable, 10 months of work!!!

And thus... The cycle continues :)

Software engineering... Cross Platform... Java? Not really...

Software are often times used across platform, Windows, Linux, Mac OS, BSD, etc. The list goes on and on, but there're quite a number of ways to fix the problem. Java, once promised "build once, run anywhere", but it doesn't seem that it's true. There is an article which doesn't relate to cross platform mentioned:

"The cross-platform promise of Java is a lie, I had to find that out the hard way, and the questions regarding Java installation and claims that OS X just didn't start it, together with abysmal performance on Linux, were really discouraging. Cross-platform should mean "build once, run anywhere with no adjustments". It just doesn't work out that way in Java's case though."

Here's the link: http://blog.wolfire.com/2010/04/Reverse-Engineering-Binary-Files


I've never been a fan of Java, doesn't like the virtual machine it runs during execution. It feels unnatural compared to native executables. Even with Java, you'll need to take care of a lot of details, one of the main "pain" is the file handling and the next line. C can also be cross platform if carefully programmed. Thus, why the extra layer of "virtual machine" that eats away all your resources and performance when the same native executable can achieve the same result? (We'll talk about performance... Next time :) )

Cross platform can also be achieved when one uses cross platform library. The most basic thing to do is to just use ANSI compatible libraries (low level libraries, that is). Also, use more cross platform (AND mature) wrappers when making application, such as wxWidgets, Qt, instead of Cocoa, MFC, .NET etc.

In our case, although the game we're developing will be initially be released on Windows, we use cross platform compatible libraries - Ogre3D, bullet physics, OpenAL, etc. Why? Moving across platform is partially a "requirement" in software industry. Even steam is moving to Mac OS X, and I think they'll be moving to Linux as well (well, one day).