2015-01-01から1年間の記事一覧
書くのが楽しいプログラミング言語であるRubyですが、それでも「落とし穴」がいくつも存在します。 その中から私が最近ハマった落とし穴を7つ紹介します。 シンボルと文字列は異なる Rubyには「文字列(String)」("a" とか 'Hello world!')の他に、文字列…
RBENV_VERSION環境変数を指定すればいい。 #!/bin/bash RBENV_VERSION=2.2.3 rbenv exec rubocop "$@" 背景 イマドキ、プロジェクトで使うRubyのバージョンを.ruby-versionやGemfileで指定していない人はいないと思いますが、その時困るのはgem install hoge…
params = {a: "hello", b: "world"} def foo(a:, b:) puts a + b end foo(params) # => helloworld って出来るんだから、 a:, b: = params puts a + b # => helloworld って出来ないのかしらん?Ruby 2.2ではできないみたい たしかClojureにこんな機能があっ…
部分集合が含まれているのは仕様です。 1. リファレンスマニュアル 寝るときに枕の下に敷くこと。 なお、リファレンスマニュアルは各バージョンごとにあるので、最新版(今は2.2.0)を見ましょう。 オブジェクト指向スクリプト言語 Ruby リファレンスマニュ…
RubyGemはめっちゃ簡単に作れる! - 酒と泪とRubyとRailsとでRubyライブラリの公開方法が紹介されていました。 Goライブラリも知らないとハードル高そうに見えますが、実はかなり簡単につくれます。 これから積極的にGoライブラリを作ってOSSの世界に貢献し…
イントロ 21世紀になって登場したフロントエンド向けビルドツールであるgrunt, gulpなどは、最近批判を受けているようだ。 【翻訳】Web世代のデベロッパーのためのmake - MOL 最近のビルドツールって何なの? - 檜山正幸のキマイラ飼育記 gulp問題ひきずり:…
Dotenvは環境変数をファイル(.env)から読み込むためのRubyライブラリ。 Twelve-Factor Appなどでは、アプリケーションの設定は環境変数に格納することを推奨しており、Dotenvは本番と開発で環境変数を切り替えるのにうってつけ。 一方、開発環境で環境変数…
Goプログラマ必携のGoライブラリ管理ツールghqは、 インストール先などを~/.gitconfigから取得するようになっています*1。 まぁ、非開発者はどうするかとか、そもそも他ツールの設定ファイルに相乗りするのはどうなのかとかは問題ですが、開発者用と割り切れ…
Pythonの○○をGoで実装してみたシリーズ fileinputは、行単位で処理を行うコマンド(特にUNIXフィルタ)を作るときなどに便利なライブラリ。 import fileinput for line in fileinput.input(): process(line) コマンドライン引数で与えられたファイルの行に順…
この記事は3.2まではPythonを使っていたが、しばらくPythonを離れ、最近戻ってくることになった人*1向けに、 3.3〜3.5で何があったか(何が起こる予定か)をまとめる記事です。 *1:つまり私
1. イメージを作る方法はDockerfileだけじゃない Packerもある。 Packer by HashiCorp Packer by HashiCorp Packerは様々な仮想環境のイメージを統一的な方法で作れるツールで、Virtualbox・AWS・DigitalOceanなどにも対応しています。 したがって、DigitalO…
Cookieを使った認証において、認証取得先とリダイレクト先などは同じ表記でなくてはならない。 すなわち、localhostと127.0.0.1は異なるホストとみなされる。設定ではどちらかに統一すること。
GVimでスクロールしたり、ggでジャンプしたりすると正しく再描画されず画面が真っ黒に。 (たちの悪いことに、マウスで少しスクロールすると再描画される。 そのため、絶妙な「不便で作業効率は落ちるけど一応使えてしまう」不具合になっている) どうやら前…