主夫ときどきプログラマ

データベース、Webエンジニアリング、コミュニティ、etc

じぶん Release Notes (ver 0.38.6)

masayuki14 (ver 0.38.6)がリリースされました。更新内容は下記のとおりです

11月は仕事がなかったのでいろいろと溜まっていた雑務を処理しつつ、今後のことを考えたりしていたらあっという間に1ヶ月が経ってしまった。早い。仕事のある・なしと体感時間は関係ないことがわかった。

今月もキャンプに行けた。10月と変わらないくらいの気温で快適だった。前回紹介した「生き物としての力を取り戻す50の自然体験」を参考に、子供と山の中を散策した。きのこって探してみると意外と見つからないけど、苔とか地衣類とか普段見過ごす景色を観察すると色々発見があって楽しい。子供も思いの外楽しんでいるようだった。

f:id:masayuki14:20201122145236j:plain
f:id:masayuki14:20201122144827j:plain

1ヶ月たったので、そろそろ仕事を探そうかなってことで経歴をまとめつつ技術の棚卸しをした。やはりWebシステムのフロント〜バックエンドの開発ばっかりやってきているので、そのあたりにスキルが偏ってる。インフラやらSREやらの分野も今後やっていきたいなぁとは思いつつ、リモートのフリーランスエンジニアとは相性わるそうでどうしようかなって感じ。
一方でセキュリティ系は業界関係なく需要はある感じなのでそっちをちょっと攻めてみようか、という気持ちが高まりつつある。

Tech

React + TypeScript

  • キャッチアップもかねてちょっとしたSPAアプリを作ってみた
    • わくわくかけ算
    • こどもがちょうどかけ算をならっていて繰り返し学習できるようにつくった
    • 少しずつアップデートしてたので、変化の過程も楽しんでたようだ

React自体もTypeScriptに対応されているようで React Create Appを使ってはじめからTypeScriptのプロジェクトを始められるようになっていた。ESLintとかPrettierを設定してやればVSCodeで勝手にきれいにしてくれるので、開発環境としては十分整っているようだ。TypeScriptに慣れていなくても補完とかメッセージが出てくれるので、既存のプロジェクトに組み込んで徐々に変えていく、というのもハードルが低そうに思った。

ReactHookもわりと新しい機能だったけど、もともとのState, Propsの部分が理解できていれば特に問題なく使えるようになっていたし、いちいちComponentを作らなくてもいいってのは手軽にコードがかけて良い。

MaterialUIのパッケージを使ったのだけど、これをTypeScriptで使うのがわりと大変だった。パッケージコンポーネントの型定義や、コンポーネントのラッパー関数の型定義をうまく扱うには慣れが必要で、ドキュメントを読んだり、サンプルコードを読んだり、うまくコードを書くまでに時間がかかった。 MaterialUIは継続的に開発されているパッケージだしドキュメントも豊富だけど、規模の小さいパッケージを利用する場合は注意が必要そうだなぁという印象を受けた。

登録セキスペ

中小企業の情報セキュリティマネジメント指導業務 の講習が終わって本登録になった。マッチングしたら中小企業に指導に行くことになる。
セキュリティ対策って中小企業ではなかなか予算や人材が当てられないことが多いようで、IPAとしては啓蒙・啓発しながら、各企業で対策すすめてほしいみたい。ただ企業としては売上や利益に直結しない部分なので、手を付けられないのが現状ってのもよくわかる。余剰リソースがないとやらないよね。

そうなると日本経済ってそういう余剰がない状態でまわっているのが現状で、コロナ禍でそれがさらに進んでいるんじゃないだろうか。そう考えると、こんな時にセキュリティ対策なんてやってる余裕ないんじゃないか?大事なことではあるんだけど。

健康(運動)

ジョギング

