The god of game development – John Carmack – sells Id to Bethseda (or in other words, Doom meets Elder Scrolls).

Cant wait for a post-apocalyptic MMORPG – Bethseda is great with scripting great stories and architecting its games to make end-user contributions possible (for e.g. Elder Scrolls: Oblivion). Id is famous of course with wrenching out the last drop of juice out of graphics cards with its cutting edge graphics engines.  The last time, everyone upgraded their cards en-masse was when Doom3 came out : I would say nVidia is watching what direction this takes (what with everyone predicting the death of desktop gaming).

Id is famous also for open-sourcing its engines, roughly 5 years after they come out (for e.g. the IoQuake3 open-sourced engine). It will be interesting to see how this gets affected.

But ever since John Romero quit, Id didnt really have a story script to its games – like for example Valve with its superb Half Life franchise. The “Source” game engine was probably not as cutting edge as Doom3’s, but what a game!

I hope they are able to deliver something really kickass and scary (I should probably plug for Penumbra: Dark Plague and oh-so-classic System Shock 2 here)

A few weeks back, I had to re-install Ubuntu because of a windows re-install and this time I went 64-bit. This way, I have the flexibility to upgrade to 4GB RAM, which I cannot do with 32 bit operating systems.

However, all over the IRC channels and forums, I see a lot of FUD about how 64-bit OSes use the double the memory for the exact same programs that you were running on 32-bit OSes… because of the doubling of word size.

All that is a load of crap – the actual increase is about 5% or so, with a substantial increase in video encoding, playback and a lot of other application benchmarks.

Program code uses memory allocation w.r.t primitive types like int, int64, char, etc. These retain their sizes and so memory allocation is explicitly same as before. Structs are aligned by the compiler anyways. However, pointer usage (e.g int*, void*) causes doubling of the space needed, since pointers use the native word size of the OS. These are called ” swollen pointers”. Roughly, these amount to 5% of a program’s allocated memory.

So please upgrade to a 64-bit OS if your processor (core 2 duo, turion onwards) allow it. The next generation of MacOS – Snow Leopard is fully 64-bit  only. Linux has been 64-bit compatible for a long time now (and flash-player 10 for 64-bit linux works nicely). Windows 7 is targetted primarily for 64-bit machines, though there will still be a 32-bit release available.

An unbelievable article came out today – Ghostbusters on the PS3 vs 360 – note that PS3 has 8 cores  and is more powerful on paper. But then we have opinions like this where some “suit” at Sony says that they actually want to make it difficult for developers to make games for the PS3. The compilers that the PS3 uses took a long, long time to stabilise, vs the 360.

On the other hand, see what Apple did – it had to convince developers (and by developers I mean Micosoft’s Office on Mac and Adobe’s Photoshop Mac groups) to develop on transitioning hardware : from the PowerPC to Intel 32 bit to Intel 64 bit. They leveraged the power of the LLVM open source compiler architecture (which has now emerged as a competing, easier licensed, less obfuscated version of gcc). They made it easier for the compiler developers to create better compilers.

I own a PS3 and feel it is a really complete system – with user changeable HDDs, Linux supported, etc. but the management is really insane if it keeps on pulling such crap. Why would I want to buy a more expensive console which performs worse? And with Project Natal, Microsoft has gone to the next level with the 360.

Atleast they can open up PS2 backward compatibility for God’s sake – Shadow of the Colossus alone would be worth it.

Are you getting

Buffer I/O error on device sr0

Change your grub boot options to add

all_generic_ide=1

A lot of people come to me moaning about their inability to cross the pearly Gates (or Windows.. ’tis all the same) into Linux heaven because they will miss the enchanting tones of their Zune or iTunes. And just for the record, the Zune 30GB is a player with better sound quality than the iPod – with a pair of high end IEMs, you can detect total silence in a Zune, vs a light hiss on the iPod.

Anyways, the only way about this, without crashing and burning in purgatory is using virtualization. That’s right, you run Windows in a VM on Linux, and use it (via USB) to get a load of all your listening goodness.

You need to follow these steps exactly.

1. Install Linux on your machine

2. Install VirtualBox on your linux machine – make sure you do not install the OSE version and also make sure you have USB support turned on. You can check this by creating a dummy VM (may I suggest the 28 mb Slitaz ISO to test out) and seeing if you can enable USB support and also “create a filter from existing USB device”.

If not then you need to enable USB support. For more info – these links should help. In short

  • sudo gpasswd -a user vboxusers
  • grep vbox /etc/group
    "vboxusers:x:124:user"
  • ## usbfs is the USB group in /etc/fstab file:
    none /proc/bus/usb usbfs devgid=124,devmode=664 0 0
  • sudo /etc/init.d/vboxdrv setup
  • reboot

Now, you need to create a Windows XP VM and check that USB support is working on it.

<begin thin-ice>

