ぎんさんマインド

いちエンジニアの思考とか趣味についてつらつらと書いてみるかもしれない。

ダイエット生活第7週目

毎日単調になって来たから日分けせずに週単位で書いていこうかな。

f:id:ImpureSilver11:20190420154239j:plain

木曜日に焼肉を食った。

でいくらか太るかと思ったんだけれども、翌日には体重が戻っていて、基礎代謝の高まりを感じた。

体重を維持するというだけなら、これくらいの食事は大丈夫そうでよかった。

痩せた後は筋肉つけて、食事量を増やす過程があるので、そこに対する進捗具合を知れたように思う。

 日曜日にサウナスーツを買って、早速運動してみたけれど、汗の出る量がすごい。おそらく表示されてる以上にカロリー消費してるはず。

後、体力の消耗もすごい。ある程度運動慣れてたからよかったけれど、夏場にこれやると絶対ぶっ倒れる。

 

今週の運動

fit boxingも慣れて来たので、サウナスーツ導入。ただ体調管理はちゃんとしないとまずそうだなと思った。

f:id:ImpureSilver11:20190421215451j:plain

今週の体重は-2.2kgダイエット始めてから総計で-17.5kg

木曜日の肉分がもろに出てる。が、そこから持ち直したのはいい感じ。

そして来週も飲み会があるので、そこで体重が増えそう…

社会人だからね。避けられない飲み会があるのはしょうがないよね(実際行きたい)

 

ダイエット生活第6週目

月曜日

体重が大きく減った。

なので今日は多めに食った。とりあえず試しにこんにゃく麺で油そばを作ってみた。

食い過ぎて、気持ち悪くなった

 

火曜日

昨日のせいで体重が大きく増えた。そりゃそうだ。

まぁただ、色々食事のバリエーションを考える機会になった。

 

水曜日

月曜日の分を少しずつ解消して来た。

食事にところてんや冷凍のほうれん草を取ってみた。

 

木曜日

お昼にサンドイッチを食べた。なぜだか太った。今週は太りやすい週らしい。

もしかしたら食事のせいかもしれんな。

 

金曜日

こんにゃく生活再開した。体重が下がり始めた。

だんだん暖かくなり始めて、久しぶりにfit boxingで汗をかけた。

 

土曜日

休日なので散歩をした。帰り道で野沢菜漬けとべったら漬けを見つけたので買って食った。

体重もいくらか下がった。

 

日曜日

体重微減。技術書典にいったので、少し歩く量が多かったかな?

まぁ、fit boxingは通常通りだけれども。

今日はとてもたくさん肉油類を食べたい欲に駆られた。流石に食うと太るから食えないけれど、どこかしらで発散するかも。

 

 

まとめ

ダイエット始めてから-15.3kg今週の減少量は-1.8kg

f:id:ImpureSilver11:20190414221424j:plain

 

今週は食事で色々工夫してみたけれど、そのせいかあまり体重が下がらなかった。

カロリー的には抑えた食事が中心だったのだけれど、まだその段階ではなかったようだ。 

 運動量は普通くらいかな?

fit boxingも慣れてきて、毎日40分ほど続けていこうと思う。

ただメニューがランダムなので、楽に終わる時もあったりするのがちょっとなーと思う。

別途筋トレもしていきたいところ。

ダイエット生活第5週目

月曜日

体重微減。食事はこんにゃくも取り入れるようにした。

雨でランニングは中止、モチベも下がって筋トレもしなかった。改善しなければ

 

火曜日

体重微減。食事はもやしの炒め

久しぶりにランニング、少しスピード上げて走った。筋トレは通常通りに

運動のモチベが下がってるのでfit boxingとか買ってもいいかもなーと思った。

 

水曜日

体重微減。食事はこんにゃく

Fit Boxing買った。一旦これを主体に運動しようかな。

 

木曜日

体重微減。食事は野菜炒め(こんにゃく入り)

Fit Boxingで45分ほどやった。結構疲れる。筋肉痛もなりそう。

 

金曜日

