『現場で役立つシステム設計の原則』感想

読んだ。 雑多に感想を書く。 いわゆる Rails Way において到達できるところと、実際にシステムが要求するところの水準に乖離があるような現場はそこそこあると思っていて、Rails から入ったけどそういうところに困っている人(= つまり僕だ)にいい本だと思っ…

秒速でサイト作ったら反響がよかったので振り返り

github.com きっかけは、隣に座ってた人がいきなりやり始めたんだけど、検索ロジックとかが ガバそう 改善の余地がありそうだったので口出ししてたところから。 やったことは主にこんな感じです。 (PRになってないけど) 検索ロジックに口出しした とりあえず…

その rescue_from ほんとに必要ですか

だいたい必要ないと思ってますよ、という話。 Rails アプリケーションの開発において rescue_from を追加することが正しいことは少ないと思っています。 rescue_from とは実際にはアクションおよびコントローラをまたいだ begin - rescue ( try - catch )で…

jewel polisher

最近自分たちのプロジェクトが依存する gem 関連で何かが起きて対応が必要だったことが続いたのでメモっておく。 rails-html-sanitizer 0.4.0 CVE-2018-3741 対応。これは依存が多いので追うのがちょっとめんどかった。情報としては以下の issue が非常によ…

TaPL読書録 #3

前回: hkdnet.hatenablog.com 今回は4章終わりまで。 私物ノートPCのエンターキーがぶっ壊れているため今回のメモは控えめ。 定理3.5.12. 整礎集合の1要素へとマッピングできる関数 f を用いて無限降下列にならないことを示す論法は他の箇所でも見た気がする…

どうかくE22とjit

