yujiro's blog

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

【Alamofire 実践】Router の使い方とその問題点、URLRequestConvertible について

今回はAlamofire の実践編ということで、もう少し踏み込んだAlamofire の使い方を書いていこうと思います。 前回記事 : 【Swift】Alamofire を使って色んなリクエストを投げてみる - yujiro's blog Alamofire を実際に使う際、エンドポイントの管理にはURLRe…

【Swift】Alamofire を使って色んなリクエストを投げてみる

iOSでHTTPリクエストをする際によく使われるAlamofire の使い方を紹介します。 Alamofire は HTTPリクエストをするのにrequest, download, upload メソッドが用意されています。 今回はこれらの基本的な使い方について紹介しようと思います。

Objective-C について開発に最低限必要な知識

3月からiOS 開発してます。 現場では、iOS のソースコードは全面Swift化の方向で進んでいるのですが、まだObjective-C のソースコードが多く残っている状態でして、まぁそういう現場は多いのではないかと思います。 僕としても本腰いれて勉強するつもりはな…

B tree index について

MySQL などRDBのインデックスには B tree が採用されている。(厳密に言うと B+tree インデックスである。参考 : B TreeとB+ Treeの違い) 最適なインデックスを生成するには、このツリーの仕組みについて把握している必要がある。 これまで、表面的な知識・…

Proc の種類と使い分け 【Ruby】

Effective Ruby 第5章、項目34 「Proc の引数の個数の違いに対応できるようにすることを検討しよう」を読んで、Proc の知識が深まったのでアウトプットしてみます。

Elasticsearch について

インストールから、よく使われるプラグインを入れて、使い方をざっくりとご紹介したいと思います。

Ansible で Ubuntu16.04に Rails, MySQL5.6, NodeJS 用の開発環境を作成する

今までchefを使っていたのだけれど、知り合いから手軽でオススメ & python製 と聞きつけて試してみたらすごく気に入った。 王道なrails開発環境用のplaybook(chefでいうcookbook)を紹介してみようと思う。 macにansibleを入れて、ubuntu16.04 の仮想マシン…

NeoBundle から dein.vim に乗り換えた

職場の方から教えてもらい、何やら早いらしいので変えてみました。 下記の記事に紹介されていますが、NeoBundle とくらべて30% 以上速くなったそうな。

サブドメイン環境でCircleCI でCapybara, Poltergeist を使うとき、hosts と Capybara.app_host に気をつける

事の発端 ローカルでは動く feature spec が circle ci 上で動かなかった。 circle ci 上で確認したエラーは以下。 Capybara::Poltergeist::StatusFailError Request to 'http://admin.lvh.me:3000/admin_users/sign_in' failed to reach server, check DNS …

.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 にしたら全く動かなくなった。