情報をスタック&可視化するサービスを作りたい

定期的に更新される情報。

数字だけで小難しかったり、単体で見てもわかりにくかったり。

そういうのをDBにスタックしてわかりやすく表示する機能を作ってみたい。

次の要素があると作りやすい。

  1.  1日1回定期更新
  2.  フォーマットが変わらない
  3.  意味のある数値が毎日変化する

今回は練習作としてFXのスワップ金利を対象に作ってみた。

※スワップ金利とは2国間の金利差を日割りにして付与するものです。

 

仕組み

基本的にAWSで収まる設計にする。

概要 : CloudWatch -> Lambda -> DynamoDB <- Lambda <- API  <- S3

  • 入力
    1. CloudWatch Events – Schedule: daily  で1日1回Lambda関数を起動する
    2. Lambda関数でスクレイピング+DB格納
  • 出力
    1. S3に置いたHTMLファイルからAPI呼び出し
      • 普通にHTTP POST(GETしたかったがうまく設計できなかった)
    2. APIからLambdaを起動
      • Lambda関数と統合する
    3. DBから検索結果を返す
      • JSON形式でパススルー

 

可視化

次に持ってきたJSONをグラフ化する。

グラフ作成系のJavascriptは結構あるけど、どれも面倒な感じ。

今回は比較的簡単そうでデザインと名前が好みのChart.jsを使ってみる。

これは基本機能は簡単ではあったけど、ちょっと変えようとすると難しい。

頻繁に仕様が変わっているのか、ブログや紹介記事なんかはまったく当てにならなかったので公式ドキュメント以外は信用しない方がいい(Update関連は公式通りではうまくいかなかったけど)。

出来上がったチャートはこんな感じ。アニメーションが心地良い。

swap

 

さて何をつくろうかな。

 

javascriptでGIFアニメを作る【jsgif】

htmlで通信なしにGIFアニメを作成したい。

そこで jsgif というライブラリがあったので使ってみた。

ダウンロード&解凍したらhtmlにリンクを追加。

読み込み終わったら次のようなスクリプト記述でGIFアニメが作れる。

addFrameでcontext要素を変えながら追加していくとGIFアニメになる。

オプションの1つで指定した色を透明として扱うこともできる。

encoder.setTransparent(0x0000FF); 

しかしコレはそのままでは使えなかった。

GIFEncoder.js の以下部分を変更。

 

 

これで指定した色が透明になる。

位置を変えながらfillTextすると次のようなGIFアニメが作れた。

index

これを使ってまたなんか作ってみよう。

 

激辛グルメ祭り2016(2nd)に行ってきた

激辛グルメ祭り2016は3ラウンドに分かれます。

今日は9/2-9/11の2nd ROUNDになります。

 

新宿を東口で降りて、線路沿いを北上しながら歌舞伎町一番街を抜けると大久保公園の入り口があります。

dav

平日の14時にもかかわらず結構人が多かったです。

店には並んでないけど、中央テーブルの7割ぐらい埋まってました。

あと大体グループでした。1人で来てる人少ない。。

dav

立ち食い席は誰も居ません。

飲み物は持ち込み禁止なので、ここの自販機か奥のドリンク販売で買う必要がある。

 

宇都宮餃子館

② 激辛餃子2個&超辛餃子2個&激辛手羽餃子2本(1,000円)
② 激辛餃子2個&超辛餃子2個&激辛手羽餃子2本(1,000円)

最初は餃子にしました。

平日18時まではアルコールが半額なのでビール300円でした。

激辛&超辛餃子はピリ辛の餃子で美味しかったです。

手羽餃子は手羽先の中に餃子の餡が詰まっていて、コレだけ追加で欲しいくらい美味しかったのですが単品では売ってなかったので諦めました。

味が濃くてビールによく合うので最高です。

エチオピア

① タンドリーフライドチキンとカルピスバターライスのカレー(Ⓜ800円)
① タンドリーフライドチキンとカルピスバターライスのカレー(Ⓜ800円)

辛さは0、3、20、70倍から選べました。

もちろん70倍にしたけどあんまり辛くはなかったです。

フルーティで餃子と同じくらいのの辛さ。付属のチキンはただの美味しいチキン。

けど食べてると滝のように汗が出てくる不思議なカレーでした。

陳家私菜

① 元祖頂天麻婆豆腐(Ⓜ800円)
① 元祖頂天麻婆豆腐(Ⓜ800円)

今回のラウンドで一番ヤバイと噂の麻婆豆腐。

中辛、激辛、地獄辛から選べます。

恐る恐る地獄辛を選択。

味のほうは正直よくわかんなかったです。

とにかく痛い。

旨みのようなものを感じることもあったけど、口の中がハッカでも飲んだかのようにスースーするし噛むたびに何か痛い。

ヨーグリーナ美味しい
ヨーグリーナ美味しい

途中でヨーグリーナの力も借りつつ完食したけど、食べ終わるころには体調が悪かった。

あかんやつやこれ。

感想

