yujiro's blog

「インターネット上で正しい答えを得る最善の方法は、質問することではない。間違った答えを投稿することだ」by ウォード・カニンガム。 辛辣なコメントお待ちしております。

.vimrc の各言語のタブのインデント数を外部ファイルから読み込む形にした

なんか同じ言語でもプロジェクトによってインデント数切り替えたいとかでてきたので実装してみました。 外部ファイルは .vimrc.local にして、ここに let ruby_tabnum = 2 という風に記述しておいてそれを読み込んで設定するといった形にすることにしました…

clipper を使って、ゲストOS [Ubuntu]とホストOS [Mac] 間でクリップボードを共有する

はじめに 私がWeb開発する上で欠かせないclipper をご紹介したいと思います。 GitHub - wincent/clipper: Clipboard access for local and remote tmux sessions 結構これ教えると喜ばれる事が多かったので需要があるのかなと思いました。 これを使うと、ゲ…

S3 をLinuxにマウントする【goofys編】

s3fs が遅くて、それより高性能っぽいのがこの goofys。 S3 をLinux にマウントする【s3fs編】 - yujiro's blog 性能とかについては https://blog.arena.ne.jp/vps/1093 がわかりやすいです。 早速使ってみたいと思います。 go が必要になりますが、goenv か…

S3 をLinux にマウントする【s3fs編】

これできるって知った時はびっくりしました。 色々幅が広がりそうですよね。 手順をご紹介します。

aws cli インストール & 利用

手順メモです。

Rails にmongoid をいれてMongoDBを操作してみる

MongoDB はDBですが、以下の特徴があります。 NoSQL スキーマレス トランザクション不可能 詳細については以下がわかりやすいです。 https://utage.headwaters.co.jp/blog/?p=5051 こちらをmongoid というORMを入れて、Rails からいじってみようという試みで…

Rspec 導入と簡単な使い方【Rails】

導入 ※ Rails 5.0.6 に導入しています。 Gemfile に gem "rspec-rails", "~> 3.1.0" を追加。

Let's Encrypt で Nginx をリスタートをかけずに証明書を更新する

以下作業メモです。 Let's Encrypt でSSL 化されているサーバーの証明書の更新をしようと思ったらエラった。 Problem binding to port 443: Could not bind to IPv4 or IPv6.

Vim で快適にPerl を書く【Carton】

vim でスクリプト言語書く時はsyntastic が便利ですよね。 Perl でもそれを使っていたんですが、carton でライブラリ入れてuse で呼び出そうとしたらエラー吐きまくりました。

Deployer を使ってLaravel5 をDeploy してみる

Deployer はPHP 製のデプロイツールです。サクッと設定が書けて楽にデプロイ環境が構築できる印象でした。capistrano に似てるなって思いました。 今回はLaravel5.3 をデプロイする前提で書いていきます。 参考にしたのは https://deployer.org/docs/ です。

【Laravel5】Session flash が全く効かなくて焦った。

原因 Controller の__construct 内で Sessionを使いたいがために Http/Kernel.php に protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Session\Middleware\StartSession::class, \Illuminat…

Scala PlayFramework でアプリケーション作ってみた ③ 【モデル(Skinny-ORM)編】

Scala PlayFramework でアプリケーション作ってみた。② 【Controller(View)編】 - yujiro's blog の続きです。 今回はモデルとSkinny-ORM がメインになると思います。

Scala PlayFramework でアプリケーション作ってみた。② 【Controller(View)編】

Scala PlayFramework でアプリケーション作ってみた。① 【環境構築編】 - yujiro's blog の続きです。

Scala PlayFramework でアプリケーション作ってみた。① 【環境構築編】

Scala に挑戦してみました。 Mojolicious でアプリケーションをつくってみた① - yujiro's blog で作ったのと同じメモ帳アプリケーションをScalaとPlayframeworkを使い作ってみました。 結構時間かかりました。難しかった。 ソースコードは以下にあります。 g…

【PHP】scalar_object を使って値からメソッドを使えるようにする。phpenv環境、Laravelで使えるようにした。

Ruby だと組み込み型を拡張してメソッド追加できるんだけど、PHPでもそんなことがしたかった。調べてみたら下記があった。

Mojolicious でアプリケーションをつくってみた ②

bamboo-yujiro.hatenablog.com の続きです。

Mojolicious でアプリケーションをつくってみた ①【環境構築編】

github.com Perl に挑戦してみました。 I’m new to Perl. って感じです。 Perl のフレームワークといえば Catalist が一番有名なのでしょうか。 なんか大きそうだったので、さくっとアプリケーション作りながらPerl を勉強できそうなMojolicious を使ってみ…

vagrant sshしたら真っさらなサーバーになってしまうバグ

原因 virtualbox のマシンとvagrant の紐付けが解除されてしまってる なんで解除されるかは不明

【Rails】Form Object を作って Fat Model 解消に近づく

題名の通り、Form Object ですが、こんな感じで実装してるよってのを紹介したいと思います。

【Rails】 scope は 常に ActiveRecord_Relation を返す素晴らしいやつ

Rails で様々な条件で複合検索ができる画面を実装していて、フォームから受け取った値をそのままモデルに渡してコントローラは条件分岐なしにスッキリ実装したかった。 何の気なしに以下のようなコードを書いた。

Capybara Poltergeist で TypeError: undefined is not a function (evaluating 'Object.assign〜 というエラーが発生した

今まで poltergeist のオプションに js_errors: false を設定していたんだけど、 とある所で詰まって色々調べるために、true にしたら全く動かなくなった。

iptables についてのメモ

INPUT, OUTPUT ポリシーについて (httpの場合)

Flask で MVCライクな実装

github.com 中身の実装については後で書きたいと思います。

AWS S3で静的ファイルを独自ドメインで配信するまで 【CloudFlare】

前提 ドメイン名は sample.com と仮定する。 S3に画像ファイルを置いて、image.sample.com というドメインでアクセスできるようにする。 S3はそれだけだと遅いので、CDNを利用する(CloudFlare)

Effective Ruby 読書メモ

セッターメソッド インスタンスメソッド内でセッターメソッドを使う場合はselfをつけないと 単なるローカル変数の定義になってしまう。 ただし、selfを使うのはその場合のみにしよう

メールサーバー迷惑メール対策

SPF 下記をTXTレコードに追加する。 v=spf1 +ip4:[ip_address] include:hoge.com ~all ※include をかかないと PASS しなかった

logrotate メモ

いつローテートさせたかを記録しているファイル /var/lib/logrotate/status

fluentd メモ

インストール & 設定 $ sudo su $ curl -L https://td-toolbelt.herokuapp.com/sh/install-ubuntu-trusty-td-agent2.sh | sh $ sudo /opt/td-agent/embedded/bin/fluent-gem install fluent-plugin-s3 $ sudo vi /etc/td-agent/td-agent.conf

PHP のバージョンをphpenv で管理する

初めに ソースからビルド・コンパイルする形がめちゃくちゃ不便だったので、phpenvを試してみる 構成は Ubuntu14.04 + php-fpm + nginx rbenv のようにプロジェクトごとにphp のバージョンを切り替えられる。最初からこれをつかえばよかった。 ここでは 7.1.…