しゃちの備忘録

プログラミングを中心とした技術関連の備忘録です(今のところ)

「スペシャリストが解説する Amazon Web Services 知っておきたい基礎知識」を読んだ

はじめに

スペシャリストが解説する Amazon Web Services 知っておきたい基礎知識を読んだ.

https://www.amazon.co.jp/gp/product/B01BWM4FNM/

筆者の状態

インフラはふーんくらい,AWSはざっくり知ってるくらい. AWSやりたくなったので,その第一歩,さわりとして読んだ.

目的

さわりとしての知識をつけること. 今後に向けた書き癖をつけること.

学んだこと

AWS関連で出てくるいろんな略語とか,なぜAWSが強いかの強みの部分. いろんなサービスがこれを使う理由がわかるなーという気持ちになった. 一方でこれを最適な形でチューニングして利用するのってすごい骨が折れるし, それできたらかっこいいなーと思った. それになりたい.

あとは昔インフラとかの勉強をちょこっとした時にさわったいろんなカタカナ語の復習ができた.

今後について

AWS的に

まずは,Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂版を読む.

https://www.amazon.co.jp/gp/product/4822237443/

今日はこっちを読んでて,ほんとは描きたかったけどいい感じにならなかったので….

来週からはこれについて書く.

あとは,7月なかばにEC2+Dockerの勉強会があるらしいのでそこに参加して,参加レポとかなんか描きたいなと思ってます.

がんばる,以上.

書き癖的に

noteも登録してみた.

日記はそっちがいいなーと思ったので. 技術ログと分けたかった気持ちがあったので.

Redash Meetup#2に参加した

こちらに参加した。 発表とかは特にして無いです、今回は聴いただけ。 redash-meetup.connpass.com

経緯

会社で4月に入社した会社がRedashを使っており、 Redashを楽しく使ってきたが、 いかんせんドキュメントが少なく辛かったので、 実際に使っている人を通しての知識が欲しかったため参加を決定。

当日

会場周辺を2周して会場入り。 遅刻。

1人目

Redashについて5つのお話。

  • Redashの構成
  • Redashの導入
  • クエリ実行の流れ
  • メタデータについて
  • 隠し機能やtips

クエリ実行のところは私が考えてたのが間違ってたっぽいことがわかってよかった。

クエリが詰まりまくるところは笑えなかった……。

全然知らなかったのはアドホックと定期実行に次ぐ第3のクエリ?についてと、/adminページ。 後で調べよう。

2人目

Redashを布教したら面白いことになったぞ、というお話。 煩雑になったデータや属人化していた集計をなんとかすべくRedash導入。 その際にプレゼンやミニマムハンズオンなどを開いた。

結果として、 施策の振り返りがスピーディのなったり、有志での勉強会が発生したりすることになった。 また副作用として、様々ことの自動化も進んだ。

一方で、Redashのなんでもできる的な幻想や、 同じようなクエリの乱立、あとやたら定期実行されるクエリなどの問題も発生したので、 そこについてのケアは必要。

ひと月前に、同じようなクエリを乱立させ、定期実行させたので耳が痛かった……。

3人目 LT1人目

会社でのRedash運用について。

役員や開発チームだけでなくカスタマーにまで利用してもらっているとのこと。

Userグループとdatasourceを使って、クエリそのままに見える情報を変えるのはなるほどなーとなった。 やって見たい。 あとはレスポンス改善とか編集の権限を全員に振る方法とか。

Redash勉強時に読んでたブログの筆者様で驚いた。

4人目 LT2人目

Redashの辛いところ、いいところ。 Dashboardの自由度、グラフ作成、クエリ探しなどの機能の乏しさなど。 一方で開発以外の人と関われる場として活躍しているとのこと。

特にグラフ作成はわかる…ってなってた。

感想