ひたすら辛いものしかないのかと思いきや、そんなに辛くなくて美味しいものも食べれて良かった。特に餃子は感動した。

1品1品が量多めで1回で試せる店が少ないので、HPで予習してから行くことをオススメします。新宿はちょっと遠いので値段と量を減らして欲しいなー。

3rd ROUNDはいけたら行く。

3rd

ドクロうどん食べたい。

ニート初心者の8月収支

先月からニートをしてますが、今月はまるまる働いていません。

趣味のアプリとか作って公開するくらいの生産性です。

ある程度貯金があるとはいえ、お金の問題は現在唯一の問題です。

そこで今月の収支を見てみたいと思います。

家賃 -70,000
健康保険 -27,000
国民年金 -16,000
食費 -30,000
電気ガス水道 -8,000
ネット(固定+モバイル) -6,000
衝動買いとか交遊費 -60,000
支出計 -217,000
為替 +265,000
その他 +5,000
収入計 +270,000
収支 +53,000

まさかの収支プラス。

ギャンブルで勝っただけみたいな感じですが。

食費は米がタダ+ほとんど自炊+為替業者が大量にインスタントを送ってくるのでまぁまぁ安く済む。

支出は固定で15万も飛んでいくので、変動費はなるべく抑える必要がある。

それなのに6万円はちょっと使いすぎ。

贅沢は収入が安定してから…。

Huawei MediaPad T2 7.0 Pro購入

2年ほど使ったNexus 7 (2013)が文鎮化したので新しいタブレット購入しました。

Nexus7はSDカードが使えないのを除けば最高のタブレットだったので残念です。

用途はKindle、為替、Twitterくらいでスペックはそこまでいらないので、コスパ高そうなのを探すとコレに行き着きました。

25000円という低価格でスペックもほどほど、特にベゼルの細さがすごい。

インチ数は同じでも本体のサイズが結構違います。

dav
左:T2 7.0 右:Nexus7

 

以前にHuawei P9 liteを買いましたが、それがそのまま大きくなったような感じです。

並べると親子みたい。

t27_2

音声合成に関して色々やってみる

テキストを投げるとWAVが帰ってくるAPIを作りたい。

サービスとしてはいくつかあってDocomoは使いやすかった。

こういうのは制限もあるので自分で作ってみたい。

 

Lambdaでお試し

慣れてるし、他にいいのも思いつかないのでAWSを使う。

LambdaでテキストからWAVを作る処理を書いてトリガーでAPIを指定する。

Lambdaで実行ファイルを起動したいときは次みたいな処理をはさむ。

 

ためしにAquesTalkPiがLambdaで動かないかなと思ったけど無理だった。

 

音声合成ソフトについて

次に音声合成ソフトを色々調べてみた。

  • 組み込み用
    • AquesTalk,AquesTalk2:アクエスト規約に従う。
    • OpenJTalk:修正BSDライセンス。
  • フリーソフト(実行ファイル)
    • softalk(ソフトーク):Windows向け。Aquestalk使用でアクエスト規約に従う必要あり。
    • textalk(テキストーク):Windows向け。OpenJTalk使用。
    • AquesTalkPi:ラズベリーパイ向け。アクエスト規約に従う必要あり。

 

実行ファイルは基本Winbdows向けだし、いろいろ自由に使うためにOpenJTalk使って自分で実行ファイル作ることにする。

 

他にもnodejsのモジュールが2つ見つかったけど、やりたいことと微妙に違ったのとEC2でインストールできなかったのでこれらはいったん保留。

 

OpenJTalkのインストール

とりあえずWindowsにインストールしてみる。

ここを参考にした。

Visual Studio 2015にVcvarsall.batがなかったので2013を追加インストール。

2015のときも思ったけど西暦よりバージョンが1少ないのは紛らわしい。

(今回はMicrosoft Visual Studio 12.0に配置された。)

 

これでWindows上で動作するようになりました。

今日はとりあえずここまで。

ここから先が果てしなく長そう…。

グルーヴコースター 3 リンクフィーバー場所一覧

最近グルーブコースターに嵌ってます。アーケードの方。

行きつけのゲームセンターだったら良いんですが、ちょっと遠出したついでにやりたいときに筐体が見つからなくて悲しい思いをしたので場所一覧を作りました。

とりあえず関東エリアだけですが。

なんとなくグーグルマップの埋め込みって難しいイメージがあったんですが、そんなことはなかったです。

これからちょっと凝った機能を追加しようとするとキツイのかもしれません。

 

新アプリ「お絵かきスタンプ」をリリース

新規アプリ「お絵かきスタンプ」をリリースしました。

さまざまな背景に好きなスタンプを配置して自分だけの絵を作るアプリです。

完成した絵はお気に入りに追加してみることができます。

 

今回は画像系のアプリが作りたかったのでアイデアノートにあったものをそのまま作りました。

デザインとかは前々作の「自然音響」から流用。

思いのほか画像の扱いがめんどくさいことが良くわかった。

もしダウンロード数が伸びたらスタンプ追加とかしようかな。

