Software

Quick Fix: Windows XP Crashes with Blue Screen with Video Content

For some reason, my main working machine, a Windows XP desktop, recently  started to crash a lot followed by the blue screen of death. The error message output at the blue screen does not seem to be helpful.

***STOP: 0x0000008E (0xE0000001, 0xBA490925, 0xA880D820, 0x00000000)
***watchdog.sys - Address BA490925, base at BA90000, Date stamp 480254ab

Display LaTeX Math on Drupal with MathJax

MathJax seems to be the emerging standard for displaying math on the Web at this moment. It is supported by American Mathematical Society and American Physical Society, and has already been adopted by major math related discussion venues such as Physics Forums and Stack Exchange. MathJax displays math using CSS and Web fonts instead of images, so the quality is very high and is resize-friendly. Below are some examples:

Inline math: the geometric product $\boldsymbol{uv}$ of vectors $\boldsymbol{u}$ and $\boldsymbol{v}$ is $\boldsymbol{u}\cdot\boldsymbol{v} + \boldsymbol{u}\wedge\boldsymbol{v}$, where $\boldsymbol{u}\cdot\boldsymbol{v}$ is the inner product and $\boldsymbol{u}\wedge\boldsymbol{v}$ is the outer product.

Upgrade Drupal with Almost Zero Down Time

This site was setup in 2007 with Drupal 5, and it has not been upgraded until today. I did not feel the need to upgrade since this is just a personal blog. A few days ago I wanted to install a module, but Drupal version 6 is required, so I thought it's finally the time to upgrade Drupal. This Drupal upgrade tutorial suggests to first take down the site to upgrade, but I do not like that. It turns out that more than a few days of work are required to bring back a fully functional upgraded site, so taking the site down to upgrade is not a good idea. Below is what I did to upgrade this site from version 5.3 to 6.22 with almost zero down time (well, maybe a few seconds, I didn't time it). Continue reading »

How to Share Mouse and Keyboard across Machines

If you have multiple machines but only one set of mouse and keyboard, then you must check out this neat little tool called Synergy. It allows you to seamlessly share mouse and keyboard across machines. It even allows you to copy and paste text across machines.

Fix Drupal Search

Today I tried to search "clojure" using the search box at the top right corner, but could not find anything. I know I wrote a few posts on Clojure recently, so there must be something wrong with the search functionality here. This is a Drupal site, and this should be an easy fix. Indeed, I quickly figured out the problem and solved it.Here is what Idid. Continue reading »

Thinkpad Hotkeys in KDE4

I have kept my Thinkpad X61 laptop up to date with Debian sid for a few years. The KDE4 in Debian sid is at version 4.4.5 at this moment, and I think it is mature enough for me to switch the laptop power management from my own hacked up solution to a KDE integrated one. My old solution still works for the most part, but there are some glitches after repeated supsend-resume cycles. As the system keeps evolving, I suspect more things would break. Continue reading »

Suspending to RAM on Debian laptop

I am tracking Debian sid on my Thinkpad laptop, a few months ago it started to use pm-utils and broke suspending to RAM (sleep) functionality. Basically, the machine would go to sleep then immediately resume.
It turned out that this problem can be easily fixed by creating a file /etc/pm/config.d/local, and put in a line

SUSPEND_MODULES="e1000"

The reason is that pm-utils by default does not unload Ethernet card module e1000, so the machine would be waken up by Ethernet card activities.

How to load context of text files into DB2

The task is fairly simply --- I need to load the content of some text files into DB2. There are many ways to do so, but since I only need to this only once (hopefully), I want to find an easy way without writing any external code.

So here is the solution:

(1) create a table containing a CLOB (VARCHAR should work as well, if we know the maxium size of the files in advance) column. For example:

create table test (docid INTEGER GENERATED BY DEFAULT AS IDENTITY,doc CLOB)

Reference to Individual Email Message in Plain Text File

A lot of people implement GTD methodology entirely with Gmail. I don't feel comfortable doing that because gmail is not that secure. And I think depending on a network service is a bad idea for a GTD system. So I still download all my emails to my local computers. Continue reading »

Syndicate content
Nice place