Yokohama.rb Monthly Meetup #76 に参加した

2017-01-14(土)の Yokohama.rb Monthly Meetup #76 に参加したので、メモを書きます。1 週間たってしまった。 yokohamarb.doorkeeper.jp Ruby レシピブック 今回はレシピ 244 から 247 まで読みました。システム寄りの話題が中心です。 レシピ 244 スレッ…

冪等な更新処理の API エンドポイントでは PUT を使うとよさそう

結論 star や like を付与するような、冪等性を持つアクションのための API エンドポイントでも POST はよく使われる が、HTTP メソッドの意図を考慮すると、冪等な更新処理の API エンドポイントにアクセスするときの HTTP メソッドは、POST より PUT がよ…

2016 年ふりかえり

2016 年をふりかえらないと 2017 年が始まらないので、ハイライトでふりかえります。 上半期と下半期で在籍していた会社が違うので、そのくくりで分けてます。 上半期 個人活動 2015 年の秋ぐらいから触っていた Ruby で引き続き遊んでいました。 読書メータ…

Yokohama.rb Monthly Meetup #75 に参加した

2016-12-10(土)の Yokohama.rb Monthly Meetup #75 に参加しました。 yokohamarb.doorkeeper.jp 次の流れでした。 前半は Ruby レシピブック読書会 後半は LT 今回は、参加者の @Nabetani さんがすでにメモを書いてくださっています。僕もメモしておきます…

Ruby (on Rails) で使える enumeration 実装を比較してみた

こんにちは、GMO ペパボの人間です。これは pepabo Advent Calendar 2016 の 9 日目の記事です。 昨日は我らが CTL けんちゃんくんさんの 「gemビルドしようとして The validation error was 'yourgem-x.y.z contains itself (yourgem-x.y.z.gem), check you…

Ruby のテストカバレッジを Travis CI から Code Climate へ POST する方法が変わっていた

Travis CI 上で Rubygems のテストを実行して、テストカバレッジの集計結果を Code Climate へ POST するときにエラーが発生していたので、解決方法をメモしておきます。 エラー /home/travis/.rvm/rubies/ruby-2.0.0-p598/bin/ruby -I"lib:test" -I"/home/t…

hatenablog gem 0.5.0 をリリースした

Rubygem の hatenablog 0.5.0 をリリースしました。 github.com アップデート Hatenablog::Client.new にブロックを渡すことで認証情報を設定できるようにしました。 client = Hatenablog::Client.new do |config| config.consumer_key = '<consumer key>' config.consumer</consumer>…

Yokohama.rb Monthly Meetup #74 に参加した

2016-11-12(土)の Yokohama.rb Monthly Meetup #74 に参加しました。 yokohamarb.doorkeeper.jp 前半は Ruby レシピブック読書会 後半は LT という 7 月以来の流れでした。 レシピブック 今回はいつもより 30 分短かったこともあって、レシピ 238, 239 だ…

Fukuoka.rb #66 に参加した

現在、会社の研修で福岡に来ています。福岡には、地域 Ruby コミュニティとして Ruby コミッタの nagachika さんや弊社の udzura さんが主催されている Fukuoka.rb があります。今回、udzura さんに誘っていただき、10/12(水)に福岡・天神のグルーブノーツ…

hatenablog gem 0.4.0 をリリースした

Rubygem の hatenablog 0.4.0 をリリースしました。今回追加したのは Basic 認証ではてなブログの API を使えるようにする機能です。 github.com PR ありがとうございます! Basic 認証による利用方法 はてな API で Basic 認証による操作認可を得るには、AP…

読書メーター→ブクログ移行用スクリプトを書いた

読書メーターからブクログへ宗旨替えすることにしたので、データを移行したい気持ちになりました。 幸い、ブクログには CSV データによる読書データのインポート機能が備わっていたことと、私が以前読書メーターのスクレイピング gem である bookmeter_scrap…

hatenablog-writer 0.1.1 と hatenablog 0.3.0

今月は自分の gem にいくつか PR をいただいて新バージョンをリリースしました。PR をくださった方々、ありがとうございました。 hatenablog-writer 0.1.1 hatenablog-writer は CLI からはてなブログに投稿できるツールです。作ったきりほったらかしていた…

Ruby で順列の列挙を実装する