全体としてわかりやすい発表ばかりで聞きやすかった。 何人かの方が話されていたが、 やっぱり開発者の属人化を防いだり、開発外の人とデータを通し関わり合える場所として、 Redashは面白いなーと感じた。 もっと便利に使えるようになりたいなーと思いながら帰りました。

運営と登壇者の方,ありがとうございましたーっ。

第3回は発表したいので、 ブログ書き書きしながらネタ作りますー!!

100 numpy exercisesをやる

3日目です.

コードを書くと文章力が下がるので,また文が短くなります….

ネットサーフィンをしていたらたまたま,100 numpy exercisesというものを見つけた.

github.com

もともとnumpy自体はそこそこ触ったことがある程度だったので今後のあれこれのためにやってみる.

今もやってみてます. ただ意外と難しく進捗が悪い……. 一定層溜まったらgistにして投げます.

Yahoo! JAPAN Hack Day 10th Anniv.を見てきた

3日目です. 日記になりつつありますが,毎日インプットしているということでひとつ…….

Hack Dayとは

hackday.jp

Yahoo! JAPAN様主催の日本最大級ハッカソンイベントです. ソフトからハード,個人から企業までさまざまな人が集まり,成果物を披露したり,24時間で作ったものを発表したりするイベントです. 私はその二日目を見てきました.

素敵なノベリティももらえました.

ロボットや声でする紙相撲などのユニークなブースも多かったです(写真忘れた…).

メインのハッカソンステージは前日から24時間で作ったものを90秒で発表するという企画をやっていました. 次から次に出てくるおもしろ技術はとても興味をそそられました. 機械学習関連も結構多くて,ささっと使えて結構制度が出るものが作れる時代なのかなぁと感じました.

何より発表者が楽しそうで,すごくいい刺激になりました. ありがとうございました.

おわりに

これ日記ですね?

DeepLearningで遊びたい話(予告)

2日目です 平穏を得たはずがなぜか加速度的に忙しくなっています,不思議.

今日はやりたいことの予告というかなんというか, やる前に色々調べたことをまとめて起きます.

何をしたい??

ディープラーニングで画像分類をして見たいなーって思ってます. 狙いとしてはディープラーニングに触ることで, 前々からアプリちっくなものを作りたい欲はあったので,それをアプリみたいな形で落とし込めたら嬉しいなって思ってます. 先駆者はいっぱいいるので新規性は皆無ですが,やりたいのでしかたない.

今後何をしていく??

まずはDeepLearningを行うためにChainerまたはCaffeの使い方を勉強して行きたいと思います. どっちを使うとかは決めてないですが,ドキュメントが多い方が嬉しいですね. 機械学習界隈の知識は幸い持っているのでその辺の話もしながら書いていけると,いいなぁとは思ってます.

一通りチュートリアルを試したら, 何を識別するかを決めて,画像収集作業をします. おそらくここでウェブスクレイビング的なことをするのかなぁと考えてます.

画像が収集完了したら,1対象とそれ以外の識別に挑んで,だんだん分類パターンを複雑にしていく風に進めて行きます. それでまぁ一定層できたら,うれしいなぁと.

おわり

短すぎる…(本当はChainerとかCaffeに触ったところまでやりたかったのですが明日朝早いので……(土下座)) 明日は,起きられれば技術ちっくなイベントに参加したいと考えているのでそのレポートでも. 長くなる………はず…….

PEP8とCircleCI

ひとりアドベントカレンダー1日目です. 早速遅刻ですがやって行きます.

なぜこのテーマ??

人にコードを見せる機会があって, しばらくコード規約とかそれを守ることから縁遠くなっていた私が, 改めてそれらをしっかり見直して, コードのシェア等をしやすくして行きたいという気持ちになったです.

ので,こんなこと調べました,備忘録にしておくね程度の記事です.

PEP8とは

PEPというのがPython Emhancement Proposaの略であり,Pythonのあれやこれやがまとまっています. その中の8番目にまとまっている,Pythonで書かれたコードのスタイルガイドがPEP8とのことです. ほかにもモジュールを追加する手続きについてや,バグ修正についてなどいろいろな項目がまとまっています.

