コンポーネントテストの組み立て方を整理したい

UIコンポーネントテスト、書けると複雑なコンポーネントのバグを防ぐ効果があると思っている。 しかし、慣れるまではテストケースの組み立て方法すらわからず苦戦する印象がある。 苦戦するだけならいいが、うまくいかず挫折するともったいない。組み立て方…

テストで点を取る学び方だけではプログラムは書けるようにならない

OJT

自分の経験やOJTトレーニングの一環で人に教える機会を経て、タイトルのようなことを感じたためまとめておく。 伸び悩む人の特徴 プログラム(でも技術的なことでも他のことでもいいけど)が書けない!焦って学習時間を投下しているが、いざ書く場面になると…

React Testing Libraryでrole属性が定義されていないHTMLタグを取得したい

背景 React Testing Libraryでテストを書くとき、たまに<span>や<div>などrole属性が設定されていないタグを取得したい場面がある。Testing Libraryのクエリはアクセシビリティを意識したものになっているため、<div>のようにrole属性がないタグをそのまま取得する手段は少な</div></div></span>…

ひよこソフトウェアエンジニアが最優先で身につけるべき能力は日本語の読み書きである

OJT

2022年に引き続きひよこソフトウェアエンジニア(以降はひよこエンジニアとする)を指導している。2年やって確信したことがある。表題の通り、「ひよこソフトウェアエンジニアが最優先で身につけるべき能力は日本語の読み書きである」ということだ。 文章が…

【Web再録】SIerとSESで働くのを完走した感想:その4

このブログポストは『SIerとSESで働くのを完走した感想』を編集してWeb再録したものです。 rimarimadan.hatenablog.com 転職するときのとりとめもない感想 今の職場で(意図せず)4社目なので…。1 転職するときに強く感じたのは、「単純なエンジニアの数が足…

なぜひよこエンジニアは答えをすぐ欲しがるのか

OJT

あるあるトラブル ひよこメンバーを受け持つことになった。「なんでも質問してね」と声をかけておいた。 質問に来てくれたのはいいが「〇〇ができません。どうすればいいですか(丸投げ)」と聞かれた。 自分でちょっとは考えてこないのか?!みたいな気持ち…

【Web再録】SIerとSESで働くのを完走した感想:その3

