blog

紫陽花

2017-01-01から1年間の記事一覧

プロダクトの改善と意思決定について

プロダクト改善について 意思決定 長期で勝つためには数字に基づいた意思決定が絶対 事業会社において組織の強さとは何か? 強さは回せる仮説の量と質で決まる。 仮説検証のサイクルが早く、精度の高い仮説の改善を積み重ねることができる組織が強い 最善の…

Rubyで小さなツールを作る時のtips

メインファイルの作成 main.rbを用意し処理を1ファイルにまとめます。 実行する同一処理の増加などによってはオブジェクト指向の考え方に則って構造化していきます。 走り出しから構造化を意識してコードを書くのではなく、とりあえず処理を実行できるところ…

SEO 学習 memo

SEO memo SEO 「Search Engine Optimization」 検索エンジン最適化 検索結果でWebサイトがより多く露出されるために行う一連の取り組みのことを指す Googleが掲げる10の事実 ユーザーに焦点を絞れば、他のものはみな後からついてくる。 1つのことをとことん…

インフラ 学習 memo

インフラ で学んだことを雑にmemoしていく サーバー サーバーとは、「Linux」や「Windows Server」など、サーバー用のOSインストールしたコンピュータ 「サーバーにどのようなミドルウェアをインストールするか」によってサーバーの用途が変わる。 Webサーバ…

unicorn-worker-killerを導入

Railsのプロダクトでサーバーのメモリが足りなくなる問題が頻発しました。 構成はnginx + unicorn unicornのワーカープロセスは、起動後ユーザーからのリクエストを処理し、再起動されることがありません。 長期間の運用を続けるとメモリが徐々に食いつぶさ…

AmazonCloudFrontでRailsのAssets周りにある静的ファイルをCDN配信する

AmazonCloudFrontでRailsのAssets周りにある静的ファイルをCDN配信する RailsでアプリのassetsをCloudFront経由で配信した時の話 問題と解決 Railsのアクションキャッシュ導入時、Webサーバ内からassetsの配信を行っていた。 その場合、Deploy時にassets pre…

Rails Routing Constraints

Constraintsとは Railsのroutingに存在する機能 routingに制限を設けることができる デフォルトで定義されている カスタムで制約を作成することも可能 セグメントの制限 get "books/:id" => "photos#show", constraints: { id: /[A-Z]\d{5} } 上記はconstrai…

社会人1年目

無事3月に大学を卒業し、今日から社会人になりました。 都内のWeb系の企業でRailsアプリの企画と開発をやっていきます。 まだまだひよっこエンジニアなので日々精進していきたいです。 今年の目標は、去年よりもブログ記事を多く書くことなので、日々の開発…

Rails includes joins eager_load preload merge

INNER JOIN (内部結合) 結合する両方のテーブルどちらにも同じキーが存在するレコードのみを残し、それ以外は切り捨て。 OUTER JOIN (外部結合) 結合する両方のテーブルどちらにしか存在しないキーがあっても切り捨てずに取得する。 どちらのテーブルのレコ…

Rails ActionCacheを導入する

Webアプリケーションのパフォーマンス改善として、RailsのActionCacheを導入しました。 Railsのキャッシュに関する概要はRailsGuidesが一番わかりやすかったです。 Rails のキャッシュ: 概要 「キャッシュ(caching)」とは、リクエスト・レスポンスのサイク…

Rails CarrierWave アップロード画像を良い感じに圧縮するGem作った

Rails CarrierWave アップロード画像を良い感じに圧縮するGem作った Railsで画像アップロードを行うGemにCarrierWaveがあります。 そのCarrierWaveのextension的位置付けの圧縮機能を簡単に実装するGemを作りました。 carrierwave-optimize_image Ruby Gems …

オブジェクト指向のこころ 読んだ まとめ

オブジェクト指向のこころを読み終えました オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)作者: アラン・シャロウェイ,ジェームズ・R・トロット,村上雅章出版社/メーカー: 丸善出版発売日: 2014/03/11メディア: 単行本(ソフトカバー)この商品を含…

Reactでテストを行う まとめ その2

実際にテストを書いていきたい 前記事で紹介したツール。 React enzyme Mocha sinon power-assert chai jsdom アサーションライブラリは好みで選ぶ。今回はpower-assertを使ってみる。 前提 今回はReactのコンポーネントに対してのテストを行います。 かつ、…

Reactでテストを行う まとめ その1

Reactでテストを行う まとめ Reactのテスト環境を構築する際に色々と調べた結果。 もうツールとか色々ありすぎてわけがわからん。 となったので。 もし自分と同じ境遇にいる人がいたら少しでも手助けになれば良いなと思い、自分が調べたことをまとめておく。…

Rails Validationについて

データ管理はしっかりやりたい DBにデータが保存される時に、そのデータが正しいかどうかを検証する仕組みをバリデーションという。 バリデーションのトリガー バリデーションが走るメソッド群 create create! save save! update update! 上記のメソッドはオ…

Rails, Carrierwave, MiniMagick, Piet, 画像アップロード, 画像圧縮

Railsで画像をアップロードし、かつ画像圧縮も行いたい時の実装をメモで残す。 環境 Macbook OSX 10.11.6 Rails 5.0.0 Ruby 2.3 Carrierwave Piet MiniMagick Gem 実装に必要なGemをインストール gem "carrierwave" gem "piet" gem "mini_magick" bundle ins…

リファクタリング:Rubyエディション 読んだ

「リファクタリング:Rubyエディション」 読みました。 リファクタリング:Rubyエディション作者: Jay Fields,Shane Harvie,Martin Fowler,Kent Beck,長尾高弘出版社/メーカー: アスキー・メディアワークス発売日: 2010/02/27メディア: 大型本購入: 9人 クリッ…

あけましておめでとうございます 2017

2017年もよろしくお願いします。 4月からはついに社会人としてスタートします! イケてるRubyエンジニアになれるように頑張ります!