個人開発活動2022
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第1日目の記事です。 豆蔵デベロッパーサイトは11月29で1周年を迎えました[1]。この1年で執筆者が増え、バラエティに富んだ記事が数多く投稿され、アクセスも伸び続けて順調に成長しています。そして12月はちょうどアドベントカレンダーの季節。「アドカレやろうよ!」と同僚に呼びかけ、お願いしまくってカレンダーを埋めてもらっています。 言い出しっぺなので初日の記事を担当することにしました...
記事を読むGitHub Actions ワークフローでリテラルの AWS アカウント ID を使用しないためのヒント
庄司です。 GitHub Actions で AWS にアクセスする場合 GitHub の OIDC プロバイダから発行される ID Token を AWS の IAM 外部プロバイダとして使用できます。 これにより、AWS_ACCESS_KEY_ID や AWS_SECRET_ACCESS_KEY のような永続的なクレデンシャルを設定する必要がなくなり、誤って公開されるリスクが大きく減少しました...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」のカバレッジ指定を使う
前回はペアワイズ法テストケース生成ツール「PictMaster」の”無効値”機能について紹介しました。 今回はPictMasterの”カバレッジ指定”機能について紹介したいと思います。 2因子より多い組み合わせ数を指定する # テスト対象の因子の数が多く、因子間の影響が2因子間に限定できない場合には、因子の組み合わせ数を2よりも大きくしたいケースがあります...
記事を読むDeno を始める - 第7回 (All in one な deno のサブコマンド)
ここまで Deno の様々な機能を見てきました。今回は、Deno のツール(サブコマンド)について見ていきます。 Deno のサブコマンド # 第1回でも軽く紹介したように、deno CLI は多くのサブコマンドを提供しています。表にして本連載で取り上げたものは該当の箇所にリンクを貼ってみました...
記事を読む新米スクラムマスターの思考メモ(その1 スクラムマスターになるまで)
はじめに # 今回、縁あって短い期間ではありますが、社内プロジェクトでスクラムマスターを担当することになりました。社内プロジェクトには数か月前から参加していましたが、参加以前はスクラムについて何となく知っている程度でした。当然、スクラムマスターとしての経験はありませんでした。 この記事では、スクラムマスターを担当するにあたって、新米スクラムマスターの視点で感じたことや考えたことなどをまとめてみたいと思います...
記事を読むDeno を始める - 第6回 (Deno Deploy で静的ファイルを配信)
今回は Deno Deploy についてです。Deno Deploy は JavaScript / TypeScript / WebAssembly を実行できるエッジサービスです。Deno の開発元 Deno Company が運営しています。今年の5月 Beta 4 に到達し、一般提供を間近に控えています。 Deno Deploy Beta 4 現在34のリージョンに展開されており、日本にも Tokyo と Osaka リージョンがあります...
記事を読む明日から使えるEnterprise Architectの小技集
みなさん、モデリングツールは何を使っているでしょうか。 そうですね、Enterprise Architectですね。 今回はEnterprise Architectの小技をいくつか紹介しようと思います。 コマンド編 # 同じ種類の接続を連続で引く # 連続で同じ接続を引きたい時、どのようにしていますか。 (毎回)ツールボックスから選択する人 (毎回)要素のクイックアイコンから接続を引いて種類を選択する人 最初の一本目はそうしてください。 その後は「F3」キーを押してみてください...
記事を読むMicroProfile OpenTracingとJaegerで理解する分散トレーシング
今回のテーマは前回のMicroProfile Metricsに続き可観測性のもう一角をなす分散トレーシングのMicroProfile OpenTracing(MP OpenTracing)です。MP OpenTracingの仕様は主にランタイム提供ベンダー向けのもので利用する側はランタイムがトレース情報を自動計測してくれるため、その存在を意識することはほぼありません...
記事を読むGoogle Test を使ってみる(その4:VSCode拡張機能編)
前回は Google Test のテストフィクスチャを使うことで、テストケースを実行する前に、データをテストケースに渡すことができることを確認しました。 今回はテストケースの実行をサポートするVSCode拡張機能「GoogleTest Adapter」の設定や使い方を紹介したいと思います。 VSCode拡張機能「GoogleTest Adapter」 とは # VSCode(Visual Studio Code)は拡張機能をインストールすることで便利な機能を追加できるようになっています...
記事を読むJamstack Community Survey 2022から現在のフロントエンド業界の動向を見てみる
先日、Netlifyが運営するJamstackコミュニティから、2022年のアンケート調査結果が公開されました。 Jamstack gives developers full-stack powers - Findings from the Jamstack Community Survey 2022 このレポートによると、2022年は以下の点をキーポイントに挙げています...
記事を読むDeno を始める - 第5回 (WebAssembly の利用)
Deno v1.28 がリリースされました。新しく Deno.Command API が追加された模様です。npm パッケージのインポートが安定化されたようで、--unstable が不要になりました。 Deno 1.28: Featuring 1.3 Million New Modules deno upgrade でアップデートしました。アップデート用のサブコマンドが本体に内蔵されているのは便利ですね...
記事を読むGoogle Test を使ってみる(その3:テストフィクスチャ編)
前回は簡単なサンプルプログラムのテストケースを「Google Test」を使って記述し、テストを実行してみました。 今回はもう少し複雑なプログラムのテストケースを Google Test の「テストフィクスチャ」を使って動かしてみます。 テストフィクスチャ とは # 複数のテストケースを書いていると、複数のテストケースに同じセットアップ(テストケースに事前に値を設定するなど)を使いまわしたい場合があります...
記事を読む全ユーザーに公開された GitHub Codespaces で Codespace Templates を使ってみる
5月の「GitHub Codespaces を使いはじめる」の記事時点ではパプリックベータでしたが、11月9日に全ユーザーにロールアウトされフリープランは月60時間まで無料となりました[1]。個人ユーザーはベータ期間中無料で使えていましたが、引き続き利用できることになります。 Codespaces for Free and Pro Accounts | GitHub Changelog 使用制限を超えた場合の利用料金は以下を参照してください...
記事を読むMicroProfile Metricsの機能と利用
今回のテーマはマイクロサービスアーキテクチャの重要な非機能として挙げられるモニタリングに関するMicroProfile Metrics(MP Metrics)です。MicroProfile Metricsはサーバーのリソース状況や利用頻度といった数値情報(テレメトリーデータ)の測定とその提供(公開)を担う仕様になります。記事ではサンプルアプリを例にMP Metricsでどのようなメトリクス情報を収集することができるかを説明していきます。 なお、記事はコードの抜粋を記載しています...
記事を読むなぜStringの比較に等価演算子(==)を使ってはいけないの?
はじめに # 日頃、Javaの初心者からベテランまで様々なスキルレベルの方から質問を頂く立場で仕事しておりますが、Java言語を使用するうえで基本事項でありながらも、あまり理解されていない事柄があると感じています。これらの事柄については改めて誰かに質問することもできず、「そういうもの」として無理やり納得しやり過ごしている方がいるのではないでしょうか...
記事を読むGoogle Test を使ってみる(その2:サンプル実行編)
前回は「Google Test」が実行できる環境を整えました。 今回は Google Test を使った簡単なサンプルプログラムを動かしてみます。 なぜ単体テストフレームワークを使うのか # ソフトウェアのテストは、テスト対象を可能な限り小さい単位で、しっかり実施しておくことが重要です。 テスト対象が複雑に結合された巨大なモノリス(一枚岩)になってしまってからテストを実施すると、障害の原因を突き止めるのに非常に時間と労力を要します。 またテストには「独立性」と「再現性」も求められます...
記事を読むGoogle Test を使ってみる(その1:準備編)
これから数回に分けて「Google Test」についてご紹介したいと思います。 Windows+VSCode(Visual Studio Code)環境で Google Test を紹介している例があまり無かったので、今回は Google Test をソースコードで取得してビルドし、Google Test環境を準備するところまでご紹介します。 Google Test とは # Google Test は、正式には「Google C++ Testing Framework」と言います...
記事を読むNuxt3入門(第9回) - Nuxt3アプリケーションをサーバーレス環境にデプロイする
前回はNuxt3のステート管理について見てきました。 連載最後の今回は、サンプルアプリとして作成したNuxtアプリケーションをAWS環境にデプロイしてみます。 デプロイするアプリケーションは、以下の回で作成した仮想のブログシステムです...
記事を読むDeno を始める - 第4回 (OS 機能と FFI の利用)
第3回の後、Deno 1.27 がリリースされましたので、本編に入る前に少し内容を見てみましょう。 Deno 1.27: Major IDE Improvements 1.27 では Language Server や deno task など開発環境に関する改善が多く含まれているようです。 Language Server 関連では Inlay Hints が使えるようになりました...
記事を読む初心者のためのJavaプログラミング再学習(その2 例外処理(1))
はじめに # 「初心者のためのJavaプログラミング再学習」の第2回目の記事です。この連載では、Javaプログラミングを網羅的にカバーするのではなく、新人研修等で躓く受講者が多い部分、一度勉強したけど理解が難しい部分に絞って執筆する予定です。 前回の記事は以下になります。 初心者のためのJavaプログラミング再学習(その1 基本データ型とオブジェクト型) 今回は「例外処理」について解説します。 例外の基本 # 例外とは? # 例外処理の前に、そもそも例外とはどのようなものでしょうか...
記事を読む