タグ

ブックマーク / sho.tdiary.net (13)

  • React.js、やっと使えるようになった - ただのにっき(2015-04-18)

    React.js、やっと使えるようになった 「使いこなせる」と書くと石が飛んできそうなので。暇な時間にちまちま進めていたので、集中すれば1、2日でできそうなことにこんなに時間をかけてしまった。やっぱり集中力がない……。 とりあえずサーバサイドレンダリングは捨てる前提だったので、検索エンジンに拾ってもらう必要のないネタとしてBookscan Premium Optimizerを使って実装。テストがないとか、Ajaxには引き続きjQueryを使っているとかツッコミどころはあるけど、とりあえずクライアントサイドレンダリングに関しては雰囲気つかめたので良しとしよう。 あー、HerokuのSinatraアプリでJSXのコンパイルをさせる方法がわからんかったので、.jsxだけでなくコンパイル済みの.jsまでコミットしているのはなんとかしたい……。 今回おもに教科書がわりにしたのは一人React.j

  • 対話型のコンソールアプリをpryの上に構築したらだいぶ楽できた - ただのにっき(2013-11-28)

    ■ 対話型のコンソールアプリをpryの上に構築したらだいぶ楽できた ゆえあってちょっとした対話型のアプリ、それもWebじゃなくてLinuxコンソールで動くものを作る必要が出てきた。入力をパースしたりするのも面倒だしなーと思い、ためしにpry上のDSLみたいな感じで作ってみたらなかなかいいものが簡単にできた。うん、これは楽でいいなぁ。今後も使おう。 こんな感じのsample.rbを書いて(2013-12-03追記: pryの仕様に合わせて一部リライト): require 'pry' # business logic module Sample def self.hello(name) "Hello #{name}!" end end # helloというコマンドを定義する Pry.commands.block_command 'hello' do |*args| args.map{|name

  • HTTPリクエストの圧縮をサポートする - ただのにっき(2013-09-18)

    ■ HTTPリクエストの圧縮をサポートする HTTPクライアントから大きなデータをPOSTするときに圧縮可能ならそうして欲しい場合があって(もちろんブラウザはそんなことしてくれないので専用クライアントを使う前提)、サーバアプリは圧縮・未圧縮の状況にかかわりなく書きたいので、その部分だけRackミドルウェアにしてみた。ちなみにリクエストではなくてレスポンスなら普通の話なので何も考えずにRack::Deflaterを使えば良い。 最初、Rackでリクエストのbodyを操作する方法がわからなくてTwitterでつぶやいたら@moroが教えてくれたので解決。いつもいつも助かります(^^; こんな感じで使える: require 'rack/request_decompressor' use Rack::RequestDecompressor クライアントはContent-Encodingヘッダを追加

  • HTTPでHashやArrayを送る手法に仕様は存在しない……の? - ただのにっき(2013-09-15)

    ■ HTTPでHashやArrayを送る手法に仕様は存在しない……の? jQueryでこんなふうに書くと: $.post('/', { hash: { foo: 'hoge', bar: 'fuga'}, array: ['baz', 'piyo'] }); サーバ側でこんなふうに受け取れて(これはSinatra): post '/' do params.each do |key, val| puts "#{key}: #{val} as #{val.class}" end end ちゃんとHashやArrayとしてアクセスできる: hash: {"foo"=>"hoge", "bar"=>"fuga"} as Hash array: ["baz", "piyo"] as Array ああこりゃ便利だね、で済ましてもいいんだけど、HTTP POSTの中身なんてただのバイト列なんだから型の情

  • GitLabでGitHubっぽい開発環境を構築した - ただのにっき(2013-02-21)

    GitLabGitHubっぽい開発環境を構築した かずひこに先を越されてしまったが、GitHubライクなソーシャルコーディング環境を実現するフリーソフトウェア「GitLab」の導入が楽になったらしいので、入れてみた。職場の開発環境用。もう、Pull Requestのない開発なんてありえないからなー。 インストールマニュアルはだいたいDebian系のLinuxディストリビューションをターゲットに書かれているので(というかUbuntu向けだろうけど)、愛用のDebian Squeezeにもわりとすんなり導入できた。かずひこと同様、既存のApacheからリバースプロキシとして動かすように設定(→レシピ)。 唯一、実行後にSidekiqがRedisまわりでエラーになるのだけど、ちゃんとトラブルシューティングのドキュメントがあって、そのとおりにやったら動いた。すばらしいじゃないですか……見習い

    GitLabでGitHubっぽい開発環境を構築した - ただのにっき(2013-02-21)
  • ポモドーロ・テクニックはじめました - ただのにっき(2013-02-15)

    ■ ポモドーロ・テクニックはじめました もう何年も、集中力の低下に悩んでいて(悩んでいるというかこれはもう性格だな)なんとかしないとなぁと思っているのだけど、加えて最近みょうに目が疲れる。眼科医に相談したら、異常はないけどもう歳なんだから、30分に1回は遠くを見るなどして目を休めろと言われた。ようするに目のピント調整能力が弱っているのである。 30分間隔で仕事するなんてますます集中力が落ちるじゃないかと思ったが、そういえば30分刻みで仕事をする「ポモドーロ・テクニック」という手法があるのを思い出した。知り合いの技術者がけっこう採用しているのも知っている。去年までの職場ではマネージャ職で割り込みが多かったから難しかったけど、いまの職場は自分のペースで仕事ができるから、ポモドーロやってみるというのもアリかな。 というわけで、タイマー探し(←まずは形から)。25分の集中タイムと5分の休憩タイムを

  • めんどうくさいWebセキュリティ(Michal Zalewski) - ただのにっき(2012-09-27)

    ■ めんどうくさいWebセキュリティ(Michal Zalewski) これは誕生日プレゼントにいただいたものですね、ありがとうございます。なにしろ書名のとおりマジで「めんどうくさい」ので、読むのにすごい時間がかかってしまった。といっても文体が理解しにくいとか、内容が難解というわけではなくて、Webの世界があまりに混沌としていて読んでてずーんと気分が重くなるので読み進むのが「めんどうくさい」(文体はところどころくすぐりが入っていたりして、軽くてわかりやすい)。 面白いと思ったのが、このはXSSとかCSRFみたいなセキュリティ上の問題を(たとえば事例を交えるなどして)解説するというスタイルではない、という点だ。そうではなくて、Webというこの10年間に急速に、そしてつぎはぎだらけに発展してきたテクノロジーが、なかば必然的に内包することになった「仕組み上の問題点」をつぎつぎとあげていく。もち

  • 解錠師 (スティーヴ・ハミルトン) - ただのにっき(2012-05-10)

    ■ 解錠師 (スティーヴ・ハミルトン) 手先の器用さには多少自信があるので、鍵師になってみたいなーという漠然としたあこがれを抱いたことはある。もちろん現実には、実際の鍵師に必要なのは器用さよりも聴覚や触覚の鋭敏さだし、それより下手すりゃ警官よりも高いモラルを求められるストイックさに耐えられないんじゃないかと思うけど。まぁいまだにあこがれの職業のひとつには違いない。 ある事件をきっかけに声を失った美少年が、自己流でピッキングの技術を身につけ、天才的な適性をあらわにした結果次々と事件に巻き込まれていく……そのタイトルが「The Lock Artist」ってんだから、そりゃぁもう期待してしまうわけだ*1。しかし金庫破りをしている以上、明るく幸福な話にはなりようがなくて、メインストーリーはかなり陰だ。 一方、一人の少女との出会いに始まるラブストーリーでもあって、解錠師としての後ろ暗さと対照的にこ

  • いま集合的無意識を、 (ハヤカワ文庫JA)(神林 長平) - ただのにっき(2012-05-04)

    ■ いま集合的無意識を、 (ハヤカワ文庫JA)(神林 長平) 相変わらずの神林節で面白かった。以上。……というのは(これを読み返す未来の自分に対して)あんまりか。 アフタヌーンで「勇者ヴォグ・ランバ」というちょっと神林世界っぽい骨太なSF作品が連載されていて毎月楽しみにしているんだけど、「意識」を喪失するということは想像力を失うことを意味するという書の表題作で行われる議論と似通っていて、今後の「勇者ヴォグ・ランバ」の読み方に何かを付け足してもらったようで嬉しかった。なにかと「伊藤計劃」というキーワードとともに語られがちな作品だし、そのことはもちろん重要なんだけど、ぜんぜん別の楽しみもできるってことで。あと、飛浩隆の解説が補完的な意味で良い。 冒頭の「ぼくの、マシン」も含め、ネットワークに対する嫌悪というか不快感が提示される作品が目立つのだけど、ひごろからネットの向こうに芽生えつつある集合

  • T-POINTを取得するスクリプトをGistから移動, Bundlerを使ったGem作成メモ (自分用) - ただのにっき(2012-02-18)

    ■ T-POINTを取得するスクリプトをGistから移動 かれこれ2年も前に書いたT-POINTを取得するスクリプト、さくらのレンタルサーバ上のcronで毎朝動かしていて、調子のいいときはちゃんとKayac経由で毎朝Gmailにメッセージが飛んきてるんだけど、なければないで困らないこともあり、何かトラブルがあって届かなくなっても気づかないんだな、これが。今日も、poppenさんがパッチを送ってくれてはじめて「そういえば最近見なかったなぁ」と気がつくしまつ。 で、ちゃんと継続的に使ってくれてメンテもできる人がいるならいっしょにやりやすくすればよかろう。スクレイピングのスクリプトは継続的にメンテできないとすぐに陳腐化するからな。ということで、他のポイントサービスのデータも合わせてスクレイピングできるように元のGistからpoints-scraperリポジトリに移動、ついでにGem化した: %

  • 「東京Ruby会議05」でUnicode正規化の話を聴いてきた(えっ?) - ただのにっき(2011-02-04)

    ■ 「東京Ruby会議05」でUnicode正規化の話を聴いてきた(えっ?) そういえばRegional RubyKaigiに参加するのは初めてだ。今までは「大RubyKaigiの実行委員がRegionalに参加して(ただでさえ少ない参加枠を狭めるのも)申しわけないなぁ」と思って遠慮していたんだけど、今年は予告通りRubyKaigi2011の実行委員からは外れたので、遠慮するこたぁないのだった。というわけで東京Ruby会議05に参加。 場所は渋谷、ECナビの8Fにある「Ajito」という……なんだろう、そのビルに入っている各社の共同スペースみたいな? 趣向を凝らしたいろんな部屋がある、会議&イベントスペースというか。渋谷にこんな小洒落たフロアを持ってるなんて、ネット企業うらやましい! 冒頭は高橋さんによる「Rubyの楽しさ」に関する講演(台なし、スライドなしの1時間)で、その後、事前に設

  • 異星人の郷 上 (創元SF文庫) (創元SF文庫)(マイクル・フリン) - ただのにっき(2011-01-14)

    ■ 異星人の郷 上 (創元SF文庫) (創元SF文庫)(マイクル・フリン) SFよ、私は帰ってきた! ……いやね、こないだ屋に入ってハヤカワ文庫の棚を見たらさ、高さの異なる新旧のが凸凹に並んでて実に悲しい気分になったんだけど、ちょうど自炊のクオリティが不満のないレベルになってきた頃だったので「全部自炊しちゃえば高さの違いなんて気にならないじゃん!」と思ったので新刊を買ったのよ。創元文庫だけど(え?)。 で、書がそうなんだけど、いやぁ、かなり面白かった。 ペストが猛威をふるう中世ヨーロッパ*1に異星人の宇宙船が座礁(?)したところから始まるファーストコンタクトもの。科学技術が発達した現代ではなく、キリスト教が支配する時代にファーストコンタクトがおきたらどうなるか。これだけで勝ったも同然の設定なんだけど、これに、数少ない資料から当時のようすを再構築するという現代視点のストーリーがからむ

  • 「ひとりぼっちのプログラマ」に読んで欲しい、『 プログラマが知るべき97のこと』 - ただのにっき(2011-01-08)

    ■ 「ひとりぼっちのプログラマ」に読んで欲しい、『 プログラマが知るべき97のこと』 オライリーの高さんから献いただいた。いつもありがとうございます。 このはねぇ、「ひとりぼっちのプログラマ」にぜひ読んで欲しいなぁ。 ここでいう「ひとりぼっち」にはふたつの意味があって、ひとつは「ひとりでがんばっているプログラマ」。 Twitterやブログを読んでいると、仕事でいろんなことにチャレンジしたり、業務を改善したりしたいと思っているのに、職場の文化が壁になったり、上司の理解が得られなくて歯がゆい思いをしている若いプログラマの叫びが、それはもう、かなり頻繁に聞こえてくる。10年前ならいざしらず、今ならさっさと転職してしまうのが正しい道だろうけど、そうもいかない事情を抱えている、でも現状をなんとかしたい……そう感じているひとりぼっちのプログラマにとって、書はいい味方になってくれると思う。というか

  • 1