体重微減食事はこんにゃく

FitBoxing35分やった。筋肉痛になった。

 

土曜日

体重微減、食事は野菜炒め(こんにゃく入り)

休日なのでFit Boxingを多めにやった。

スーパーで海藻麺やおから麺なるものを見つけた。麺で低カロリーは嬉しい 。

ラーメン系は好きなので、これで代用できたらいいなと思う。

 

日曜日

 昨日Fit Boxingを多めにやったせいか大きく体重が減った。で、今日は45分ほど

昨日見つけた海藻麺でとりあえず焼きそばを作ってみた。

何か違う感じがする。調味料系で色々試してみたらうまくいくだろうか?

 

まとめ

 

f:id:ImpureSilver11:20190407205247j:plain

 

1メモリ2kgで今週で-3.4kg

運動の成果か、Fit Boxingがいいのか、今週は大きく痩せれた。

というか最近は基礎代謝が向上しているのか、ある程度食べても太らなくなって来た。

というのも平日はオフィスのどら焼きとかちょこちょこ食べてるのだけれど、この調子なので、とてもいい感じである。

食事制限もとけて来れるようになるといいなー。

 

 

ダイエット生活第4週目

月曜日

朝-夜で何も食べてないのに0.1kg増した。飲み物のせいだとは思うし、ダイエット中何度か経験したことだけれども、こういうのがよくわからない。

残業が長引いたのでランニングなし。食事は昨日と同じ野菜炒め

 

火曜日

最近体重が落ちない。それどころか増えている。なのでランニング量を増やしてみた。

いつもより疲れたけれど、これくらいの疲労感ある方がやった感ある。継続して行こうかな。

 

水曜日

体重微減。お昼お腹減ったからオフィスグリコのバナナカステラ食った。

昨日に引き続きランニング多めにやった。いつも公園の周りを5週だったのを8週にした。とりあえず将来的には10週にして、スピード上げるようにしたい。

 

木曜日

体重微減。今週は全く痩せない。

仕事が忙しかったのでランニングなし。

ご飯はもやし。

 

金曜日

体重変わらず。お昼にどら焼き食った。

運動はいつも通りに

 

土曜日

今日は肉を食った。おかげでめっちゃ太った。

まぁたまにはこういうもの食わないとやってけないよなって感じではる。頻繁にやるとダメだが。

ランニングが雨でできなかった。これはちと悲しい。

f:id:ImpureSilver11:20190331142403j:plain

 

日曜日

昨日の焼肉分の体重はいくらか落ちた感じ。

食事はこんにゃくを中心にしてみた、そのせいか体重も増えた。

あと体調が悪くなって来た。運動のモチベも減って来てよくない流れだとは思う。

 

まとめ 

f:id:ImpureSilver11:20190331215210j:plain

今週で-0.5kg

土曜日に肉食ったせいもあるが、全然減ってないな。

来週からはまた一気に減らしていきたい。

ダイエット生活3周目

月曜日

体重は落ちた。がちょっと体調を崩した。

なのでランニングはなし。明日仕事を休みたいが、用事も入ったので頑張って治したい。

ご飯はサンドウィッチを食べた

 

火曜日

体重変化なし。体調労ってランニングなし

代わりに筋トレを多くした。将来的にはランニングより筋トレ多めにしていけると良いな。

ご飯はもやし400g

 

水曜日

体重変化なし。トレーニングは通常通り。ご飯はもやし

昨日からひゃっくりが止まらない。胃が痙攣してるのはそういう生活をしてるせいだろう。

黒酢を買ったので、続く限り毎日飲もうかなという感じ。

 

木曜日

体重は微減。トレーニングはランニングを少し多めにした。

慣れて来たものは少しずつ多くしたいけれど、その時の調子にもよるから、それを続けるって形には現状なってない。改善したいところ。

一応ひゃっくりは止まった。

食事はもやし。

 

金曜日

体重は微減。

今日はRailsDMだったので提供されたお弁当を食べた。疲れたのでランニングもなし。

