さわらブログ

さわら(@xhiroga)の技術ブログ

bitbank/ kraken/ poloniexの過去の価格を取得する

暗号通貨(仮想通貨)の過去時点での価格を知りたかったので、取得できるようにしました。
各取引所のAPI経由で取得すればOKです。

ソース

github.com

利用は自己責任でご自由にどうぞ。

やり方

requestsライブラリを使ってAPIを叩いた後、pandasを使ってデータを整形 >> CSV形式で保存、としています。

注意点

日本の取引所でもGMTを基準にしていること。
Krakenの古いデータが取得できないのだけど、どなたか解決法を知っていたら教えてください。

業務系Webアプリケーションの画面デザインガイドライン作成で参考になりそうな考え方・サイト

※この記事は2時間くらいで調べた内容をまとめたものです。

画面デザイン規約を作るとき、何を参考にしてどうやって作ればいいのかをさっと調べました。

考え方

システム開発より、むしろWebデザインのための資料が参考になる。
サイトマップやページレイアウト、文字、色、画面サイズなどに関するデザインガイドラインは、良いものがインターネット上にたくさんある。

ちなみにWebデザインは、要件定義→情報設計→仕様設計(表現は色々ある)の流れで行われているようだ。
レイアウトは情報設計の後半で、文字や色などの要素のデザインは仕様設計で行っている。

デザインガイドラインを作成するためのコツ

デザインのコンサルティング会社「ソシオメディア」取締役の上野さんが、運用まで視野に入れたガイドライン作成のコツについて書いている。
www.sociomedia.co.jp

大まかには...
1. 必要最低限のことを書く(読んでもらえなくなるから)
2. 考え方と具体例(コピペしやすいほど良い)を両方載せる
3. ガイドラインに沿っているかレビューのプロセスを入れる
4. フィードバックをどんどん取り入れる(変えられないと使うのが負担になる)

本当はもっと深いことが書いてあるのでリンク先読んでみてください。

参考になるガイドライン

個人的に参考になるもの3選。

Introduction · Bootstrap
言わずと知れたフレームワーク「bootstrap」の公式ドキュメント。
コピペすればそのまま使えるコードが掲載されておりとっても使いやすい。

Styleguide
レビューサイト「Yelp」のスタイルガイド。
項目に網羅感があるので、自作デザインガイドの骨組みに良さそう。考え方、cssタグの例示もある。

GOV.UK elements
英国政府のデジタルサービス提供サイト「GOV.UK」のデザインガイドライン

参考資料

airtable.com Airtableにまとめて公開しています。この程度しか読んでないので、お勧めがあればぜひご教示ください。

git push origin master が fatal: Authentication failed → 最近2FA認証をオンにしませんでしたか?

ユーザ名もパスワードも合っているはずなのにターミナルからプッシュできない!どうして!
と思っていたら、2FA認証を使い始めたらパスワードの代わりにPersonal Acces Tokenが必要らしい。

やり方はこちら。
Creating a personal access token for the command line - User Documentation

参考資料

blog.swilliams.me

AWS LambdaでPython3を動かす + PostgreSQLにアクセスする

お正月早々めっちゃつまづいてしまった。
この記事は要するに、Lambdaの使い方 + Python3用にpsycopg2とlibpqを静的リンクさせるやり方のメモです。

AWS LambdaでPython3を動かす

フレームワークを導入しなくてもローカルと同じようにプログラムを実行できる。
注意したいのが、pipを自動で実行したりはしてくれないこと。
(Herokuだとrequirement.txt って設定ファイルに書いておけばライブラリをインストールしてくれる)

なので、外部ライブラリに依存するプログラムを作る場合、それごとZIPで固めてアップロードする必要がある。
ライブラリを取得してZIP化するのは面倒なのでシェル化した。よければご参考にどうぞ。

ちなみに原因不明の変なエラー( i.body is null )が出たけど、支障なく動いた。
f:id:hiroga_cc:20180103181041p:plain

Python3用にpsycopg2とlibpqを静的リンクさせる

