Month: December 2004

Terra!

Terra! has been a nice surprise. The story is simple, after WW6 earth is a deserted land low on power resources where humanity is constantly fighting against the cold and snow, but with parties uttermost fighting against each other. A new planet is discovered and it seems to allow the life as it was intended to be. Quickly an expedition is set up by the Sinoeuropean Federation. Rushing after this spaceship there are two chasing spaceship, one from Amerorussian Empire and one from the Samurai Empire.Benni’s style somewhat resembles Douglas Adam’s, but where Adams goal was a comic intent, Benni is more concerned about humor. This approach let the author to convey more thought provoking messages.

Decipher

The plot is intriguing – set in the near future. While the weather and the environment is getting worse and worse, the human kind discovers some ancient ruins that are likely to be what is remaining from Atlantis. Atlantis was a very advanced civilization which discovered the real nature of the sun, which periodically causes destruction and chaos all around the solar system.They prepared an advanced mechanism to save the humanity, but weren’t able to complete it on time, so they left hidden instructions in myths and legends.
As I said the plot is intriguing and the author faced a great deal of documentation work, providing cross references in myths, linguistic and scientific discoveries.
In my opinion there were some aspects that could be developed a bit further, such as the “Rola Corp.” which seems to pull the strings of many characters, or the simplicistic ending of the conflict that was arising.

Core Techniques and Algorithms in Game Programming

This book aims to be a comprehensive textbook for videogame programming courses. At least this is what it seemed to me. It doesn’t contain anything new or complex, but it is a good presentation, offering many references, for all the subjects in this vast field. To the experienced videogame programmer, the book hasn’t much to offer, nonetheless I found a couple of things I didn’t think of and/or I didn’t know about.
For example AI programming with rule system was something out of my experience, both because the consoles on which I programmed hadn’t much CPU power to spare and the games I coded didn’t require an advanced AI, with the notable exception of RogueSpear GBA.
Employing a rule system for RogueSpear GBA could have likely simplified our tasks.
Also the outdoor rendering algorithm is something that was relatively new to me.
To sum it up a good reference book, containing pointers to more detailed dissertations. I recommend it for junior programmers more than seniors.

Bread Alone

I read this on my wife advice, and I thank her because the book is very nice and ties you in until you finish it.It is the story of an american young woman with a passion for cooking bread. The book starts with her first serious boyfriend, going on with the marriage, how it broke and the way she walked to find herself.
Characters have their own personality and behaves accordingly. The story is fresh and inspiring.
Plus you get a number of bread and bread related stuff recipes.

Extreme Programming Explained

Extreme Programming is a software engineering practice, promising to deliver a flat cost line for fixing defects during all the development cycle of the project.The book is very well thought out, providing a crystal clear explanation of all the methodology and the rationale behind.
I don’t agree on every part though I think that there are some practices that are worth studying or using in other environments. For example the idea of running light is very attractive, but having large and or complex system just described by the code itself is, to put it mildly, scaring. Design is needed to point the way and ensuring that the system is evolving in the right direction.
The extensive use of the unit test is a good thing, too often the building blocks are flawed and you discover it only when you need them in some specific situation. Pair programming is one of the aspects of XP that I like the less. When programming I like to have the control, to be free of editing a file in the most messy way I prefer grant that the result is good. Also trying to think alone to the solution and following reasoning path that could be perceived as fruitless by my hypothetical pair.
I wrote a summary (in Italian) of this book.

Fedora Core 3

