ゼルダの伝説 ブレス オブ ザ ワイルドをクリアした

固有名詞やゲームを進める上でのヒントはあるかもしれないけど、重要なネタバレはないようにしている。 良かった点 いい意味で死にゲーだったきがする。初見殺しがとにかく多くて死んで覚え、謎を解いていくみたいなゲームだった。 特に序盤でもかなりそれが…

Dell G5 ゲーミング デスクトップを買った感想

とりあえず到着して使ってみたので記念カキコ。 Windowsのためにやった環境構築だったり、WSLについてだったりは別記事で記載することにして、 この記事ではPC自体がどうですかーみたいな感想を書いていく。 ちなみに基本的なスペックだったりは前回の記事で…

HerokuでPumaを使いたかったのでpuma-herokuでサクッと設定した

これまでRailsやRackのアプリケーションサーバーにはUnicornを使っていたのだけど、 Herokuのホビープランのような、前段におそらくNginxがないであろう環境で、仮想コア数も多分1つみたいな状況ではUnicornよりもPumaのほうがもしかしたらパフォーマンスが…

ゲームをやらないのに Dell G5 ゲーミング デスクトップをポチった

なお、ポチっただけでまだ届いていません。 そろそろMacにも飽きてきたし、妻にも買っていいよとなったので何を買えばいいかなぁというので、下記要件でBTOだとかを色々探し回ったりしていました。 今回、ノートPCは軒並み高すぎるのでデスクトップにしまし…

一定の制約を設けてRailsのサービスクラスに一定の秩序を設ける

Railsでのサービスクラス(またはオブジェクト)の是非はさておき、Railsでサービスクラスは導入するとルールがゆるふわになりがちだったりします。 例えば、「サービスクラスを実行するメソッドはクラスメソッドなのか、メソッド名は execute なのか、perfo…

パッケージマネージャからインストールしたLet's Encrypt(Certbot)で証明書の更新をCronで実行する必要はない

まとめ 各Linuxのディストリビューションのパッケージマネージャー(aptとかyumとか)からインストールするとすでに更新処理(certbot renew)はCronで自動化されているため、自前で設定する必要はありません。 ただし、HTTPサーバによってはreloadかrestartを…

なるほどUnixプロセス - Rubyで学ぶUnixの基礎

元々興味があった本で、GW中に読むかーというので、結構短めの本だったのだけど、 ゲームをしながら(Borderlands)読んでいたので、3日位かかった。(なので実質3〜4時間くらいかなぁ。) tatsu-zine.com 目次では20章あるけどほとんどの章が2−3ページなの…

iOSアプリ開発デザインパターン入門を読んだ

会社で電子書籍をシュッと買ってもらえたので、ちょくちょく読んでいたのですが、 GW中に残りを読了したので感想をササッとまとめて書いておきました。 iOSアプリ開発デザインパターン入門 (技術の泉シリーズ(NextPublishing))作者: 千葉大志出版社/メーカ…

【WIP】TLS終端サーバーを冗長化するために考えること

TLS終端サーバーのロードバランシングについて すいません。完全に知識不足でDNSラウンドロビン以外で、冗長化できないとおもっていました。 普通にL4ロードバランサで冗長化できましたね。はい。 説明する前にロードバランサについておさらい 詳しい説明が…

iOSアプリ(Swift)再入門雑記

業務でiOSアプリ、今どきReactNativeじゃないの?? なんて思われるわけなんですが、ともかく業務でSwiftでアプリを試しに作ってみるのを初めて1週間が立ちました。 諸先輩方これからどうぞよろしくお願いします。 なにかデカい新しいことを仕事で始めるのは…

iOSアプリ再入門するためにUdemyで教材を買ったらとてもお得だった件

※ステマではないです。 正直二重価格表示っぽいことをしているのは承知の上だけど、それはそれで… あと個人情報がどうとかっていう話題には触れずに行きます。 とにかくiOSに再入門するために年末にUdemyで教材を買ってみてやったらとても良かったので、その…

Railsでアプリケーションコードで利用する生SQLを書くときにやっていること

TL;DR 生SQLは別にそのSQLを実行するためのClassを作ってそこで書いたり色々やっている。 パラメータのバリデーションもそのClassでやってる。 実装自体はActiveModelのValidateでサクッと実装。 select_allの結果は基本的にはHashなので、Structなどでオブ…

インフラエンジニアの教科書を読んだ

インフラエンジニアの教科書作者: 佐野裕出版社/メーカー: シーアンドアール研究所発売日: 2013/10/26メディア: 単行本(ソフトカバー)この商品を含むブログ (14件) を見る さらっと一度読んだので、インフラ方面のスキルを付けたいって思ったので再読する…

2018年振り返り

2018年の目標について 前述しましたが、社の一員として、成果を上げること(メインは技術的負債の返済) 一番大きめの問題については問題を解消する目処が立てた。後述します。 MHWに時間を吸われないように 200時間以上吸われた… 勉強会で積極的に登壇する …

SimpleDelegatorでSimpleなDecoratorを作る

そういえば、 ModelであんまりViewに関わるロジックを使わないほうがきれいにコード書けていいですよ~みたいな話をしたのですが、 その時に標準ライブラリにあるSimpleDelegatorを使うといいですよねなんて話をしたのですが使い方を復習するなどしていまし…