まぁイベントはしょうがないかなという感じ

 

土曜日

今日もRailsDM、提供されたお弁当を食べた。

二日分普通のご飯食べたら体重が増えた。まぁ現状そんなもんでしょ。

寒いのと疲れたのでランニングは自粛。代わりに筋トレは普通に。

普段の筋トレのせいか足が筋肉痛になった。スクワットのせいかな?少し足が太くなった気がする。

 

日曜日

休日でもトレーニングは普通にするようにはなった。まぁあとは休みだし、散歩とかもする。

体重は戻った。食事はもやしも飽きて来たので野菜炒めを食べた。肉もご飯もないけど。

 

K

 トレーニングを続ける

  今週は少し少ない気がする。増やそうかな

P

  そろそろ食事量あげたい。

T

 今週はトレーニング量が少なかった感じする。休んだりとか。

 寒いときにランニングしたせいか、ちょっと体調崩した。

  寒さ対策したい。

  早くあったかくなってほしい

 

 

f:id:ImpureSilver11:20190324211359j:plain

 

今週で-2.2Kg、全体だと-9.6kg

今の所は-2kg/weekを続けながら進めていけたらいいなという感じかな。


 

Rails Developers Meetup 3/22 個人用メモ

Rails Developers Meetup 2019
詳細: https://railsdm.github.io/

 

個人用メモ誤字とかたくさんあると思う。気がついたら直すかも。

 

1030 DHH質疑応答
全英語なので理解度薄い
質問内容: https://railsdm.herokuapp.com/issues/110

 

翻訳ありがたい

https://twitter.com/_yasaichi/status/1108907660085067777

https://twitter.com/m4buya/status/1108909638227886081

https://twitter.com/m4buya/status/1108911818255196160

 

あとで映像配布するらしい。

 

11:50 アプリケーションを作るときに考える25のこと session-A

https://togetter.com/li/1330555

 

価値があるか 難しいかの二つの軸で考えて4つに分ける それぞれでフレームワークを考える
API特化などはRailsが得意なので簡単に作れる

Railsの基礎
リクエストの流れ Generatorを利用

Slimの良さ

狩野モデル
当たり前品質
充足品質のグラフ

kaminariのページネーション
pagy gem ページネートオブジェクト用gem
kaminari without_count
kaminariの中は読むと良い

ファイルストレージgem
dependents gem
githubでスター数高いもの調べてgemfile調べていくとgemに詳しくなる。

ActiveSupport::CurrentAttributes
default_scopeの罠

論理削除
acts_as_paranoid paranoia discard
deleted_atをつける
削除テーブル
削除したら別テーブルに写す 数ヶ月後に物理削除する的なことができる
削除ろぐを作成する 不必要テーブルが多すぎるときろぐに逃がす
確認するときはログを見る

ランキング
redisのsorted setを使いたい
zuhionstore RUby
boffin gem

github検索して全部見る
ライセンスより推薦に振りたい

markdown
commonMark
方言の多い言語
commonmarkで統一しよう
一覧でまとまる
redcarpet kramdown
HTML Piperine

編集履歴 audit_log 監査ろぐ
ActiveModel::Dirty
User.changed?とか
監査ログ

 

 

12:30 DevOps, Immutable Infrastructure, microservices そして Chaos Engineering
DevOps, Immutable Infrastructure, microservices and Chaos Engineering


https://speakerdeck.com/yoshiori/devops-immutable-infrastructure-microservices-and-chaos-engineering

 

タイトルのアレの全体の流れ
Fowler
immutable Infrastructure chadFowker 情熱プログラマー
サーバーの普遍性
インフラをimmutableにしようね
あとでchefに開いておくだと忘れるから 不変にしておこう

microservices
martin fowler
超巨大な組織から 小型化していこうね
実は組織パターンの話
急速に流行り過ぎた
あんまりマイクロサービスにしすぎるのはダメだよ

クックパッド
spec 20000以上
rrrspec
mamiya

docker
Aplicationもimmutableを意識することを強制
アプリケーションコードも意識していかなければならない

