Here are the posts I’ve written or edited:
SVG→Canvas, the pileup.js Journey (13 Oct 2015)
In which I explain why we changed from using SVG to using canvas for our genome browser (spoiler: it’s performance). This also introduces data-canvas, which compensates for some of the drawbacks of canvas, e.g. difficulty in tracking clicks and writing tests.
Introducing pileup.js, a Browser-based Genome Viewer (19 Jun 2015)
This post introduces pileup.js, the in-browser genome visualizer I’ve been working on for most of the past year.
Testing React Web Apps with Mocha (Part 2) (21 Feb 2015)
A two-parter in which I explain how we set up testing for our React web app using Mocha, rather than Jest. Since writing this post, I’ve completely changed my mind about how web testing should be done. If your code is intended to be run in the browser, then you should test it in the browser, rather than using Node as these posts suggest.
Faster Pileup Loading with BAI Indices (23 Jan 2015)
BAM is a very widely used bioinformatics file format which stores aligned reads from a genome. These files can be huge, so the BAM Index (BAI) format was created to speed up retrieval. We found that the BAI was also too large for convenient access on the web, so we created an index of the index.
Streaming from HDFS with igv-httpfs (05 Dec 2014)
How we got data from HDFS into our genome viewer of choice by building a small piece of infrastructure. We’ve since stopped using this. Nowadays we have an NFS mount for our HDFS file system and serve from that using nginx.
Please leave comments! It's what makes writing worthwhile.comments powered by Disqus