@kyanny's blog

My life. Opinions are my own.

irb/pry から MongoMapper を使うと NameError: uninitialized constant ActiveModel::Serializers::Xml が出るときの対処法

require 'mongo_mapper' するとあわせて require 'active_model' もされるが、 Rails 5 がインストール済みだと activemodel 5.x を読み込んでしまう Rails 5 から https://github.com/rails/activemodel-serializers-xml が core から外れた という組み合わ…

Ruby で pp の出力の横幅を広げる

PP.pp の第三引数で横幅を指定できる。 http://rurema.clear-code.com/2.4.0/method/PP/s/pp.html PP.pp(obj, $>, 200) Kernel.#pp は引数をすべて pp してしまうので、この用途には使えない。

Rails アプリケーション(っぽい)ディレクトリ内で rails コマンドを実行すると rails new --help の結果が表示されてしまうときの対処法

bin/rails または script/rails が無いのが原因。 このファイルを作る rake タスクを実行すればよい。 # Rails 4 $ bundle exec rake rails:update:bin # Rails 5 $ bundle exec rake app:update:bin 肝心の処理をしているのはここ https://github.com/rails…

はしごだか・たつさき等の機種依存文字を含む Microsoft Excel ファイルを CSV として保存するとき気をつけること

TL;DR LibreOffice を使え 「髙(はしごだか)」や「﨑(たつさき)」のような、いわゆる機種依存文字*1を含む Microsoft Excel ファイルのデータを UTF-8 に変換して扱おうとして、 Excel の「Save As…」から CSV 形式で保存したところ、それらの文字が全て…

(9/75) Java Tutorial for Complete Beginners

do while ループ。 Java では変数のスコープは { } の中。

MacBook Pro (Retina, 13-inch, Early 2015) トラックパッドケーブル故障

MacBook Pro 修理終わった。やはりトラックパッド裏のケーブルの問題だった。部品在庫があったので即日修理できた(三、四十分くらい)。AppleCare Protection に入っていて保証期間内だったので修理費は無料(保証期間は一年後まである)。— Kensuke Nagae …

drakma:http-request の返り値を変数に束縛する