container Orchestration
k8s ECS
実行を抽象化 docker run
microservices化で多数のコンテナ化されたアプリケーションを管理する
contrainer orchestration

serviceMesh
serviceはMesh構造になってるよね
envoy
アプリケーションごとにプロキシを立てる
サービルの通信状況を把握
タイムアウトリトライサーキットブレーカーをアプリケーションから外す
全てenvoyに任せちゃう

chaos Engineering
分散システムにおいてシステムが不安定に耐える環境を構築すること
サービス インスタンスを落とすことではない!!

steady state
pact
正常状態を計測する
毎秒どれくらいのユーザーが動画を見ているのかログインしているのかを判別する。
レシピの閲覧数:検索数
Envoyによるstateがfailedのテストを確認
どうなるかを確認して影響範囲を調べる

microservicesはユーザーの影響を常に考える
steady stateも考えていく

 

 

14:00 サーバーサイドエンジニアも知っておくべきフロントエンドの今

フロントエンドのエコシステム
JS ⇨ TS
TSを導入すべきか
TS強いから以降が進んでる
コンパイル IE11は切ってもいい
ES2015以上を洗濯してもいいよね
DOM 宣言的View
React Vue etc
仮装DOM 手続き的DOm
JQueryよか仮装DOM系
lit-html
仮装DOMではないけれどdiff取れる
editer vscode
Linteer ESLint一強
formetter prettier
prettier-rubyの開発が進んでる
rubocopとどうなるか
module bundler
webpack 🌟
Rollup
pika
test
jest
jest + Puppetter
selenium離れがきてる
非同期処理
axiosがbetter

web components
polyfill
一応使える技術になってる
githubも導入
でもいくらか注意が必要
仮想DOMが死ぬことはない
昨日が足りてないので現状下位互換
webcomponentsは使い続ける流れではある

最近注目のものから1つ
CDN worker
micro frontends
pwa
レンダリング最適化
webpyments
CDN Worker とは
CDNへのレスポンスをフック
AWS LAmbda@Edge CloudFront
Firebase Hosting
BFFをエッジロケーションにおける
担うところ
認証
APIAggergation
Server Side Rendering
Cache
SPA技術で用いた環境でこれまでやりたかったことと課題
FMP SEO を最適化したい
できるだけ早く描画したい
そのためにはレンダリング済みHTMLをクライアントに送る
SSRしたい
課題
SSRにはJSの実行環境が必要
RTT通信距離を最短に
エッジロケーションで通信を完結したい
動的サイトの場合はオリジンサーバーでHTMLを作って送ってもらう
CDNworkerなら解決できるかも
RTT FMP SEO
自前でNodejsサーバー建てなくても良い
オリジンサーバーへのリクエスト数を最小化できる
リージョン変えて値段が安く
cloud flear service
CDN Woeker

エコシステムの成熟
開発体験が良くなってる ライブラリ乱立が落ち着く
UXに直結する話題が多い
最適な設計にはフロント知識も必須
TS 宣言的View flax Vuex View flax Vuex

 

 

14:40 SQLQL は GraphQL にとって、何なのか

https://www.slideshare.net/yancyajp/sqlql-graphql

what is SQLQL
https://qiita.com/yancya/items/4b7979d83cbf6af9b819
APIに直接SQLを投げる。JSON形式で帰ってくる
RDBMSを使いたいPostgreSQLを使いたい
物理的に直接テーブルを触れさせたくはない。流石に
sqlql_sample github https://github.com/sqlql/sqlql_sample
ツイッターのファボ 鍵機能付き
CTE インラインのView
問題点
Mutation DELETE関係
スキーマ就職
無限ループ
再起クエリ
Mutations の除外 Rails6.0
replica属性のサブコネクションから簡単に描ける
replica: true でmutationが除外
CTEのWITHも弾いてしまう
モンキーパッチで対応できるが、そもそもWITHをなくした理由があれ
副作用が起こせる
DBのreadonlyユーザーを作る他ない
無限ループ対策
タイムアウト
DOSに弱い
SQLQLを使って何がしたかったのか
インピーダンスミスマッチ
JSONからExcel形式とかやりたくない
Relation to Object
JSON_TO_RECORD
JSON_TO_RECORD_SET

 

