Author Archive for Adam

Around the web 3/7/08

rb-processing

Around the web, week of March 7, 2008

A domain specific language for screencasting

castanaut

Two topics that I have been been reading a lot lately, Domain Specific Languages in Ruby and screencasting have converged to create a very cool little project called Castanaut. I found Castanaut via Peter Cooper of Ruby Inside. Castanaut is essentially a programming language for screencasts. So in castanaut you can write things like this:


launch "Safari", at(10, 10, 800, 600)

type "http://www.inventivelabs.com.au"

hit Enter

pause 2

move to(100, 100)

move to(200, 100)

move to(200, 200)

move to(100, 200)

move to(100, 100)

say "I drew a square!"

Thanks to the flexibility of Ruby, you can write your screenplay as a script and run it to automatically create a screencast. How cool is that? While this might take some of the personal touch away from screencasts, it could also be a powerful tool for those who need to create them in a more systematic way.

What would you do with a million CPU’s?

ps3folding

There’s a new podcast on Futures in Biotech with Dr. Pande from Folding@Home. Macresearch summarized it well:

  • How a bunch of Sony PS3s have become the largest component of the world’s fastest computer
  • The challenges of distributed computing, and in particular how data storage and CPU usage can actually complement each other
  • After the hype in the 80s around computational modeling of protein structure, the computational power available today could finally make that hype a reality
  • How to take a non-parallel task and transform it into a series of computational chunks (a.k.a. how to make a baby in 1 day with 270 women)
  • How modeling of protein structure will be able to get more into the dynamics of protein conformational changes
  • What would you do if you had 250,000 CPUs?
  • I really like the final point, “What would you do with 250,000 CPU’s”, because it’s an important question. Petascale computing has arrived but most applications aren’t ready to scale to thousands or millions of cores. Folding@Home is as a distributed computing project as it is biomedical. What they’ve been able to do is treat simulations as data and use bayesian data mining techniques to put together the whole picture with suprising efficiency. A clever workaround for Folding@Home’s “supercomputer”, which is severely limited by network latencies and individual agents with slow hardware compared to ‘real’ supercomputers. Finally he reports that PS3’s and GPU’s are achieving 20-30x acceleration. Exciting stuff!

    image taken from Flikr, CC licence

    The Low-Information Diet

    Learning to ignore things is one of the great paths to inner peace.
    -Robert J. Sawyer, Calculating God

    Over the holidays I used the time off to finally read the excellent book by tech entrepreneur Timothy Ferris entitled The 4-Hour Workweek. Among his many techniques for increasing effectiveness and lifestyle design, Tim prescribes a “Low-Information Diet”. Being away from the lab was a perfect opportunity to test out an immediate one-week media fast. The rules are pretty simple:

    • No newspapers, magazines, or nonmusic radio
    • No news at all
    • No television
    • No reading except one hour of fiction
    • No Web surfing

    This really exposed a bad habit of mine, unnecessary reading. My attention is almost constantly consumed by Google Reader as I unenthusiastically scour blogs, news, forums, and journals for several hours per day rendering me much less effective for the most important tasks. Following the rules above for over a week I feel rejuvenated.  There’s a 9-day information gap in my Google Reader stats that I am quite proud of

    google reader fast

    Most Innovative Use of HPC in Life Sciences

    The PSC and NRBSC have made the news again, this time in HPCwire. They’ve posted the Readers and Editors Choice awards for SC07 and the WiiMD demo earned us “Most Innovative Use of HPC in Life Sciences”.

    wiimd_bowling

    Further Reading:
    WiiMD: Bowling on Big Ben
    Engadget: wiimote used in buckyball bowling and other educational simulations

    Anti-aging drugs, metabolism, and disease

    1s7g

    Since today is my birthday I find myself thinking about aging. I went back and listened to one of the first FIB podcasts. It features Leonard Guarente, who helped start Elixir pharmaceuticals, a company specifically targeting aging and metabolic disease. Here’s a link to the mp3.

    Is aging just a disease? Metabolism and aging appear to be very tightly coupled. Even more interesting is how calorie restriction (starvation) has a direct impact on reproduction and lifespan. Dr. Leonard Guarente identified the SIR2 gene 6 or 7 years ago. Sirtuin enzymes (pictured above) are NAD-dependent and activated under special conditions like starvation. The biochemistry suggests that therapies could be possible. Knockout the SIRT1 gene in mice and the quality of life is greatly decreased. Starve any organism from yeast to chimps and they live longer by activating specific pathways. There’s 7 genes in mammals so there’s obviously much left to be understood. Trying to inhibit specific enzymes is pretty common, but targeting pathways and complex signaling in cellular metabolism can be tricky. The signals exist in nature. The technology developed in systems biology and metabolomics could really help answer some important questions in the next 10 years or so.

    Avalon pharmaceuticals has a technology for generating pathway signatures, so rather than screening compounds against a single target they claim to be able to target entire pathways. They also have an advanced candidate for solid tumor cancers that’s an IMPDH inhibitor. IMPDH is another NAD-dependent enzyme that I have done a small amount of work on.

    WiiMD: Bowling on Big Ben

    SC07

    SC07 is in full swing in Reno. I promised some details about the PSC booth, more specifically the Wiimote controlled Molecular Dynamics demo. Some credit for this idea should go to Adam Marko, who is now a graduate student at UCSF joining the lab of Andrei Sali.

    The real selling point of the Nintendo Wii video game console has been the Wiimote. For those who haven’t experienced one, the Wii Remote is very different from a typical video game controller. It has a built in accelerometer, motion sensing, and optical sensing. It communicates over bluetooth, and best of all it only costs around $50 US. These features work to enrich video games through unique human-computer interaction. The sports games that come bundled with the Wii demonstrate how previously mundane gameplay such as bowling, baseball, and tennis can be a blast with clever interaction design.

    In the context of biotech, haptic interfaces could really have a big impact in how biologists, life scientists, and medical profesionals interact with computers and devices. The computer geek in me wants to believe that a keyboard and mouse is the one true way to use a computer but the success of video games consoles, Tablet PC’s, and iPhones are changing the face of computing. Imagine biosimulations which are no longer just scripts, plots, and post-process rendering but rather augmented reality. Where a scientist can use virtual instruments and interact with their simulations in real time.

    Before I get ahead of myself, let me explain the demonstration you can see at the PSC booth if you’re attending SC07. It is quite simple to use a Wiimote to replace your mouse on a standard PC. Several months ago we played around with Wiimotes on our workstations, manipulating protein structures in VMD and CHIMERA which are both excellent molecular graphics and modeling programs. In this case the Wiimote just acts as a mouse, and doesn’t really offer much advantage, especially for someone who uses VMD with a mouse and keyboard. Pretty cool, but not very practical for me personally. So the Wii Remotes were left in the drawer until discussion about demos for SC07 arose. That’s when some other PSC heads got involved and the idea blossomed.

    VMD is a cool program to use with a Wiimote, but a moving a single protein structure isn’t very interesting. Let’s do a NAMD simulation instead. Better yet, let’s use IMD to have an interactive NAMD simulation. And while we’re at it, let’s run it live on Big Ben (PSC’s 4,000+ processor Cray XT3). After all, Supercomputing is our middlename. The “WiiMD” demo is live at SC07 thanks to key efforts by Nathan Stone, Shawn Brown, and student Jordan Soyke. Unfortunately I could not be there to see the final result, but some work was done with PDIO, a middleware that routes data straight from the nodes of the XT3 to a remote location in real-time. There was also a rewrite of the Wiimote input driver, which Jordan talks about briefly in his blog.

    Stop by the PSC booth if you get a chance. I hope to have pictures or video of the demo up sometime soon.

    PSC Live! at SC07
    WiiMD, interactive molecular dynamics with a wiimote?

    And my two favorite blogs have noticed!
    scalability.org - Coolest demo I saw today
    BBGM - Finally found a reason to buy a Nintendo Wii

    Supercomputing 2007

    It’s that time of year. SC07 begins in Reno next week, and everyone around here is getting prepared. Unfortunately this is the second year in a row that I can’t attend Supercomputing. Last year I was at CASP and this year we are doing a 2-day structural genomics workshop at UTSA. Apparently I’m not the only one with Supercomputing blues. I will miss the chance to talk with vendors and work the PSC booth, but I at least have a poster and some labmates going to Reno.

    While much of the conference is focused on high performance network technologies, there’s some great life science talks worth attending. There’s also a session that grabbed my attention,

    High Performance Computing on GPUs with CUDA

    where NAMD and NVidia developers will demonstrate MD simulations on graphics processors. Stay tuned for some juicy details about a demo from our booth.

    Mathematics vs. Physics vs. Biology

    Following up on my previous post about community efforts and collective intelligence. I recreated some figures from my notes on a presentation by Jooyoung Lee. He talked about how we are approaching problems in the sciences.

    In mathematics, scientists work together on some fundamental problem A. So there’s community-wide efforts.

    mathematics

    In physics, scientists work together on problems that are closely related to original problem A. So there’s still community-wide efforts.

    physics

    Biology is somehow different. In biology, it seems that every scientist is working on their own problem, and some even have more than one!

    biology

    O’Reilly Book: Programming Collective Intelligence

    I love me some O’Reilly books. After recently reading Beautiful Code (I should write a review soon). I am eagerly awaiting a new book I just bought from Amazon called Programming Collective Intelligence.

    It was written by Toby Segaran, a developer at Genstruct

    “This fascinating book demonstrates how you can build web applications to mine the enormous amount of data created by people on the Internet. With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you’ve found it.”

    Some of the most successful spots on the web are winning on this exact principle. Google, Facebook, Digg, MySpace, Flikr, Twitter, YouTube, and the list goes on and on. As much as I hate the almost cliched phrase Web 2.0, there is clearly a difference in how successful web applications are designed today as opposed to 5 years ago. We need more community based efforts in biology. Educational efforts like Bioscreencast. Or competitions like CASP which I have participated in. The tools are in place. Given the grand challenges to our health and understanding of life, we can no longer afford to work alone.