ゆるふわ技術日誌

エンジニア見習いの悪戦苦闘日記

Redash使ってみた #198

今日やったこと

Redashやってみた。

Redash知ってますか。

redash.io

こちらです。DB叩いて取ってきたデータをいろんなグラフにしたりしてくれるイケたOSSです。

バイトのお仕事で少し触りました(その為スクショ等はないです。ごめんね。)

使い方としては、SQL書く(Queryとして登録)→Dashboard作成→Add Widgetとやってやるといろんなグラフを組み合わせたダッシュボードを作ることができます。

Schedule機能もあって、夜中にクエリ実行しておいてもらうことができるので高速にグラフが表示されるあたりもとてもイケてる。

SQL力が試されるのでそれも面白い。サブクエリとかやってると無限に長いSQL関数かいてるみたいな気持ちになりますね(^o^)

雑談

いろいろ細々としたことをバイトでやったりしたんですが、あんまり書けるようなことがないのでコレくらいにしておきます。

そういえば、JRuby on Railsが遅いという話を昨日記事に書いたら、なにやら先輩のブログに興味深い記事が…。

namazu-tech.hatenablog.com

………。いやXeonデュアルプロセッサは反則でしょ…w

<参考>

私のマシンのスペック

f:id:uutarou:20171129235105p:plain

コレの上にDocker for Macだし遅くないわけがないと言った方がいいのではないかという。

JRuby on Rails on Dockerのパフォーマンス問題(未解決) #197

今日やったこと

JRuby on Rails on Docker

タスク消化シリーズです。

昨日やったJRuby on Rails、今回作るものは最終的にJava7の環境で動かされることになる予定で、手元にその環境がなかったので、Java7上にJRubyを入れた環境をDockerfileにしてみました。

github.com

これ。

それで試しにrails g scaffold user name:string age:integer的なよくあるコマンドを実行してみたところ完了までになんと約2分半の時間を要する結果に…。

ちょっと流石に開発してらんないのでパフォーマンス改善をしようと思ったのですが、めぼしい情報は今のところ発見できず…。

一個、サーバー用のJVMではなくクライアント用のJVMを使った方が良いという記事を見かけてDockerのベースイメージを7u111-jdkに変更してみました。測ってないのでなんとも言えないですが、そんなに速度が上がった感じはなさそうです。

JRuby on Railsで一通りDB扱ったりするまでに必要なGemのメモ

完全に自分用メモです。

JRuby on Rails上でscaffoldしてrails sするまでに自分で以下のGemをGemfileに書き足してやる必要がありそうです。

gem 'activerecord-jdbcsqlite3-adapter'
gem 'listen'

逆に言えばコレ以外はよしなに勝手にJava版入れたりしてくれてる模様です。

雑談

JRubyやるのに稼働を割くくらいならJavaで書いた方が楽なのかもしれない…。むむむ。

なぜかJRuby on Railsをやる #196

今日やったこと

f:id:uutarou:20171127182408p:plain

こちら。Railsやる人ならおなじみのやつ。

ところがRuby versionのところ…

f:id:uutarou:20171127182553p:plain

まさかのJavaっていう。

タイトルの通りですが、JRubyです。

Yay!までもっと苦戦する予定だったのでその話を書こうと思ったのですが、あっけなくYayまで辿りつきました。

手順

とりあえずJRuby本体を落とす。

Downloads — JRuby.org

よくわからなかったので普通に最新版のzipを落として展開した。

展開したディレクトリの中で./bin/jruby -vやるとバージョンが見られる。

で、Railsを入れるには./bin/jruby -S gem install railsとかやればおk。いつものGemのインストールの感じで流れていく。

