電通総研 テックブログ

電通総研が運営する技術ブログ

Xイノベーション本部

Amazon Comprehendを初めて使ってみた

はじめまして。クロスイノベーション本部、新卒1年目の大岡叡です。 現在、技術職に配属された同期6名とともに7月から9月の3か月間にわたるシステム開発研修に取り組んでいます。研修では、運営側が定めた必須機能に加えてチームで考えた追加機能を自由に実…

Claude Code の画面に今月の利用料を表示する方法

こんにちは。クロスイノベーション本部クラウドイノベーションセンターの柴田です。本記事では Claude Code の画面に今月の利用料を表示する方法をご紹介します。 動機 利用する機能・ツール 実行環境 ステータスライン ccusage 設定方法 1. ステータスライ…

生成AI時代のドキュメント品質向上手法

はじめに bunのインストール 作業環境の作成 Prettierのインストール Remarkのインストール パーザのセットアップ RemarkとPrettierの整合性を取る Remarkの一部としてPrettierを動かす Linterのセットアップ ドキュメントのリンク切れを検証する Linter用の…

実用品を作って探る生成AIを使ったソフトウェア開発の現在

みなさんこんにちは、XI本部エンジニアリングオフィスの佐藤太一です。 このエントリでは、私がRustで実装したJava用バージョンマネージャであるKopiを紹介すると共に、実装の過程で得た生成AIを使ったソフトウェア開発に関する知見を共有します。 Kopiのソ…

VSCode標準のgit worktree管理機能でClaude Codeを並列実行する

はじめに こんにちは、クロスイノベーション本部エンジニアリングテクノロジーセンターの小澤英泰です。 Claude Codeなどのコーディングエージェントをgit worktreeを使って並列実行している方も多いのではないでしょうか。 これまではgitコマンドやサードパ…

Visual Studio Code で GitHub Copilot と Remote Development を併用した場合 MCP サーバーはどこで実行されるのか

こんにちは。クロスイノベーション本部クラウドイノベーションセンターの柴田です。 この記事では Visual Studio Code で GitHub Copilot の agent mode と Remote Development を併用した場合に MCP サーバーがどこで実行されるのかをご紹介します。 はじめ…

Visual Studio Code で MCP サーバーの実行に必要な資格情報をパラメーター化する

こんにちは。クロスイノベーション本部クラウドイノベーションセンターの柴田です。 最近 Model Context Protocol (MCP) が注目を集めていますね。 一部の MCP サーバーは実行に資格情報を必要とします。例えば以下は https://github.com/makenotion/notion-…

複数のDev ContainerがあるリポジトリでのGitHub Codespaces起動時のコツ

こんにちは、クロスイノベーション本部エンジニアリングテクノロジーセンターの小澤英泰です。 本記事ではGitHub Codespacesを活用する中で学んだ、複数のDev Containerの設定があるリポジトリにおいて、起動するDev Containerを指定する方法を紹介します。 …

Amazon EKS Auto Mode を利用する際に気をつけるべきこと

こんにちは。クロスイノベーション本部クラウドイノベーションセンターの柴田です。 re:Invent 2024 で Amazon EKS Auto Mode の一般提供が発表されました。この記事では Auto Mode を利用する際に気をつけるべきことをご紹介します。 ℹ️ この記事の内容は 2…

GitHub DiscussionsでADR(Architecture Decision Record)を管理する

こんにちは、クロスイノベーション本部エンジニアリングテクノロジーセンターの小澤英泰です。 本記事ではGitHub DiscussionsでADRを管理する方法を紹介します。 はじめに ADRとは 筆者チームのGitHubとの関わり方 ADR導入の目的 ADRに備えたい性質 記載内容…

【re:Invent 2024ワークショップ】 Amazon Q Businessによるクラウド運用業務の効率化

はじめに クロスイノベーション本部 クラウドイノベーションセンター新卒2年目の宮崎です。 先日、AWSのre:Inventに参加させていただきました。 個人的にハンズオンやGameDayに参加し、手を動かすことでスキルアップしようと思い参加しましたので、参加して…

Visual Studio Code から Amazon Bedrock を呼びだす

こんにちは。クロスイノベーション本部クラウドイノベーションセンターの柴田です。 ここ数年、生成 AI サービスが非常に注目を集めていますね。電通総研でも Know Narrator シリーズや minnect AI アシスト などのソリューションを提供しています。 さて。…

【私の作業環境】ぼくの考える最強のアイランド型デスクレイアウト!

こんにちは。クロスイノベーション本部 AI トランスフォーメーションセンター 所属の村本です。 私は普段、Know Narratorシリーズの開発や、生成AI関連の技術検証などに取り組んでいます。 今回は、タイトルの通り私の作業環境について紹介します。 私は業務…

AWS re:Invent 2024とAWS GameDayについて

こんにちは、株式会社電通総研の新卒2年目の宮崎 博寿 です。 クロスイノベーション本部 クラウドイノベーションセンターに所属しております。 24年の12月上旬に、世界最大規模のAWSカンファレンス 「AWS re:Invent」 に参加しましたので、現地で体験した学…

テックブログ開設3周年!

祝3周年 こんにちは。 X(クロス)イノベーション本部プロダクトイノベーションセンターの中村です。 本テックブログは12月をもって開設3周年を迎えました! 私たちは、この3年間で毎週1本以上の記事を継続的に公開してきました。総数は390本を超え、単純計…

テスタビリティを高めるために意識していること

