HNHacker News
TopNewBestAskShowJobs

chapmanb

23 karma · joined March 24, 2009

Biologist and Programmer: http://bcb.io http://github.com/chapmanb

[ my public key: https://keybase.io/chapmanb; my proof: https://keybase.io/chapmanb/sigs/Z8oDZfDpvPHuIYdzRuy614MCnV8bEj53xmOOba3IkeU ]

submissionscomments
chapmanb··on Maximal Information-based Nonparametric Exploration (MINE) statistics
The PDF is currently available, although I couldn't find a direct link so it may be a temporary mistake:

http://www.sciencemag.org/content/334/6062/1518.full.pdf

Supporting online material:

http://www.sciencemag.org/content/suppl/2011/12/14/334.6062....

chapmanb··on Clojure Hills of Abstraction
I had the same struggle and originally used viper-mode + vimpulse to ease the transition. Recently I've switched to Evil, which is excellent and requires very little configuration to give you vim-like navigation with all the other good things in emacs: http://www.emacswiki.org/emacs/Evil
chapmanb··on Parallel upload to Amazon S3 with python, boto and multiprocessing
Thanks for the feedback. I'd be very happy if this inspired better solutions. My goal was to solve a problem that was slowing down my work, and I reached for multiprocessing from my toolbox since that's my first choice to run work in parallel. Since I didn't find an existing implementation, I decided to share it. It would be great to learn from some alternative approaches.
chapmanb··on Steve Yegge's foreword to Joy of Clojure
I would say that learning Lisp is definitely worthwhile and will improve your Python coding; pg's essay argues for Lisp better than I could:

http://www.paulgraham.com/avg.html

You'll want to not just read a book, but also get hands on experience with the language. That's where I found Clojure a good choice for me since I could work on problems of interest to my work and reuse existing Java libraries.

Joy of Clojure also presents a persuasive argument in the opening chapter for Clojure, Lisp and functional programming. There is a pdf of that chapter available for free from the author's website:

http://joyofclojure.com/

chapmanb··on Steve Yegge's foreword to Joy of Clojure
I learned Clojure with Joy of Clojure, the early access version, coming from a Python background with very little practical experience in Java or Lisp. It's an excellent book.

The biggest advantage for my coding has actually been in my day-to-day Python work, where I'm much improved at designing functionally, parallelizing with multiprocessing, and building decorators and context functions to remove boilerplate code. So my Python is faster and cleaner; this is all thanks to being able to to think better about code design after working in Clojure.

For a good example of "why Clojure" take a look at Cascalog:

https://www.assembla.com/wiki/show/d9Z8_q-Omr35zteJe5cbLr

which leverages Hadoop/Cascading Java libraries and combines them with a Lisp-style custom query language.

chapmanb··on Annotatr - scientific paper commenting done right
The code is on GitHub: https://github.com/mreid/annotatr

I remember seeing it last year and it doesn't look to have been worked on recently. A great proof of concept, but it'll be hard to sustain development motivation: there aren't good opportunities for making money, and this type of work unfortunately doesn't generate a lot of recognition amongst scientists.

chapmanb··on Ask HN: Best Developer Linux Laptop?
I can second the System76 laptop recommendation. I got a Lemur laptop from them last year:

http://www.system76.com/product_info.php?cPath=28&produc...

Sound, wifi and the camera work fine and it's been through a couple of Ubuntu upgrades with no issues. I was specifically looking for something that would be zero maintenance and have been very happy.

chapmanb··on SoBi: Social Bike Sharing in NYC
Felix Salmon's thoughts on the difficulties with SoBi's business model:

http://blogs.reuters.com/felix-salmon/2010/08/11/why-small-s...

An interesting take since Felix is very pro-bike.

chapmanb··on A Desk That Allows You to Stand or Sit
I work standing with my laptop on top of a chrome wire shelf:

http://www.theshelvingstore.com/Chrome_Wire_Shelving_s/34.ht...

They are available in a bunch of depths and heights and are easy to adjust. You probably won't be moving them up and down multiple times during the day, but can configure it to a comfortable height. They run about $100.

chapmanb··on Barefoot running: the best trainers money can’t buy
Sanuk sells thin flexible shoes. They are a bit casual, but a few styles are work friendly:

http://www.sanuk.com/products/341027

VivoBarefoot is another alternative, although a bit more expensive:

http://www.terraplana.com/vivobarefoot.php

chapmanb··on Evaluating key-value and document stores for short read data
There I was brainstorming ideas to replicate the hierarchical database/collection/document management that MongoDB and CouchDB offer. One solution I have used, and became disenchanted with, was combined keys with all this information munged together. It would be interesting to hear what others do with their key/value stores.
chapmanb··on Evaluating key-value and document stores for short read data
Yes, that's right. For the test I ran the tyrant server with:

ttserver test.tcb#opts=ld#bnum=1000000#lcnum=10000

d specifies a deflate encoding. The type of database may also make a difference on loading times; in this case it was a B+ tree.