問題: 辞書順に数を並べる 2018.3.3 実装: github.com とりあえずナイーブに解いたやつ。鍋谷さんは「Rubyでは解けないくらいの計算量にしたつもりだった」と言っていたが案外解けている。 $ ruby -v ruby 2.6.0preview1 (2018-02-24 trunk 62554) [x86_64-d…

Ruby の ! について

はいどうも ! メソッド Ruby における ! ってご存知ですか? Ruby は演算子っぽいようなものもメソッドとして実装されているという話があったりします。 1 + 1 # Integer の + メソッドが呼ばれている class Integer # 上書き def +(other) 42 end end 1 + 1…

ランダム性は心の弱さ -- Rails においてテストデータをランダムに作ることについて

お気持ち やめよう 何がおきたか 単純化するとこんな感じのコードがあって爆死した1。 describe Foo do let(:left_foo) { Foo.new(value: 1000, bar: left_bar) } let(:left_bar) { BarMaster.all.sample } let(:right_foo) { Foo.new(value: 100, bar: righ…

TaPL読書録 #2

hkdnet.hatenablog.com 引き続きTaPL読書録です。今回は3.4.まで。 この項の構文は succ true や if 0 then 0 else 0 のような怪しげな項の形成を許すことに注意されたい(p.18) 怪しげw 「型なし算術式」なのでこの手のものを許可せざるを得ない。 評価のと…

入社していくらか経ったので自分がどんな価値を出してたのか確認したよ

はいどうも。入社してから7ヶ月くらい経ってるんですが、俺って何したんだっけ?どういう価値を提供したんだっけ?というのをふと確認したくなったので確認しました。今回はそれを外に出せる部分だけ出しておこうと思います。 業務中にメインで使っているレ…

オフラインリアルタイムどう書くE21 に参加して負けてきました

yhpg.doorkeeper.jp 負けました。敗因はなんだろ……。方針が定まりきらなかったのが敗因なのかなー。 プレイヤーベースで考えると打ったときに、そのタイミングでアタリを引いたのか、次のターンでアタリを引いたのかの場合分けがめんどくさそうだなーと思い…

gitコミットしぐさ

はいどうも。最近気をつけているコミットのやり方について備忘録的に書きます。1 前提として、現在はある程度成熟しているアプリケーションについての話です。新アプリの新画面ばーんってつくっていくぞみたいなときはもっと雑にコミットしてもいいんじゃな…

TaPL読書録 #1

2018年はmediumで記事を投稿しようと思っていたのですが、はてなブログのほうがなんだかんだ流入がいい気がしたので戻ってくることにしました。乗り換えのきっかけは、ブログのエディタの使い勝手があまりよくないことによっていたのですが、 kibela で書い…

2017年を振り返って

定量的な振り返りとしてGitHubの草を置いてみる。 3331 contributions 仕事とプライベート両方見えてるので結構すくなめかも。 一応草活は続いてる。 言語別のコーディング時間 定性的な振り返りとして隔月のことを思い出して適当に書く。 ……予定だったんだ…

chrome拡張 OneTab が便利

Firefox 57が出た後、しばらく浮気をしていたもののなんだかんだあって結局 Google Chrome に戻ってきました。 思えば IE で育ったあとに unDonut を使い始め数年、10年くらい前にchromeの存在を知ったあとはずっと使い続けてきた一番のお気に入りソフトであ…

Speee×Asakusa.rb Ruby2.5リリースパーティー に参加してきました

speee.connpass.com 行ってきました。 twitter に適当に投稿はしましたがだいぶはしょっているのでそれの補完を。 「突然CentOSが落ちるコードをコミットする人はちょっと」とか聞こえた— はくどー (@HKDnet) 2017年12月26日 なんか別方面にささったらしく妙…

#しがないラジオ とキャラ付け

この記事は しがないラジオAdventCalendar 5日目の記事です。 adventar.org すでに2回もゲストとして出演させていただきまして、自分のキャリアについては話しきった感覚があります。そのため今回はしがないラジオに出会って何が起きたのか、何を考えること…

LOLIPOP! マネージドクラウド触ってみた

昨日オープンβとしてリリースしたロリポップ!マネージドクラウド、まだまだどなたでも無料でしばらくご利用可能ですので、お気軽にお試し下さい。βのフィードバックも継続的に改善していきますのでご要望もどしどし頂けると幸いです。ひとまずアプリをシュ…

gitしぐさ 2017年11月編

最近の git コマンド運用録です。 雑に書いていきます。 前提 GitHub git hub tig リモートレポジトリ戦略 常に以下の状態を維持します。 upstream: みんなの更新が集まってくるところ origin: 自分の変更をいれるところ なので例えば ruby/ruby のようなOSS…

ruby/ruby にパッチ送ろうとしたけど失敗してる話 part2

注: part2といいつつpart1は書き上がってないのでこれが最初です 背景 るりまのサンプルコードを整備しようというプロジェクトがあるのはご存知ですか。 tbpgr.hatenablog.com id:tbpg さんがこちらで精力的に活動されているのですが、ある日こういう話を聞…

MDNのドキュメントにコントリビュートしてみたのでやり方書くよ

MDN、ご存知ですか。jsとかcssとかでググってみるとだいたいひっかかると思います。 developer.mozilla.org んで、これをちょっと読んでたんですがサンプルコードがわけわかんなかったんですよね。 僕が作った例のがイケてるんじゃね?と思ったのでコントリ…

Ruby hack Challenge もくもく会 に参加してきました

connpass.com 一言感想。コミッターの方が多数いてすげーなーという気持ちになりました えーとこの会自体は Ruby hack Challenge という企画のもくもく会です。 企画自体はこちらのレポを参照するのがよいかと。 codeiq.jp 僕は rhc 自体には参加してないの…

Ruby本体読みはじめた人に届けたいドキュメント

RubyKaigi2017に参加してやる気が高まったので最近は ruby/ruby のコードを読むようになってます。 github.com しかしこれがなかなか読むのにコツがいる感じです。 RubyKaigi参加前は “Ruby under a microscope”1 を読んで「Rubyの内側面白い!!!」ってな…

RubyKaigi 1日目メモ

改行いれるのめんどかったからmdをWYSIWYGモードで。ほぼただのメモです --- # RubyKaigi 1日目 ## introduction ### まつださん こんくらいなら聞き取れるけど英語スピーカーのトークは大丈夫だろうかBrazilから来てる人もいる ### マネーフォワード 「3人…

青春のアフター4を読んだ

以下ネタバレ前回でいきますのでご注意ください。

転職して1ヶ月が経っていたようです

タイトルのとおりです。 いつものも置いておくのでよろしくお願い致します。誰からかわかるとうれしいです http://amzn.asia/ehpcSIc (毎度のことなんだけどkindle版をほしいものリストから贈れるようにしてほしいし、並び替えはかんたんにできるようにして…

Linux + Thinkpad X1 Carbon 5th Genでトラックポイント、タッチパッドが安定しなかったけど直した話

解決したから書く 環境 Thinkpad X1 Carbon 5th Gen Ubuntu 16.04(Arch使ってたときも現象は同じ。治るかは未確認) 現象 タッチパッドやトラックポイントがうまく動かない。 具体的には0.5秒くらい動いたあとに動かなくなる。 また何回か動かしていると10秒…

Dockerのイメージとかタグとかの云々

俺のところでビルドできるDockerfileが他のところだとできないと言われて見たら、ubuntu:16.04の中身が変わってるのが原因だった。これ動くタグなのか……。ubuntu:xenial-20170517.1だと動かないっぽいのでこっちで指定するのが無難っぽい— はくどー (@HKDnet…

Credenatial Management APIの発表聞いたメモ

developers.google.com 僕はchrome使いなのですが、まあモダンなブラウザを使っている皆様ならばだいたいログインフォームに入力したあとに「このログイン情報を保存しますか?」系のダイアログが出るのをご存知かと思います。 インターネットの普及に伴い様…

podcast #しがないラジオ sp03 にゲストでいってきました

友人がpodcastを始めたというのは以前に書きましたがそれにゲスト出演してきました。 shiganai.org 好き放題喋ってたら3話構成(3a, 3b, 3c)になるくらい喋っていたようです。3aでは仕事の話、3bでは勉強会とかの話、3cではキモオタトークをしています。ちな…