こんにちは。X イノベーション本部 AI トランスフォーメーションセンター 所属の山田です。 本記事は電通総研 Advent Calendar 2024の 12 月 17 日の記事です。 はじめに 私達は普段、Python を使ってアプリケーション開発をしています。 本記事では、チーム…

FlutterはWebアプリ開発でどこまで使えるか?

はじめまして、X(クロス)イノベーション本部プロダクトイノベーションセンターの瀧川亮弘です。 本記事は、電通総研 Advent Calendar 2024 10日目の投稿です。 もともとネイティブアプリを主戦場とするFlutterですが、Web開発にどれほど活用できるのか調査…

DRY 原則再解釈:「誤った共通化」を責任駆動で回避する

こんにちは! X(クロス)イノベーション本部 プロダクトイノベーションセンターの佐藤です。電通総研 Advent Calendar 2024、12日目の今日は、DRY 原則の再解釈を通して、設計上の落とし穴である「誤った共通化」に陥らないためにはどうするべきかを考察し…

ソフトウェア設計と認知科学的アプローチ

こんにちは、Xイノベーション本部の米久保です。 こちらは、電通総研テックブログ アドベントカレンダー2024の12月10日の記事です。 はじめに 認知負荷 認知負荷理論 ソフトウェア設計と認知負荷理論 認知バイアス エラー まとめ 参考文献リスト はじめに IT…

Regal を使って Rego を Lint する

こんにちは。X(クロス)イノベーション本部クラウドイノベーションセンターの柴田です。この記事では Rego の Linter である Regal を紹介します。1この記事は 電通総研 Advent Calendar 2024 の 5 日目の投稿です。前日の記事は井手さんの「入社 3 年目の…

ヘッドレスCMSの選定 - StrapiとSanityの比較

こんにちは、XI本部プロダクトイノベーションセンターの瀧川亮弘です。 現在行っているWebサイトの運用において、ヘッドレスCMSの導入を検討しています。 本記事では、ヘッドレスCMSの選定で調査したことを共有します。 ヘッドレスCMSとは ヘッドレスCMSとは…

GitHub Copilot(VS Code版)の新機能「Copilot Edits」を使ってAIとテスト駆動開発をする

こんにちは、Xイノベーション本部の米久保です。 サンフランシスコで2024年10月29日から30日にかけて開催されたイベントGitHub Universe 2024に合わせて、さまざまな新技術・新機能に関するリリースが10月29日にGitHub社より発表されました。 とくに、GitHub…

Next.js: Static Exports のi18n(多言語)対応

こんにちは、XI本部プロダクトイノベーションセンターの瀧川亮弘です。 現在、Next.jsのStatic Exportsにより、Webサイトの構築を行っています。 本記事ではStatic Exportsのi18n(多言語)対応の実装方法を紹介します。 Static ExportsはNext.jsのアプリケー…

FlutterFlowでサクっと開発する社内業務スマホアプリ

XI本部 プロダクトイノベーションセンター アジャイル開発グループの徳山です。 前回の記事「FlutterFlowでFirebaseと連携する方法」では、FlutterFlowとFirebaseを活用したバックエンドのセットアップ方法を詳しく解説しました。今回は、FlutterFlowを使っ…

FlutterFlowでFirebaseと連携する方法

XI本部 プロダクトイノベーションセンター アジャイル開発グループの徳山です。 前回の記事「FlutterFlowに制約はある?できることとできないこと」では、FlutterFlowを使った開発における制約や注意すべきポイントをお伝えしました。今回は、FlutterFlowと…

FlutterFlowに制約はある?できることとできないこと

XI本部 プロダクトイノベーションセンター アジャイル開発グループの徳山です。 前回の記事「FlutterFlow vs Adalo:ノーコードモバイルアプリ開発ツールの比較」では人気のノーコード開発ツールのAdaloと比較することでFlutterFlowとの機能の違いやメリット…

FlutterFlow vs Adalo:ノーコードモバイルアプリ開発ツールの比較

XI本部 プロダクトイノベーションセンター アジャイル開発グループの徳山です。 前回の記事「FlutterFlowとは?ノーコードでスマホアプリ開発を始める方法」ではFlutterFlowについての特徴や機能といった基本知識を紹介しました。今回は、FlutterFlowを同じ…

FlutterFlowとは?ノーコードでスマホアプリ開発を始める方法

XI本部 プロダクトイノベーションセンター アジャイル開発グループの徳山です。 私たちのグループは現在ローコードツール、その中でもマルチプラットフォーム向けにアプリケーションを開発できるFlutterFlowの活用を行っており、業務アプリのMVP開発などに活…

SupabaseとDrizzle ORMを利用する場合のDBスキーマの管理方法

こんにちは、電通総研の瀧川亮弘です。 本記事ではSupabaseとDrizzle ORMを利用する場合のDBスキーマの管理方法について記載します。 テーブル定義は、Drizzleのお作法に則り、TypeScriptで管理しています。 schema.ts import { boolean, pgEnum, pgTable, p…

Supabase: 参照はRLS(Row Level Security)、登録更新削除はEdge Functionsで認可制御を実装した話

こんにちは、電通総研の瀧川亮弘です。 現在、Supabaseによるアプリ開発を行っています。 本記事ではSupabaseの認可制御をどのような方針で実装しているのか紹介します。 前提 アプリからSupabaseへのリクエストは2つのAPIを使い分けています。 一つ目にSupa…