satococoa's blog

Web や iOS アプリを作るエンジニアの日記です

mysql クライアントのみをインストールした状態で mysql2 gem をビルドする

この記事の続きです。 satococoa.hatenablog.com よく考えると mysql サーバをローカルにインストールする必要はないので、以下のようにやってみました。 brew uninstall mysql brew install mysql-client # mysql との競合を避けるため /usr/local/opt/mysq…

Firebase Authentication の ID トークンを Ruby で検証する

ID トークンを確認する | Firebase にあるように、Fireabse Authentication によって発行された ID トークンを正しく検証することにより、そのユーザの user_id を確認することができます。 Firebase Admin SDK が提供されていればそれを使うことで簡単に検…

macOS Mojave にアップグレードしたら mysql2 gem のインストール時にエラーが発生した

手元の環境では High Sierra のときはこの辺の考慮をしなくてもインストールできていた気がするのですが、さっき新規に bundle install をしたら以下のようなエラーになってしまいました。 ld: library not found for -lssl clang: error: linker command fa…

Angular で作った SPA を Docker の nginx を使って動かす

このサイトにある手順をまるっと使わせていただきました。 medium.com 追加したのは以下の3ファイル .dockerignore node_modules nginx.conf server { listen 80; location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $ur…

Kubernetes の CronJob で bundle update して PR 投げてくれるようにした

bundle update を定期的に実行し差分がある場合は pull request を投げる、というよくある仕組みを k8s の cronjob で実装しました。 clone ( or pull ) -> 何らかの処理を行う (ここでは bundle update) -> [差分があったら] -> commit & push -> Pull Requ…

複数の pod で並列に kubectl exec を実行する

こんな感じで OK kubectl get pods -l name=app -o jsonpath="{.items[*].metadata.name}" | xargs -n1 -P4 -I{} kubectl exec {} bin/rails r 'Rails.logger.info(Rails.env)' xargs の P オプションの値は最大プロセス数。 参考: JSONPath Support kuberne…

Rails 5.1 で rails test と rails test:system の RAILS_ENV に関する挙動の違いメモ

RAILS_ENV が指定されている場合 rails test コマンドと rails test:system コマンドの挙動が違う。 おそらくそれぞれ rails command として実装されているか、rake タスクとして実装されているかによる違い。 rails test で実行 → RAILS_ENV が test に上書…

Firebase Unity SDK を .NET 4.6 で使おうとしたら Task でハマった

@see https://groups.google.com/d/msg/firebase-talk/2w1Lk62VIcg/1ysauzl9CwAJ 2018-06-13 追記 Unity 2018.1 以降に Firebase SDK 5.0.0 以降を入れることで特に苦労することなくちゃんと動作させることができるようになりました。IL2CPP とかその辺りで…

第22回 RubyMotion もくもく会に参加した

rubymotionjp.connpass.com 東京開催は約1年と8ヶ月ぶり?となる RubyMotion もくもく会に参加しました。 今回は @youchan さん主催の元、ユビレジさんのオフィスを使わせていただく形でリスタートしてます。 僕は最近はほとんどクライアント側のコードに触…

pplog の Push通知 (Apple Push Notification Service) の証明書を更新した

年に一回やらないと Push 通知が送れなくなっちゃうあれですね。 新しく生成してみたら期限が1年と1ヶ月になってました。 この手の証明書の生成はポチポチブラウザでやってもいいのですが、最近は fastlane シリーズの pem gem を使っています。 pem と一発…

やさしい AJAX on Rails という資料を作りました

最近 SPA (Single Page Application) についての議論が盛んで、Angular とか React とか Flux とか Mithril とかの名前をよく聞くようになりました。 でも必ずしも全ての Web アプリにおいて SPA は必須ではありません。 むしろ枯れた jQuery と Rails の re…

WWDC 2015に参加しています

運良くWWDC 2015のチケットを手に入れることができたのでサンフランシスコまで来ています。 Keynote WWDCと言えばKeynoteですね。10:00開始なのですが会場には前日の夕方くらいからもう並び始めている人がいました。 僕は時差ボケのせいで眠気がひどかったの…

Growing Rails Applications in Practiceを読んだ

The Pragmatic Bookshelf | Growing Rails Applications in Practicepragprog.com 読み終わったのはもう先月ですが、学ぶことが多い本だったので紹介しときます。 @1syoさんと@miyohideさんとやってる読書会の前回の課題図書でした。 どんな本? まずは目次…

Reactとかgulpとかfirebaseとか色々いじってみた

色々一気にやりすぎてちょっとパンク気味ですが、以下のリポジトリにおいて最近興味があったものを色々試してみました。 iOSやAPIサーバの仕事ばかりやっている間に大きく遅れてしまったWebのフロントエンド技術にキャッチアップしたいというのが狙いです。 …

モバイルデザインパターン 第2版を読んだ

モバイルデザインパターン 第2版 ―ユーザーインタフェースのためのパターン集作者: Theresa Neil,深津貴之(監訳),牧野聡出版社/メーカー: オライリージャパン発売日: 2015/02/12メディア: 大型本この商品を含むブログ (3件) を見る アプリ開発者として UI デ…

じっくり味わう本を読むには読書会が有効だと思う

タイトルで言いたいことは言い尽くしたので、そう思う理由を挙げたいと思います。 その本、読んだはいいけど理解できてる? 電子書籍のおかげで、物理的なスペースを気にすることなくつい気になる本を買っては積んでを繰り返してしまいます。 そうすると積ん…

RE: どんなことを勉強すればいいですか?

仕事でインターン生や経験の浅い方のレビューをしたり面接を担当したりしててよく聞かれる質問が「どんなことを勉強すればいいですか?」です。 それについてちょっとポエムを書いてみようかと思います。 主に会社で一緒に働いている人やこれから一緒に働く…

Webエンジニアのためのデータベース技術[実践]入門

誕生日から1週間位過ぎたダメなタイミングでウィッシュリストをこっそり晒してみたら id:a2ikm さんが送ってくれたので読みました。 ありがとうございます!! (ちなみにこちら -> http://www.amazon.co.jp/registry/wishlist/16JH79VDRKUVM ) Webエンジニア…

Web制作者のためのCSS設計の教科書を読んだ

久しぶりに仕事で Web 側の view を作っていて web のフロントエンドの技術からだいぶ遅れてしまっていたことを実感したので、キャッチアップするために以下の本を読みました。 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCS…

AWS CloudSearch を使ってみた

Elasticsearch を調べたあと、最近は CloudSearch も機能強化されて日本語の検索も簡単にできていることを知り、いろいろ試して使ってみました。 結果、すごく良さそうなので今開発中のプロジェクトで採用することにしました。 調査しつついろいろコツという…

Elasticsearch メモ

最近仕事で使いたいと思い、Elasticsearch で遊んだりしています。 $ brew install elasticsearch したらローカルで動いたのですが、そこから何すればいいのかさっぱりわからなかったので急がば回れということで本を読みました。 高速スケーラブル検索エンジ…

パーフェクト Ruby on Rails を読んだ

パーフェクトRuby on Rails を読みました。 いまさら!?という感じですが、しばらく仕事では iOS をメインでやっていたのですが、最近またサーバーサイドに戻ってきたそのタイミングで電子版が発売されたので。 ちなみに epub 版は 以下の URL から買えます…

はてなブログに出戻り

wordpress -> はてなダイアリー -> Lokka -> はてなブログ -> octopress -> middleman-blog と来て、またはてなブログに戻ってきました。 ついでなので、過去の記事もなるべく移行してきました。 octopress の頃の記事は middleman-blog にちゃんと移行して…

Web デザイナ向け GitHub ハンズオン at PHPカンファレンス2014

PHPカンファレンス2014 で P4D として Web デザイナ向け GitHub ハンズオン を開催します。 今回のハンズオンは前半・後半の2部構成で行います。 後半に関しては PHP カンファレンスの参加登録 以外にハンズオンへの 参加登録 も必要ですので、希望者は 忘れ…

STCTabView というライブラリを作った

某スマートニュースや某グノシーみたいなタブっぽい UI を実現させるために STCTabView っていうライブラリを作りました。 https://github.com/satococoa/STCTabView ドキュメントもテストも無いですが、ヘッダ見てもらえば使い方はなんとなくわかる。。。と…

ゆるふわ Development Club

ゆるふわ Development Club というコミュニティを始めました。 このコミュニティについては @netwillnet さんが ゆるふわ Development Club というサークルができた - willnet.in で紹介してくださったので、簡単にこのコミュニティを始めた経緯とかを書いて…

nuhack を開催した

7/19(土) に #nuhack というハッカソンイベントを開催 & 参加しました。 #nuhack とは satococoa/p4d-hackathon-3rd P4D の主催する 3回目のハッカソンイベントです。 毎回エンジニアとデザイナをペア (もしくは一部グループ) にして何か作るという形式でや…

P4D 夏合宿 2014

5/9(金) 〜 5/11(日) に P4D のメンバーを中心に夏合宿に行ってきました。 日程とか泊まった宿、成果物の紹介とかはこのへんに。 https://github.com/satococoa/p4d-summer-camp-2014 ことの起こり 3月の終わり頃、HipChat の pplog 開発部屋で @kenclo さん…

pplog iOS アプリをリリースしました

pplog の公式 iOS クライアントアプリをリリースしました。 pplog on App Store pplog とは pplog (通称ポエム) についてはメインプログラマの @ppworks さんのブログとデザイナの @ken_c_lo さんのブログを見ていただくのが良いと思います。 このプロジェク…

Yokohama.rb 40th

Yokohama.rb Monthly Meetup #40 に参加してきました。 恒例の Ruby レシピブック読書会ですが、僕がレシピブックを持参していなかったのと、浮動小数点数の誤差の話とかあまり自分も明るくない部分の話だったのでちょこちょこ口を出しつつもあまり理解は進…