Category Archives: Tools of the Trade

Tools of the Trade

Archiving Emails and Attachments to PDF from Thunderbird in Linux

I have a couple of businesses, plus my own personal transactions, and every year come January I have to make sure I have all of the appropriate financial documentation for them, including copies of invoices and receipts. Fortunately, most of my invoices and receipts are now in email form, though I still get some paper ones (which go straight into the ScanSnap). Unfortunately, emails and attachments can’t go nicely in a reference folder in my Dropbox.

Thunderbird to the rescue!

I use Mozilla Thunderbird for my email for mostly the same reason I still use FireFox to browse the web: there’s a plugin for almost anything I want to do. Also, in Linux it’s easy to use a CUPS-PDF virtual printer to print to PDF. Combining this with the attachment extractor Thunderbird plugin allows me to dump all of the attachments and emails to files on my hard drive in just a few clicks.

I have ‘Invoices’ and ‘Receipts’ email folders that need to be dumped, so I just go into each folder, select all messages, print them using CUPS-PDF, and then right-click and tell AttachmentExtractor to dump any attachments as well. Done, in about 5 minutes. Trying to do this manually would take countless hours, meaning in reality that I would just never do it, and if my taxes were audited, it would be a total nightmare.

Hopefully if you have this same problem google + this post will help you out. Enjoy!

Excellent review of cardiac ionic models on Scholarpedia

Some of our lab’s “competitors” have a really nice article covering many many of the existing cardiac ionic models up on Scholarpedia, with illustrations and even java applets and movies.

The article is entitled Models of cardiac cell [sic].

Kudos to Drs. Fenton and Cherry for the excellent article, it looks like it was quite a lot of work to put together!

Installing python-qwt5-qt4 on Ubuntu Jaunty 64-bit

I needed the package mentioned in the title, but it fails to install due to some problems with the dependency configuration in the original package.

Following some instructions here and using the patch provided here (from this thread), I was finally able to get it working.

Here’s the resulting package.

python-qwt5-qt4_510dfsg-1ubuntu1_amd64

Steps to build:

Create some directory where you want to build this. Change to that directory. Then…

sudo apt-get build-dep python-qwt5-qt4

(installs dependencies for building)


sudo apt-get source python-qwt5-qt4

This should download the package source. Download the patch from the comment I linked to above, then change into the directory and patch the files. You may have to change the directory ownership so that your user can write to it (sudo chown -R yourusername .)


patch -p0 < ~/Inbox/pyqwt-final.diff

(of course your patch may be located in a different location)

Per the GPLv2, here's the patched source I used to build the .deb file (note -- I think you can just download this instead of patching it yourself).

brocks_patched_pywqt5_src.tar.bz2

Once it's patched, rebuild it with:

sudo dpkg-buildpackage -rfakeroot -uc -b

Go get a cup of coffee or whatever, it's a fairly involved build. When it's done, in the directory above you should find your .deb packages. A simple:

sudo dpkg -i python-qwt5-qt4_5.1.0.dfsg-2_amd64.deb

(replace the filename with whatever yours is, of course)

will install it for you. Hope this is helpful for someone, as I wasted a few hours trying to install this all from source and so on.

First CardioSolv Simulation Manager Demo

Today I’m really excited to finally show you something that’s been in the works, both in implementation and in the planning stages, for a long time. The CardioSolv Simulation Manager.

Running cardiac electrophysiology (and mechanics) simulations has traditionally been really complicated. It involved learning a bunch of UNIX command-line tricks, dealing with queuing systems and their associated script files, and so on. Furthermore, there are many, many options in a sophisticated cardiac simulator, and the novice user (and even the expert) can easily get lost in all of the choices.

We’ve taken years of experience setting up, running, and analyzing simulations to build a really cool (excuse my excitement) web interface that handles all of the dirty work, and guides the user through the important choices when running simulations.

The video below is my first demo. In it, I demonstrate how to create a plane wave moving across a sheet of tissue, then create a spiral wave, all from the web interface.

Continue reading

Quoted in another article on CardioSolv

The whole article is here.

The HPC service lets the small, five-employee company do the heavy lifting that would otherwise cost a fortune. “With what we could purchase out of pocket, we’d have to bootstrap very slowly, or look for VC [venture capital] funding,” said Dr. Brock Tice, the vice president of operations at Cardiosolv, a privately funded medical research firm. Instead, Tice uses a new HPC on-demand service from Penguin Computing called Penguin on Demand.

While Cardiosolv has its own small cluster on the premises for calculations, Tice estimates the resources he rents from Penguin would probably cost $500,000 to build, and other cloud options weren’t suitable.

“We can’t use [Amazon’s Elastic Compute Cloud] EC2, since there’s a lot of latency between the nodes,” he said.