Yesterday morning, my laptop refused to start up. No bios, no boot, not good… Fortunately the HP NC6000 is a business laptop, so it came standard with a 3-year international on-site warranty. I phoned HP support and within 10 minutes they had scheduled an HP engineer to come by today. This morning the engineer appeared with a new system board. In no time flat he had disassembled the whole laptop, replaced the system board and re-assembled the whole dang thing.
Because I’m ever-so-slightly WABbing and because I like this software: Coperinic Desktop Search 1.6 has just been released. An important new feature is the “pause indexing when running on battery power” option, especially useful for laptop users. I used GDS for a while, but Copernic offers finer-grained control over what’s indexed and what isn’t. Together with the laptop-friendliness aspect, Copernic makes a convincing pitch.
Now I can bore you to death by sending these senseless MMSes directly from my cellphone. procmail picks them up, passes them to moblog.py (a little script that I slapped together) which then parses the mails and posts them to my weblog via the xmlrpc interface. Yes, I know moblogging was hip 3 years ago. I *like* being behind the times.
It’s 19:00, you’re at home and relaxing with the family. The telephone rings and someone does his or her best to sell you something that you REALLY don’t want. The only effective way to get rid of the caller is to be nasty, as these telemarketers are paid and trained to be irritatingly persistent. In any case, your perfect evening is somewhat blemished… As is the case in many modern countries today, the Netherlands has an opt-out or no-call list.
Anyone who knows me even moderately well knows that I adore Python. However, once again it seems that nothing’s perfect. Python uses a global interpreter lock, or GIL, to ensure that multiple threads don’t mess up interpreter state too badly. This means that only the thread that holds the GIL can run the interpreter at any specific moment. In investigating possibilities for the next generation of DeVIDE, I was considering threadifying the whole deal in order to enable the user to steer processing pipelines whilst they’re processing and in order to detach the GUI completely from the processing backend.
If you feel like doing me a favour and you have a gmail account, login, click on “Help” at the top right, then click on “Contact Us” on the left and then on “Suggest a feature”. You could also just go directly to https://services.google.com/inquiry/gmail_suggest/ of course. Now check the “Customize ‘From:’ address/create an account alias” box, fill in your email address at the bottom and click on “Submit”. Maybe YOU are destined to be the user that breaks the Camel’s back, or something.
WHOOHOO! My Ph.D. thesis has been officially approved by my advisor and by my promotor. Now it just has to get through the 5 external examiners and then, if everything goes according to plan, I will be standing in that scary little room across the road in a few months trying not to get verbally ripped apart by the opposition. I really must remember to acquire a set of asbestos underwear for the occasion…
Oh joy! My internet provider has secretly doubled my bandwidth, leaving me with a healthy 4Mbit/s down and 1Mbit/s up. I couldn’t help noticing the 440 Kbyte/s as I was apt-get installing j2re on my little CentOS server.
I finally caved in and upgraded my sweet little Celeron 300A Linux server. Yesterday, after a brief planning phase, Paul and I jumped into his souped up Toyota Corolla and tore, Ronin-style, through the streets of Delft on our way to Informatique in Bergschenhoek. Wallets considerably lighter, we returned with several items of brand new hardware. My little Celeron server has now been upgraded into a somewhat less timid Athlon 64 2800+ Newcastle core (130nm) on an Asus K8V-X motherboard with 512 MB PC3200 DDR ram.
In a previous blog entry, I did some extremely informal benchmarking with Lush, OCaml, Python and C. I’ve now added two new Python tests: one with Psyco, a JIT-like solution that takes almost no effort to add to existing code, and one with Pyrex, where one can code extension modules in a language that looks just like Python but has types. These modules are then translated to C and compiled into Python usable extension libaries.