週刊Railsウォッチ(20171006)PostgreSQL 10ついにリリース、Capybaraコードを実画面から生成するnezumiほか

こんにちは、hachi8833です。暑がりさんなので今日も扇風機にあたっています。 それでは10月最初のウォッチ、いってみましょう。なお「Rails: 今週の改修」は本家で更新がありませんでした。 号外: PostgreSQL 10が正式リリース プレスリリース: PostgreSQL 10 Released 9月後半にPostgreSQL 10 RC1がリリースされていたので記事にしようと思っていましたが、昨晩正式版がリリースされたので急遽差し替えました。 記念写真を取るためにとりあえずインストールして動かしてみました。MacのHomebrewでインストールしていたPostgreSQL 9をbrew services stop postgresqlでいったん止め、BigSQLのパッケージマネージャでインストールしました。このパッケージマネージャは関連ファイルを1つのフォルダにまとめてくれるので散らからないところが便利でした。 ちょうど11/3文化の日にPostgreSQL Conference Japan 2017が開催されるので、そちらも盛り上がることでしょう。 つっつきボイス: 「PostgreSQL 10の導入は、Rails(特にActiveRecord)でひととおりバグが取れるまで様子見かな」 Ruby trunkより Tempfile.open()の挙動がおかしい=>バッファならそうなる(却下) #13965 Surprising behavior when using Tempfile.open >> Tempfile.open() { |f| (1..10000).each { |i| f.puts i }; `tail -n1 #{f.path}` } => “8416” >> Tempfile.open() { |f| (1..100000).each { |i| f.puts i }; `tail -n1 #{f.path}` } => “98835” >> Tempfile.open() { |f| f.puts “Test\n”; `tail -n1 #{f.path}` } => “” つっつきボイス: 「(1..10000).eachを回してtail -n1でラス1行だけ取ろうとしたのか: f.puts iでバッファされるから取れる保証がない」「パッチモンスターことnobuさんがツッコんでたバッファってそこなのか」 Ruby Rubyのヒープをビジュアル表示(Ruby Weeklyより) 元記事: Visualizing Your Ruby Heap tenderlovemaking.comより RubyとRailsを両方手がけるAaron Pattersonさんの記事です。つい最近日本語ツイートがバズって外部でも有名になりましたね。 # 同記事より require ‘objspace’ x = 100000.times.map { Object.new } GC.start File.open(‘heap.json’, ‘w’) { |f| ObjectSpace.dump_all(output: f) } つっつきボイス: 「おー、これはこの間のRubyKaigi 2017のスピーチ「Compacting GC in MRI」で使ったテクニックを解説している感じか」「GC(ガベージコレクション)も出てくる」 週刊Railsウォッチ(20170929)特集: RubyKaigi 2017セッションを振り返る(2)Ruby 2.3.5リリースほか [インタビュー] Aaron Patterson(前編): GitHubとRails、日本語学習、バーベキュー(翻訳) ガイジン向けRubyKaigiガイド(Ruby Weeklyより) 元記事: Gaijin Guide to RubyKaigi schneems.comより とても面白い読み物です。日本人開発者はあまりガイジンに話しかけてくれないということに気づくのに時間がかかったそうです。(゚⊇゚)ガイジソー つっつきボイス: 「これは翻訳するとよさそう」「はいよろこんでー」 来年のRubyKaigiあたりでどなたか試していただきたいのですが、ガイジンの皆さんにコンビニの肉まん食べさせてみたらきっと半分以上の人がハマると思います。次回は5月なのでコンビニにないかな。 著者のRichard Schneemanさんのプロフィールに「2016年度のRuby Hero」とあったので、つっつきメンバーで探してみました。 つっつきボイス: 「Ruby Heroって初めて聞いた」「↓おーこれか」「Code Schoolがスポンサー」 rubyheroes.comより 「ヒーローリストにamatsudaさんやko1さんやいろんな人いる」「どうやって選出しているでござるか?」「nominateってリンクがあるから他薦ですね」「く、このリンク効かない…」「選出の時期が来たらフォームが開くんでしょうね」「米国のRailsConferenceで発表されるんですね: 以前のウォッチ↓でも紹介しましたが、今年の開催は4月でした」 週刊Railsウォッチ(20170421)RailsConfが来週アリゾナで開催、コントローラを宣言的に書けるdecent_exposure gemほか OptCarrotはCPUベンチマークにいいぞ 元記事: OptCarrot: An Excellent CPU Benchmark for Ruby 3×3 engineering.appfolio.comより 表示がわかりにくいのですが、RubyKaigi 2017でHow Close is Ruby 3×3 For Production Web Apps?をスピーチしたNoah Gibbsさんの記事でした。TechRachoの翻訳記事でもお馴染みかと思います。 米国から見た日本のRuby事情(翻訳) つっつきボイス: 「OptCarrotはRubyで書かれた任天堂のファミコンのエミュレータです」「英語圏だとNES(Nintendo Entertainment System)って呼ばれているのは知ってたんですが、NESの写真みたのはこの記事が初めてでした: ファミコンと相当見た目違う」 「RubyKaigiやいろんなところで、RubyのベンチマークにOptCarrot使ってるのを見かけるので、これを標準原器的に使うという暗黙のコンセンサスがあるのかなと思ってました」「まあ、OptCarrotで好結果を出したとしてもそれによってたとえばRailsが速くなるかというと、ボクはとっても疑問ですけどねw」 「なお言語の処理そのもののパフォーマンスをチェックするときは、ディスクアクセスやネットワークアクセスみたいな二次的な要素はできるだけプログラムから排除しないと、言語のパフォーマンスチェックのはずがネットアクセスのチェックになったりしかねないんですよ」「あー、なるほど: … Continue reading 週刊Railsウォッチ(20171006)PostgreSQL 10ついにリリース、Capybaraコードを実画面から生成するnezumiほか