読者です 読者をやめる 読者になる 読者になる

Google Spreadsheetからデータを取得してPandasのDataframeに変換する例

最近はPythonを書く機会が多いのでPythonネタをメモ程度に書き留めておきます。 事前準備 データの準備 動作確認用のスプレッドシートを作成し、サービスアカウントで編集できるように権限を設定します。 (GoogleのAPIを使用するためにサービスアカウントを…

React NativeでCrashlyticsを使う手順

簡単だけど記録として残しておくための記事です。 前提 Macを使っている この記事ではiOSアプリについての手順のみ紹介します React Nativeがインストール済みで使ってiOSアプリを作ったことがある HelloWorld程度の知識で十分です 使用したバージョン react…

PHPExcelの後継っぽいPhpSpreadsheetでExcelファイルを読み書きするサンプルコード

PHPでExcel PHPでExcelを操作する。というと「やめておけ」という言葉の次に上がってくる有名なライブラリは、PHPExcelではないかと思います。 github.com 溜まりに溜まったIssuesとPull Requestsの数を見ると不安な気持ちになってしまいますが、後継のライ…

PHPCompatibilityを実行するためのDockerイメージを作った

PHP5からPHP7への移行を検討するとき、この記事を思い出してPHPCompatibilityを使ってみたところ、結構便利そうだった。 kakakakakku.hatenablog.com で、ちょっと導入が面倒な気がしたので、Dockerイメージに無理やり押し込んでみたのがこちら。 https://hu…

PHP BLT #6 でPHPのパフォーマンスモニタリングについてLTした

ちょっと前の話になってしまいますが、2/22にメルカリさんで開催されたPHP BLT #6に参加しました。 phpblt.connpass.com 発表内容 php-profiler-extensionとElasticsearch/Kibanaを使用したパフォーマンスモニタリングの試行について発表しました。 speakerd…

Mackerel Meetup #9でPHPerとしてLTしてきました

LT枠が空いていて、会社からも近かったので参加してきました。 mackerelio.connpass.com 参加レポートはこちらの記事を読んでいただくのがよいと思います。さすがの当日投稿でした。 cross-black777.hatenablog.com そんななかで、年始に時間が空いてたとき…

使っていないAndroid SDKを削除してディスク容量を空ける

妙にホームディレクトリーのファイルサイズが大きいので調べたら、Android SDKが結構大きかった。 $ du -hs ~/Library/Android 42G /Users/ariarijp/Library/Android 仕事でAndroidアプリを書くような人でなければ古いSDKは必要な時に入れればいいと思ったの…

PhantomCSSを使ってページ内の特定のDOM要素のみを画像として保存する

仕事でちょっとした便利ツールを作る機会があったので、ページ内の特定のDOM要素のみを画像として保存する方法を調べました。 PhantomJSやCasperJSは多少使ったことがあったので、PhantomCSSというのを使ってみることにしました。 github.com これはおそらく…

2016年まとめ

Twitter見てたら書きたくなったので今年も書いてみることにした。去年はこんなの書いてた。 ariarijp.hatenablog.com 今年も残りわずかだし、ゆっくりしたいのでざっくり書くことにする。 仕事 2015年1月に現職に就いてから、ずっとFacebook広告のツールを作…

ASUSのNAS AS-202TEでPrometheusを動かす

だいたいこの記事を参考にした。DigitalOceanはサービスもさることながら、こういった記事を公開してくれるので好き。 www.digitalocean.com AS-202TEにPrometheusを導入する それ以前にAS-202TEにSSH接続できるようにする必要があるけど割愛。妙なことをし…

mackerel-client-goを使ったBotを作る

この記事はMackerel Advent Calendar 2016 9日目の記事です。去年も参加していたので2年連続の参加になりました。 qiita.com 前日はt_mrtさんの「Synology DiskStation DS215j に mackerel-agent をインストールしてディスクの様子を監視する」でした。 blog…

re:dashのQuery Snippetsについて

re:dash Advent Calendar 2016 2日目の記事です。 qiita.com Query Snippetsとは 0.12で追加されたre:dashの新機能で、よくあるSQLを文字通りスニペットとして登録することができ、クエリエディター上でSQLを書く際に、特定のキーワードに反応してスニペット…

supersetをVagrantで起動する

iktakahiro.hatenablog.com 週末にこの記事を読んでsupersetを試してみたくなったので、Vagrantで起動できるようにしてみました。 supersetのお試し環境構築 · GitHub VagrantfileでShell Provisioningしている環境構築手順は、ほぼ公式ドキュメントのインス…

FullPageOSでRaspberry Piをキオスク端末にする

なぜか家に2つも転がっているRaspberry PI 2を見て、ふと思い立ったのでキオスク端末にしてみました。あまり使わないけれど、Raspberry Pi 3がなんとなく欲しいです。 Raspberry Pi3 Model B ボード&ケースセット (Element14版, Clear)-Physical Computing …

エンジニア立ち居振舞い: なぜ必要なのかをちゃんと聞く

お題「エンジニア立ち居振舞い」 なぜ必要なのかをちゃんと聞く 今の主な仕事は社外向けと社内向けのものがあって、今回は後者の話。 いわゆる「社内ツール」というようなやつで、定形作業の負荷を少しでも減らすとか、誰かの職人芸でなんとかやってる作業を…

re:dashでよく使われているクエリーを調べる

re:dashのFork機能はすごく好きなんだけど、便利すぎて気軽にForkされる結果、使ってるのか使ってないのかわからないクエリーが増えてしまいがち。 qiita.com この記事をみたら統計情報っぽいのが取れるようなので、ちょっといじって以下のようにした。 使用…

プロダクトマネージャーカンファレンスに参加しました

10/24,25の両日開催されたプロダクトマネージャーカンファレンスに参加してきました。 pmconf.jp 参加を直前で決めたこともあり、たびたび帰社して打ち合わせを済ませてから会場に戻ったりしていたので、Pokemon GOをやっていればたまご2つぐらい孵せたと思…

SpecinfraでリモートホストのOS情報を知る

使ってみようと思ったきっかけ とある事情で社内で使用している数多のサーバーのOS情報をまとめたりしたくなったのでSpecinfraについて調べました。 github.com 使い方を調べる 検索しても参考になりそうな記事は少なく、この記事を参考にして書き始めました…

Qiita/Qiita:teamの記事をJSON Lines形式で取得するqiitadumpを作った

最近ははてなブログに引っ越したのでQiitaをあまり使わなくなってしまったけど、過去に書いた記事や、社内で利用しているQiita:teamの記事をElasticsearchに入れて遊んだりするときに便利そうだと思ったので作ってみました。 github.com 使い方 準備 Qiitaの…

SQL書き方ドリルのサンプルDBをre:dashで遊べるようにするVagrantfile

最近は社内でSQLの啓蒙活動をしています。 幸いにも何人か興味を持ってもらったので、一通りSQLを学べそうな「SQL書き方ドリル」を会社で買ってもらったので、 SQLとあわせて啓蒙中のre:dashから、書籍付属のサンプルDBを使って、手を動かしながら勉強できる…

Pagila Databaseをインポート済みのre:dashのVMを5分ぐらいで起動するスクリプトを書いた

まえがき re:dashは頻繁にアップデートされるので、最新のバージョンを試ししたいときによくVagrantを使います。 Vagrantを使ったVM起動についてはre:dash標準の手順があるのでいいのですが、re:dashから利用するデータソースの準備はすこし面倒です。 とい…

表参道.rb #14 でDigdagについてLTしてきました

8/4に開催された表参道.rb #14でLTさせていただきました。 omotesandorb.connpass.com ビアガーデン風ということで、会場提供していただいたSansan株式会社様のGardenというイベントスペースで開催され、飲み物、食べ物も無料提供していただきました。ごちそ…

mackerel-agent-pluginsにmackerel-plugin-php-fpmが含まれてないんだけど?と言われて調べた

まえがき mackerel-plugin-php-fpm使いたいんだけど、CentOS使ってるんだけどまだyumで入ってこないんだよねー?と言われたので、ちょっと気になったので調べてみました。 このプラグインは私が作ったものなのですが、私の場合はgo buildしたものを/usr/loca…

Raspberry PIとUSBマイクとMackerelを組み合わせて、室内の騒音レベルを可視化する

手近なものでできそうだったので、連休の合間にやってみました。 Raspberry Piの準備 Raspberry PIはすでに持っていたRaspberry Pi 2 Model Bを使います。 Raspberry Pi 2 Model B (1)出版社/メーカー: Raspberry Piメディア: エレクトロニクスこの商品を含…

re:dashがインストールできなくなったので調査した

7/3 22:30追記 re:dash開発者の @arikfr さんがこの記事を読んでくれたらしく。setuptoolsが修正されるまではこの記事で紹介したワークアラウンドを入れることになったようです。 github.com github.com なので、これからインストールする方にはこの記事は不…

iOS9のWebView内でTwitterのシェアボタンをクリックしたらiOS標準のダイアログで投稿したい

まえがき 同僚さんがタイトルに書いてあるようなことをやりたいけどできないと言っていたのでちょっと調べてみました。 やってみた 正しいやり方かどうかは別として、こんなやり方になりました。 import UIKit import Social class ViewController: UIViewCo…

会社の半期評価でもらったフィードバックを読み返す

うちの会社は1年に2回評価のタイミングがあって、今日は上期の評価フィードバックがあった。 評価制度として、よくある360度評価の仕組みを取り入れられているんだけど、今回のフィードバックは今まで以上に突き刺さるものが多かった。 本当はフィードバック…

PHPで例外が発生したらリトライするような処理をigorw/retryで簡単に書いてみる

Web APIを相手にするようなコードを書いていると、リトライ処理は必ず現れる課題です。 先日も似たようなことがあったので、ちょっとした処理を書いて対処したのですが、これはなんかライブラリがあるんじゃないかなと思って調べてみると、Packagistでよくダ…

TrelloのCLIクライアントをGoで書いた

影響されやすい性格なので、Rebuildを聞いて形骸化しかけていたTODOリストの運用を再開しました。 rebuild.fm 最近までTodoistを使っていたのですが、ちょっと気分転換もしたかったので、以前使っていたTrelloに出戻りしました。 Todoistと違ってTrelloは公…

Serializerを使ってPHPでのJSONと配列やオブジェクトの相互変換を楽にする

Serializerとは PHPの配列やオブジェクトをXMLやJSONにシリアライズしたり、その逆にデシリアライズすることができるライブラリです。 PHP向けのre:dash APIクライアントを作っている時に見つけました。 github.com SymfonyにもSerializerというコンポーネン…

さくらインターネットのArukasでSlackのBotkitを動かしてみる

Arukasとは arukas.io さくらインターネットが提供しているDockerコンテナーのホスティングサービスです。Container as a Serviceとでも言ったらいいのでしょうか。 2016年5月現在はベータ期間中なので無償で利用することができ、現時点での料金プランではEs…

PHP-FPMのステータスをメトリクスとして収集するMackerelプラグインを作った

週末にまとまった時間ができたので何か書こうと思った結果としてできた。 (6/30更新:本家にマージしていただきました!) github.com 使ってみるとこんな感じ。Queue関連のメトリクスを実際の値でテストしたかったけれど、Backlogとかその辺がいろいろわかっ…

PHPでSlackに例外を通知するときに便利なariarijp/exception-to-slack-attachmentsを作った

github.com ほとんどREADMEの内容に書いてあることだけど、ひさしぶりにブログも書いてみることにしました。 何がしたかったのか PHPで例外を捕捉してSlackに通知する時に、SlackのMessage Attachmentsを使って見やすく通知したかったので、 PHPでSlackを連…

Shibuya.go#1に参加して、あとで調べたくなったことメモ

昨日に引き続きGo関連のイベントに参加してきました。 shibuyago.connpass.com Goを実践的に使っている話が多く、昨日のGoもくもく会とは違った形で刺激をうけました。 発表のなかでいくつか使ってみたいものがあったので、忘れないようにメモしておきます。…

Goもくもく会(ごもくかい)#3でLTしてきた

前回に引き続き参加してきました。 eure.connpass.com 今回は懇親会兼、LT会もありました。主催のエウレカさんありがとうございました! もくもく会でやったこと 残念ながらGoはほとんど触らず、当日のLT資料を書いていました。。ちなみに会場についた状態で…

PHPの配列操作を楽にするUnderscore.phpが便利だった

Underscore.phpについて github.com 同じような名前のライブラリがあったりしますが、この記事ではこのリポジトリーで公開されているライブラリーのことについて書いています。 公式のドキュメントはこちら。 Underscore.php - The PHP Manipulation Toolbel…

CROSS 2016に行ってきた

2016.cross-party.com 去年に引き続き行ってきました。今年は無料で参加できたので、社内の申請とかしなくてよかったので楽。 ちなみに業務の一環として参加しました(去年は参加費も出してもらいました) 朝から参加していたので、いくつかのセッションを聴講…

Raspberry PIに赤外線センサーを繋いで、センサーからの入力をGoで受け取る

Laravelの記事が書きかけなのですが、気分転換に触ったRaspberry PIが楽しかったのでメモ。 参考にした記事 qiita.com この記事を読んで全く同じセンサーを秋月電子通商で買いました。配線やPythonのコードもそのまま動いて、実にありがたいものです。 Goで…

PHP7とLaravel 5でFacebookアカウントでログインできるTODOアプリをつくる 4日目(環境再構築編)

これからの作業のために 前回の記事から多少時間が空いてしまいました。 ここまでの作業で環境構築とLaravel 5のインストール、Facebookログインのためのライブラリ読み込みまで進めてきましたが、 今後の開発にあたって、やはりアプリケーションのコードもG…

Goもくもく会(ごもくかい)#2に参加してきた

大雪効果?で補欠から繰り上がったので、今日はGoもくもく会(ごもくかい)#2に参加してきました。 eure.connpass.com もくもく会ということで、なにやろうか考えていた時に良さそうなリンクをTwitterで見つけたので、これをやるぞと決めてから会場に到着。 …

PHP7とLaravel 5でFacebookアカウントでログインできるTODOアプリをつくる 3日目(Facebookログイン導入編)

作業の前に Facebookログインを導入するにあたって、ここまでの作業では不足している設定がいくつかありますので、作業の前に環境を整えておきましょう。 まずは下記の2つのコマンドを実行してください。Composerコマンドを使用する際に必要になるPHPのcURL…

ソフトウェアエンジニアのための ITインフラ監視[実践]入門 の献本をいただきました

縁あって少しだけレビューをお手伝いさせていただいた関係で献本をいただきました!斎藤さん、技評さんありがとうございます! www.amazon.co.jp 電子書籍版も本日から発売されています! gihyo.jp せっかくなので、ちょっとした感想を書くことでお礼にかえ…

PHP7とLaravel 5でFacebookアカウントでログインできるTODOアプリをつくる 2日目(Laravel5導入編)

前回の記事に続いて、今回はLaravel 5の導入までをやってみます。 ariarijp.hatenablog.com Composerのインストール 近年、PHPのライブラリーはComposerで管理することが一般的になっています。 Laravel 5もComposerで導入しますので、まずはComposerをイン…

PHP7とLaravel 5でFacebookアカウントでログインできるTODOアプリをつくる 1日目(環境構築編)

昨年、PHP7がリリースされたので、PHP7で動作するTODOアプリを作ってみます。 ただのTODOアプリでは少し色気がないので、Facebookアカウントでログインできるようなアプリにしてみようと思います。 環境について TODOアプリの開発に使用する環境は以下としま…

2015年まとめ

まとめと書きつつまとまらなそうだけど、技術的なこと中心に一応書いてみる。 転職 まずは転職したのが大きかった。1/5から現職。 前職ではインフラ運用と協力会社さんとの調整と自社サービスのプロモーション(主に広告)をやっていたので、それほどコードを…

MackerelでEC2スポットインスタンスの価格変動を監視する

まえがき Mackerel Advent Calendar 2015 12月13日の記事です。 qiita.com mackerel.io 昨日は la_luna_azul さんでした。Ore no homepageはよく参考にさせてもらってます! go-check-pluginsを勝手に解説 – Mackerelアドベントカレンダー12日目 | Ore no ho…

メタ勉強会で登壇してきました

id:foostan さんに声をかけていただいて、10/28に行われた、勉強会のための勉強会「メタ勉強会」で登壇してきました。 会場と「ござ」の提供はグリー株式会社様です。 atnd.org ござスペース作りました!皆様気をつけてお越しください!なおまだ参加可能なの…

ISUCON5予選に参加しました

まえがき 2015/9/26にISUCON5予選に参加しました。 この記事は読んで役に立つようなことはない、ただの感想記事です。 ISUCON5予選に参加するまで ISUCONの存在自体は去年ぐらいから気になっていたのですが、参加したいとかはなくて、「すごい人たちがいるな…