ほんの少しだけOpenAPI Generatorを拡張してみません?
この記事は夏のリレー連載2024 9日目の記事です。 APIファーストな開発アプローチをとられている方は、「OpenAPI Generator」を用いてOpenAPIの定義ファイルからソースコードを自動生成されたことがあるかと思います。 このとき、自動生成されるソースコードにひと手間加えられたらいいのになぁ~と感じたことはありませんか...
記事を読むNewSQL分散データベースTiDBをハンズオンつきで紹介してみる
この記事は夏のリレー連載2024 8日目の記事です。 はじめに # こんにちは、ビジネスソリューション事業部の山下です。 分散データベースと聞いて、難しそうとか管理が面倒そうとか、スゴそうとかそんなことを考える人も少なくないと思います。 今回の記事では最後のイメージ以外は払拭できるように、 NewSQLの分散データベースシステムであるTiDBを紹介させていただきたいと思います。ちなみにTiの読み方は「タイ」です...
記事を読むまだ他の”手法”がいるのか?と言われてもAmplioを紹介する
この記事は夏のリレー連載2024 7日目の記事です。 まぁ、タイトルでいきなり”Amplio(アンプリオ)”なんて言われても、「何のことやら」と思う人がほとんどでしょう。Amplioは、今まさに進化の真っ最中を歩んでいるアプローチです。筆者は元々DA(ディシプリンド・アジャイル)に深く関わってきたのですが、Amplioの根底にある問題意識には共感するところが多く、多くの人の参考になるのではないかと考えています...
記事を読むアジャイル開発をうまく進めるために
この記事は夏のリレー連載2024 6日目の記事です。 はじめに # こんにちは、庄司です。 この記事では Four Keys にあるデプロイの頻度を中心にアジャイル開発がどうすればうまく進められるかを検討します。 ハンドオフを無くそう # アジャイル開発がうまく進んでいるかを知る指標に、デプロイの頻度、変更のリードタイム、変更失敗率、デプロイ失敗時の復元までの時間を使用する「Four Keys」がよく知られています...
記事を読む駆け出しスクラムマスター Stage2 オンライン開発チームの雰囲気づくり
この記事は夏のリレー連載2024 4日目の記事です。 はじめに # ご無沙汰しております。スクラムマスターの亀井です。 スクラムの深みにもがく日々は相変わらず健在で、毎日思わず遠い目をしています。 スクラムマスターの活動としては、今年の始め頃から別のプロジェクトチームに参画することになりました。 参画時のチームの雰囲気 # このチームの活動環境は基本的にリモートで、就業時間中は常に繋いでいる状態です。 ただし、リモートで常に繋がっているとは言え、参画した当初のチームは以下のような状況でした...
記事を読むDX御伽噺:イマドキ開発のちょっぴり怖い話
この記事は夏のリレー連載2024の3日目の記事です。 暑い日が続きますね。そんな時には寒気を感じるような怖い話が聞きたくなります(よね?)。 ということで、今日は最近出てきている公開情報などをベースに、筆者が怖いと思ったことに基づいた作り噺をお届けします。登場人物や組織名は架空のものですし、見解については筆者個人のものであって所属会社の見解などは一切関係ありません。それでは、はじまりはじまり~!! トータス社のこと # あるところにトータス社という老舗眼鏡メーカーがありました...
記事を読む奥さんが「ガスコンロつけっぱなしで危ない思いをしたので警告音出るものがほしいなぁ」というのでメディアプレイヤーを作ってみた
この記事は夏のリレー連載2024 2日目の記事です...
記事を読むDDDってなんでオニオンとかといっしょに出てくるの?を社内で聞いてみた
この記事は夏のリレー連載2024初日の記事です。 夏のリレー連載の企画ということで今回はいつもとは趣を変え、筆者が社内Slackに「DDDってなんでオニオンとかといっしょに出てくるの?」と聞いたときのやり取りを紹介したいと思います。記事化の目的には筆者自身が技術的に「へぇー」と思ったことのアプトプットもありますが、それ以上に豆蔵の雰囲気を少しでも知ってもらえればいいなという思いもあります。読んでもらい豆蔵の社風的なものを少しでも感じ取っていただければ幸いです...
記事を読むLambdaでPlaywrightを動かす(Lambdaレイヤー / コンテナ)
今クロスブラウザテストでよく使われるツールといえばPlaywrightですね。 テストでなくとも単純にブラウザ自動化ツールやスクレイピングツールとして使っている現場も多いかと思います。 とある事情で、Lambda上でPlaywrightを動かしてみましたが、予想以上に苦戦したので備忘録も兼ねて手順をまとめます。 Lambdaレイヤーを使う # これが一番簡単な方法です。 Playwright等のツールはそれ単体では動作せず、Chromium等のブラウザをインストールしなければなりません...
記事を読むRaspberry PiにCompanionをインストールする方法
こんにちは、庄司です。 リモートワーク環境を改善しようと Elgato の Stream Deck を購入しました。この Stream Deck で Blackmagic Design の ATEM Mini を操作する方法を調べたところ、Bitfocus の Companion を使うと良さそうだとわかりました。 さらに調べると、Companion Pi が提供されていて Raspberry Pi で Stream Deck が使えそうと考えました...
記事を読む2024年版!VS Code で Java 開発環境を構築する
はじめに # Java デベロッパーの皆さんは IntelliJ IDEA や Eclipse を使ってる方が多いのではないでしょうか。筆者は VS Code を使っています。業務では長らく Java から離れていたのですが、ここ数年はけっこう書いています。かつては IntelliJ IDEA に課金してましたが Java 再開を機に VS Code の環境を整えました。この記事では、定番の拡張やワークスペースの使い方についてご紹介したいと思います...
記事を読むValibot: 超軽量&型安全なスキーマバリデーションライブラリ
JavaScript、とりわけTypeScriptプロジェクトでデータのバリデーションを行う際、ZodやYup等のライブラリがよく使われています。 今回は、最近これらの代替として注目を集めているValibotというライブラリを紹介します。 Valibotとは? # Valibotは構造化データを検証するためのスキーマライブラリです。 公式ドキュメントではその特徴を以下のように説明しています...
記事を読むUMLをプログラミング言語で実装するには? Python編
はじめに # UML表記法やUMLモデリングのセミナー講師をしていると、「自分の言語ではどのように実装すればよいのか」というご質問を受けることがあります。また、講師側としても、受講生が使っているプログラミング言語でUMLを説明すると、すんなりと分かって頂ける経験が幾度となくあります。多くのプログラマがUMLモデリングに興味を持って頂けているようですが、UMLのモデルをどのようにソースコードにするかについては意外と知られていません...
記事を読む画像AIで異常検知:事例に合わせたモデル選定と実践
画像AIの技術は急速に進化しており、異常検知や物体検出、セグメンテーションなど、さまざまなタスクに活用されています。この記事では、異常検知に利用できるモデルの特徴と選定の指標、オープンデータで実際に異常検知用AIを学習してみた結果を記述しています。 異常検知に利用できるモデル # 画像AIで異常検知がしたい場合、学習に使用するモデルを選定する必要があります。異常検知に利用できるモデルには異常検知モデル、物体検出モデル、セグメンテーションモデル、分類モデルなどが考えられます...
記事を読むUMLをプログラミング言語で実装するには? Go言語編
はじめに # UML表記法やUMLモデリングのセミナー講師をしていると、「自分の言語ではどのように実装すればよいのか」というご質問を受けることがあります。また、講師側としても、受講生が使っているプログラミング言語でUMLを説明すると、すんなりと分かって頂ける経験が幾度となくあります。多くのプログラマがUMLモデリングに興味を持って頂けているようですが、UMLのモデルをどのようにソースコードにするかについては意外と知られていません...
記事を読む豆蔵デベロッパーサイト 2024年4-6月のサマリー
早いもので今年も半分過ぎました。2024年度第1四半期のサマリーです。 記事数・執筆者数 # この3ヶ月で33本の記事が投稿され、記事数は590になりました。新たに3名が執筆デビューし、累計56名になりました。 春の新人向け連載 # 新年度を迎え IT 業界も多くの新人を迎えています。当サイトでも「春の新人向け連載2024」と題して、新人向けのリレー連載を開催しました。スケジュールは決めず不定期に公開。期間が長かったのもあり、バラエティに富んだ12記事が執筆されました...
記事を読むKRaft モードの Kafka をコンテナ環境にデプロイする
はじめに # 今年の初めに「KRaft による ZooKeeper レス Kafka クラスター構成」という記事でローカル環境で KRaft モードで Kafka を実行する方法について書きました。 この時は Docker や Kubernetes などコンテナ環境でのサポートが追いついておらず、設定にはかなりの手作業が必要でした。現在では手軽に構築できるようになっています。 macOS Sonoma / OrbStack 1.6.2 の環境で試しました...
記事を読むJJUG CCC 2024 Spring 登壇後記 - Spring Boot vs MicroProfile セッションの補足と訂正
先週日曜日(6/16)に開催されたJJUG CCC 2024 Springに『Spring Boot vs MicroProfile - クラウドネイティブにおけるフレームワークの比較と選択』のタイトルで登壇させていただきました。JJUG CCCの登壇はこれで2回目ですが、前回はオンラインとオフラインのハイブリッド開催のため、会場の入りはまばらでしたが、今回は「こんなに人が入ってるワケないので会場を間違えた!?」と自分で思うほど、大勢の方に足を運んでいただけました...
記事を読むServerless Framework v4 の変更点を整理する
先日(2024-06-14)Serverless Framework v4のGAリリースが発表されました。 Serverless Framework V4 Generally Available 今回はこのv4リリースについて、主要な変更点を主観的に整理してみました。 ライセンス変更 # 対象ユーザーに該当する場合は、インパクトが大きいのはやはりこれですね。2023年に事前予告はありましたが、それに沿った形である程度の売上規模を持つ組織での利用が有償になります...
記事を読む文字コード これだけは覚えておこう ~シフトJIS編~
はじめに # 日頃、Javaの初心者からベテランまで様々なスキルレベルの方から質問を頂く立場で仕事しておりますが、Java言語を使用するうえで基本事項でありながらも、あまり理解されていない事柄があると感じています。これらの事柄については改めて誰かに質問できず、「そういうもの」として無理やり納得しやり過ごしている方がいるのではないでしょうか。ここではそのような事柄について改めて解説し、その理由を知ることで「だからこうするべき」、「だからこれはダメ」ということを理解する手助けになればと考えます...
記事を読む