スキップしてメイン コンテンツに移動

!{{isbn '476282139X'}}

仕事の進めかた,特に問題発見や解決,タスクマネジメントなどについて良い本がないか,と最近何度か聞かれたので文章にしておきます.

いかに研究を進めていくか.現場では重要なスキルであってもシステマティックに教えているというのは聞いたことがないです.企業や大学の研究室(大学もそんなに変わらんよという声が聞こえてきそうですが)では事情が違うのかもしれませんが,研究所(センター)のようなところに飛び込んだ学生さんはろくに教育してもらえず,そのくせ即戦力として期待される場合が多いと思います(そして結果は自己責任wwwぜんぜん笑えないwww).

まあ意見できるほど立場にないのですが,僕も学部生の時代から今までずっと研究センター所属でした(TCAT(MBI, KDRIとコラボ)->RIKEN GSC->SMS RCGM->RIKEN CDB)ので,いわゆる「指導」らしいものを受けたことがあまりないです(受けたいと思っていなかったのだけどw).それで,優秀な先輩の方々の振舞を盗んだり,本を読んでみたりと,わりと試行錯誤してきたわけです.

そのような学生さんが仕事の進め方を自習するのに良さそうな本を挙げてみました.即戦力を期待されているわけですから,まず読みやすさ重視で選びました.また研究の現場に向けて書かれてものではない一般的に役に立ちそうな本を選んであります.

また今回は触れませんでしたが,別な重要な問題として,いかにオリジナリティを発揮するか,という問題もありますね.そんなものは教わるものではない,とか,DNAに書きこまれている,とかいう考えもあると思いますが,これだけ学生やポスドクの量が増えてくるとシステマティックな教育方法があっても良い気もしています.このあたりで参考になる本だとがあれば教えてくださいな.

さて思い浮んだのは以下の4冊ですね.

どうやって問題を発見し定義するか,について基本的な考え方が展開されています.警句のようなものが並んでいる感じです.具体的にどうすれば良いか,というところまで書いていませんが面白い例(表題のライト,ついていますかなど)などがいくつか出てきます.

こちらの本では問題解決のため思考方法と技術が具体的に2つずつ挙げられています.その方法とはゼロベース思考,仮説思考で,技術とはMECEとロジックツリーと言うものです.特にMECEは研究の現場ですぐに役に立ちます.優秀な研究者を見ていると同じ問題をしつこく考えています.それを意識的にやるにはMECEは良い技術ですよ.

問題と解決方法を理解しても,実際にタスクに落してそれを次々に実行し
なければ解決しません.タスクマネジメントの方法を持つことで,そのプレッシャーから解放されクリエイティブな部分に脳を使えるというのもメリットもあります.タスクをマネジメントする方法のひとつであるGTDについて具体的に書かれていますよ.

問題発見や解決を正しく行うためには,盲目的にポジティブシンキングで
あっても,意味なくネガティブシンキングであっても問題があります.
重要なのは,客観的に批判的に物を見るクセを付けることです.
それがクリティカルシンキングと言われていてMBAでは一般的に教わる
そうです.MBAの難しい教科書を読まなくても4コママンガで理解できる
良書です.

----
タイムマネジメント系がないですね.タスクマネジメントがちゃんとできていればタイムマネジメントは自然とできるような気がします.しかし自分でちゃんとできていない気がしますので良い本があれば教えてくださいね.

コメント

このブログの人気の投稿

シーケンスアダプタ配列除去ツールまとめ

FASTQ/A file からシーケンスアダプター配列やプライマー配列を除くためのプログラムをまとめてみる。 まず、配列の除去には大別して2つの方向性がある。ひとつは、アダプター配列を含む「リード」を除いてしまう方法。もうひとつは除きたい配列をリードからトリムする方法である。後者のほうが有効リードが増えるメリットが、綺麗に除ききれない場合は、ゲノムへのマップ率が下がる。 気をつける点としては、アダプター/プライマーの reverse complement を検索するかどうか。paired end の際には大事になる。クオリティでトリムできるものや、Paired-end を考慮するものなどもある。アダプター/プライマー配列の文字列を引数として直接入力するものと、multi fasta 形式で指定できるももある。 From Evernote: シーケンスアダプタ配列除去ツールまとめ TagDust http://genome.gsc.riken.jp/osc/english/software/src/nexalign-1.3.5.tgz http://bioinformatics.oxfordjournals.org/content/25/21/2839.full インストール: curl -O http://genome.gsc.riken.jp/osc/english/software/src/tagdust.tgztar zxvf tagdust.tgz cd tagdust/ make sudo make install rehash 使いかた: tagdust adapter.fasta input.fastq -fdr 0.05 -o output.clean.fastq -a output.artifactual.fastq 解説: 入出力形式は fastq/a が使える。リード全体を除く。速い。アダプター配列を fasta 形式で入力できるのが地味に便利で、これに対応しているものがなかなかない。Muth–Manber algorithm (Approximate multiple