大規模サービス技術入門読んだ

[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)作者: 伊藤直也,田中慎司出版社/メーカー: 技術評論社発売日: 2010/07/07メディア: 単行本(ソフトカバー)購入: 80人 クリック: 1,84…

WebAPI The Good Partsを再読した

そういえば昔に読んだな、 とかおもってまた引っ張り出して読んでいた。 Web API: The Good Parts作者: 水野貴明出版社/メーカー: オライリージャパン発売日: 2014/11/21メディア: 大型本この商品を含むブログ (9件) を見る 改めて学びがあったトピックは バ…

Docker HubのSource Repositoryを変更したい場合

Docker HubでGithubあたりの自動ビルドを有効にしている時に、Source RepositoryのRename時に参照するGithubのリポジトリ変更したい場合がある。 この変更を忘れると、Github上でエイリアスを設定していてもDocker Hubには適用されず、自動でビルドされない…

あまり日の目を見ないPassengerにスポットを当てる

Phusion Passengerとは 非公式にはmod_railsとmod_rackとも呼ばれている。 役割としても、Apacheにインストールして、そのまま動かす当たりはやはり、mod_phpとかと被ってる。 イマドキだと、PumaやUnicornがRubyのAppサーバーとしての主流だけど、こっちは…

Nginxでリクエスト毎に発番して、Railsのログに書き込むまで

いきなりまとめ マイクロサービスとかでいくつものアプリケーションに対してリクエストを行うような構造のアプリケーションはリクエストIDを設定しておき、異なるマイクロサービスでも同一のIDがログ上で記録されるので、ログのチェックなどがはかどって便利…

Rails + SQLServer 航海日誌:実際に運用している編

実際にSQLServerとRailsを利用して、アプリケーションを運用した知見をまとめておく。 この記事の続き。 webuilder240.hatenablog.com いきなりまとめ DB周りで何か問題あったとすればMySQLとの違いはユニーク制約の違いくらい. 逆に言えば他でハマるような…

PAY.JP Platformを試してみた

最近、弊社でもひいきにしているPAYさんから、 これまで開発中だったお待ちかねのプラットフォーマー向けのサービス、 PAY.JP Platformをローンチしたという知らせを聞いたので、早速試してみることにした。 PAY.JP Platformとは 例えばEコマースプラットフ…

メッセージングアプリの永続化サービス・ミドルウェアの選定について

色々有識者の方に相談に乗ってもらったのでシェア。 要件的にはまず完成を目指して、チューニングはちょっとあとからということで進んでいたのだけど、 せっかく作るのだから少ない労力である程度の規模までは戦えるようにしたいよねーくらいなレベルで、少…

Railsでのお手軽なキャッシュ戦略

キャッシュの主な動機は、 パフォーマンスの向上 より多くのトラフィックを捌けるように サーバー・リソースの節約 が主だとおもう。 今回、Webメディアの運用が決まったあたりで、サーバーサイドのキャッシュを真面目に考えてみたので記録を簡単に残してお…

PAY.JPアンチパターンという内容でLTした

PAY.JPのプラットフォーム向けサービスである、 「PAY.JP Platform」のリリース記念ミートアップで、「PAY.JP アンチパターン」という内容でLTをさせていただきました。 内容 ざっくり見てもらえればわかるのですが、 PAY.JPを使っていく際のアンチパターン…

いちばんやさしい新しいSEOの教本を読んだ

個人的興味や、知識の補完のためにSEO入門するに当たり、みんながおすすめしているように見えたので、この本を買って読んで見ることにした。 いちばんやさしい新しいSEOの教本 人気講師が教える検索に強いサイトの作り方 (「いちばんやさしい教本」シリーズ)…

SendGridで1つのメールを最大1000件のメールアドレスにまとめて送信する方法

これはよく見るとドキュメントに載っているのだけど、 結構見落としがちだったので、記載しておく。 ドキュメントの内容 v3 Mail Send API概要 - ドキュメント | SendGrid SendGridのMailSendAPIを使えばOKな感じです。 Rubyのコード これで終了だとあまりに…

ransackで雑にRDBMSを使った簡易的なキーワードのOR検索を実装する

一般的なRDBMSを使ったよくあるLIKEでの曖昧検索実装では、検索ボックスに「寿司 和食」と入力してもただの単語での曖昧検索だと、 当たり前なんだけど、キーワードのOR検索を実現することができない。 select * from contents where LIKE body '%寿司 和食%…

SendGridのWebhookを受けるのにFluentdが重宝した話

SendGridのWebhookについて SendGrid の Event Webhook は、SendGrid経由でメールを送信する際に発生するイベントを、指定したURLにPOSTすることができます。 このデータの用途は、配信停止アドレスの削除、迷惑メール報告への対応、エンゲージできなかった…

Firebase HostingをCircleCIからDeployする

とにかく簡単なので、プロトタイピングのときから初めておくといい。 fierebaseを使ったことがあるなら入っていると思うけど、firebase-tools を事前にインストールしておこう npm install -g firebase-tools CIからDeployするためのDeployキーを取得する。 …