ほげほげ

プログラミング、英会話、ヨガ、料理などの備忘録など。

YUIGAHAMA BEACH YOGA DAY 2017 に参加してきました

プログラミングの記事をQiitaに書くようになってから、ブログに書くことがなくなってきました。

せっかく作ったので細々とプライベートのことも書いていきます。

8/19の土曜日に鎌倉の由比ヶ浜で開催されたビーチクリーンとビーチヨガに参加してきました。 いつも行っているスタジオ以外では2016年のオーガニックライフ東京以来のヨガのイベント参加でした。

普段お世話になっているヨガのインストラクターさんが教えてくれるということだったので行くことにしました。

当日は雷雨が来るかもとの天気予報でしたが、見事にイベントの時間内は晴れていて無事に開催されました。

17時から由比ヶ浜がブルーフラッグの認証を取得した話や、ビーチのゴミ拾いを行って17時30分くらいからヨガでした。

私は普段はヨガスタジオでヨガすることが多く、ビーチは初めてでした。 結構ヨガマットが砂まみれになってしまうので、次回ビーチでヨガをするときはレンタルのビーチヨガ用マットにしようかなと思いました。

水平線と青空を見ながらするヨガはとても気持ちよく、波の音に耳を傾けながらシャバアサナはとても心が洗われるようでした。

ペアワークやみんなで協力してとるポーズもあったりして、他の参加者も楽しんでいて和気あいあいとしたとてもよいイベントだったと思います。

イベント終了後は雷が鳴り始めたので、急ぎ目で鎌倉の駅まで歩いて無事に雨にぬれることなく電車に乗れました。 なんと同じ電車に先生も乗っていたので、世間話をしつつ帰りました。

赤ちゃんが何気なくとっているヨガのポーズ

娘が6ヶ月になりました。 初めて寝返りしてから色々体を動かすようになっています。 その中でヨガのよくあるポーズっぽい体勢になることもあるんだなーと感じたので、取っていたポーズをちょこっと紹介します。

ブジャンガアサナ(コブラのポーズ)

寝返りうってズリバイするような時期に腕をピーンと伸ばしてブジャンガアサナの体勢になってました。 うつ伏せよりも高い位置に視点がいって色々と見えるのが楽しいみたい。

チャイルドポーズ

名前からも赤ちゃんがとりそうなポーズですね。 四つん這いでハイハイはまだ出来ない状態で、お尻を前後にフリフリしていてお尻が後ろにいった状態です。きっとハイハイの練習って感じですね。 僕はお尻がなかなか落ちないのですが、娘は床につくくらいお尻がしたに落ちていました。

プランクポーズ

ズリバイができておっちゃんこができた後は、四つん這いの体勢から後ろ足を伸ばしてダウンドックになりそうなこともチラホラみかけます。 ダウンドックのようにお尻は高く上がらないのですが、膝と腕を伸ばしてなんとプランクポーズになることがありました。 体を動かすのが楽しそうで何より。

git-flow VS GitHub flow

VSってほどでもないのですが、新しいプロジェクトでGitの運用フローをどうしようか少し迷いました。

git-flowの解説は以下

keijinsonyaban.blogspot.jp

GitHub flowの解説は以下

GitHub Flow (Japanese translation) · GitHub

どちらも有用ですが、GitHub flowの末尾のまとめに書いてあるような毎日デプロイ&リリースをこまめにしていく運用が今の理想なのでGitHub flowを今回は採用することにしました。 またGitHubを使用しているので、git-flowやhubflowなどの追加インストールが結局必要ないという点も良いと思った点です。

私はスマホアプリやWebアプリを作っていますが、パッケージ製品などの場合にはgit-flowが良さそうに感じました。

ライター始めました

私はずっと文章を書くことに対して苦手意識がありました。 このブログもアウトプットの練習として始めたものです。

そんな私が去年の9月くらいから、あるオウンドメディアでIT系の記事を書かせて頂いています。

これまでの約3ヶ月で10本の記事を執筆しました。 初めの1本は丸一日かかりました。 しかし最近では記事の内容にもよりますが、1000文字当たり1時間くらいで執筆することが出来るようになりました。 早く書くこと自体が目的ではありませんが、少しずつWeb記事の書き方が身についてきたように感じます。

あと半年〜1年くらい、週1本ペースで記事を書いていけば、Webライティングのスキルもある程度身につくかなと思います。 普段自分が調べないことも執筆依頼によって調べるきっかけになります。 記事を書くための調査で新しい知識を得られるのもメリットですね。

単価は安いですが修行期間と思ってしばらく続ける予定です。

Docker containerを全て削除する

たまにDockerの環境をクリーンにしたいことがあり、既存のコンテナを削除したいことがあります。 そんなときは次のコマンドで全コンテナの停止&削除を実施することができます。

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

AWSで無限課金しそうになった話

先日とあるプロジェクトでS3にプロフィール画像を登録したイベントでLambda関数を実行して、サムネイルを作成する仕組みを作りました。

仕事後に用事があったので、動作確認をしないまま帰宅したのですが翌朝S3を見ると。。。

hoge.png
hoge_thumb.png
hoge_thumb_thumb.png
hoge_thumb_thumb_thumb.png
...

(゚ロ゚;)エェッ!? プログラマなので見た瞬間に何が起きたかは理解しました。

なんとサムネイル画像の保存のイベントから更にサムネイル画像のLambda関数がキックされて、サムネイルの無限生成が発生していました。

幸いS3のキー長の制限かなにかに引っかかったのか1ファイル毎に200ファイル前後のサムネイルが生成されるという現象で済みました。

_thumb というサフィックスを拡張子の前に付与していたので助かりましたが、これがちょっとした検証のつもりで同じ名前でPUTしていたら無限ループになっていた思います。

久しぶりにヒヤリ・ハットを経験しました。

学び

  • イベントを検知するフォルダーとアウトプットの出力フォルダーは分ける

AWS[DynamoDB-Lambda-APIGateway with Cognito]

Cognito認証したユーザーがAPIGatewayを経由して、Lambdaを経由して、DynamoDBにデータ登録する検証をしたのでやったことメモ。

  • DynamoDBでテーブル作る
  • Lambdaで関数作って、DynamoDBにインサートする。(NodeJS) データはevent.name, event.messageで参照
  • Cognito でユーザーIDプール作る
  • Cognito認証のサンプルコードをもとにiOSにCognito認証組み込み(今回は匿名認証)
  • APIGatewayでリソースとメソッド作る。Lambdaで作った関数にひも付け
  • APIGatewayのメソッド設定で認証を有効にして、パラメタをLambdaに紐付ける設定をする
  • APIGatewayをデプロイする
  • APIGatewayから作成したAPI用のSDKをダウンロードしてiOSに組み込み
  • iOSからAPIを実行
  • DynamoDBにデータが登録される事を確認する