(define -ayalog '())

括弧に魅せられて道を外した名前のないプログラマ

2014-01-01から1年間の記事一覧

ふたつのリストを混ぜる

リストを交互に分配 これ読みながら逆ってどうやんのって思ったのでちょっと書いた。 (define (twist-list li1 li2 :optional (result '())) (if (and (null? li1) (null? li2)) result (let ((li1-len (length li1)) (li2-len (length li2))) (if (> li1-le…

Rails で Helper Method を Controller で使いたい

って思ったんだけど、これが少し事情が複雑で単純に Helper を Controller に include するのはあまりよろしくないらしく出来れば AbstractController で定義されている helper を使う方が良いらしい。helper (AbstractController::Helpers::ClassMethods) -…

王様ゲーム読了

一昔前に一世を風靡したケータイ小説。何の気無しに読んでしまったので少しだけ感想を書いておく。ハッキリ行ってしまえばケータイ小説以上でもそれ以下でもないのだけれど、普通の小説が好きな人はそんなに好きにならないんじゃないかなって思った。展開が…

LET OVER LAMBDA を読んだ

通称「 LOL 」読み終わりました。完全に宗教の本でした。 もちろん、僕はまだ On Lisp を読んでいないし、まして Common Lisp を知らないので深く理解出来たわけではないのですが、 Common Lisp の実用性の高さとマクロの真髄を垣間見れた気がします*1。簡単…

auto-highlight-symbol.el を入れた

auto-highlight-symbol.elの感想 - Life is very shortauto-highlight-symbol.el を入れて使い始めてから、すぐに e2wm のキーバインドと競合していることに気付いてソース読んで速攻でキーバインドの定義をコメントアウトしたんだけど、やっぱり同じような…

Let Over Lambda 読み始めている

なんとなく読み始めた。結構、面白いと思う。 とりあえず、作者がポール・グレアムと Lisp*1を愛しているのがよくわかった。まだ 1/5 くらいしか読んでないけど、マクロについて少しわかった。健全なマクロというのがどういうことなのかとか、なんかそのあた…

Git の object がおかしくなったときの対処法

Git の object がおかしいというエラーが出た場合は object を表すファイルを消せば良さそう - ひだまりソケットは壊れない ちょうど同じようなエラーが出たので、試したんだけど解決せず。ぐぐったら案の定 stackoverflow にぶつかったので、一番上の answe…

第2回かわいい Kotlin 勉強会に参加してきた。 kotlin-mode 作ったよ。

第2回 かわいいKotlin勉強会 #jkug on Zusaar 参加してきた。 LT する側として参加する勉強会はたぶん東京では初めてでした。 LT に使った資料は SlideShare などにはあげません。面倒くさいのと別段あげるほど何かを書いているわけではないのでいいかと。話…

テスタブル JavaScript 読んだ

正直に感想書けば期待値以下で僕の中での「テスタブル」という言葉の意味と本の内容とのギャップが少しあったかな、というところ。 如何にしてテストしやすいコードを書くのか、どうやって保守していくのか、そういう感じの濃い内容を求めていた気がする。た…

プロパガンダを読んだ

今年の頭くらいから読み始めた気がするけど、なんだかんだであまり読む時間をまとまって取れなかったので時間がかかってしまった。僕は説得とか交渉とか仕事柄あまり意識する必要はなかったりする。勿論、ある程度は説得/交渉の必要なシーンがあるはあるのだ…

peco 使ったら今までやりたいと思っていた anything like なディレクトリ移動が出来たので嬉しい。

朝からこんな記事を見かけたのでちょっと読んだ。 Big Sky :: peco で migemo が使える様になった。 僕は普段、 Xubuntu しか使っていないし最近は日本語ファイルとかディレクトリとか作らないからあんまり嬉しくないんだけど、 peco というツールの存在を知…

Clojure の Var に関して覚書

なんか面倒くさい。 Clojure Programming 読んでていきなり Chapter1 とかでチラッと出てくるんだけど、一緒に Clojure 勉強しているスクラムマスターが混乱したくらいには面倒くさいというか。面倒くさい。事の発端はこれ昨日スクラムマスターが 「Clojure …

Why let expression? We can use fn expression, I think we don't need let expression.

タイトル、適当に英語で書いてみた。若干間違っている気がするけど、昨日 Clojure の話をしていて「なんで let が必要なのか分からない」と言われたのでそれについて。例えば Clojure 。 (let [x 10, y (square x), z (cube y)] (+ x y z)) let expression i…

Emacs Lisp で正規表現を書きながら

今、メジャーモードを作っていてシンタックスハイライトを入れるのにどうしても正規表現を使わないといけないんだけど、 Emacs Lisp の正規表現は\\が多すぎて何がなんだか分からなくなってくるし、実行しながら出来たらいいなーと考えていたら re-builder …

destructuring-bind ってステキですね

例えば Ruby ではこういうことが出来る。 a, b = [1, 2] a+b #=> 3 便利ですね。そして Clojure ではこういうことが出来る。 (def m {:a 1, :b 2, :c 3}) (let [{a :a, c :c} m] (+ a c)) ;=> 4 (def v [100, 200, 300]) (let [{a 0, b 2} v] (+ a b)) ;=> 4…

smartrep.el と git-gutter-fringe.el を入れたら色々と捗って嬉しい。

お昼ご飯時に平和主義者の RubyMine 使いと話していたら、 Sublime*1 には GitGutter なるプラグインがあることを教えてもらった。なんとなく名前を聞いたことあったけど、 git の diff なんて Terminal で見れるじゃんって思ってたので気にしてなかった。た…

get current branch name in Git

refer -> How to get current branch name in Git? - Stack OverflowI think this method is very good!! git branch | sed -n '/\* /s///p'

腐ってやがる…

はい、半年前に書いたコードをちょいちょい弄ってるんですが、テストコードが腐ってました。いやー、当時 FactoryGirl を触ろうとしていて使い方分からないし、色々分からないし諦めてたんですが、改めて fixture 使ってるコード読むとなんか辛い。あと、直…

結局 Clojure を勉強することになりました。

先週くらいに Elixir で一回確定したんだけど、やっぱり書籍とかが充実していないということで Clojure になりました。 今日からぽいんだけど、昨晩勉強会で使う書籍とか決まったし英語の本読んでこいとかいう鬼畜ぷりにより結構辛いw実を言うと「プログラ…

git で「あの頃に帰りたい」

「ああ、あの頃は良かったのに…」なんてことをいろいろ考えるようになった頃から、子供ではなくて大人だと思います。 最近、 git 使ってるんですけど、良くやらかしてます。 revert の使い方間違ってて、ふたつ前くらいのコミットをいきなり指定して revert …

なんとなく嫌な気持ちになる。

今日、オフィスの移転パーティ的なのがあって、他社の新人がそこの先輩社員から「ジャバ出来る人はデバッガとprintlnを使いこなすんだよ」って謎情報を教えられていて思わず横から「テストコードじゃダメなんですか?」って突っ込んだら「そんなレベル高くな…

pismo という gem を使って Web Page から meta 情報を取得する

リンクを入力したら、タイトルを取得するって「はてなブログ」とかでよくある感じですが、それがまんま欲しかったので調べたら、まぁ gem あるよねってことで。 pismo っていうんですがかなりさくっと使えたので好感触でした*1。 peterc/pismo · GitHub usag…

git-diffのようなdiff

標準の diff コマンドだとなんとなく見栄えとか良くなくて、やっぱり git-diff like な見え方がいいなと思ったのでやってみた。colordiff というコマンドをインストールする。 sudo apt-get install colordiff次に ~/.colordiffrc を作る。 # be more git-li…

Rails で js.erb とかを返却する場合の nginx の設定。

この前、 respond_with(or respond_to) を使えば、 view/some_dir/update.js.erb とか作って直接非同期処理とかで返却出来るよって教えてもらった。要するに画面遷移を起こしたくない場合に結構使えるらしい。レシピ本にも乗ってるんだけど、見逃していた。(…

Zohoを使う場合のActionMailer設定

ぐぐったら載ってたのでメモ。 Rails ActionMailer configuration for Zoho - Stack Overflow ActionMailer::Base.delivery_method = :smtp ActionMailer::Base.smtp_settings = { :address => "smtp.zoho.com", :port => 465, :user_name => 'someone@somew…

Rails4でレスポンシブWebデザインを意識して書いてみた

最近、自分でプロダクト作るときは基本的にレスポンシブWebデザインを意識することが多い。 多いというか、頼まれたりしたものを作るときに要件の中にどうしても「スマホで綺麗に見れて使いやすいこと」というのが入りやすいのだ。あとはどう考えてもユーザ…

Emacsでウィンドウを分割したときに「反時計周り」に移動する

tmuxを操作していると[C-t n]と[C-t p]で分割したウィンドウを行き来できる。(C-tはprefix-keyなのでデフォルトだとC-bかな)これが便利なんだけどEmacsのデフォルトって[C-x o]しかないじゃないですか。それが凄く不便で。 特にe2wmを起動しているときですね…

EmacsでCoffeeScript書くときにC-mがインデント付き改行だったのが嫌だったので変更した。

たぶん、どのモード使っててもC-mって単純なnewlineのことが多いと思うんだけど、何を血迷ったのかcoffee-modeはC-mでインデント付きの改行を採用していていい加減ストレスがたまって仕方ないので変更することにした。 (add-hook 'coffee-mode-hook '(lambda…

RSpecでパラメタライズドテストを書く

書く必要あんのかって感じもありつつ、なんとなくこう書きたいから書いた!っていう感じ。例えばこんな感じ。 subject { FactoryGirl.build(:people, params) } 0.step(100, 10) do |n| context "#{n}の場合" do let(:params) { {age: n} } it '正常に更新出…

キングゲイナーを観た

キングキングキングゲイナー!!朝からなんとなく見始めて結局1日で全部見てしまった。馬鹿である。 エウレカと0083とエヴァを混ぜて色々削ったような、なんかそんな感じのアニメだった。 人が死ぬっていうのはほとんどなかったように思う。ストーリー上やむ…