このブログポストは『SIerとSESで働くのを完走した感想』を編集してWeb再録したものです。 rimarimadan.hatenablog.com 働きやすさ(定時で帰れるか)についての感想 所感 SES(業務用アプリケーションを提供する会社に派遣) ≒ SES(小規模の受託開発会社に…

特定のファイルだけにPrettierのフォーマット方法を指定したい

JSON形式の翻訳ファイルをアルファベット順にソートしたいを書いたとき、Prettierのプラグインを使う手段を調べていた。そのとき、「pluginsを使うのはいいけど、翻訳ファイルだけソートできないものか」と感じた。 Prettierの設定にConfiguration Overrides…

【Web再録】SIerとSESで働くのを完走した感想:その2

このブログポストは『SIerとSESで働くのを完走した感想』を編集してWeb再録したものです。 rimarimadan.hatenablog.com 扱っている技術についての感想 技術同人誌を書くのが趣味なので、「技術同人誌のネタが出しやすかったか?」という観点でどうだったか、…

JSON形式の翻訳ファイルをアルファベット順にソートしたい

国際化対応のつらみポイント prettier-plugin-sort-jsonを使う 方法 所感 参考URL sort-package.jsonでソートする 方法 所感 参考URL Node.jsのAPIを使ってJavaScriptでソートする 所感 参考URL まとめ 国際化対応のつらみポイント 自分の関わっているプロダ…

【Web再録】SIerとSESで働くのを完走した感想:その1

データ整理してたらC96(2019)に頒布したSIerとSESと自社サービスで働いた感想を書いた闇の同人誌が出てきた…。中身が大分キレキレな感じで草しか生えない。— もふもふ (@froakie0021) October 16, 2023 Xのポストの通り、先日コミックマーケット96(2019/0…

ChatGPT Plusを使ってプログラミングの学習をする

9月頭に例の病1にかかってしまい、1週間程度寝込んでしまった。 2・3週間近くコーディングなどの技術的なことから離れてしまう羽目になり2、その間にすっかり何もできなくなってしまった。 これはいけないとリハビリをすることにした。以前からChatGPT Plus…

Dev Container利用時にgit commitしたとき「Waiting for your editor to close the file...」エラーが出てきたため対応した

最近Visual Studio CodeのDev Containerを使って開発している。 使い始めのときgit commitを試みたところ、「Waiting for your editor to close the file... 」と出てきて焦ったため解消法をメモしておく。 エラー内容 devcontainer.json 解消法 Vimを使いた…

技術書典14にオフライン参加しました

現在開催中の技術書典14にオフライン参加した。 オフラインイベントは2019年が最後だったため、4年弱ぶりくらいの同人誌即売会だった。 techbookfest.org 所感などを忘れずにまとめておく。ちなみに本はオンラインマーケットで頒布中です。 techbookfest.org…

Vue2.xで開発していた人がReact始めた感想:コンポーネント内のState管理

事情があって[^1]本格的にReactをやることになった。今まではVue2.xで開発していた。 慣れてしまう前に印象を書き残しておくことにする。 前提は↓の記事と同じ。 rimarimadan.hatenablog.com 所感 「State自体がわからない」ところから始めるならVue(Option…

Vue2.xで開発していた人がReact始めた感想:環境構築

事情があって1本格的にReactをやることになった。今まではVue2.xで開発していた。 慣れてしまう前に印象を書き残しておくことにする。 前提 要件的にSPAで作りたい。 初期ローディング後は高速に操作させたい ページ遷移のたびに最新のデータを取得してレン…

Re:VIEWとInDesignで印刷用データを作成する手順

技術書典14はオフライン参加することにしたため、同人誌を印刷して頒布したいと考えた。 印刷用の原稿データは印刷会社さんによって作成方法が決まっている。Re:VIEWだけで自分が利用するねこのしっぽさんの規格を守れる自信がなかったため、Re:VIEWファイル…

FY22_4Q振り返り_業務外

業務外のこと 創作 昨年と比較するとブログの本数が増えていた。また、技術書典14に向けて毎日少しずつ原稿をやっていた。2分だけでもやる!というのが重要なのかもしれない。 ゲーム 新規で購入したものはなし。ゼルダの伝説 ティアーズ オブ キングダムは…

FY22_4Q振り返り_仕事編

3Qでプロダクト開発を離れたと思ったが、なんやかんやで溢れたタスクを処理する羽目になった。 前回のNext Action振り返り 前回の振り返り 明確化したものの学習を行う 学習したものを見えるところにまとめる 1と2を定期実行する (直近必要なスキルを明確に…

調べ物をするときChatGPTを使うと便利

最近仕事でReact.jsを触る機会が増えた。今まではVue.jsを書いていたため「Vueのv-ifにあたるものはReact.jsでどう書くんだろう…」のような疑問があれこれ湧いてくる。そのようなとき、話題のChatGPTを使うとはかどるなと思った。 たとえば「React.jsでProps…

Nordaceリュックを買った

通勤やお出かけの際はリュックを使っている。今まではGUで購入したものを使っていたが、昨年末にファスナーが壊れてしまい買い替えざるを得なくなった。 ちょうどTwitterでNordaceの広告が何回も流れてきたため、WebサイトもYouTubeの広告動画も全て視聴した…

初心者にTypeScriptを教え始めた感想

※ここでの初心者とはこのようなイメージです 一人で仕事をするには心許ない 基礎構文(if forなど)はできる Objectや配列の処理は心許ない 静的型付け言語は経験がない モブプログラミング形式の勉強会、参加者が自力でテストを書けるようになったため、Typ…

「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック を読んだ

概要 www.shoeisha.co.jp タイトル通り「技術書」の読み方を解説している本。読み方といっても、 選び方。どこで、どんな基準で選ぶか? どのように読み進めるか?(プログラミング言語の本なら打ち込みましょうとか) 読んだ後どうするか? など、技術書の…

テストコード初心者にテストの書き方を教えた感想

↓をやり終わったため感想をまとめておく。1 rimarimadan.hatenablog.com どのように進めたか お題を出して TODOを分解して TODOを一つずつ実装しながらテストを書いて 最後にリファクタリング(最初の方はスキップしていた。まずはテストを書くことに集中す…

親切のつもりで仕事を取り上げるとトレーニーは育たない

OJT

OJTは終了後に一人で仕事を進められる人材を育てるのが目的だが、1 OJT期間の後半になっても全くその気配がない場合もある。なぜそうなってしまうのかを考えていた。トレーナーが「(意図せず)仕事を取り上げてしまう」のが原因の一つではないか、と最近は…

OJT中はタスクごとに振り返りをやるといい

OJT

OJTをするときはタスクが終わったごとに振り返りを行うと、トレーニーが成長しやすいなと感じた。 振り返り方法 タスクが終わりそうなタイミングで振り返り用シートを準備する。 ## うまくできたなと思うことはあるか? ある / ない + どうしてそう思うか ##…

GitHub Actionsでタイムロケールを設定する

チームでもGitHub Actionsを使ってみようか、という動きがある。1 Dateオブジェクトに関連するテストケースを単体テストに組み込んでいる。実行環境に応じてテスト結果が変わってしまうため、タイムロケールをJSTに固定したい、という場面があった。 調査し…

ふせんを使ってタスクを整理する

OJT

大きな仕事を小さく分解する練習は TODOリストを作る やることを洗い出す 順序を考える などの方法が挙げられる。しかし、大きい課題を小さく分解した結果、タスクが大量に溢れるとパニックになってしまう。 そのようなときはふせん(ポストイットとかを想像…

コード行数を数えたい

移行プロジェクトを進める前に、現状のコード量を解析したいと考えている。何かいい方法はないかなと思い、全ての答えが詰まっているTwitterで検索したところ、次のツイートを見つけた。 git diff --stat `git hash-object -t tree /dev/null` とかいうレポ…

Create React App 5.xでReactプロジェクトを作成するとmdx-js/loader 2.xが動作しない

React.jsとMDXを組み合わせて動かしたいな、という要件があり試したところ見事にハマった。 概要 Create React Appがバージョン5.xだとmdx-js/loader バージョン2.xが動作しない。MDXファイルが名前解決できずエラーとなってしまう。動作させるにはCRACOでCr…