イガブロ

プログラミングやIT技術、学んだこと日々感じたことを雑に書いてくブログです。

2022年の目標リスト

あけましておめでとうございます。2022年の目標リストを作りました。本当は100個出したかったのですが、なかなか出すことができずにこの数になってしまいました。
今年も自分を律して素敵な大人になれるように精進したいと思います。

f:id:igatann:20220103213445p:plain

頑張ろうとしているIgarashi

 

目標リスト

  • Googleの資格を2つは取得する
  • 仕事に関係のない言語を20時間は勉強する
  • 技術書ではない本を20冊読む
  • 技術書を10冊読む
  • 週に2回は運動する
  • 深夜1時以降の間食はしない
  • 社内外でライトニングトークを5回はする
  • 個人ブログをリニューアルする
  • ブログを30記事書く
  • 個人での仕事の収入を上げる(100万円)
  • 毎日子供との楽しい時間を過ごす
  • 6時間は睡眠する
  • 毎日最低15分はコーディングする
  • 静岡に1回は帰る
  • 嫁とうまいランチに行く
  • 月のウーバーイーツは5回までにする
  • 数学の勉強する
  • おしゃべりスキルを上げる
  • 会社員での年収70万円アップ
  • 外食、テイクアウトを控える
  • SNSに使う時間を減らす
  • スマホ触る時間を減らす
  • 高いランニングシューズ購入
  • 引っ越しする
  • イライラしない
  • 健康に過ごす
  • 健康に過ごす
  • 明るく毎日を過ごす
  • 幸せを噛み締めて生きる

最後に

100%無理なことはあげていませんが、全体で見たら結構難易度高いかもしれないです。これらをまずはがんばりたいです。
後は仕事。仕事は頑張るのは当たり前ですが、 もう1ステップ、2ステップ成長できればなと。どんなことでも成果を出していろんなことをまかせられるように、いろんなところで声がかかるような仕事や振る舞いをしたいです。

Express のプログラムを ES6 の構文で記述する方法

CommonJSで記述するExpress のプログラムを ES6 の構文で記述する方法を紹介。

ExpressをES6公文で記述する方法

ブラウザの大きさに驚くおじさん

概要

ExpressはNode.jsで上で動作するのでCommonJSでの記述になるが、ES6の記述で記述したいと思ったのでその方法のメモ。

ES6で記述する理由

動作的にはCommonJS形式で記述しても問題はないが、Express以外の部分がES6なので、統一したいと思った。(ES6とCommonJSが混在しているのは保守性や可読性の観点からできるだけ避けたいと思った)

const express = require('express')

↑のCommonJSの記述を↓のようにSE6の記述に変えたい。

import express from 'express';

バージョン

Node.js

v14.16.1

npm

6.14.12

Babelを使う

手段の一つとしてBabelを選択。理由としては導入が簡単なイメージがあったため。

Babelとは

Babel is JavaScript変換ライブラリ
Babelを使用してES6で記述されたプログラムをNode.jsで実行できるようにする。

使い方

Babelパッケージの@babel/nodeをインストールする。
インストールすれば、babel-nodeコマンドが利用できる。

Babelのインストール

以下のコマンドでbabelを導入する。

npm install @babel/core @babel/node @babel/preset-env -D

以下のコマンドでbabelを導入する。

{ "presets": [ "@babel/preset-env" ] }

babel-nodeを実行する

babel-node コマンドでES6で記述されたExpressのプログラムを実行できるが、グローバルインストールしていないと実行できないのでpackage.jsのscriptsを利用してnpm runすると楽に実行できる。

package.jsonに以下を追加。

"scripts": {
    “babel node":"babel-node app.js"
}

実行コマンドもnpm runで統一する方がいいかなと個人的に思うので、Scriptsに記載がいいかなと。上記を記載した場合は以下コマンドを実行してExprssを実行させる。

npm run babel-node

これでExpressをES6の記述で実行できるかと。

リーダブルコードを読みました

f:id:igatann:20210718234857j:plain

リーダブルコード

プログラマは必読と言われているこのリーダブルコードを読了しました。

「自分以外の誰かが見たときに、コードの内容を理解してもらえるか」というベースとなる考え方で本書は進んで行きます。

理解してもらえないと、プロダクトの成功もグループでの開発は難しい。また「自分以外の誰か」と書きましたが、これは未来の自分も含まれます。

私も数日前に自分自身が書いたコードが理解するのに、時間を費やしたりした経験があり、それはつまりこのリーダブルコードでいうところの「良質なコード」ではないということになります。

「この変数はどんな役割だろう。。。」

「この変数を使っている関数を確認しよう。」

「ふむふむ。。」

など。 (多分この時の自分は変数名が格納されているデータの内容が明確ではなかったのかもしれない)

どうすればより保守性の高いコードがかけるか、プログラムの追加開発、拡張しやすいコードがかけるかのヒントがこの本には詰め込まれてます。