それが終わったらプロジェクトのパスに移動してjruby -S rails new testAppとかやる。(この辺で面倒になってパス通した

いつもの感じでいろいろgenerateされる。

されたらjruby -S rails sでサーバーを上げてみる。僕だけかわからないけど上がらなかった。

エラーは

LoadError: Could not load the 'listen' gem. Add `gem 'listen'` to the development group of your Gemfile

とのことだったのでGemfile開いてgem 'listen' とか書いておいた。別にdevelopmentにしなくても動いた。

そしたらbundle installやった後にもう一度jruby -S rails sとやってあげることで↑のYay!まで到達する。Railsも普通に5.1.4らしいしすごい。

雑感

なんかあっけなく終わったけど、まだRubyの機能しか使ってないし、Javaのライブラリ叩いたりしてみてからじゃないとなんとも言えないと思った。動いてくれるといいのだが…。

雑談

Node学園祭の翌日でNodeじゃねぇのか!と思った方もいる、というか自分でもそう思うのですが、とりあえずやること片しちゃおう企画第一弾でした。

明日こそはNode触ってなんか作りたい。

初心者がNode学園祭2日目に行ってきた #nodefest #195

Node学園祭に行ってきた。

f:id:uutarou:20171126224330j:plain
本日の会場は東京駅スグのリクルート!41階!高い!!!怖い!!!!

こちらです。

nodefest.jp

昨日に引き続き、今日は2日目でした。

本日は1日目とは異なり、参加型のワークショップやNode.jsのチュートリアルがセッションと同時に開催されていました。 完全に私の感想エントリになっちゃいそうですが、行ってきたレポをお届けします。

NodeSchool

こんなサイトがありまして、

NodeSchool

ココのチュートリアルをメンターさんのいる中でモクモクやるといったコンテンツでした。

チュートリアルはnpmパッケージとして配信されていて、起動すると一つのテーマに対して複数の問題がでてきてそれを解いていく、というスタイルになっています。

パッケージにはテストツールが付属していて書いたコードが正解か判定しながら進めるという感じのものでした。

解説も丁寧なので自分で勉強するにも普通にオススメです。

f:id:uutarou:20171126221725p:plain f:id:uutarou:20171126221741p:plain f:id:uutarou:20171126221759p:plain

LINE Bot Handson

LINEのBot APIをNode.jsで触ってみよう、というハンズオン。

qiita.com

こちらの資料に沿って進んでいく感じでした。

資料のわかりやすさも去ることながらLINEのAPIもとてもわかり易くて、かんたんに動くものができちゃうのですご〜く楽しかったです。

何か作ってみたいと思いました。

あと主題からズレますが、記事内に紹介されているngrokとnow、いずれも知らなかったのですがありえんほど便利だったのでぜひそれだけでも試して欲しいです!

f:id:uutarou:20171126222446p:plain
デバッグの痕跡…w

ちなみに、今回のチュートリアルで使っているSDKは1日目にLTしていた方が開発に参加しているようで、そのへんもちょっとおもしろかったです。

Data Visualization Workshop

その名の通り、データビジュアライゼーションをやってみようのワークショップでした。

D3ライブラリを用いて映画の評価サイトのデータを可視化するというもので、外国の方のセッションだったのですが、きれいな日本語と英語を交互に喋っていて、すごいなとおもいました。(そこではないw)

実はD3の話は1日目で初めて知ったというレベルだったので、ものにすることはできませんでしたが、こういう手法もあるのかと。

AfterPartyで、D3をラッピングしたチャート用のC3ライブラリというものもあるという話を伺ったので、グラフを描きたい時は使ってるのも手かもしれないと思いました。

資料載せていいかちょっと謎なのでやめておきます。

upgrading node.js in production

当初予定していた登壇者の方が居なかったということで急遽代打でLTをされてました。

内容としては、Productionで使っているNodeのバージョンを6系から8系にアップデートした話、ということでした。

自分はまだ学生なので、既存のプロダクトのアップデートとか、その際のダウンタイムとかを考えるようなプロダクトに触れることはあまりないですが、それでも興味深い話がたくさん聞けました。軽く列挙しておきます。

  • アップデート前にBreakingChecklistを見よう
    • 破壊的な変更が分かるらしい。
  • もちろんChange logもちゃんと見よう
  • テストを書こう
  • Trial and Error!

この方とはAfterPartyでもお話させてもらったので、気になってたExpressアプリの設計の話などを聞きました。 ためになったので、あとは実践するのみ。

AfterParty

今日もAfterPartyありました。

昨日より人が少なかったこともあり、いろいろ知らない人とも話せてよかったです。

SPA、本当に必要?みたいな話とかPythonはいかに良いか(というかNode学園祭のはずなのにPythonistaがめっちゃ居たのが2日通して不思議でしたねw)とか。

年代が上の方と話すと、どういう歴史の上に今の技術が成り立っているかとかがわかって、面白いです。

個人的な感想

まずは、まぁ楽しかった!お金を払って、バイトを休んで行った甲斐がありました。

コミュニティって素晴らしいと思ったので積極的に参加して色んな情報を収集する活動は今後も続けていきたいと思うようになりました。

あとこれは本当にアタリマエのことなのですが、トライアンドエラーは大事だなと。スピーカーやってるような人でもたくさんの失敗から今があるのだと学びました。(今更ですが)

失敗を恐れずいろいろやっていこうと思います。

あと、英語! 何はともあれ英語は絶対必要だ。勉強有るのみ。

雑談

やる気を注入した2日間でした。

明日からの活動に活かしていければなと思います。

Node学園祭1日目に行ってきた #nodefest #194

Node学園祭にきました。

f:id:uutarou:20171125170437j:plain

こちらです。

nodefest.jp

本日1日目の会場は法政大学。

会場は登壇者含め外国の方多めの印象でした。(登壇者28人中21名が外国人の方らしい。)

Slackを使って同時翻訳的なことをしていたみたいなのでその点は日本語しかわからなくても安心して大丈夫そう(結局日本語のセッションしか聴かなかったけど…)

聴いたセッションの中で印象に残ったものをいくつか!

Make you a React: How to build your own JavaScript framework.

タイトルの通り、「React作ってみようぜ」的なセッションでした。

JSXとはなにか、どうやって動いてるかの解説をした後に、実際作ってみようという感じでコードを写しながら解説という感じでした。

普段ふんわり使ってるReactとかのVirtualDOMの動作原理が分かるのは面白かった。ちっちゃいReact作ってみたりしても面白いかもしれないと思いました。

あと、登壇してた方が外国人の方だったのですが、日本語ペラペラで面白い方でした。

(スライドはこちら)

docs.google.com

Node.js x Chrome headless で、お手軽WebRTC MCU

WebRTCのMCUChrome Headlessで実装しちゃおうという話でした。

ちょうど個人的にWebRTCに触っていたところだったのでそもそものアーキテクチャの話があったのも嬉しかったです。

Canvasで映像合成を行っていたので、工夫すればもっといろいろなことができるなぁとちょっと夢が広がる感じが個人的にはしました。

MCUは枯れた技術だけど、モバイルに最適ということで再注目される流れになっているというのも興味深かったです。

ちょっとなんか作ってみたいなぁ。

(スライドはこちら)

ReactNativeアプリでE2Eテストを回してみた

ReactNativeアプリでE2Eを試行錯誤した体験談という感じのセッションでした。

対象のアプリが医療系ということで、リリース後の変更は基本的に効かないという特殊な状況なのもおもしろかった、というかこんな世界もあるのかあという感じでした。

現状、ReactNativeのE2Eに対するベストな手段ないみたいですし、このへんちゃんとやると業界人になれそう(?)

(スライドはこちら)

今さら聞けないSPAのCORS対策の話

メルカリのエンジニアさんによるCORS関連の話。

一番、身近で明日から速攻役立つ系のセッションでした。

それと同時に、ワイルドカード指定しまくってた自分を悔いたり、パフォーマンス面から見たPreflight request対策とかは特に目から鱗でした。

早速実践したい!

(スライドはこちら)

<Sponser’s talk>Yahoo! JAPAN株式会社

スポンサーによる発表です。

Yahoo!の社内位置情報サービスについて。フリーアドレスのオフィスで社員の居場所を見れるサービスをNode.js使って作ってるらしい。

個人的にこういうのは心くすぐられる感じで好きです。あとCiscoのAPは位置情報取れるんだなーとか。

(スライドはこちら)

<Sponser’s talk>日産

なぜNode学園祭に日産………!?と思ったのは僕だけではないはず。

内容は、Connected car(インターネットにつながるクルマ)を本気で作ってるという話、既にリーフはネットに繋がっていて2022年には90%のクルマをそのようにしていくといったロードマップ的なのだったり、リーフをAlexaに対応させた話だったり、これらが100%内製なんだ、みたいな話でした。クルマ好きとしてはたまらん話でした。

そして、未来をつくるフレンズ募集中らしいですよ。(本当にそう言ってた)

ちょっと資料が見つけられなかったので見つかったら更新します。→諸事情より公開はされないそうです〜

代わりと言ってはなんですがWantedlyにやってることとか書いてたので貼っておきます😃

日産自動車株式会社の最新情報 - Wantedly

Whose Community?

Node女学園という、Node.jsを学ぶ女子向けのコミュニティを主宰されてる方のLT。

技術的な話ではなく、コミュニティは誰のためのものなのか、という話でした。

コミュニティ運営側の視点で見たジレンマ的な。

いつか自分が成長したら、コミュニティの主宰とかやってみたい!と思いました。

(スライドはこちら)

AfterParty

AfterPartyはまさかのバス移動。

会計ソフトのfreeeが会場でした。食事も凄かったんですがそれ以上にヤバかったのがWeb技術を使ったDJ/VJ。

音に合わせて映像が変化したり、証明をコントロールしたり(!?)

なかなか見れないものをみました……。

個人的な感想

こういうカンファレンス的なのはほぼ初だったのでとにかく新鮮でした。それと同時に素晴らしい文化の業界に生きてるな、という実感がありました。OSSだったり、そもそもこうやって自分の知見を伝えるために丁寧なスライド作って発表したり、その場を作ったり。いつか貢献する側にならなきゃならないと強く感じました。


あと、これはほんとに正直な話なのですが、なかなか理解まで追いつかなくて、すごーいくらいの感想留まりのセッションもありました。基礎がないと吸収することすらできないのは本当に悔しい。

一年勉強すれば来年は中身理解できるようになるだろうか、ならねば。

雑談

明日も私はNode学園祭におります。

まだチケットあるそうなので是非。

東京Node学園祭2017 2日目 - connpass

明日は今日とは違って、ハンズオン的なのがあったり、受け身だけじゃない感じのセッションがあるそうです。

期待。

AWSに触った #192

今日やったこと

AWS(S3,Route53,CloudFront)を使った。

週末のNode学園祭に持って行こうと思っていた名刺が来ました。(というか、入稿の翌日には届いてた)

そこに書いてあるURLに載っけるコンテンツを作ってたのですが飽きたので先に配信の部分をやってみました。

環境は表題にもあるようにAWSのS3(オブジェクトストレージ)とCloudFront(CDN)とRoute 53(DNS)を使ってやってみました。

サイトはこちら

工事チュウ…

工事中画面だと阿部寛サイトより速かったです。

いろいろとハマりどころとかあって試行錯誤したのでその辺の話は12月4日、アドベントカレンダーのネタとして書こうと思います。それまでに少しは詳しくなっておけると良さげかな?

田胡研 Advent Calendar 2017 - Adventar

雑談

なんかダメな1日だったよ…………。