I nearly forgot I installed Fedora Core 3 both on my old laptop, on my desktop and on my new notebook. Things have quite changed from the first Fedora. Now it doesn’t force you to forget about windows preventing it from booting from Grub. Either it doesn’t mess up the partition table with some excuse. In all three cases the installation was really smooth. I was particularly admired of the new notebook install. Despite of being quite a new piece of hardware the installation worked out fine nearly everything.By “nearly” I mean that I had to manually set the correct resolution for the X Server. The Monitor Configuration failed to determine the resolution by itself. Setting it by hand was easy (just expand LCD panels and select 1280×800), but the video adapter configuration just ignored it. Nothing very bad happened. Just the basic 800×600 resolution was used and the image was stretched to fit the display.
The other part of ‘nearly’ was about the wireless adapter which wasn’t neither recognized nor detected. This seems to be quite common in linux distribution as knoppix failed to detect the card too. A quick search on google pointed me to the driver page (http://ipw2200.sf.net/) which clearly enough explained what to do to install the driver. Despite of the clear and direct explanations (and my quick-reading), everything went smooth and in a few minutes I had my card up and running.
On my previous laptop, an old Celeron 433Mhz Toshiba, Fedora Core 3 installed itself in a fast and friendly way, but it took too much disk space and too much CPU. So I decided to get rid of the GNOME stuff and head for the lighter xfce which is indeed part of the Fedora distribution.
After removing everything that could be removed (even by forcing some printer related stuff into the bit bucket), the system was running lighter, but it was immediately clear that this environment has been destined by Fedora developers to expert users.
First menus were not configured as for KDE and Gnome, missing all application and configuration items. Also some basic stuff such as a battery applet was missing, too. Finding a battery applet is quite straightforward, retyping the menu configuration is a boring task.
What is quite clear today is that if you want to make your Linux box out of some outdated hardware you have to be quite skilled in cutting off what is not needed and selecting the exact stuff that does what you need regardless of the latest version.
This is quite a curious trend if you think that anyway Linux is (at least) one step behind Microsoft in supporting the current generation hardware. So cutting edge hardware is off target, but if you have outdated hardware it requires you a great deal of Linux skill to have a current software to run on it.

New Job – First Day

First day at a new employer. If you are reading these lines then it’s likely that you know me personally and therefore it’s even more likely you know why I changed job. My new employer is Dylogic (but beware, it is spelled “dylogic”, but it is pronounced “Dynamic Solutions” 😉 ), a solution provider in the field of video-conferencing, video-communication, video-answering-machines, and more or less everything that begins with “video” but doesn’t end with “games”.
If you ever dealt with networking and communication you know how many TLA and ETLA are there. In case that wouldn’t be enough, there’s plenty of 3DN and 4DN (invented right now: 3 digits number and 4 digits number). It would be nice to listen a speech between communication experts…
The company is rather small providing an informal and warm environment. On the first day I learned some basics of IP telephony and discovered some amusing facts about the UMTS (AKA 3G) mobile phones. Do you know that video-call in 3G devices is achieved through H324M, which is basically the H324 protocol revisited. The amusing part is that this protocol is for videoconferencing over PSTN (Public Service Telephone Network), and is not packet based. Not something that makes you fall from your seat… but somewhat unusual in this world of IP connectivity.
On the tools part I’m going to use Visual.NET 2002 along with Vss. Visual 2002 C++ implementation is quite far from the ISO/ANSI standard. Lacking, if memory serves me right, of template partial specialization as the most important flaw. This alone is a major showstopper for STL and the C++ standard library. Microsoft corrected most (maybe all) of non-standard behavior of their C++ compiler with the 2003 edition of Visual .NET.
I’d like to have a look whether interesting libraries (such as boost, spirit, ace, blitz) could work fine with this compiler or to which extent are limited.
I enjoyed an XP installation, that is, to tell the truth, quite straightforward. To be completely honest the hardware was nothing unusual. But what I appreciated is the security assessment performed by the system as soon as it is installed (with ServicePack 2). For example you get informed that no antivirus has been installed and a bright red crossed shield informs you that your PC is at security risk. Another nice feature is the “Install updates and shutdown” option when shutting down the box. If I am right, this option is only present when the auto-updated detects some “pending” updates. In this way the user could instruct XP to auto-update in a semi-unattended fashion.

Half Life 2 – completed

Everything in this finite world has an ending, but some things leave sensations that are going to stay with you if not forever at least for quite a long time.Half Life 2 is among these. I completed it in an addicted play and had a great fun, astonishment, and wonder. This game beyond its limits (a few) and its strong points (many) has been able to deliver thick emotions.
The way opened by HL2 is clear and straightforward, it is possible to have very immersive simulations, fun to play, with a good gameplay and story telling. The technology is not a limiting factor, as someone would like to put, but it is an enabling factor to reach new levels in the interactive entertainment.
About the story telling, I’m quite sure that HL2 has just one single story, you cannot really go out of the railway the authors put there, and there is just a single track. I haven’t found this limiting, instead I think that a clever railway system is able to deliver a better involvement in the player, being able to trigger the right emotion at the right time.
As I said before the italian dubbing is a real shame.
There are a couple of things missing (or maybe it’s just me) – the team of soldiers you get in the second half of the game is not always very intelligent. For Example I’ve been blocked by them under the fire of an automatic gun. They are quite fast to get out of your feet (with a silly sounding “mi scusi” that is “I beg your pardon” in italian), but they are too many times too close to your way. It happened more than once that I lost all the team as soon as I acquired it because they acted if not silly at least not in a very intelligent way.
Also in the second half of the game you keep finding ant-calling-spheres but anywhere I tried I hadn’t been able to gather lion-ants.
And third, I remember of some promo movies, where a soldier is hit by a tentacle just in front of the camera… well I hadn’t find this moment.
But these are just minor annoyances… I’m looking forward HL3 :-).