最近いろいろな人が次の本をやっているのを見かけるので、気になって読み進めてみています。 プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問作者: 増井敏克出版社/メーカー: 翔泳社発売日: 2015/10/14メディア: 単行本(ソフ…

Yokohama.rb Monthly Meetup #71 に参加した

2016-08-06(土)の Yokohama.rb Monthly Meetup #71 に参加しました。 yokohamarb.doorkeeper.jp 前半はもくもく会 後半は LT 2 本 吉田飯店で懇親会 という流れでした。今回も初参加の方が 2 名いらっしゃいました。 もくもく会 僕は次のようなことをやっ…

Itamae + Vagrant でステージング環境を構築しようとしている

ここ数日、構成管理ツールの練習と自作の Rails アプリケーションを本番に近い環境で動かせるようにすることを兼ねて、Itamae を使って Vagrant 上にステージング環境を作ろうとしています。 とりあえず、Rails で構築した自分の web サイトである kymmt.com…

Yokohama.rb Monthly Meetup #70 に参加した

2016-07-09(土)の Yokohama.rb Monthly Meetup #70 に参加しました。 yokohamarb.doorkeeper.jp 参加者は 8 人。内容は次のような感じでした。 レシピブック読書会 どう書く 吉田飯店で懇親会 レシピブック読書会 今回はレシピ 234 から 237 まで読みまし…

テキストの校正用に textlint を導入してみた

textlint は Markdown のようなテキスト向けの lint ツールです。テキストを静的解析し、あらかじめ決められたルールによって、テキスト上のミスや読みにくい点などを指摘してくれます。textlint は azu 氏によって JavaScript で開発されています。 textlin…

Yokohama.rb Monthly Meetup #69 に参加した

6/11(日)の Yokohama.rb Monthly Meetup #69 に参加しました。3 回目ぐらいです。 yokohamarb.doorkeeper.jp 今回は初参加の方が 4 人ほどいて、そのなかにはプログラミング始めたての学生の方もいました。行動力! 内容は次のような感じでした。 レシピブ…

RSpec 関連のメモ

FactoryGirl で association を持つオブジェクトの生成 例として、User, Category に次のように association を持たせているとします。 # app/models/user.rb class User < ActiveRecord::Base has_many :categories # ... end # app/models/category.rb cla…

『Everyday Rails - RSpec による Rails テスト入門』を読んだ

「テストのないコードはレガシーコード」という名言*1があります。自動化されたテストがあることで、コードの変更が正しいかどうかをすぐに判断できます。そして、すばやく正確にコードを改修できるようになります。 そんなテストを効率的に書くための Ruby …

Code Climate + Travis CI で gem のテストカバレッジを自動測定する

Code Climate は Git リポジトリからソースコードを読み込んで、品質診断をやってくれる SaaS です。例えば、静的解析として 循環的複雑度(ソースコードの複雑さを表す尺度) ソースコード中の処理/構造の重複数(コードクローン) などをソースコードごと…

Let's Encrypt で証明書取得 & Web サーバ HTTPS 化

2016-07-10 更新 Let's Encrypt を使って取得した SSL/TLS サーバ証明書によって、Rails を動かしている自分の Web サーバを HTTPS 化しました。こんな鍵アイコンが出ていると HTTPS 化されたサーバと通信できています。 HTTPS は次のような利点があります。…

Yokohama.rb Monthly Meetup #67

4/16(土)の Yokohama.rb Monthly Meetup #67 に参加しました。 yokohamarb.doorkeeper.jp 『Ruby レシピブック第 3 版』の読書会はレシピ 225 から 229 まで。「日付と時刻」の章が終わりました。おめでとうございます!次の章は「システムとプロセス」で…

自分の作った gem が活用されていた

先日、こんな Qiita のエントリを見つけました。 qiita.com はてなブログに投稿するためのエントリを GitHub の pull request 上でレビューして master にマージ後、CircleCI を使って、自動ではてなブログやはてなフォトライフに投稿するツールだそうです。…

ブログのドメインを独自ドメインに変えた

魔が差して、ブログのドメインを kymmt90.hatenablog.com → blog.kymmt.com に変えました。これは、はてなブログ Pro に課金したことを意味します。 ついでにブログ名も kymmt's note → blog.kymmt.com に変えました。 URL は http://blog.kymmt.com になり…

2016 年 3 月に読んだ本

先月読んだ本まとめです。 2016年3月の読書メーター読んだ本の数:8冊読んだページ数:1865ページナイス数:1ナイスWEB+DB PRESS Vol.91の感想読了日:3月27日 著者:ソフトウェアデザイン 2016年 04 月号 [雑誌]読了日:3月27日 著者:ヘルシープログラマ ―…

bookmeter_scraper 0.1.2

bookmeter_scraper を 0.1.2 にアップデートしました。 github.com bookmeter_scraper とは 以下の記事を参照してください。 kymmt90.hatenablog.com 追加機能 追加した機能は以下の二つです。 ブロック内でログイン情報設定 取得できる情報に書籍とユーザの…

Yokohama.rb Monthly Meetup #66 に参加した

3/13(土)の Yokohama.rb Monthly Meetup #66 に参加しました。今回が初参加でした。会場は東神奈川駅近くです。 yokohamarb.doorkeeper.jp 最初は一人ずつ自己紹介して、その後、前半と後半のセッションに分かれて、もくもくしたり読書会したり発表したり…

読書メータースクレイピング用の gem を書いた

読書メーターは読書記録をつけたり本のレビューを書いたりできる SNS 風味の Web サービスです。 今回、読書メーターの情報をスクレイピングして Ruby で扱えるようにするための gem を書きました。現状 v0.1.1 です。 kymmt90/bookmeter_scraper: A scrapin…

IRB の評価値出力を抑える

小ネタです。 問題 要素の多い Hash などの中身を確認するために、IRB (irb) を使って、その Hash の中身を表示したいときがあります。 このとき、例えば Mechanize::AGENT_ALIASES を表示するために、コマンドを irb(main):002:0> pp Mechanize::AGENT_ALIA…