programming

【開発】npm+bower+webpack+railsでいい感じにアプリケーションをデプロイする

今、業務でwebpack(知ってるとは思うけどassetのビルドツール)を使っているですが、開発環境では問題なく動いているものの、いざサーバにデプロイしようとしたのですがうまくいきませんでした。 いろいろ試行錯誤してなんとか動くようになったので、今回は…

【書評?】WEB+DBプレス vol.93「実践見積もり」で気になったところをまとめる(前提条件・注意点編)

見積もりは深いですね。深すぎる。深すぎて溺れかけます。 見積もりなんて言葉は、ピラミッドや古墳、パルテノン神殿が作られてた大昔から存在すると思うのですが、正確に見積もることがどれだけ難しいことか…。 だから最近、ソフトウェア界隈で「アジャイル…

【開発:Ruby】日付の範囲で日ごとに実行するループを完結に記述するやつ

表題の件のような処理を書きたい時にいろいろ調べてたら、Rubyにupto/downtoっていう書き方があるらしい。 start_date = Time.zone.parse('2016-01-01').to_date end_date = Time.zone.parse('2016-01-10').to_date start_date.upto(end_date) { |date| puts…

[開発:Ruby]文字列のinclude?メソッドによる条件分岐をすっきり書く

表題の件です。 before hoge = "hogeta hogeo" if hoge.include?('hogeta') @name = 'hogeta' elsif hoge.include?('hogeo') @name = 'hogeo' else @name = 'foo' end after hoge = "hogeta hogeo" @name = case hoge when %r(hogeta) 'hogeta' when %r(hoge…

間違えて削除してしまったstashを復元する

表題の件です。 git stash dropで必要なstashを削除してしまっときの対処法です。いつも忘れてしまうのでメモついでにブログに上げておきます。 問題 $ git stash drop 最新の必要なstashをあやまって削除してしまった。 対処法 1.git stash drop した時に…

【開発】ヤバい!zshの補完が効かなくなった時にやったこと

はじめに WEBエンジニアであればLinuxコマンドは毎日のように叩いていると思います。また、aliasやautocompleteを駆使して効率的な開発環境を日々追求している人も少なくないでしょう。 僕も自分なりに開発効率を挙げるためにいろいろ取り組んでいるのですが…

【開発ネタ】EC2のインスタンスをアカウント間で移行するやり方をまとめる

はじめに Amazonがクラウドサービス「Amazon Web Services(以下、AWS)」を2006年7月に公開してから、もうすぐ10年が経過しようとしています。 今ではInstagram、Airbnb、Netflix、Vineといった有名なサービスから、趣味レベルで作ったサービスまで、国内・…

rebuild #126 で話題にあがっていたテックリード(tech lead)についてまとめてみた

最近、スタートアップ界隈を中心にエンジニア周りの職種が増えている気がします。 ちょっと前の例で言うとグロースハッカーに始まり、グロースエンジニア、リードエンジニア、プログラムマネージャー、プロダクトマネージャーなどといったところでしょうか。…

【開発】Ruby(on Rails)開発でブレークポイント作りたいなら「pry-byebug」がオススメ!

Ruby(on Rails)で作られたプロジェクトで開発をしているとたまに困ったことがおきます。それはブレークポイントを作れないことです。 公式ドキュメントにはできるっぽいことが書かれてはいるのですが、なんだかブレークポイントの定義が違うようで、デバッ…

【開発】削除されたファイルをgitのコミット履歴から楽に探す便利コマンド

ある製品の開発プロジェクトがあって、そのプロジェクトに途中から入ることは少なくないと思います。そんな時に、めったにないとは思うんですけど、本来はあるはずのファイルがなくて「あれ?」ってなったことはありますか? ただそのファイルがそもそもなか…

【開発】bootstrapでモーダルの表示・非表示に使えるちょっとした小ワザ

自分たちのwebアプリケーションにbootstrapを導入していることは少なくないでしょう。僕が在籍している会社でもbootstrapを重宝しています。 一方で、実はbootstrapの機能のほんの一部しか使えていないという人も多いのではないでしょうか。僕もそのうちの一…

【開発ネタ】jqueryのDeferredを理解するために役に立った本やwebサイト

はっきり言って、僕はJavaScriptが嫌いです。JavaScript触っていると、クラスの概念がなくてちょくちょく「orz」ってなってます。 しかしシングルページアプリケーションが当たり前になりつつあるこの時代に、エンジニアならJavaScriptは避けては通れない道…

【開発】悪いことは言わないから、bundlerは1.10.6以下を使いましょう

表題の件です。 昨日、あるリポジトリの環境構築をしていました。いつもどおりgem install bundlerしてbundleしたら以下のようなエラーが。 … Error details RuntimeError: LazySpecification has not been materialized yet (calling :required_ruby_versio…

【開発】rails sが動かない時にやってみるといいこと

プロジェクトのルートディレクトリにいるはずなのにrail sするとこんな画面が表示されることがある。 Usage: rails new APP_PATH [options] Options: . . . 実は新しく環境を作ったりすると結構頻繁に遭遇する。 そういう時は、以下のコマンドをいつも打って…

【開発】os x el capitanでbrew updateする

macで開発している人で、既にel capitanを使っている人は少なくないと思います。ただel capitanでは「System Integrity Protection」というセキュリティ機能が追加されたため、開発する時には注意が必要です。 そこでこの記事は、os xのパッケージ管理システ…

【開発】utf8mb4のDBを使ったwebアプリケーションをcircleciにパスさせる

最近ではCIツールを使っている会社は少なくないと思います。私は仕事でcircleciを使っているのですが、文字コードがutf8mb4のDBを使ったwebアプリケーションをgithubにプッシュしたところ、circleciでエラーが出てしまいました。そこでこの記事では、utf8mb4…

【開発】capistrano3×bitbucketでデプロイした時に「git ls-remote」がAuthentication failedになるのを回避する

状況 capistrano3を使って、bitbucketに保存してあるリポジトリをリモートサーバにデプロイしようとしていたのですが、リモートサーバからbitbucketに接続する時にいつも DEBUG[xxxxxxxxx] remote: Invalid username or password. If you log in via a third…