PLEACの8章をHaskellで

PLEACのファイルコンテンツの章が面白そうだったのでHaskellでやってます

import System.IO
import System.Environment
import Control.Concurrent

main = do
  args <- getArgs
  h <- openFile (args!!0) ReadMode
  loop h
  where loop h = do 
          end <- hIsEOF h
          if end then (threadDelay 1000000) >> loop h
          else do
            c <- hGetChar h
            putChar c
            hFlush stdout
            loop h

sleepさせるのはSystem.PosixにもあったんだけどControl.ConcurrentのthreadDelayを使うほうがいいそうなんでそうしてみたけど理由はわからん。

トナリのたんつけ

つけ麺のスープが野菜炒めみたいになってるが、つけ麺です。

1342007598

ワシャワシャ系の麺がうまい。

1342007600

たんからとか唐揚げつけたり餃子つけたりライスつけたりとか多すぎて無理ですね。となりのオネーさんがたんから食べてたけど、もたれないのかなーと。

僕はたんつけで相当きたので、たんつけ小が欲しいくらい。

サラリーマンが“やってはいけない”90のリスト

ネガティブ視点から入っていく。やるべきことをやれじゃなく、やらないべきことは何かを語ってる本。40代の会社にしがみつきたいヒトには参考になる本なのかな?

逆にそういうヒトの思考をちょっと知るにはいい本。まぁ一緒に仕事したくないけど。

部下が報告しないのは、報告の意義を知らないとか、怠慢といった意識の問題ではなく、保身を目的とした意図的な情報隠し、すなわち「情報の私物化」だからである

こんな感じのちょっとネガティブめなのがひたすら書いてある。

ProductName サラリーマンが“やってはいけない”90のリスト
福田秀人
ぱる出版 / 1470円 ( 2012-02-01 )


  • スポーツや音楽の分野で第一級のプロで構成されたグループの事例をもとにしたアンチ管理論やリーダー論に惑わされてはいけない
  • 成果主義は本質的に経営者の経営責任や経営リスクを社員に転嫁する制度でもある
  • 真面目さを一度失えば回復が難しく、成果主義で会社がつぶれた後の転職が難しくなる

著者は成果主義嫌いなんだろうなー(僕もだけど)

GitHub PagesでSphinxを使う

GitHub Pagesを使って文書を管理したら快適そうだったので試してみた。

ゆるふわHaskellというものを書いてます。

Haskellで人工無脳をつくってみたいとか、PLEAC埋めたいとか、Invent with Pythonを書きなおしてみたいとか色々あったのでGitHub+Sphinxでやりたくなったというのがモチベーション。

