One of the things I love about our i3 is the ability to code it. BMW built in tons of options that can be changed to fine tune this state of the art machine to your liking. We, software engineers, love tinkering with stuff.

One of the things I hate about our i3 is how BMW decided to code it for north american market. It is common knowledge by now that several decisions has been made to please CARB and earn zero emission credits. It is suspected (although nobody confirmed ) that to fully comply with CARBs requirements BMW needed to make sure that the car’s gasoline range is lower than it’s range when it’s powered by electricity alone. To accomplish that they lowered tank’s capacity (from 2.4 US gal to 1.9 US gal). We, software engineers, hate when accountants win.

We, engineers, on the other hand, instead of complaining, try to design and develop solution. First question was ‘how did they lower the capacity’? Natural answer would be ‘different tank’, but further examination revealed that both EU and NA built i3s share exactly the same part number for fuel tank. So maybe they have inserted something in the tank to lower the capacity? But parts diagrams show zero differences, no bigger fuel pump, no additional plastic fillers.

Hey, how about software solution? What if the engine was being turned off despite some fuel still being in the tank?

Few minutes spent on browsing coding options reveal that there are two options with very, very suggestive names:

Recently I’ve noticed that my Preferences started behaving strangely. Only main panes would open, but no secondary windows would work. For example I could open network preferences and delete all interfaces, but clicking plus button to add new did not work. Which quickly left me with no network on my machine :-)

Some googling later and it seems to be an issue carried over from times when my machine had Leopard installed and some preferences were saved on the disk and carried over. Here is the fix:

Recently while working in Zend Studio I had couple of crashes that I finally traced down to it running out of memory. After searching around I found that you can bump up it’s default settings by editing it’s .ini file.