ジョギングを始めてから3ヶ月がった。うまく習慣化できている。平日夜は勉強会のホストがなければ走りに行っているし、タイミングによっては走ってからホストすることもある。最近寒くなってきたので、ネックウォーマーや手袋がほしい。ジョギング中のBGMは深夜ラジオなので、にやにやして走っているから、不審者に間違われないように気をつけよう。オススメはファーストサマーウイカオールナイトニッポン0です。

トリガーポイント(フォームローラー)

友人のオススメということで購入した。ローラーに足や腰や腕をのせてゴロゴロしてやると、凝りとか強張りが緩んでとても気持ちいい。使い方も動画でみれるので(1〜2分)わかりやすいし、手軽に使えるのがとてもいい。
もっと安いものが色んなメーカーから売られているけど、トリガーポイントが一番いいみたいです。

お酒を減らした

時間に余裕があったので8年ぶりに献血に行った。献血ルームも快適だったし、血液検査の結果を送ってくれるのも嬉しい。そしたらちょっとお酒飲み過ぎかなぁという数値がでていたので、平日はお酒を飲まないようにした。お酒は翌日の元気の前借りみたいなものなので、お酒飲まないほうが起床時の気分は良い気がする。当たり前だがお酒の出費が減ってお財布にも健康にも優しい。

Try and Result

Result

AtCoderは今月もコンテストに参加する

ABC183に参加してDまで解けた。勉強中の累積和(いもす法)で解けたので、身になっている実感があり良かった。Ratingも少しあがった。

React + TypeScript でアプリを作る

先に書いたとおりアプリを作ったし、すこしキャッチアップできた。

TechPitの新章執筆

ちょろちょろと購入してくれる人がいるので、ありがたい。クラウド関連の章の構成ができたので書き始めている。12月はここに注力することになりそう。

積読をいくつか眺める

MySQL徹底入門 第4版 を読んでいた。6章のMySQLの運用を中心に。技術書はでかいのでそのへん(ダイニングテーブルとか)に置いておくとじゃまだけど、強い気持ちでこれからも置いておく。

部屋の整理、断捨離

衣替えとか、掃除とか、いらないもの処分したりとか、デスク周りはきれいになった。他の部屋もきれいになりつつある。ただ家全体の整理、断捨離をするには子供を預けて大人だけで取り組む時間を作る必要があるので、なかなか難しい。

Try

今月はこの3本でお送りします。

じぶん Release Notes (ver 0.38.5)

masayuki14 (ver 0.38.5)がリリースされました。更新内容は下記のとおりです

寒い日も多くなってきて過ごしやすくなり、家族で外へ出かけることも増えた。良い季節だ。 10月はなんといっても鬼滅で盛り上がっていたし、子供と一緒に映画を見に行った。 終盤で子供がもよおし、トイレに連れて行ったため、煉獄さんとの会話をちゃんと聞けていない。
なんてこった。

久しぶりにキャンプへ行けた。星空の撮影もできたし、のんびりできてよかった。夜は流石に寒いけど、焚き火がさいこう。

そして参加してたプロダクトの開発休止が月末に急に決定したので、11月から年末休みとなった。 溜まってた雑事を片付けてから、投資活動やっていこうと思う。オファーがあれば仕事はするが。。。

仕事

  • 歴史的経緯でふわっとした仕様になってた部分の改善
    • 意味をなさなくなっていた状態遷移を見直して仕様を整理した
    • フロントエンド、バックエンドの両方を行ったり来たりしてコード書いてた
    • よくやったと思う
  • VueのビルドとRailsコンテナのビルドとENVのタイミングがずれちゃう
    • RailsもVueもデフォルトでstaging環境がないからその歪みを吸収するため変な環境切り替え実装がはいっている
    • ちゃんと動いてるんだけどキモチワルイ
  • Committeegemのコールドリーディング
    • 内部で使っている OpenAPIParser のオプションを指定したかったけど、固定で使ってたからどうにもできなかった
    • テストコードだったからパッチを書くのやめたけど、良い勉強にはなった
    • コード読むの大事

