カスタムワークフローで GitHub Pages デプロイが可能に
GitHub Pages は専用のブランチか docs などのターゲットディレクトリを指定して公開する方式です。したがって、SSG(Static Site Generator) を使う場合、ソースコードだけでなくビルド成果物もリポジトリ管理する必要がありました。7月に GitHub Actions ワークフローによるデプロイがベータ版として利用可能になりました...
記事を読むコンテンツ重視の静的サイトジェネレーター Astro でドキュメントサイトを構築する
Astro は SSG (Static Site Generator) の1つです。「高速でコンテンツにフォーカスした Web サイトを構築するためのオールインワン Web フレームワーク」というのがキャッチコピーです。 Astro | Build faster websites v1.0 がリリースされました。 Astro 1.0 | Astro ブログやポートフォリオサイトの他、ドキュメンテーションサイトのテンプレートも提供されています。公式ドキュメントには日本語版もあります...
記事を読む初心者のためのJavaプログラミング再学習(その1 基本データ型とオブジェクト型)
はじめに # 「初心者のためのJavaプログラミング再学習」と題して、初心者の方向けにJavaプログラミングの解説シリーズを立ち上げました。Javaプログラミングを網羅的にカバーするのではなく、新人研修等で躓く受講者が多い部分、一度勉強したけど理解が難しい部分に絞って執筆する予定です。どちらかといえば、厳密な理解よりも、イメージを掴んでもらうことを重視した内容です。 初回は「基本データ型とオブジェクト型」について解説します...
記事を読むIoT を使ってみる(その1:AWS IoT チュートリアル編)
「IoT」という言葉が世の中に広まって、結構な時間が経ったと思います。 私達が日頃「ああ、これがIoTだ」と実感することはそれほど多くないと思いますが、IoTは私達の生活の中に着実に広がっています。 今回から数回に分けて、AWS(アマゾン・ウェブ・サービス)の「AWS IoT」とIoTデバイスの「Raspberry Pi」を使って、IoTについて紹介していきたいと思います。 また必要に応じて他社のIoTサービスやIoTデバイスについても比較検討してみたいと思います...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」の重みを使う
前回はペアワイズ法テストケース生成ツール「PictMaster」の”エイリアス”について紹介しました。 今回はPictMasterの”重み”機能について紹介したいと思います。 組み合わせの一部を他より多くテストしたい場合 # 2因子網羅のテストケースを効率よく生成するペアワイズ法ですが、特定の因子・水準データだけを他の組み合わせよりも多くテストしたい場合、テストケースの生成方法に工夫が必要になります。 例えば、特に重要な因子・水準は他の因子・水準よりも重点的にテストしたい場合などが該当します...
記事を読むエクストリームプログラミング解説 その3:価値(2/2)
はじめに # 中佐藤です。XP解説その3です。一応、エクストリームプログラミング解説 その1:全体像から続き物として読んでいただくことを想定しています。前回は「価値」のうち「コミュニケーション」を解説しました。 価値(続き) # あらためて4+1の価値を再掲します。今回は「フィードバック」から。 コミュニケーション ⇒ その2:価値(1/2)を参照 フィードバック シンプリシティ 勇気 リスペクト 価値:フィードバック # これは理解しやすいです...
記事を読むGitHub の外部サービス自動リンク参照で英数字の識別子が利用可能に
GitHub の Pro/Team/Enterprise のアカウントでは、外部サービスへの自動リンク参照が利用できます。 Jira や Zendesk などの GitHub 以外のサービスで課題やインシデントを管理しているいるプロジェクトも多いでしょう。その場合、GitHub の issue、PR、コミットコメントに JIRA#1 のように プレフィクス<ID> の形式で書くと自動でリンクしてくれる機能です。課題やインシデントを追跡する上で役立ちます...
記事を読むEKS Blueprints(CDK)ですぐ使える実用的なEKSクラスタ環境を簡単に手に入れる
EKSクラスタを構築するには、Kubernetesだけでなくその土台となるAWSネットワーク・セキュリティの知識も少なからず必要です。 また、素のEKSクラスタをそのまま利用することはほとんどなく、Ingress Controllerやオートスケーラー、メトリクスコレクター等多くのツールを別途セットアップする必要があります。 複数チームで共有するようなマルチテナント環境の場合は、NamespaceやRBAC等、やることはたくさんあります...
記事を読むエクストリームプログラミング解説 その2:価値(1/2)
はじめに # 中佐藤です。エクストリームプログラミング解説 その1:全体像に続き、その2です。なぜかその2から入ってしまった方は、その1から読んでください。ここまでで、価値・原則・プラクティスという3つの概念をざっとご紹介しました。 最初のXPプロジェクト # 早速「価値」について・・・と行きたいところですが、その前に、書籍(第2版)でも紹介されている、最初のXPのプロジェクトにちょっと触れておきます。1996年、クライスラー社の給与計算プロジェクトです...
記事を読む今さら聞けないMaven – コンテナも一緒にビルドしたい。テスト実行前にコンテナを起動したい
Javaの開発ではMavenなどのビルドツールでビルドやテストの手順を定義し実行するのが一般的ですが、コンテナも一緒にビルドしたいなぁと思うときはありませんか?また、マイクロサービスの普及に伴ってREST通信を行う処理が多くなってきましたが、REST通信部分のテストは手間が掛かるので、いっその事、スタブにコンテナを使いたいけど、テスト実行前にコンテナを起動するにはどうしたらいいんだろう?など...
記事を読む自動打鍵テスト - 画面操作・検証だけでなくテストコード自体も自動生成してしまう真の自動化
イントロ # この記事では、豆蔵が支援するプロジェクトでのWebアプリに関するテスト自動化の事例を紹介します。 特にそのプロジェクト特有という内容ではなく、どのプロジェクトでも共通するポイントについて具体例を交えてまとめました...
記事を読むGitHub Actions 再利用可能ワークフローでネスト呼び出しと Matrix strategy が解禁
以前の「GitHub Actions - 再利用可能ワークフローを使う」の記事時点では、以下のような制約がありました...
記事を読むkubectl debugを使ってKubernetesのコンテナをデバッグする
2022-08-23にKubernetesのv1.25がリリースされました。 Kubernetes公式ブログ - Kubernetes v1.25: Combiner PSP(Pod Security Policy)の削除等、多くの変更がありますが、Ephemeral ContainersがBetaからStableバージョンとなりました。 この機能はkubectl debugコマンド[1]で使用できますが、あまり使ったことがなく、これを機に改めて使い方を調べてみましたのでご紹介します...
記事を読むエクストリームプログラミング解説 その1:全体像
はじめに # 中佐藤です。リモートワーク環境紹介を書いたら、もちろん他の記事も書くんだよね、とプレッシャーをいただきました。というわけで、本業(?)のアジャイル関連です。話が長くなるのが目に見えているので、連載にすることを、最初に宣言します。 本連載の意図 # いまどき、アジャイルの話はWebでも書籍でも豊富で、今更感はあるのですが、前々から気になっていることがひとつ...
記事を読む今さら聞けないMaven - JUnit5のテストクラスがなぜか実行されない
JUnit5のテストクラスをEclipseなどのIDEからは問題なく実行できるのにMavenコマンドから実行するとなぜかテストクラスが検出されず実行されなくなる。そんなお困りの事象と対処方法について今回は説明します。とりあえずどうすればいいかだけ教えて!という方は対処からどうぞ。 --> 今さら聞けないMavenMavenが誕生してから早20年ですが、開発で使っていると未だにハマってしまうことやコレってどうやるのだろう?と思うことがあったりします...
記事を読む豆蔵社員のリモートワーク環境ご紹介 その9 ずっと作業に集中できる環境
はじめに # はじめまして。鵜野です。 リモート環境について書いてほしいと熱望リクエストがあり記載します。 豆蔵は2005年入社ですので、だいぶ古株となってしまいました。 私の仕事について # 現在の私が担当しているプロジェクトでは、稼働したシステムの保守しながら、新機能、新サービスを開発したりとお客様のビジネス拡大をお手伝いしています。 役割的には、コンサル・各人のマネジメント・アーキテクト・実装と、いわゆるプレイングマネージャをしています...
記事を読む豆蔵社員のリモートワーク環境ご紹介 その8 研修とコンサルのバランス
はじめに # デベロッパーサイトでは、はじめまして。中佐藤です。豆蔵サイトでは、アジャイル関連の記事を書いています。今回こちらではデビューということで、事業部長が始めたこのテーマに乗っかります。ここまでの他の人との違いを強調するなら、あえて最適化しないことでしょうか。 全体 # 真ん中が会社PC、両側にモニター。写真には映していませんが、さらに左側にはお客様からの貸与PCがあり、左のモニターはそちらにつなぐこともあります。写真外の右側には、本棚や文房具...
記事を読むNetlify Split TestingでGitブランチベースのA/Bテストをする
不特定多数のユーザーに公開するWebサイトでは、UI/UXの改善がエンゲージメントやコンバージョン等の指標に良い影響があるのかは、実際に公開してみないと分からないことが多いかと思います。 ここでよく利用されるリリース戦略はA/Bテストです。 運用中のバージョン(Aパターン)に加えて、変更後のサイト(Bパターン)を同一ドメインで並行して公開し、Cookie等の値を利用して一定の割合でBパターンにもリクエストを振り向けます...
記事を読むオンライン研修 成功させるために抑えるべき4つのポイント
みなさん、オンライン研修を上手に運営できていますか? もしくは、上手に運営された研修やセミナーに参加されたことはありますか? 弊社ではここ数年、オンラインで研修を実施することが増えました。オンライン研修のノウハウもかなり蓄積できました。 オンライン研修を実施する上で、弊社で意識している点をまとめてみましたので参考になれば幸いです(私はZoomによる研修が多いため、Zoomに関する記述が多いですがご容赦ください)...
記事を読むEleventyで生成したサイトでNetlify Edge Functionsを使ってみる
一般的にサイトジェネレータで作成したサイトは、特定の場所に静的リソースを配置し、CDN経由で配信することが多いかと思います。 昨今はNext.jsやNuxt等のハイブリッドフレームワークを使って、サーバーサイド側でページを生成するSSR(Server Side Rendering)も増えてきていますが、やはり静的リソースのみを配置するスタイルは何かと開発・運用しやすいと思います...
記事を読む