15:20 休憩

 

16:00 我々はマイクロサービスとどう向き合うべきか session-c

https://speakerdeck.com/ota42y/how-should-we-face-with-microservices

マイクロサービス構成
事業が幅広いので初期から携わっている
50ほど
疎結合にはなってる
railsdm day4
事業が大きくなるほどに肥大化していく
カオスコード化していく
リファクタリングより昨日開発が優先されてしまう
新機能が多くなるにつれてさらにカオスに
それぞれのアプリチームがPDCAを回せるように
マイクロサービスはそしてパターン
新機能をやったり既存機能をマイクロサービス貸したり
マイクロサービスの良かった点
CIのすぐ終わる
日々の開発速度が大幅に上がる
クラス依存が少なくなる
影響範囲が小さくなる
チームごとにPDCAがしやすくなる
することしないことが明確化しやすくなる
キャッチアップもし安い
ただし、マイクロサービスが増えすぎると
エンジニア数よりも多いマイクロサービスがでる
れい:ランキングマイクロサービス
最初の分割はいいマイクロサービスだった
<!-- モノリシックな分割 -->
セキュリティ対応が手薄になる
バージョンアップが遅くなる
githubのsecutity alartが出てようやっと対応
一人で兼任しているとアップデートの困難
気づきにくくなる
対応はアップデートしやすいのでマイクロサービスは良いてん
チーム街の対応は大変
モノリシックは大変だが漏れにくい
マイクロサービスは簡単だが漏れやすい
漏れを減らす対応が必要
gemicoma
週にの割れ窓直す時間を確保
warningを消す
ビルド環境を整える
ドメインが成長して変わることがある
他企業との連携
あるコミュニティとの紐付け
communityというマイクロサービスとの関連
マイクロサービスごとに違いがある
ドメインも切りにくい
community ranking chat
結果としてドメインが変わってしまう場合もある。
回避法は難しい。
完璧なドメイン分割はDHHでも難しい
二つのマイクロサービスを同時に変更することが多いのならば一つに統合するのも手である。
これも辛いのでベストアンサーが欲しいところ
トランザクション処理
インフラ
チーム連携
サービスをまたいたオーバーヘッド
でもこれらはマイクロサービス特有の問題ではない
チームならよくある問題
ただそれがマイクロサービスなら何倍にも膨れ上がる
リファクタも多くなる
人数<サービス数 だとさらに辛い
サービス数 連携の数によってツラミが増える
人数が多ければ対応できることは多い。
組織の成長が大事
組織の強さとマイクロサービスの数がちょうどいい堆肥が良い
対策
ラッパーマイクロサービス
新サービスは旧サービスをラッピングしていく
新機能はBFFに追加していく
エクソダスサービス
新機能はベット作っていく
マイクロサービスにおけるRails
小中規模に止めると良い
しかし、密結合になりやすい
将来的なマイクロサービス
CI/CDほどに成熟はしていない
周辺ツールが発達しているのでその辺の動きによりよくはなっていく
BAllerina マイクロサービス用のプログラミング言語
将来的にマイクロサービスの辛い領域を小さくしていきたい
用法用量を守って正しくマイクロサービス
Railsのマイクロサービス知見もっと欲しい

 

 

16:40 AskDoctorsの13年目を支える技術 session-b