DNAを増幅するサーマルサイクラーを自作してみたよ

DNAをPCR法で増幅するために必要なサーマルサイクラーを自作してみました。自作と言っても、いわゆる、PCの自作と同じでパーツを組み立てていく感じです。購入から組み立ての様子を簡単に紹介します。 モチベーション ラボには様々なレクリエーションがあります。例えば、単にどこかに遊びに行ったり、スポーツ大会したり、ひたすら合宿形式でプログレスのプレゼンをするミーティングするなどがあります。それもよいのですが、せっかくなので、普段の研究時間ではトライできないが、研究に関わる hack を行う、というイベントを企画してみました。夏休みの自由研究や社会科見学的なノリです。   うちのラボでは、PCRを使ったウェットの実験技術の開発をしてきました。しかし、サーマルサイクラーのハードウェアの仕組みを体験的に理解している訳ではありません。そこで、サーマルサイクラーを作ってみました。   欧米で始まっている、自宅のガレージやキッチンでバイオロジーを行うムーブメント、バイオパンク、DIYbio を体験しておきたいというのもありますし、Arduino などオープンハードウェア、Maker のムーブメントを体験するのも目的の一つです。ハードウェア開発が思っているほどハードルが下っていることを体験できて、かつ、将来、ウェットの開発だけでなく、装置開発などもできたら、ラッキー、ぐらいの気持ちでやってみました。   購入 今回作ったのは、組み立て式で、かつ、仕様などや設計図が公開されているOpenPCRというサーマルサイクラーです。ハードウェアの仕様・設計図、制御ソフトウェアなどの情報がすべて公開されており、部品からも自作することが可能です。今回は、「設計図から部品や回路のパーツを作り、それらを組み立てる直前のもの」を購入しました。   ChaiBio https://www.chaibio.com/   OpenPCR https://www.chaibio.com/products/openpcr   なぜか http://openpcr.org/  で購入できなかったので、eBay にある ChaiBio で買いました。   OpenPCR - eBay http://www.ebay.com/itm/111096418574   本体価格は

R でいまどきなパッケージ開発 (devtools, testthat, roxygen2)

追記 (2012/04/21): 以下のコードは S4 classes で書いていますが、R5 reference classes で書き直してみました。こちらもどうぞ。 http://blog.hackingisbelieving.org/2012/04/r5-reference-class-r-devtools-testthat.html R のパッケージ開発の情報があまりないので、自分はこんな感じでやってます、というのを書いてみます。パッケージ開発支援の devtools と単体テスト支援の testthat, そしてドキュメント生成支援の roxygen を使うのがいまどきっぽいです。 そもそもパッケージを作製しているひとをあまりみたことがないので、もっとこうすべき、というのがあれば教えてほしいです。 今回はデモケースとして S4 OOP で、Idol クラスを定義し、とある身体的特徴の統計量を計算するパッケージを作ります。R のプロンプトは > で、シェルのプロンプトは $ で示しています。 0. 準備 必要になるパッケージをインストールします。 $ sudo R > install.packages(devtools) > install.packages(testthat) > q() devtools の設定をします。~/.Rpackages に設定を記述します。 $ emacs ~/.Rpackages list(   default = function(x) {     file.path("~/Project/dev/R/", x, x)   },   "idol" = "~/Projects/dev/R/idol/idol" ) 以下の行は今回パッケージを作製する作業ディレクトリになります。   "idol" = "~/Projects/dev/R/idol/idol" 1. ともあれ実装を始める 作業ディレクトリに移動します。 $mkdir -p ~/Project/dev/R/idol $ cd ~