(quicklisp:quickload :drakma) (let* ((drakma:*text-content-types* '(("application" . "json"))) (token "helloworld") (authorization (concatenate 'string "token" " " token))) (multiple-value-bind (body status headers) (drakma:http-request "h…

Drakma で Authorization ヘッダを送信する(トークンをハードコーディングしない)

(quicklisp:quickload :drakma) (let* ((drakma:*text-content-types* '(("application" . "json"))) (token "helloworld") (authorization (concatenate 'string "token" " " token))) (drakma:http-request "https://httpbin.org/get" :user-agent "my use…

Drakma で HTTP リクエストヘッダを送信する

(quicklisp:quickload :drakma) (let ((drakma:*text-content-types* '(("application" . "json")))) (drakma:http-request "https://httpbin.org/get" :user-agent "my user agent" :additional-headers '(("X-Hello-World" . "Hello World")))) いくつかの…

Drakma で JSON API にアクセスする

(quicklisp:quickload :drakma) (let ((drakma:*text-content-types* '(("application" . "json")))) ;; おまじない (drakma:http-request "https://httpbin.org/get")) 返り値は順に body status-code headers uri など(使いそうなのはこのへんまで)。 リ…

(8/75) Java Tutorial for Complete Beginners

標準入力から読み込む。 Scanner が期待する型と違うデータを入力するとエラーになるのを堅牢にせよ、というお題にたいする解。 import java.util.Scanner; public class Application { public static void main(String[] args) { Scanner input = new Scann…

摩天楼

新宿御苑に行って風景の写真を撮ったが、緑の色が変な感じだったり曇り空が白飛びしたりしていて出来が悪かった。

(7/75) Java Tutorial for Complete Beginners

if。 最初のほうの本題とあまり関係ないビデオをいくつかスキップしてるせいか、ビデオの番号と完了数が合ってないことに今更気づいた。

弥勒の手

数日前から少し読み始めて昨日今日で一気に読んだ。 トリックには全く気づかずあっさり騙された。が、「殺戮にいたる病」が凄すぎて、こちらはずいぶん見劣りした。少なくとも二つ大きなトリックがあり、片方は丹念に記述を整理すれば気づけただろうし、もう…

ニュースの天才

予備知識なしで観たけど、おかげでハラハラしながら観れた。でも後味悪い映画だった。 ニュースの天才 (字幕版)発売日: 2013/11/26メディア: Amazonビデオこの商品を含むブログを見る 改めてあらすじを思い返すと考えさせられる話だった。 主人公が信頼して…

Ruby で \xE6\x9C\xAC のような文字列を扱う

ログファイルのリクエストボディにマルチバイト文字列が \xE6\x9C\xAC\xE6\x97\xA5\xE3\x81\xAF\xE6\x99\xB4\xE5\xA4\xA9\xE3\x81\xAA\xE3\x82\x8A のように書かれてしまっていて何がなんだかわからないので、人間が読める文字列に変換したり、逆に \xE6\x9C…

ぶた

(6/75) Java Tutorial for Complete Beginners

for ループ。 Eclipse でソースコードの整形は Cmd + Shift + F 右クリックまたはメニューから Source -> Format

トップガン

昔何度も観たけど、奥さんが観たことないというので観た。 久しぶりで細かいところは忘れてるかなと思ったけど、大筋は覚えてた。最初は吹き替えで見始めたけど、トムクルーズの声が違和感あって字幕に変えた。 トップガン (字幕版)発売日: 2013/11/26メディ…

舞妓はん

花びらの絨毯

(5/75) Java Tutorial for Complete Beginners

while ループ。 水曜(木曜)のこの時間は NHK でロシア語とアラビア語の勉強の番組が立て続けにやってて面白そうだった。 Java とは関係ないけど Emacs Lisp で日付処理する関数の使い方を少し勉強した。あと unkillable-scratch.el を入れた。 (current-ti…

(4/75) Java Tutorial for Complete Beginners

String について。 Eclipse では sysout まで書いて Control+Space を押すと System.out.println() に補完される。同様に main まで書いて Control+Space を押すと public static void main(String[] args) { } に補完される。

Mac の Emacs で C-M-d (down-list) が効かないとき

OS が奪っているらしく、 System Preferences から解除することもできないので、 $ defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 70 '<dict><key>enabled</key><false/></dict>' してから再起動すればよい。 参考 apple.stackexchange.com y0m0r.hateblo.jp ↑の…

(3/75) Java Tutorial for Complete Beginners

数年前に 43% まで視聴してたやつを進捗リセットして最初からやり始めた。 せっかくだからバージョン管理したいと思って Eclipse で Git (EGit) の使い方を調べるなど、寄り道している。 数年前も思ったけど、講師の John という人の声がすごく陰気に聞こえ…

メン・イン・キャット

他のことしながらでちゃんと観なかったけど、けっこう面白かった。 メン・イン・キャット(吹替版)発売日: 2017/04/26メディア: Amazonビデオこの商品を含むブログを見る

1Password で以前使用したパスワードを復元できるのは Login だけ

Login だとパスワードを変更したあと show previously used passwords というボタンから過去に使っていたパスワードを確認できるが、 Password だと復元不可能なので要注意。ログインパスワード以外に別のパスワードを発行して二段階認証を実現しているウェ…

ひまわり

850

2017年上半期エディタ遍歴

2016年12月に RubyMine のライセンス購入。一年半ぶり。新装版の達人プログラマーに感化されたのが動機だったようだ。本は未だに読み終えていない。 ↓ 2017年3月ごろに Atom にスイッチ。二年半ぶり。四月頭に使うちょっと大掛かりなバッチ処理のプログラム…