M3 サービス多数
askDoctors コンシューマー向けサービス
いつでも体の悩みをお医者さんに相談できる 医者6000にん
2005 ~ 2019
JQueryが2006年から
PC向け App向け 女性向けでそれぞれ分けていた
委託していたのでコードも別々
コンテンツの共有をしたい
CoreAPI
見た目の速度改善
3つ分けるのはあれなので統合したい
Railsで統合
13年間やっていると使用を全くわからない
DBの統合
CoreAPIのデメリット
データ生合成の問題
少ない人数で多くのサービスを進める
リプレースが一つ一つになる
ゾンビサービスが増える
ある程度サービスが落ち着いてから UIUXの改善を目指すようになる
キャッシュ
DBスケール
Docker k8s
メリットがあるかどうか
週一でエンジニアが自由にやっていい時間がある
ひどいコードを見たときにどういう経緯でやってきたのかを考える
時系列に元ずいた全体像が見えてくる

 

 

17:20 Rails meets Protocol Buffers - For Schema First Development session-b

ゲーム開発でのRails
APIモード
ランタイムの許容可能なオーバーヘっどが確保
rails を使える人が多い
コーディング規約がすでに定まっている
ボイラープレートが少ない
必要な部分だけ開発すれば良い
Rails Engine
スキーマfirst開発
フロントとバックエンドで忙しいタイミングが異なる
差し戻しで両方忙しくなり炎上
ドキュメントで管理するとコストがかかる
スケジュール管理も面倒
ドキュメントの時間小さくしたい
swagger openapi
スキーマ定義
お互いの合意を取る
自動でコードを生成
モックも作成
お互いが作業に集中できる
変更はスキーマに変更すれば良い

2010年で選んだもの protbuf ln-house schema
スキーマfirst開発は
プロダクトを良くすることであり、スキーマを完璧にすることではない
Rails とprotobufの関係
protobuf簡単に覚えられる
restfullAPI
シンプルな開発が行エル

18:00 疲れた。休憩

 

 

18:40 毎日の開発に役立つRailsプラグインづくりの秘訣 session-a

gem書いた話
http://github.com/amatsuda/丸々
現場の問題を解決するためにgemを作る
現場の問題のために道具を作る
E2Eテスト書くの面倒くさい
普段描かない人も楽にかけるといいなー
heavens_door
READMEにgif
昔作ったものの書き直し
hocus_pocus
趣味で作った
path直打ちでscafford
localhost動かすことでコードの生成をする
構想はあったけれど、進まなかった
実際に問題を解決するものでないとやる気が続かない
スモールスタートがいい
機能は少なくした方が良い
READMEもかけない
READMEのアニメgifは良い
現場の問題
ER図が見たい
erd gem
status of erd
画面遷移図を見たい
画面遷移図の素材はrails app に全部ある
gemで作れる
pdfか
e2eテストから遷移を記録してER図に表す
カバレッジにもなる
テスト資産を増やす
still_life
テスト中に描写されたrenderをhtmlで書き出す
自作テンプレートエンジン
Himl
Haml の良さ 閉じタグを描かなくても良い 絶対に安全
どこにでも問題はある
それを解消するためにgem作るというのもある

 

 

19:20 まだ40代後半のプログラマの話、あるいは50代プログラマについて考える

40代後半としてのプログラミング
30代はまだ競争できる
40代は競争から降ろされる
蓄積で生きるか別の道で生きるか
35歳プログラマ定年説
人の人生は人のもの
自分とは違う
50,60だと難しい
自分以外が全員年下。
相手にとってやりズラくないかどうか
定年を強いる圧力
年齢が上がると後進を育てるべきではという圧力
老害
対策
実力で倒す
別の道を探す matz
後進に譲る
なんのためにプログラミングするのが
楽しいから 問題解決 金のため
人生について考える
後進がいないところに行く
未来を広げていこう
railsは武器になる
フルスタック
これで完結する
EPUBCheck
Javaせい lint
電子書籍アーカイブできるのか
青空文庫
20年
著作権終了した文庫を公開
専属のエンジニアがいない
青空文庫Ruby
変換ツールをgem化
事業継承問題

 

 

所感
マイクロサービス多い
matzがきててびっくりみんな普通に話してて、このコミュニティの雰囲気を感じた
1セッション30分だけれども、内容が50分くらい必要なものを圧縮してるのが多い感じがするし、休憩10分だけなので、とても疲れた。

明日はこういうメモ取らないかもしれぬ…