Archive for May, 2007

Nobody Cares About Software Engineering On a PC

Thursday, May 17th, 2007

MX1000I have recently purchased an amazing piece of hardware: Logitech’s MX1000 Laser mouse. Quite frankly, it’s the best mouse I’ve ever owned - for plenty reasons; it’s somewhat heavy and comfortable, is rechargeable, has perfectly engineered sliding pads, and most notably - it measures its own movement using a laser. I happen to program real-time thermal and chemical controllers for a living, and I can really appreciate this fine piece of hardware . It’s controller chip program was probably very well written , hundreds of engineering hours put into it’s hardware and software design, and it was optimized for minimum power consumption by some of the brightest electrical engineers in the field. These are merely my assumptions, based on the mouse’s performance, but who knows, maybe there is a team of 100,000,000 monkeys that just happened to put it all together.

Just like the one that wrote the drivers for this amazing piece of hardware. It really seems that nobody takes time to optimize software these days, everything is built upon some API of API of a wrapper of some Library of an API . This is the only explanation I can find for having a 10 Megabyte resident mouse driver.
Now maybe it looks normal for kids that never saw software that had to FIT INTO A CERTAIN AMOUNT OF MEMORY or not be able to run at all. And regarding hard-disk space requirements…. Great games like Transport Tycoon fit into 11 Megabytes. If any so-called software engineer would re-write this game nowadays, it would take 550MB on the CD and 250MB memory for the world to run in .
I am not writing now about the “Good ol’ days” when men were engineers and women were secretaries. I am talking about less than 10 years ago, when software had to be efficient and compact , or at least avoid being overbloated beyond any proportion. Ten Megabytes for a mouse driver is ridiculous. If hardware engineers would be given the same treatment and level of compromise for their hardware design, my mouse would probably come with a 10 kilogram battery, a massive heatsink and would work on only surfaces within a certain reflective range.Oh, And would probably blind me permanently in case I’d flip it over to see the Laser thingy.

A finger to the MPAA.

Tuesday, May 1st, 2007

09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0.

MPAA is trying to get this number “censored” and sending takedown notices to anyone hosting it, ranging from simple Blogs to Digg news items. Here’s a hint- numbers can’t be censored, or trademarked - this is actually one of the reasons the Pentium trademark was born(instead of a 586), because numbers are hard to “defend” as intelletctual property of any kind, and certainly as an encryption key, which is a natural use for a number - a mathematical operation.

Quoting an awesome Slashdot comment …

This is merely a very famous (from now on, hint, hint) number theory curiosity:

09F911029D74E35BD84156C5635688C0

is the hexadecimal representation (with leading zero to round off to 32 hex digits) of

13256278887989457651018865901401704640 decimal

which amazingly enough, is equal to the huge prime number

13256278887989457651018865901401704613 + 3^3 (i.e. + 27)

Astonishingly, the next prime after that is only 31 away, so our famous number can also be represented as

13256278887989457651018865901401704671 - 31

It is also very interesting because it is also equal to the product of the following prime numbers:

2^6 * 5 * 19 * 12043 * 216493 * 836256503069278983442067

Truthfully, when was the last time you saw any remotely similar number? Never, right? We better record this for mathematical posterity!!! :-)