“What’s the most important thing you learned from science?”
June 30, 2010 | Filed Under Uncategorized | Leave a Comment
A while ago I read a post about semi-alternative careers for scientists. One comment stood out:
(On July 16, 2009, I asked for volunteers with science degrees and non-academic jobs who would be willing to be interviewed about their careers paths, with the goal of providing young scientists with more information about career options beyond the pursuit of a tenure-track faculty job that is too often assumed as a default. This post is one of those interviews, giving the responses of Alric, a veterinary pathologist at a drug company)
1) What is your non-academic job?
I am toxicologic veterinary pathologist and work at a contract research organization. We use animal models to evaluate the possible toxicity of drugs in development by pharmaceutical or biotech companies. The main goal is to determine if, and at what dose level, a drug is safe.
…
8 ) What’s the most important thing you learned from science?
That reality is independent of our wishful thinking or what bring us comfort. Let the data take you to the most probable conclusion even if you don’t like it or appears to not be beneficial. In the end you’ll be better off.
The last paragraph is spot on. I wish more people thought in that way.
Best screenrc
June 30, 2010 | Filed Under Uncategorized | Leave a Comment
A mashup of nice options that I’ve accumulated over time. The status line is rather long but selecting it and copy ‘n’ paste should work.
# Ctrl-right square bracket doesn't seem to clash with anything:
escape ^]]
# Nice status at the bottom of the screen, permanently shown:
hardstatus alwayslastline '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %d/%m %{W}%c %{g}]'
# Use Ctrl-left arrow and Ctrl-right arrow to cycle through windows.
bindkey ^[[1;5D prev
bindkey ^[[1;5C next
My small contribution to the o…
June 18, 2010 | Filed Under twitter | Leave a Comment
My small contribution to the open source world today: http://www.redmine.org/issues/3816#note-39 #redmine
Recovery of data from a RAID 5 disk
June 18, 2010 | Filed Under Uncategorized | Leave a Comment
At work I replaced a single drive in a HP DL380 RAID 5 array. The drive was only giving SMART 1720 errors (imminent failure) and HP wanted the drive back due to warranty conditions, so the question came up of erasing any data on the drive.
I got conflicting advice – some people said that you would definitely be able to read data off the drive, and other people said that because it was part of a RAID 5 array, it was impossible to reconstruct the array, so the drive could be sent back with no worries. I decided to test how much data could be read from a single drive from a three disk RAID 5 array.
Details of the server: HP DL380, Smart Array P400 controller. The RAID 5 array was configured with two logical volumes.
Details of the drive:
72GB 2.5" Serial Attached SCSI (SAS) SFF Single Port Hot-Plug 15K HDD Option Part# 431935-B21 Spare Part# 432321-001 Assembly Part# 431930-002 Model# DH072ABAA6
Due to physical access issues the drive was taken out of the server and installed in a standard desktop PC running Windows XP with a Promise FastTrak TX2650 SAS controller card. After installing the TX2650 drivers the SAS drive was recognised as a standard hard drive using JBOD, so it immediately appeared as a logical drive in Windows XP. Here’s the card and drive (fortunately the TX2650 comes with all the cables that you need):

I ran PhotoRec directly on the SAS drive:

After about two hours PhotoRec finished:

Those recovered files total about 8Gb (the original RAID 5 array contained about 50Gb of data). From our perspective, the best hit is searching for a certain prefix “PATNOK” that we use in files for daily demographics imports:

Each of those 1443 files contains at least one set of patient details (name, address, Medicare number, date of birth, phone number, next of kin, next of kin contact details).
That’s a clear example of sensitive data coming off a single drive from a RAID 5 array.
The success rate for larger files was pretty low, I suspect due to the fact that data is striped on a RAID 5 disk.
World View by Scientists http:…
June 12, 2010 | Filed Under twitter | Leave a Comment
World View by Scientists http://bit.ly/9PNG06 (thanks @ha_sch)
Learning curves of some common…
June 12, 2010 | Filed Under twitter | Leave a Comment
Learning curves of some common editors: http://2.bp.blogspot.com/_g3YUxj9bf7U/SyCEzs4NtvI/AAAAAAAABoY/OV4w8Zh3yQM/s1600-h/1247921837295.jpg
I didn’t know that owls had so…
June 10, 2010 | Filed Under twitter | Leave a Comment
I didn’t know that owls had sonar-like hearing and can nab prey that are hidden underneath snow. http://www.youtube.com/watch?v=yps7pgq1TAk
cu instead of minicom
June 6, 2010 | Filed Under Uncategorized | Leave a Comment
To connect to a SheevaPlug serial USB console, plug it in, and then use this one liner:
cu -s 115200 -l /dev/ttyUSB0
Quicker than messing around with minicom and setting the device in a profile, etc. Thanks to Wilfred on the computingplugs wiki.
Little Sunbeam (Lucy Su)
June 2, 2010 | Filed Under Uncategorized | Leave a Comment
I can’t believe that Little Sunbeam by Lucy Su is out of print. My son absolutely loves it.
.Export a Caché global to a text file
June 1, 2010 | Filed Under Uncategorized | Leave a Comment
For some reason there is no Python/C++/Java/Perl interface to the globals of an Intersystems Caché database. One option is to write a script (ObjectScript?) to dump a global to a text file. An alternative is to write an SQL storage map to get an ODBC view, but I found the SQL Storage Map editor in Studio to be a world of pain (and almost undocumented).
Open the Studio and add a new routine dumpglobal.MAC:
dumpglobal ; dumpglobal.MAC
Start
SET myfile="D:\blahblah\global.txt"
OPEN myfile:"WN"
USE myfile
SET ary = "^MYGLOBAL"
SET queryary=$QUERY(@ary@(""))
FOR {
SET queryary=$QUERY(@queryary)
QUIT:queryary=""
WRITE queryary
WRITE " = "
WRITE @queryary, !
}
CLOSE myfile
QUIT
This will send MYGLOBAL to the text file specified.
This can be automated via a batch file on Windows (ugh) with something like this:
C:\Cachesys\Bin\cterm /console=cn_ap:cache[USER]:^^dumpglobal