I usually go with a stripped down version of Windows XP – like TinyXP or Windows SP3 Performance Edition (a 200mb version of stripped down XP). Of course, these releases in itself are not illegal, however these distros have their own embedded license keys, which makes them illegal. What I do is install these lightweight distros and switch the license key to my own (which I got with my Dell XPS) using various tools.

I shall therefore be focussing on the Windows XP SP3 Performance Edition, which I think is one of the best XP flavors out there.

</end thin-ice>

To install Zune, you need to first install windows update (since the Zune uses WSUS), IE8 (for XMLLite) and the full, large 300mb Zune installer. Install them in order.

Your Zune should be working now with USB support – I even updated my Zune from this VM.

Installing iTunes on Windows is of course, much less anally retentive, so not much to discuss there.

This was tough.. so here’s a quick list:

  • Your sound preferences should look like this:
R51e sound preferences

R51e sound preferences

  • Your alsamixer should look like this
R51e alsa preferences

R51e alsa preferences

  • Install the following

sudo apt-get install asoundconf-gtk gstreamer0.10-alsa libasound2-plugins libesd-alsa0

sudo apt-get install gnome-alsamixer

sudo apt-get install bum

  • Your boot-up-manager should look like this (notice the unchecked PulseAudio) die.. pulse.. die!!
R51e boot up manager preferences

R51e boot up manager preferences

Reboot and enjoy

Very easy – the strategy is to take a huge ignored segment and hijack them with an offering to knock them off their feet.

Huh?

One of the interesting news released today is Nokia prepping an App Store with almost 20K apps. The problem with this story is that it is going to be restricted to the newer Series 60, v3 phones.

However, there exists one platform in this world, that is largely ignored – even by its original creators. This is the Nokia Series 40 platform – designed for midrange phones and is the world’s most widely used mobile platform.

So, how do you take it over? Simple really. Buy Opera Software – create a lightweight Linux stack, prop it with a javascript based runtime (like Palm’s WebOS), make it installable over USB and then…. tie it with Yahoo’s web services by default. Release it as open-source, like Android and sit back.

If I may say so, the most important aspect of such a move would involve typography – nothing jazzes up people more (though they do not realize it), as much as nice antialiased fonts. Which is why Google, got someone to create the Droid fonts for their Android framework.

There is a huge, untapped, largely-ignored customer base waiting to be taken over – the key is a sufficiently lightweight and jazzy looking mobile stack. If Carol Bartz wants to transform Yahoo – this is definitely one way to go about it.

I think the best way to go about this is to build everything from source. There are a few caveats of course, but I hope to clear them up.

Prerequisites:

sudo apt-get install libncurses5-dev libreadline5-dev mysql-server libmysqlclient15-dev mysql-client libssl-dev sqlite3 libsqlite3-dev

Download the sources for ruby, rubygems, mysql-ruby

OPTIONAL: Add this patch to ruby for a 30% boost with pthreads.

patch -p1 < patch.diff

autoconf

./configure –prefix=<release>--disable-ucontext --enable-pthread

make; make install

Set ruby(<release>/bin) onto your path.

Edit: remember to set

RUBYLIB to <release>/lib:$RUBYLIB

Now here’s the interesting step, install readline by

cd <src dir>/ext/readline

ruby extconf.rb

make;make install

cd <src dir>/ext/openssl

ruby extconf.rb

make;make install

cd rubygems

ruby setup.rb

make;make install

gems will automatically come onto your path, since it installs to the same directory as ruby (<release>/bin) above.

Time to install gems. But first create a directory, say “~/GEMS” and set both GEM_HOME and GEM_PATH to it. Also add $GEM_HOME/bin to your $PATH

gem install rubygems-update rails sqlite3-ruby

this should again place rails on your ruby install path

Do a

gem update

to update your gems periodically.

Important Note: if you are using a pre-2.3 Rails app in your 2.3 rails, make sure you rename

app/controllers/application.rb app/controllers/application_controller.rb

It seems Jaunty has a bug working with Sansa players – the Fuze, the E-series etc. It works intermittently in RhythmBox with MTP mode and doesnt work at all in the (more compatible) MSC mode.

The problem is with some of the other probes that are conflicting with this device – I think Ubuntu thinks the Sansa is a webcam for some reason.

anyway the fix is simply – just do

sudo mv /usr/share/hal/fdi/preprobe/10osvendor/20-libgphoto2.fdi ~/20-libgphoto2.fdi.bak

Connecting the sansa device should work now.

The Semiconductor Industry Association issued a press release that the sales for semiconductors in March rose to 14.7 billion USD from 14.2 billion USD, the month before.

One of the possible reasons it comments is that, chip buyers have used up their inventories. Well if that is true, it bodes well for the IT industry in general. You need software to power all those extra chips, and bandwidth to connect them. Let’s hope it keeps going up.