curl の -b, -c (--cookie, --cookie-jar) オプションが便利

体系だった大掛かりな記事を書こうとすると,なかなか気力と労力が必要で,結局書き上がった頃には多大なる時間を費やしているということがままあるので,もう少し雑にお役立ち情報を書いていきたい.そこで,TIL (Today I Learned) を (GitHub に push する…

Cycle.js を JSX で書く

Cycle.js と DOMDriver で Web アプリケーションを書くとき,sink に流す仮想 DOM を JSX で記述したい.公式を読むと普通にやり方が書いてあったが,ググって解決しようとしていると,古い手順に当たってしまい,少し引っかかってしまった.加えて,「最近…

Vim script でジェネレータを作ったり、遅延評価してみる

この記事は CAMPHOR- Advent Calendar 2016 8日目の記事です. はじめに 日本時間の2016年9月12日に,Vim 8.0 がリリースされた.Vim 7.4 のリリースからはおよそ3年振り,Vim 7.0 からは実におよそ10年振りのバージョンアップだそうだ.Vim 8.0 では様々な…

Rust の turbofish と GHC 8 の Type Application ― または我々は如何にして多相な関数を単相化するか

Rust には std::str::FromStr という trait があって,データ型がこれを実装すると,from_str という名前の associated function *1 を通じて,str からそのデータ型に変換できるようになる. use std::str::FromStr; fn main() { let x = i32::from_str("42…

ぷろみすのはなし

resolve.js Promise.resolve({ ok: true, json: () => Promise.resolve({}) }) .then(res => res.ok ? Promise.resolve(res.json()) : Promise.reject(res.json())) .then(console.log.bind(console)) .catch(console.error.bind(console)) reject.js Promis…

ないんたんのパーザを書いた

京都に住んでいた頃は,ズバリ大学付近の予想降水量をないんたんで知ることができたが,ないんたん天気予報@東京 で提供されているのは,本郷・駒場・大岡山・六本木ヒルズの4ヶ所なので,以前に比べると自分の行動範囲からは遠のいてしまった.が,普段は目…

wercker v2 で Rails + RSpec のビルドを高速化する

TL; DR 予め作っておいた Docker イメージを box として指定する rake assets:precompile で生成されたファイルをキャッシュする test-queue で RSpec の実行を並列化する Database Cleaner の代わりに DatabaseRewinder を使う

Haskell でマルコフ連鎖を用いたツイートの自動生成

元ネタ morishin.hatenablog.com やったこと これまでの Twitter 上の発言をもとに,マルコフ連鎖で文章を生成して,それを垂れ流す bot がいるとおもしろいかなと思って作った.しゅうまい君 (@shuumai) みたいなものなのだけど,ソースが特定の人物のもの…

キヨシ

界隈の人たちはみんなポエムを書くのが好きなので,散々既出だと思うけど,先週京都にいるときに少し話が出て,自分だったらこう書くかなぁと,フワッと思ったものを書き下してみた. import Data.Bool (bool) import Data.List (isPrefixOf) import System.…

beautiful people

data Person = Person { isBeautiful :: Bool , isNice :: Bool , isTall :: Bool } deriving Show type People = [Person] people :: People people = let b = [minBound ..] in Person <$> b <*> b <*> b beautiful :: People -> People beautiful = filte…

Perl 6 でジェネレータを作ったり、遅延評価してみる

この記事は CAMPHOR- Advent Calendar 2015 30日目の記事です. これまでの流れ Ruby の Enumerator でジェネレータを作ったり、遅延評価してみる - ryota-ka's blog Python でジェネレータを作ったり、遅延評価してみる - 意識低い開発者のBlog ECMAScript …

パターンマッチなんか書いたら負け (モナドがあるから)

この記事は CAMPHOR- Advent Calendar 2015 26日目の記事です. はじめに (弁明) 個人的な意見といたしましては,別にパターンマッチを使おうが負けだとはこれっぽっちも思っておりませんし,むしろ,Haskell におけるパターンマッチは非常に強力な言語機構…

vty + StateT で画面のスクロールを実装する

この記事は CAMPHOR- Advent Calendar 2015 4日目の記事です. こんにちは,@ryota-ka です.今年もアドベントカレンダーの記事がやって参りました. 今回の記事では,ncurses を使ってターミナル上でフルスクリーンアプリケーションを作成し,ユーザーのキ…

Karabiner を使ってターミナルの外でもラクラクカーソル移動生活

おはようございます,@ryota-ka です. 僕は Zsh の設定ファイルに bindkey -e と書いている人種なのですが*1,いくつかの Emacs のキーバインディングは Cocoa の Text System でも使えるようになっていて便利ですよね.C-a -> C-k で move-beginning-of-li…

Rust でジェネレータを作ったり、遅延評価してみる

はじめに 日本時間の2015年5月16日に Rust 1.0 がリリースされました ?? というわけで、4月末頃から、「書こう書こう」と延々と言っていた記事を、いい加減書こうと思います。 これまでの流れ Ruby の Enumerator でジェネレータを作ったり、遅延評価してみ…

Ruby の Enumerator でジェネレータを作ったり、遅延評価してみる

Ruby には Enumerable モジュールってのがあって、これを include したオブジェクトは、自身に対して何かしらの反復処理ができるようになる*1。 また、その反復処理を用いた Enumerable#map とか Enumerable#select *2 とか Enumerable#reduce とかが使える…

ターミナルで動く最高の Twitter クライアントを作った

ターミナルで動く最高の Twitter クライアントを作った。 twterm : A full-featured CLI Twitter clienttwterm.ryota-ka.me スクリーンショット インストール $ gem install twterm バージョン2.1以上くらいの Ruby じゃないと動かないと思う(詳しくは未確認…

ポートフォリオサイトをリニューアルした

明けましておめでとうございます。@ryota-ka です。11月末頃にようやくクレジットカードを手に入れたこともありまして*1、12月初旬にさくらのVPSを借りていたのですが、なかなかまとまった時間が取れずに放置しておりました。しかしながら、以前から常々、ポ…

Raspberry Pi をセットアップ後に apt-get update ができなかった

最近とある理由で Raspberry Pi Model B+ (とカメラモジュール)を手に入れたので、セットアップしてみました。とりあえず無事にインストールを終え、起動と ssh 接続はできたので、とりあえず apt-get update しようと思ったらさっそくコケた。 pi@raspberry…

Git さえ使ったことがない初心者がとりあえず Heroku 上で PHP アプリケーションを動かすまで

PaaS とかが流行っていると耳にするようになって久しいですが、なんだかどうも Heroku というものは手軽でいいらしい、と。しかも先日 PHP も公式にサポートされまして*1、「PHP しかできないし難しいことよくわかんない><」っていう人でも比較的簡単に使…

20x20 (リメイクバージョン) リリースしました

こんな感じです http://20x20ryota-ka.me/ってなんだ? 日本人は小学校2年生の頃に九九を覚えさせられますが、インド人は20×20までの掛け算を暗記しているといいます*1。自分は昔から計算速度が遅く、単純な計算ミスも多かったので、これらの要因も数学に対…

Mac のターミナルを使って Gmail からメールを送る

先週末、九州で防人をしている友人が泊まりに来ることになっていたので、どのくらいの時間に来る予定なのか知りたくて、メールを送ろうと思いました。が、いざ Gmail の画面を開いても、なんとなく視覚に煩く訴えてきて、メールする気を喪失してしまうわけで…

Google アカウント移行の際に手間取った話

はてなブログはじめました かねてから、技術系の人ははてなブログをよく使っているという印象があって、密かに憧れていたのですが、自分も始めてみることにしました。先人たちに倣って、(あんまり難しいことはわかりませんが)技術的なことを書ければいいなと…