PEP全体は一貫して英語で書かれているのですが,一部は有志により日本語化が行われいるようです. Pythonをつかってコードをシェアする予定がある場合や, 色々書き方あるけどどう書くのが正解なんだろう?と言う場合は是非一読するといいと思います.

PEP8 github.com

はじめに — pep8-ja 1.0 ドキュメント

PEPのいろんな部分 PEP(Python Enhancement Proposal) 日本語訳 — PEP Japanese Translation v0.0.7 documentation

ちなみにPEP8と検索すると,よくflake8と呼ばれるものも出てくるのですが, flake8はPEP8の要件を緩和したりカスタマイズするためのラッパーのようなもので, 例えば,PEP8の中にはD***と表記される渓谷があるのですが, これはdocstring,コードの説明に関する記述に関する警告なのですが, 直接コードとは関係ない部分なので,D***エラーは緩和する…みたいな使い方をするらしいです.

PEP8を適用する

PEP8を守って書かれたコードのためにドキュメントを1回1回見直すのは流石に大変なので, エディタや何らかの方法で,PEP8が守られているか確かめようとするのがいいとおもいます.

少し調べると,いろんなエディタでPEP8が守られているかを適用する方法が出てきました. 単純に検査だけではなく,PEP8に準拠したコードになるように書き換えを行なってくれるものもあるらしいです. (こう言うのって勝手にどんどん埋め込んでいいものなのでしょうか……) (もしダメそうなら消します)

qiita.com

ton-up.net

qiita.com

Circle CI

複数人て開発等々をする場合など, どうしてもPEP8に限らずコード規約や記法を守ろうと思った際, どうしても徹底できないことがあると思います. また,コード規約の外,そもそも求められる要件やテストを満たしているのかなど, コードを書く上で繰り返し見て,検証する項目などもあると思います.

そういった,ものに対する仕組みとしてCIと言う言葉があります. CIとはContinuous Integration(継続的インテグレーション)のことであり, ソフトウェア開発上で繰り返し起こるコンパイル,ビルド,テストなどの工程を1日に何度も実行するし,ソフトウェアの品質を向上させようというものです.

それを,実現するサービスの一つがCircleCIになります. Githubと連携して色々でき,一部無料で使えたりができるようです. あえてこれをピックしたのは,私が今回記事を書くにあたって出会ったのがこれだからです.

非常にわかりやすい資料だったので掲載しておきます. (こちらも,もしダメそうなら消します)

www.slideshare.net

おわりに

短い,オチがない,と言った感じの1日目です. 書いてる途中で寝落ちしたのが原因です…….

まぁそれはそれとして, 使うものは一通り知っておきたい欲があるので, 残りの日でCircleCIについて掘り下げようかなとも思ってます. ただ,他にやりたいこともあるので未定です.

ひとまずここまで. ありがとうございました.

ひとりアドベントカレンダーをやる(つもり)

なぜやるか

  • 最近アウトプット活動をしていないから
  • やりたいことタスクが溢れてきたので消化したい
  • ひとりアドベントカレンダーをやってる人が多く熱に当てられた
  • 書きたいから

内容について

主にやりたいと思っていたけど手が出ていなかった内容をなるべく消化するために,色々します. なるべくコード書き,ないしは,しっかりとした解説を目標にします.

内容候補は以下の通り.

  • Djangoでのアプリ開発のためのあれこれ
    • 3ヶ月程度さわったから改めて丁寧に色々書けるはずなのでそのへんを解説
  • Bootstrap4
    • ドキュメント少ないので触って解説したい
    • 一個一個は結構短くなりそう
  • DeepLearning
  • Pythonそもそもについて
    • まぁやっておいていいかなみたいな気持ち
  • PyQはじめたい

いつからやるか

諸事情で8日から予定です.どうしても避けられない予定がですね…….

かみんぐすーん.