ここに大体書いた。 github.com

参考サイト

dev.classmethod.jp

.vimrcの更新をgit add → commit → push でGistに反映する

あけましておめでとうございます。良い年になりますよう。

.vimrcをGistに公開しています。毎度コピペで更新するのが面倒なので、GitHubみたく更新できるようにします。

やり方

  1. Gistに.vimrcを公開(今回は済)
  2. Gistをローカルにclone
  3. vimの起動時にcloneした.vimrcを参照
  4. .vimrcを更新してadd → commit → push

やってみた

1.Gistに.vimrcを公開します(今回は済)

こちらをどうぞ。
さわらの.vimrc · GitHub

2. Gistをローカルにcloneします

Gistのページからcloneするアドレスを取得して... f:id:hiroga_cc:20180101071318p:plain

シェルでcloneします。

$ cd ~
$ git clone https://gist.github.com/1e7ae56f94ea301e9b585663d275ccc4.git vimrc

3. vimの起動時にcloneした.vimrcを参照させます

$ vi ~/.bash_profile

# alias vi='vim -u ~/vimrc/.vimrc -N’ などcloneした.vimrcファイルを指定

$ source ~/.bash_profile

※ -Nオプションを忘れるとvi互換モードで起動して面倒なことになります。

4. .vimrcを更新してadd → commit → pushします

$ git remote
origin 
$ git add .vimrc
$ git commit
$ git push origin master

やってみて

デフォルトの.vimrcをできれば直接反映させたかったので、新たにフォルダを作ってしまったのが残念。 もっといいやり方あればぜひ下さい。

キーボードショートカット一発でブックマーク開く@Firefox #大晦日ハッカソン

ショートカットで特定のウェブサイト開けたらいいな〜って思うことありませんか?
例えば alt+f でFacebookを開いたり、 alt+tでTwitterを開いたり...

Firefoxでできるようにしました(めっちゃ簡単です)
* 未確認ですがChromeでも多分できます

やり方

  1. 開きたいページをブックマークします。
  2. アドオン「Shortkeys」を導入します。
  3. 設定から「Open bookmark/bookmarklet in current tab」を追加し、対象のページでブックマークを選択します。

これだけ!設定画面はこんな感じです。
f:id:hiroga_cc:20171231121451p:plain

めっちゃ快適!みなさんもどうぞ〜!

DJのやり方を真似して自分専用のプレイリスト作った

その年よく聴いた曲をまとめているんだけど、今年はプロのDJの人のやり方を真似てみた。

参考にさせていただいた情報:
www.studiorag.com

Dj Kyonさんという方が曲のミックスのために書いた記事。今回はミックスとかはしないので、曲順を決めるまでを真似する。
要約すると...
1. テーマを決める
2. 曲を集める
3. 集めた曲を分類する
4. 分類した中で優先順位をつける
5. 入れる曲と曲順を決める(DJの人はここでミックスする)

やってみた

1. テーマを決める

これは「今年自分がよく聴いた曲」で決まっているので省略。

2. 曲を集める

iPhoneのミュージックで曲を聴くので、再生回数トップ100から今年の曲を選んでいく。 ちなみに選んだのがこれ

3.集めた曲を分類する

Dj Kyonさんの例を見るとBPMとかジャンルで分けているみたい。
自分もそれに倣ってBPMとジャンルで分ける。
BPMはこのサイトを開いて、曲のテンポに合わせて画面をタップして測りました。 www.vocalist.org.uk

あと、iPhoneのPyroってアプリでも測れる(ただしApple Musicの曲は対象外)

4.分類した中で優先順位をつける

聴きたい順に優先順位をつけました

5.入れる曲と曲順を決める

前の曲と後の曲のつなぎ目が自然かなー?とか考えながら曲順を決める。
できたのがこれ。BPM120台→130台に上がっていくように考えた。

f:id:hiroga_cc:20171230111357j:plain

やってみて

BPMを測ってみると自分の好きなテンポがわかって面白い!いいプレイリストができた!