大きな機能追加や開発といったタスクはなく、淡々とコードを書く日々だった。そして青天の霹靂のごとく開発休止となった。 いや、ちょっとそんな気配はあったんだけどここまで急とは。。。
もちろんビジネスサイドは再開するためにいろいろ動くみたいだけどどうなるかわからない。仕事のオファー受け付けてます。

登録セキスペ

IPAが実施している中小企業の情報セキュリティマネジメント指導業務の専門家募集案内が届いた。 せっかく更新したので、応募してみた。いまは講習を受けている段階で、実際に指導業務をするかわからないけど、成り行きに身を任せる。 ノートのメモに「自ら機会を作り出し、機会によって自らを変えよ」って書いてあった。過去の俺、いいこと書いてあるわ。
たぶんDruckerのなんかだろうとは思うけど。

運動

9月に引き続きウォーキング、ジョギングをしていた。おかげさまで調子が良い。運動大事。 とはいえ、首や肩の凝りはそれなりにあるので、マッサージとかストレッチが必要ではある。 知人にトリガーポイントがめっちゃいいよと教えてもらったので、やってみようと思う。

いくつか本を買った。

  • 表参道のセレブ犬とカバーニャ要塞の野良犬
    オードリーは毎週ラジオを聞いている程度には好きなので、久しぶりに若林さんのエッセイ本である「表参道のセレブ犬とカバーニャ要塞の野良犬」を買った。楽しく読めているし、おすすめしたいのだけど、面白さを伝えられるだけの文才がなくて悲しい。

  • 創造する心
    「創造する心」は、はんなりPythonの読書会イベントで使うということなので買ってみた。これからの教育について書かれているようだ。子育て中の身としては興味深い。

  • 生き物としての力を取り戻す50の自然体験
    子どもたちも大きくなってきて、キャンプへ行った時にできることが増えてきた。アウトドアでの遊びや体験の参考にしようと思って買った。とりあえず今週末は自宅だけど干し肉を作ってみる。燻していこう。

創造する心 ―これからの教育に必要なこと

創造する心 ―これからの教育に必要なこと

  • 作者:Marvin Minsky
  • 発売日: 2020/04/25
  • メディア: 単行本(ソフトカバー)

Try and Result

Result

AtCoderは累積和に注力する。久々にABCに参加する。

累積和を少しだけ覚えた。いまは2次元累積和の勉強中。でもまだ使い所がすぐにはわからない。
コンテストにも久々に参加して、ちょっとだけRatingが上がった。年内には茶色になりたい。

masayuki14 - AtCoder

情熱プログラマー読んでモチベーションを刺激する

情熱プログラマーを読んだけど、もうあんまり刺激にならなくなってきた。それなりに実践できていることも増えてきたし、言われなくてもわかってるよ、って感じの内容だった。自分が成長しているんだろう。

積読をいくつか眺めてみる

入門監視を読んだ。なんか流行っているし、ということで1年くらい前に買ったけどあまり読んでなかった。以前から監視するようなタスクはないし、監視対象もないのであまり内容が入ってこなかった。やはり身の丈にあったもの、というのはだいじ。良い学びだった。

Try

  • AtCoderは今月もコンテストに参加する。
  • React + TypeScript でアプリを作る
  • TechPitの新章執筆
  • 積読をいくつか眺める
  • 部屋の整理、断捨離

今月は仕事がないので、投資期間という感じでいろいろやっていこう。

じぶん Release Notes (ver 0.38.4)

masayuki14 (ver 0.38.4)がリリースされました。更新内容は下記のとおりです

夏も終わり過ごしやすい日が増えたおかげで、仕事に対する姿勢が良くなった。 とはいえ気温的には夏日が多い1ヶ月だった。ここ10年くらいで確実に夏認知システムがバグってしまっている。 うまくバグと付き合うしか無い。

そんなこんなで良い1ヶ月であったと思う。 冬になり活動が低下する前にいろいろ改善しておきたい。

