Goをやってみることにしました。Go言語を書く人をGopherというらしいので、Gopherを名乗れるように頑張っていこうと思います。実際にやってみたソースコードは、GitHubで公開してます。こちらからダウンロードする方法もあるのですが、複数のプロジェクトで異なるバージョンを使い分けたりすることも考えると、Go自体のバージョン管理を簡単にできる方が良さそうです。pyenvやnvmのGo版ともいうべきgoenvというものがあるのでそちらでインストールして行きます。rinoguchiCategory:freelancenodejsscraping楽天銀行と会計freee連携スクリプト先日、会計freeeから、以下のような無慈悲なアナウンスがありました。2月24日(木)以降は、楽天銀行のインターネットバンキングから口座明細データのCSVファイルをダウンロードしfreee会計にアップロードする対応を行っていただく必要があります。いや、手作業を減らしたくて会計freeeにしたのに、それはないですよfreeeさん、って感じです。目の前には、以下の三つの選択肢があります。どれも選びたくありません。考えると自分はエンジニアなので、第四の選択肢として「スクレイピングして明細を自動で取り込む」ことができそうですので、やってみることにしました。SDK(JavaScript)を使い、Cognitoの認証機能を試してみたいと思います。SDKだけを利用する形で検証してみたいと思います。これができれば、既存のアプリにCognitoを組み込みたい場合にも都合が良さそうです。今回はホストされたUIは利用せず、UIを自作した上でAPIを直接呼び出して、サインアップ、サインインなどの処理を行います。AWSコンソール画面からユーザプールを作成します。APIの検証が主目的なので、最もシンプルな構成にしようと思います。rinoguchiCategory:freelance初めての青色申告(確定申告)2021年6月に会社員からフリーランスに転向したのですが、この記事は、初めてフリーランスとして確定申告を実施するにあたって、その内容をメモっておいたものになります。2021年12月までほとんど何もしておらず、この記事を書きながら作業を進めている状況です。2022年分の確定申告も行いました。青色申告とは、複式帳簿を記帳した上でそのデータをもとに確定申告を行うことで、さらにe-Taxを利用して電子申告することで最大65万円の控除を受けることができる制度で、フリーランスであれば誰もが利用する制度だと思います。具体的には、以下の対応を必要があるようです。使ってコミット時にリンターを実行していたのですが、huskyのバージョンがv7に上がってから、設定方法が少し変わり、pakcage.jsonだけで完結しなくなったので、改めて設定方法を紹介します。自力でゼロから設定するのは結構難しいですが、huskyとlint-stagedをインストールして、サンプル初期設定を作成してくれる便利なコマンドが提供されていますので、これを実行します。実行結果は以下の通りです。rinoguchiCategory:javascripttypescriptPrettierとESLint・Stylelintの併用フロントエンドのアプリケーションを構築していて、リンターとフォーマッターをどのように設定するのがベストなのか自分なりに調査しました。最初に、自分がベストだと思う設定方針を書いておきます。以下のテストコードで検証しました。継承してても問題なくクラス名を取得できました。パッケージのバージョンアップと脆弱性対応ちょっと雑ですが、npmパッケージのバージョンアップと脆弱性対応の方法をまとめました。これがベストかはわからないけど、一つのやり方として紹介します。rinoguchiCategory:other読みやすいコード、メンテナンスしやすいコード自分が個人的に読みやすい、メンテナンスしやすいと思うソースコードの特徴を書いてみようと思います。個人の好みも含みます。言語やアーキテクチャ、プロジェクトにかかわらず、コードレビューの時にはこのような観点でレビューしてます。テストを書くことが増えてきたので、この辺でTipsを記載しておこうと思います。今後も何かあれば追記します。必要なライブラリを追加します。jest.config.jsをプロジェクト直下に作成します。