2 5 7 8

 

そろそろ設計からちゃんと考えたアプリをつくってみたいです。

情報配信系がいいけどどうするかなー。

多摩川をひたすら下ってみた

急に海を見たくなったのと、運動不足解消に川辺を歩いてみたくなった。

ちょうどよさそうな多摩川周辺を歩いてきました。

今回のルートはこんな感じ。

rokugo

 

スタートから六郷水門まで

まずはスタート地点の六郷土手駅まで行きました。ここはかなり小さい駅でした。

00

川原まで歩くとちょうどいい看板があったのでそこから川沿いに下っていこう。

01

と思ったけど、川が見えない。

ちょっと橋のほうまで行って川を見てみる。

02

いい景色だったけどこの辺は歩けそうになかったので元いた場所に戻った。

テクテク歩いていくと公園だったり運動場だったりでとてものどかなところでした。

03

しばらく歩くと「六郷水門」に到着。

大田区の観光ページにも載っている観光名所ですよ。

dav

正面から見れたら結構いい感じの門なんだけど、これくらいまでしか近づけなかった。

 

六郷水門から白い大きな橋まで

歩いていると所々地面に数字が書かれている。

05

この辺はジョギングコースみたい。上半身裸の男性が結構走ってた。

30分以上歩いて景色にも飽きてきたころに、でかめの鉄塔があってテンションUP!

06

川側も白い橋が見えてきたのでとりあえずそこを目指す。

07

白い橋に近づいてくると少し海のにおいがしてくる。

08

この辺まで来ると船が結構とめてあって、海辺っぽい感じが増してきます。

 

白い橋から大鳥居まで

途中に2つほど大きな水門がありました。

09

見た目を凝れば六郷水門みたいに名所になったのかな。

景色もいい感じ。この辺が汽水域なんだろうか。

10

降りれるところがあったので降りてみた。

汚い海岸って雰囲気の場所。

ちょくちょく飛行機が飛んでいるのが見える。

11

すぐそばに大きな鳥居があった。

後で調べたら「旧穴守稲荷神社大鳥居」というらしい。

12

ちょっと唐突でびっくりしたけど景色的にもいいかもしれない。

 

今回の目的は「海が見たい」だったのでこの辺で帰ろうかと思ったけど、結構歩いたので帰るのがだるい。

飛行機が飛んでいるので羽田空港が近いことがわかったが、歩いて入れるのかわからない。

その場で調べたところ「羽田空港徒歩脱出ルート」というのがヒットした。

これを逆走しようと思ったのが過ちの始まり。

 

大鳥居から羽田空港国内線ターミナルまで

大鳥居を過ぎると、住居エリアでなくなるためか自販機の1つもなくなるので徒歩ルートを使う人は水分不足に気をつけましょう。

少し歩くと国際線っぽい場所に着きます。

13

ここに入れれば楽だったんですが、ググッた感じルートがわからなかったのでそのまま国内線のほうへ。

30分くらい歩くと飛行機もかなり大きく見えるようになってきます。

14

右端に見えるのは「風の塔」という観光名所らしいです。

歩いているときはとにかく謎の物体だった。

このあたりはずっと直射日光当りまくりでバテバテです。

飛行機堪能ポイントを抜けるとすぐトンネルに入りました。

15

このトンネルが結構長い。

しかも交通量が多くて音が怖い。

脱水症状気味で弱っていたのでかなりの難所でした。

トンネルを抜けて羽田空港に近づくと、すぐそばを飛行機が!

16

追っかけても良かったんですが、ここにはコンビニもあってそっちに吸い寄せられました。

危うく熱中症になるところだったのでありがたかったけど、誰も客がいなかった。

普段は整備の人くらいしか使わないレアコンビニなのかも知れません。

 

そして少し歩くと目的地の羽田空港。

17

バカンス気分の格好をした人々の中に汗だくで混じり、何もせずに電車で帰りました。

 

感想とか

水分補給は計画的に。

せめてバッグもってペットボトルでも持ち歩けばよかった。

所要時間は3時間ちょっと。

歩いてるときは意外と歩けるもんだなーと思ってたけど、いま足が壮絶痛い。

孵化した卵は6つでした(ポケモンGO)。

新アプリ「どうぶつのこえ」をリリース

新規アプリ「どうぶつのこえ」をリリースしました。

12匹の動物のイラストをタップするとその動物の声がするアプリです。

昔こんな知育玩具もってた気がする。

 

「どうぶつのこえ」はこれを作ったときに思いついたのですぐにできました。

鳴き声のフリー音源はいっぱいあったのですが、このアプリで使いたいようなものが意外と少なかったです。

イラストはできるだけ統一感を出したかったのですが、やっぱり製作者が違うので若干の違和感がある。だけどそれぞれ子供向けっぽくて可愛いイラストが見つかったので問題なし!

本当は自分で書ければいいんだけどなー。

 

縦横どっち向きでも使えるようにしたけどヘッダを2種類用意したほうが良かったかも。

a b