仕事

  • ActiveRecord#joinsで思った動きというかSQLを組み立てられなかった

    • 調べたけどいろいろと理解が繋がってない感じがした。
      • JoinのON条件を変更したい(has_many のID以外の条件を増やしたい)時どうしていいかわからなかった
      • includes とか eager_laodの問題じゃなくて。
      • Selializer もからんでくるぽい
      • SQLなら書けるだけどそれをちゃんとオブジェクトにしてくれるか謎
      • 5テーブルくらい結合してる
    • って感じでフロント側でON条件で除外したいデータをフィルターする方法にしたけどこれはバックエンドでやっておきたい
    • 隙間を見て調べていく
  • ActiveJob のテストで別テストで追加されたメールがキューに残ってて、メール数が0にならずテストがパスしない現象があった

    • テストの順を変えるとパスする。気持ち悪い。
    • ActionMailer::Base.deliveries.clear すればいいけどこれも気持ち悪い
    • ActiveJob, ActionMailer の仕組みとその思想を理解できれば気持ち悪さはきえるんだろうか
    • これも隙間を見て調べたい
  • GitHubActions を使って自動デプロイの仕組み作り

    • 先月やった capistrano のデプロイの仕組みを一歩進める
    • master develop にマージしてpushしたら自動でデプロイしますよ
    • こういう自動化をやると気持ちが浄化される気がする
  • モンキーパッチ

    • committee gem でエラーがでたのでモンキーパッチを当てた
    • Rubocop のエラーにも引っかからないようにいい感じにできた気がする
    • Qiitaにでも書いておこう
  • delete_if は使わないようにする

    • delete_if は破壊的なメソッド
    • おなじ動きをする reject があって、rejectは非破壊的、reject! は破壊的なのでこっちのほうがわかりやすい

今月は大きいタスクがあんまりなくて、やったほうがいいけど優先度低い、みたいなタスクをよくやった。 原因がよくわからんけどパスできてないテストをパスするようにしたり、パッケージの更新をしたり。 ニッチな部分の理解が深まった。が、どうせ陳腐化していくのだ。

登録セキスペの更新

登録セキスペを更新するためのオンライン講習をすすめた。目安の時間よりも時間がかかっが、無事に更新完了。 セキュリティ業務をやっているわけではないので、仕事にはあまり関係ないのだけど、セキュリティ意識を保つには続けたほうがいい気はする。
AppGoat というものをやってみたかったけどWindowsのみ対応なので詰んだ。セキュリティのことちゃんとやっておきたいというWeb系の開発者や新人教育におすすめ。 IPAは情報セキュリティにけっこう力を入れているので、セキュリティ白書2020には目を通しておきたい気持ちになった。

運動

リセットということでウォーキング30分をほぼ毎日やった。こういうのは変に間をあけるより、毎日やったほうが精神的負担が少ない。日が空くと再開時に心を起動するのがけっこう大変なので。
腰痛や体のこわばりみたいものは改善されて気分も良い状態がつづいている。が、肩や股の関節はあんまり動かしてないので、そのへんは動きが鈍いままだ。 3週間くらい続いたので最近は、間にエクササイズの日をやストレッチの日を追加している。

やはり運動は大事

KPT 改め Try and Result

KPTは何でもかんでもKeepしたいことがめっちゃ増えていって時間が枯渇するし、なんか回し方がうまく行ってない感じがするのでやめる。 とりあえず今月のTryと前回のTryの結果を振り返る程度にしておく。

Result

総じてよい結果を出せた。めでたい。

一度リセットする

具体的に何をやるかは決めなかったけど、まずは運動だろう、ということで始めた。良い結果であった。あとマンが読む時間は減らした。酒の量も減らしたと思う。

AtCoderの過去問を5つは解く

登録セキスペの講習があったのであんまりできなかったけど、3問くらいは解いた。まぁわるくない。

週2回はその日の振り返りをやってかんたんなまとめを作りたい

