Parser gemを用いたプロファイルコードの挿入

小ネタです。

JavaScriptの関数の開始と終了にプロファイル用のコードを挿入し、シンプルなプロファイリングをするという記事が以下:

itchyny.hatenablog.com

ASTの一つの使い方としてとても面白いです。 Rubyの場合どう実現したらいいのか興味が出たのでやってみました。最終的にはwhitequark/parser を用いたRewrite処理で実現できました。

続きを読む

データ起点でのプロダクト改善の取り組み: 8月

こんにちは。普段はClearと呼ばれる教育系アプリに対して、Ruby on Railsでの開発やインフラの整備、Androidのレビューを行っています。趣味でアクセスログ解析を行っていました。

2018年8月からプロダクトの開発方針を変更し、データの観点からもアプリの各種KPI向上を目指すことになりました。 そこでの取り組みについて、まだまだ手探りですが誰かの役に立つかもしれないので備忘録を兼ねて記しておきます。

前提

  • 世界で200万DLくらいのC to C学習アプリ
  • アプリからのアクセスログAWS Redshiftにたまっている
  • データ観点での施策は既存機能にまつわる課題の解決に留める。より大きな目線での課題解決はデザイナーが担当

なぜやるのか

これまでの開発方針ではMAUなどの主要KPIの増加を狙うため施策を行っていましたが、個人的に以下の問題があると感じていました

  • 施策に効果があったか評価をしない
  • 施策に効果があるかどうかわからないまま結構な工数を消費しがち

またこれまでユーザーへのインタビューなど行い、ペルソナなどもつくっていましたが、うまくそれをプロダクト開発に活用できていないのも気になっていました。仮説に対する学びを得る、無駄な工数を減らす、ユーザーから得られた情報を活かすという想いから開発方針の変更に至りました。

こんな人におすすめ(だと思う)

  • リーンスタートアップやInspiredをよんだが何したらいいのかいまいちわからない人
    • 僕もよくわからないので試行錯誤してる最中です
  • プロダクトチーム5人以下の小さな会社
    • おそらく大きな会社だとグロースチームや分析チームなどいろいろな役職の人がいるので、より効率的なやり方があると思います。
続きを読む

第29回 Pythonもくもく会に参加しました

Pythonもくもく会に参加し、画像処理やOCRについて取り組みました。

Pythonもくもく会

前職の先輩であるF#/Rust/Python使いの@meganehouser氏に紹介され、第29回Pythonもくもく会に参加しました。

mokupy.connpass.com

@meganehouser氏は第一回に参加したことがあるとか。

参加者の方は僕と同じく初心者の方、業務でDjangoを触っている方、機械学習屋さんなどいろいろな人がいました。

続きを読む

RedashのVimプラグインvim-redashを作りました

VimからRedashを操作できるプラグインvim-redashを作りました。

github.com

vim-redashについて

vim-redashとはRedashを操作するVimプラグインです。バッファ上のSQLを実行し、その実行結果を Vim へ出力/Redashに投稿できます。

f:id:koyamay:20180307041809g:plain:w500

続きを読む

2017年振り返り

前年度は転職、引越、同棲というイベントがありました。 2017年度は仕事を中心にやっていけたのかを振り返って行きたいと思います。

3行で

  • チームとしての活動:SPRINT、B2B
  • エンジニアとしての活動:課金機能、多言語SEOアクセスログ解析、インフラ管理
  • 料理いっぱいつくった
続きを読む

Knife-Zero まとめ

前回のData Bagの記事に加え、サーバー構成管理ツールKnife-Zeroおよび関連ツールの使い方を備忘録として記します。 なおRecipeの書き方については今回割愛させていただきます。

Knife-Zeroについて

Chef-Serverなどを介さずに直接サーバーにChefのインストール、Cookbook(サーバーをよしなにセットアップしてくれるやつ)を実行してくれるものです。素でChefを使うよりも楽に管理できると先輩氏から聞いています。

www.atmarkit.co.jp

弊社のサーバー構成管理ツール群の中でのKnife-Zeroの立ち位置は以下となります。

  1. CapistranoRailsの管理
  2. Knife-Zero…AWSで定義したサーバーの中で動くソフトウェア(nginxなど)の管理
  3. Terraform…AWSの管理
続きを読む

Knife-Zeroで秘密情報管理:Data Bagの使い方

弊社ではサーバーの構成管理技術の一つとしてKnife-Zeroを使用しています。 その中で秘密情報を管理できるData Bagと呼ばれるものがあります。こいつの使い方を毎回忘れるので備忘録として記します。

続きを読む