エンジニアのためのTwitter クライアント、twterm v2 をリリースした

ターミナルエミュレータ上で動作する twterm の v2 をリリースした.

screencast

twterm.ryota-ka.me

これはなに

端末エミュレータ上で動作する Twitter クライアント.2015年1月ごろから細々と開発をしている.僕は普段 tmux でいくつも pane, window, session を作って作業をしているが,そのうちの一つで twterm を常に開いている.Text-based User Interface を採用していて,ターミナルから出ることなくインタラクティブTwitter を眺めたり,ポストしたりできて便利.

続きを読む

Terraform の module で2重ループしたい ― GitHub の issue labels を例に

実現したいこと

TerraformGitHub provider を用いて,issues および pull requests のラベルを管理したい.その際に,いくつかのラベルをひとまとめにしておき,複数のリポジトリが同じラベル群を持つようにしたい.また,module はネストすることもできるが,複雑になるので避けたい.

続きを読む

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

Swift でのジェネレータの取扱いや遅延評価については,ymyzk 先生の Swift でジェネレータを作ったり、遅延評価してみる において解説されているが,2015年5月の記事であり,Swift のバージョンも1.2だった頃の記事なので,改めて書くことにした.

2017年7月16日現在,Xcode 9.0 beta 上では Swift 4.0 がサポートされているが,手元の環境は Xcode 8.3.3 であるため,Swift 3.1 をベースに解説する.Apple の先走りで,ドキュメントのリンク先が一部 Swift 4 に関するものになっている部分があるが,本記事の理解にあたって本質的な違いはないはずである.

続きを読む

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

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

既に today ではないのだが,先週末に curl について便利なオプションを知ったのでまとめておく.curlcookie を送受信する際には -b / --cookie -c / --cookie-jar という便利なコマンドがあるのでこれが使えるという話.

続きを読む

Cycle.js を JSX で書く

Cycle.js と DOMDriver で Web アプリケーションを書くとき,sink に流す仮想 DOM を JSX で記述したい.公式を読むと普通にやり方が書いてあったが,ググって解決しようとしていると,古い手順に当たってしまい,少し引っかかってしまった.加えて,「最近のフロントエンドのエコシステムはこういう感じなのか」と思うところもあったので,同じような立場の人のために記録を残しておくことにする.なお,同じ轍を踏まぬよう,読者諸賢におかれましては,あくまで2017年1月30日現在の情報であることにご注意願いたい.

以下では,Cycle.js (w/ xstream) でウェブアプリケーションを構築する.また,アセットのビルドには webpack を用い,babel-loader を通じて,ES2015+ および JSX のトランスパイルを行うこととする.

なお,今回のプロジェクトは GItHub 上で公開しているので,参考にしていただきたい.

github.com

続きを読む