作業記録と一緒に、その日にやたことをちょっと書くようにした。じぶんRelease Notesの資料にもなってるし、よい。Qiitaもかけそう。ブログエントリーにするほどでもないけど、どっかにアウトプットしても良いかも。

TRY

  • AtCoderは累積和に注力する。久々にABCに参加する。
  • 情熱プログラマー読んでモチベーションを刺激する
  • 積読をいくつか眺めてみる

の3本でお送りします。

じぶん Release Notes (ver 0.38.3)

masayuki14 (ver 0.38.3)がリリースされました。更新内容は下記のとおりです

夏休みということもあり、仕事をしなかった期間もあったが、全体としては平凡な1ヶ月だった。夏が暑すぎ。

仕事

  • capistrano を使ったデプロイの仕組みを作った

    • 今更感はあったけどわりと簡単にできた
    • Github Actions で動かす予定だけど早くリポジトリ用意してほしい
  • 権限ないサーバーで rbenvでruby-buildを試みる

    • openssl readline のライブラリが不足してるけど root 権限がないから自力でインストールしてやってみる
    • openssl はconfigureオプションで指定できた
    • readline はconfigureオプションで指定してもうまく行かない
    • どうしていいかわからない
  • 今月もまぁまぁ良いコードを書いたという自負がある

    • 外部APIの開発用サーバーをwebrickで書いて、Socket閉じたあとにコールバックのhttpアクセスを実行させるようにしたのは結構イケてると思う

AtCoder

  • ABC参加できてない。抜本的に何かを変えないとやばいぞ
  • DP:動的計画法がぜんぜん進まない
    • とりあえずDPにこだわらず数をこなしていこうという方針転換
    • たくさん問題を解く
  • 月末に勉強会をやることでなんとか継続の体を保っている
    • 少し参加者が増えてきた感がある。同志よ。

夏休み

年始に立てた夏休みの計画はご破算になったので、直前まで予定がなかったが、登山をすることにした。 家族で常念岳の頂上を極めてきた。北アルプスへ行くのは実に9年ぶり。子供が成長したおかげ。 子供も連れていけることがわかったので、これからはアルプス登山へ行くことが増えそう。

KPT

Keep

  • なんかよろしくない

Problem

  • なんかよろしくない
  • 漫画読みすぎ
  • 夜ふかししすぎ
  • お酒のみすぎ

Try

  • 一度リセットする
  • AtCoderの過去問を5つは解く
  • 週2回はその日の振り返りをやってかんたんなまとめを作りたい

じぶん Release Notes (ver 0.38.2)

masayuki14 (ver 0.38.2)がリリースされました。更新内容は下記のとおりです。

なんだかんだで7月が終わってしまった。ずっと雨が降ってて長い梅雨だった。もう明けるだろうけど、暑くなるのも嫌だなぁ。 今月はしっかり時間を確保して仕事してたので他のことはあんまりやる時間がなかった。とはいえ少しずつでもやっていたのでそれは良しとする。 明日から子供の夏休みが始まるけど、今年は遊びにいく予定がなにもないのでどうしよう。

お仕事

  • Rails + Vue.js
    • 引き続き開発を継続
    • Rubyは新規もリファクタリングも含めてよく書けたと思う
    • Vue.jsはファットなコンポーネントがあってそれをなんとかしようと奮闘している
    • 来月も続くけどそろそろ何かしら変化をつけないとマンネリ開発になってしまうので注意が必要

Tech

読書

14章の逆引きMySQL辞典 がお勧め。MySQL8.0を使うならとりあえず思考停止して買っておいて問題ない一冊。

KPT

Keep

  • 仕事は順調のようだ
  • あまり多くないが自分投資の時間もつかえている

Problem

  • AtCoderは7月できていない
  • GW前後はほぼ毎日ストレッチ、ヨガをしていたけど最近できていない
    • 首肩腰の強張りの改善にはやはり必要

Try

  • 毎日運動を何かしらやる
    • ストレッチ、散歩、ジョギング、など
  • ABCに2回は参加する