基本的な流れとしては

  1. gh-pagesというブランチを作る
  2. sphinxtogithubというエクステンションを入れる
  3. Sphinxで文章を書く
  4. make htmlする
  5. cp -pr _build/html/* ./でビルドされたhtmlをカレントディレクトリに移動する
  6. commitしてpushすると公開できるようになる

となるが、4-5のステップはもうちょっとスマートにできると思う。ちなみに参考にしたのが以下のサイトだけど、オフィシャルのヘルプには一通り目を通しておくといいと思う。

GitHub+Sphinxのよさそうなところ(要検証)

  • Issueの管理が楽
  • pull requestで変更を取り込める
  • コードの管理するよりソーシャルなやり取りの敷居が低そう

Haskellでreadlineを使う

cabalでreadlineをインストールするときにhomebrewで入れたreadlineを使う。

オプションを2つほど入れとく

cabal install readline \
--configure-option=--with-readline-libraries="/usr/local/Cellar/readline/6.2.2/lib" \
--configure-option=--with-readline-includes="/usr/local/Cellar/readline/6.2.2/include"

追記 120709

haskelineというものを教えてもらった。

これはよりhaskellっぽくかけて、高機能らしい。~/.haskelineでユーザー設定変えたりCtrl-Cの挙動を変えたりできる。

main :: IO ()
main = runInputT defaultSettings loop

ってやっておけばあとはreadlineと同じノリで書いていけるし、最初からこっちを使うようにすればいいかなと思った。

仕事に役立つインテリジェンス

創薬研究ももちろんだが、研究職として働いてるヒトの解決しなきゃいけない問題そのものが、あるかもしれないないかもしれない答えを探すことのほうがずっと多いので一章の問題の分類の図は分かりやすい(どこかでみたことあるので一般論だろう)。

不確定問題は、情報のインフォメーションよりも分類推定の役割が大きくなる、つまり仮説構築力とかアブダクションとかそっちが求められるってわけですね。

本書はどっちかというとベイズ推定の入門的な立ち位置なのかなぁ。誤信を避けるような内容が多いし。仮説を適宜見なおそうとかそんな話も入ってるから、情報分析全般の入門書っていう位置づけなのかな。ちょっと全体像がつかみにくかった。

ProductName 仕事に役立つインテリジェンス (PHP新書)
北岡 元
PHP研究所 / ?円 ( 2008-03-15 )


2 / Netsky

ドラムンベースだけじゃなくて、ドラムステップやダブステップがうまく散りばめられて聞き飽きしない。

ProductName 2
Netsky
Hospital Records / 1698円 ( 2012-06-25 )


  • No beggining
  • Get Away From Here

あたりが好き

bistro gawa

@bg7860との2年ぶりのビストロガワ

壁にサノユカシさんのイラストが描かれてたので気になったんだけど、その経緯を聞くのを忘れた。

1341741263

  • スモークサーモン
  • 赤鶏のテリーヌ
  • 野菜のグリル
  • お任せ魚料理(カマス)
  • 鴨のコンフィ
  • ショコラテリーヌ

写真はないので、現地で堪能してみてください。

野菜のグリルは外せないが、魚料理の火の通し方とかたまらんかった。お酒はレモンビールと赤ワインを飲んだ。

今度は娘を連れてランチにでも行きたい。

Git+GitHubのハンズオンをやります

ちょっと先の9/1の話ですが、静岡のB-nestでやるので興味があれば参加するといいと思います。

Gitの入門的な内容から、GitHubの簡単な使い方ぐらいをやる予定です。Gitを独りで使えればGitHubも快適に使えるので、とりあえずこんな感じでいいかなと。誰かがグループ開発のさわりを入れてくれるんだったら歓迎、個人的に興味あるし(職場で独りで開発なんでグループ作業ってのを経験したことがない)。

あとLTが幾つか入るみたいです。僕も空気を読まずにmagitの話でもしようかしら。

ProductName WEB+DB PRESS Vol.69
大塚 弘記
技術評論社 / 1554円 ( 2012-06-23 )


ProductName 入門Git
濱野 純(Junio C Hamano)
秀和システム / 2310円 ( 2009-09-19 )


「牛丼一杯の儲けは9円」を読んだ

売上を増やすか、原価を下げるかだけど後者の話。

プロセスの改善の話とか、不正ギリギリをついていくテクニックとか、価格交渉の話とかなかなかおもしろい。

特に面白かったのは、商品を知らない相手に高く売りつける技術

  • 身だしなみをしっかり
  • 商品に閑する相手の知識レベルを知る
  • 商品のメリットだけでなくデメリットを紹介することで信頼を勝ち取る
  • 大手も同じような仕入れをしていると安心させる
  • 価格は言い切る
  • エトセトラ

筆者が「売り買いは知的ゲームだ」と書いてある部分は同意できるかな。基本的に客が分かる価値の最大化が戦略でしょう。

実際に似たようなことを経験した。去年ぐらいに部署を移って、昔付き合いのあった会社の営業が売り込みにきたんだが、製品の技術とか関係ない接待トークみたいなノリで営業してきたので、製品の細かい部分を事細かに質問したら、

「次回は技術のちゃんとわかる営業を連れてきます」

と言ってきたので、

「以前はちゃんと技術の分かる方も毎回同席してたはずなんだけど、今回は時間の無駄でしたねー」

とチクリと返してやったら、

「御社の前担当者は技術をあまり理解なさらなかったので」的なことをポロリした。

あちゃー確かにバレてるわと思ったのであった。