Rubyのnilを返さないCSVライブラリ

RubyのCSVライブラリは何故か空フィールドについてnilを返します(「"」で括られていると空文字列を返します)。 require 'csv' CSV.parse('a,,"","1,2"') do |row| p row end #=> ["a", nil, "", "1,2"] なのでそれを考慮していないと NoMethodError(いわゆる…

第15回 SQLアンチパターン読書会に参加しました

8/2 NSEGの「SQLアンチパターン読書会」の第15回に参加しました。 nseg.connpass.com 隔週の水曜日の夜に開催しています。だいたいいつも3〜4人くらいでこじんまりとやってます。今回は4人でした。 一人が1〜2ページくらいを音読して、気になったことをみん…

第14回 SQLアンチパターン読書会に参加しました

NSEGの「SQLアンチパターン読書会」の第14回に参加しました。 nseg.connpass.com 隔週の水曜日の夜に開催しています(が、今回は私の都合で1日ずらしてもらいました)。だいたいいつも3〜4人くらいでこじんまりとやってます。今回は5人でした。 一人が1〜2ペー…

第12回 SQLアンチパターン読書会に参加しました

NSEGの「SQLアンチパターン読書会」の第12回に参加しました。 nseg.connpass.com 隔週の水曜日の夜に開催しています。だいたいいつも3〜4人くらいでこじんまりとやってますが、今回は7人でした。 一人が1〜2ページくらいを音読して、気になったことをみんな…

MySQLの日本語コレーション

4月にMySQLの日本語コレーションについて語り合う場に呼ばれていろいろ話を聞いてきました。すぐにブログを書こうと思ったんですが、はや2ヶ月経過…。 ときどき、自分がMySQLの文字コードに関して発表する際に、次のようなスライドをいれてるんですが、 MySQ…

MySQL 5.7が何も言わずに起動できなかったのでメモ

MySQL 5.6と同じ方法でMySQL 5.7を起動しようとしたら何も言わずに黙って終了してしまって少しだけハマったのでメモ。 MySQL 5.6では次のようにして起動してました。 # /usr/local/mysql-5.6/bin/mysqld --no-defaults --user=mysql --basedir=/usr/local/my…

第11回 SQLアンチパターン読書会に参加しました

NSEGの「SQLアンチパターン読書会」の第11回に参加しました。遅刻して19時くらいに着きました。 nseg.connpass.com 隔週の水曜日の夜に開催しています。だいたいいつも3〜4人くらいでこじんまりとやってます。今回は4人でした。 一人が1〜2ページくらいを音…

第10回 SQLアンチパターン読書会に参加しました

5/24にNSEGの「SQLアンチパターン読書会」の第10回に参加しました。 nseg.connpass.com 隔週の水曜日の夜に開催しています。だいたいいつも3〜4人くらいでこじんまりとやってます。 一人が1〜2ページくらいを音読して、気になったことをみんなで話したりして…

MySQLユーザ会会 in 長野 を開催しました

5/13(土)に「MySQLユーザ会会 in 長野」を開催しました。 nseg.connpass.com 「会」が2つあるのは仕様です。「MySQLユーザ会」の会合で「MySQLユーザ会会」です。 開催経緯はこんなかんじです。 自分もMyNAとかに気軽に遊びに行きたい。— とみたまさひろ (@t…

ZIP中のファイル名の文字化け(Ruby編)

tmtms.hatenablog.com という記事を書きましたが、今回はRubyでZIPファイルを作る時の話を。 RubyでZIPファイルを作るには、rubyzip というライブラリを使います。 % gem install rubyzip 次のようにしてZIPにファイルを追加できます。 require 'zip' Zip::F…

ZIP中のファイル名の文字化け

こんな記事がありました。 gihyo.jp これはMacユーザー用の書籍の宣伝記事らしいのですが、「Windowsを使ってる人のためにMac側がひと手間かけてあげよう」なんて殊勝なことをマカーが言うとは時代も変わったもんです。([追記] はてブのコメントを見たらさ…

大江戸Ruby会議06

大江戸Ruby会議06 #oedo06 に行ってきたので雑感など。 会場 @sora_h さん生誕20周年記念ということで、会場も「ソラシティカンファレンスセンター」という場所でした。 Docker時代の分散RSpec環境の作り方 speakerdeck.com RSpecの実行に時間が掛かってたの…

Ruby製のEmacsライクなテキストエディタTextbringer

大江戸Ruby会議06で前田さんがRubyでEmacsライクなエディタTextbringerを作ったという発表をしていました。 発表資料 https://github.com/shugo/oedo06/blob/master/textbringer.md ブログ https://shugo.net/jit/20170320.html 最初はEmacs上の何かでプレゼ…

Sequelのトランザクション内でタイムアウトするとCOMMITされてしまう

ちょっと前にハマったのでメモ。 Sequelでトランザクションを使う時は次のように transaction メソッドにブロックを渡します。 require 'sequel' require 'logger' db = Sequel.connect('mysql2://user:passwd@localhost/test') db.loggers = [Logger.new($s…

ThinkPad T460s Ubuntu でトラックパッドを無効化

5ヶ月ほど ThinkPad T460s を Ubuntu(Xubuntu) で使ってます。 ちょっと前に さよならMac | めがねをかけるんだ という ThinkPad をdisった記事が話題になりましたが、自分はあんまり不満はありません。 ノートPCでLinuxを使う時の鬼門だった無線LANやサスペ…