プログラミング言語だけでなく、HTMLやCSSをコーディンスするときにも、本書を活かすことは可能ですので、マークアップエンジニアや、Webデザイナーの方もより良質なコードを書く手助けをしてくれると思います。

この本で学んだことを活用してコードを書いていきます。

最近の自粛飯

コロナの影響でステイホームを遵守しているうちではどうしてもご飯を作ることができないくらいだるい時はUbereatsや宅配に頼っています。
とっても便利でついつい利用してしまいます。
基本私はご飯の写真を取らないタイプの男なのですが、以下のご飯だけはついつい美味しそうだったのでパチャリました。

宅配もいいですが、お店で堂々と食べれたらといつも思っています。居酒屋にも行きたい。お酒がぶ飲みしたい。早く平和な世の中になりますように。

f:id:igatann:20201009194053j:plain

f:id:igatann:20210119233316j:plain

f:id:igatann:20210119233326j:plain

f:id:igatann:20210119233336j:plain

Google Cloud Platformエンタープライズ設計ガイドを読みました

f:id:igatann:20201009233010j:plain

Googleが提供しているCloudサービスのGCP(Google Cloud Platform)の基本的な概要が記された本書を一通り読み終えたのでその感想です。

本書で触れているのは、ほんと触りの部分で、入り口の部分なんだけど私は過去にこの本を読もうとして何回挫折しているんですよね。

「本を読もうとして挫折って何?」って感じじゃあないですか。けどね、読める本と読めない本ってのがあってですね。その本を読んで理解するほどの知識や経験があるかないかってことです。これまではそれが私にはありませんで挫折をしてしまった次第です。

でまあ、この本を読める知識や経験を仕事を通じてできてきたかなーと思って再読し、まあ前よりは読めるようになり、なんとか最後まで読めたって感じです。

全てを理解したって訳ではないけど、前よりはいい学習になったって感じです。

本書の感想

この本が書かれたのが2年ほど前なので、若干古いかなーとおもつつ今にも通ずる内容は学べるかなと思います。

個人的にビックデータサービスやストレージサービスの章は面白かったです。

ざっとGCPの各サービスの概要を理解したい、さらーとGCPの空気感を知りたい方が対象かなーと思いました。

ただ、公式ドキュメントを噛み砕いてわかりやすく説明してくれている感があるので、深く知りたいって方向けではないです。深く理解したいって場合は公式ドキュメントなりを参照した方が良さそうです。

ようやく読み終わったからまた次の本が読める。10月中にもう1冊は読みたいなー

Google Cloud Platform エンタープライズ設計ガイド (日本語) 単行本

今週のただの感想

今週のただの感想です。

f:id:igatann:20201009194105j:plain

なんか今週はうまく行かない1週間だった。突然寒くなって体調も悪いし、作業も時間かかったりと、、

まあそんなこともあるよな、土日しっかり休んで来週また頑張ろうと思う。

最近食べた旨いものの画像でも貼り付けておきます。今日はもうご飯食べて風呂入って寝ます。

f:id:igatann:20201009194058j:plain

f:id:igatann:20201009194102j:plain

誰でも説明できるようにしたい

仕事の都合上ね、プログラミング言語だったり、クラウドのことだったりの諸々の技術関連のことを調査したりすることが常にあるですよね。

先日資格試験を受けて不合格をもらったんですよね、勉強をサボってたわけじゃないのに。その中で気がついたことがありましたので、ここに書いて行こうと思います。

理解しているかどうか

きちんと理解していないと身につかない。記憶するってことじゃなくていいから噛み砕いて知識として吸収ができればいいのかなって思っている。

本やドキュメントを読んだだけで、全然わかってないのにわかった気になっていた。

誰かに説明ができるレベルにならないといけないのに、人に説明ができないし、本やドキュメントを何度も何度も読んでを繰り返していた。

理解している!って状態になるってのは、完全網羅しているってことじゃなくて、誰かに説明ができるレベルになればいいのかなって思う。
なので、「お母さんに説明でるようにする」ことを目標にしたい

別にお母さんじゃなくてもいいけど、その分野について何も知らない人にわかってもらえるように説明できれば理解できたってことナンジャないかなって。

試験を振り返ると、よくよく出題された試験を振り返ると至る所が爪が甘かったり、あと一歩踏み込んで学習していなかったり、ある単元を理解していないまま試験に望んでしまった。
試験を受けながらに思った、「きちんと理解してから試験を受ければよかった」って。

 

今のオレは↓の時の竈門炭治郎とエレンイエーガーの気持ちと一緒。(これ書いてて思ったけど、進撃も鬼滅も名言多いよね。)

ああ、くじけそう! 負けそう! 頑張れ俺! 頑張れ!!

オレは・・・何にもはたせねぇまま・・・終わっちまう

進み続けるしかなさそうので、これからもしっかりやっていきます。