複数回答チェックボックスで、1つ以上のチェックを必須にする方法

こんにちは。 エキサイト株式会社の三浦です。 こちらは、エキサイトホールディングス Advent Calendar 2023の18日目の記事になります。 qiita.com 良ければ他の記事もどうぞ! さて、HTMLでフォームを作る際、「複数回答が用意されているチェックボックス式…

accent-colorでチェックボックスの色を指定する方法と注意したい落とし穴(CSS)

こんにちは。 エキサイトで内定者アルバイトとしてデザイナーをしている齋藤です。 エキサイトホールディングス Advent Calendar 2023シリーズ2の12日目は、私齋藤が担当させていただきます。 今回はチェックボックスなどの強調表示色を指定できるCSSプロパ…

Spring Bootでのキャッシュのアノテーションの使い方

はじめに こんにちは、新卒1年目の岡崎です。エキサイトホールディングス Advent Calendar 2023の14日目を担当します。 今回は、Spring Bootで使うことができるキャッシュのアノテーションの機能を紹介していきたいと思います。 はじめに 環境 設定 どのよう…

【Android】内部アプリ共有と、URLからインストールするための設定方法について

はじめに エキサイト株式会社で内定者アルバイトをしている岡島です。 エキサイトホールディングス 2023 Advent Calendar シリーズ2の15日目を担当させていただきます。 今回はアプリ開発時に内部アプリ共有を試したので、 内部アプリ共有と詰まったことにつ…

エンジニア母の復職前の不安と実際の経験

こんにちは。エキサイト株式会社のあはれんです。 エキサイトホールディングス2023アドベントカレンダー14日目をお届けします。 qiita.com 今年の4月に時短勤務で復帰して、1歳児の母をやりながらエンジニアとして働いています。 エンジニアの女性は周りに少…

JavaのシリアライザであるKryoで圧縮設定を追加する

エキサイト株式会社メディア事業部エンジニアの佐々木です。以前Kryoを用いてJava内のデータをシリアライズする記事を書きました。 tech.excite.co.jp その後、弊社内でもポツポツKryoを使っていますが、Kryo公式にシリアライズデータをさらに圧縮する方法が…

ボタンにまつわるエトセトラ(HTMLとアクセシビリティ)

こんにちは。エキサイトで内定者アルバイトとしてデザイナーをしている齋藤です。 エキサイトホールディングス Advent Calendar 202313日目は、私齋藤が担当させていただきます。 今回は『ボタンにまつわるエトセトラ』と称し、UIデザインで最も頻用される要…

【Flutter】wakelock_plus パッケージを使って画面スリープを無効にする

エキサイト株式会社の@mthiroshiです。 エキサイトホールディングス Advent Calendar 2023の13日目を担当します。 Flutter で画面スリープを無効にする(画面を常時点灯にする)wakelock_plus パッケージについて紹介します。 wakelock_plus とは wakelock_p…

FCMで直接トークンを指定してマルチキャストでプッシュメッセージを送信する

こんにちは、エキサイト株式会社の平石です。エキサイトホールディングス Advent Calendar 2023の12日目を担当いたします。 今回は、FCMで直接トークンを指定してマルチキャストでプッシュメッセージを送信する方法をご紹介します。 はじめに プッシュメッセ…

ArchUnitを入れて、プロジェクト内のアーキテクチャルールをテストする

エキサイト株式会社メディア事業部エンジニアの佐々木です。弊社アドベントカレンダー5日目を担当させていただきます。メディア事業部では、SpringBootを用いて日々ソフトウェア開発を行っていますが、サービスが大きくなったり人が増えたりするとアーキテク…

Spring Bootのアノテーションによるバリデーションを、任意の値に対して行う方法

こんにちは。 エキサイト株式会社の三浦です。 こちらは、エキサイトホールディングス Advent Calendar 2023の11日目の記事になります。 qiita.com 良ければ他の記事もどうぞ! さて、Spring Bootでは、アノテーションを使ってクラス内の特定のフィールドに…

GA4のクリックイベントの追跡とデバッグ:2023年版

エキサイト株式会社デザイナーの鳥井です。 この記事はエキサイトホールディングス Advent Calendar 2023の8日目の記事です。 この記事では、Google アナリティクス 4(GA4)で収集するウェブサイト上でのクリックイベントの追跡とデバッグの方法を紹介しま…

iOS / Android ネイティブアプリから Flutter に移行するときに Pigeon を使ってデータマイグレーションする

エキサイト株式会社の@mthiroshiです。 エキサイトホールディングス Advent Calendar 2023の8日目を担当します。 エキサイトでは、 iOS / Android ネイティブアプリの Flutter によるリビルドを行ってきました。 ローカル DB でデータを管理するアプリの場合…

Javaで正規表現で指定したパターンに、対象の文字列がマッチするかどうかを判定する方法

はじめに こんにちは、新卒1年目の岡崎です。エキサイトホールディングス Advent Calendar 2023の7日目を担当します。 今回はJavaにおいて、正規表現で指定したパターンに、対象の文字列がマッチするかどうかを判定する方法を紹介します。 はじめに Stringク…

【SaaS Design Conference 2023】イベントに行ってきました!

こんにちは!SaaS・DX事業部デザイナーの鍜治本です! エキサイトホールディングス Advent Calendar 2023 シリーズ2の7日目の記事です! qiita.com 去年登壇していたイベント「SaaS Design Conference」に、今回は公聴者として参加してきました! 時間の都合…

Spring Bootで、独自アノテーションを目印にAOPを行う方法

こんにちは。 エキサイト株式会社の三浦です。 こちらは、エキサイトホールディングス Advent Calendar 2023の6日目の記事になります。 qiita.com 良ければ他の記事もどうぞ! さて、コーディングをしている時、「このメソッドが実行される際はログを取りた…

JavaのSpringBootでMyBatisを利用して複数のデータソースに接続する方法

こんにちは、エキサイト株式会社の平石です。エキサイトホールディングス Advent Calendar 2023の5日目を担当いたします。 今回はJavaのSpringBootでMyBatisを利用して、複数のデータソースに接続する方法をご紹介します。 はじめに 前提条件 問題設定 appli…

SpringBootとキャッシュライブラリCaffeineでローカルキャッシュサーバを作成する

エキサイト株式会社メディア事業部エンジニアの佐々木です。2024年アドベントカレンダー2日目を担当させていただきます。 サーバーローカルでのキャッシュはHashMap等で自作してもいいのですが、キャッシュ期限を自作するのは結構面倒なので、Caffeineを使用…

Javaで、文字列内に文字列変数を挿入する方法

こんにちは。 エキサイト株式会社の三浦です。 本記事は、エキサイトホールディングス Advent Calendar 2023の4日目のものになります。 qiita.com 良ければ他の記事もどうぞ! さて、コーディングをしていると、文字列の中に変数で定義してある文字列を挿入…

GitHub Actionsでデプロイした時に、自動的にCSSファイルをS3にアップロードする

はじめに こんにちは、新卒1年目の岡崎です。エキサイトホールディングス Advent Calendar 2023の4日目を担当します。 今回はGitHub Actionsを使って、Amazon ECSにアプリケーションをデプロイした時に、自動的にCSSファイルをS3にアップロードする実装を行…

RiverpodのStreamProviderを使ってPushNotificationを実装してみた

はじめに エキサイト株式会社の高野です。エキサイトホールディングス Advent Calendar 2023の3日目を担当させていただきます。 今回はFlutterにおけるRiverpodのStreamProviderを使ってPushNotificationを実装した話です。 動作環境 Flutter: 3.13.4 hooks_…

MySQL5.7から8.0へAmazon RDS ブルー/グリーンデプロイを使って移行する

こんにちは。エキサイトでエンジニアをしている吉川です。 エキサイトホールディングス Advent Calendar 2日目の記事になります。 私が担当しているサービスで使用しているMySQL DBについて、先日5.7系から8.0系にバージョンアップを行いましたので、ご紹介…

SpringBootとInfinispanの組み込みモードでローカルなキャッシュ機構を作る

エキサイト株式会社エンジニアの佐々木です。エキサイトホールディングス 2023 advent calendar 1日目を担当させていただきます。 qiita.com 今回は、SpringBoot/Javaで、サーバローカルなキャッシュをRedHatが開発しているInfinispanの組み込みモードを使用…

BEAR.Saturdayで画面を作るために必要な三つのコンポーネントの概要

はじめに こんにちは。新卒1年目の岡崎です。エキサイトホールディングス 2023 advent calendar 1日目を担当させていただきます。 qiita.com BEAR.Saturdayでの開発で苦戦しました。 今回の備忘録では、BEAR.Saturdayで画面を作るために必要な三つのコンポー…

Next.jsのLayoutにpropsを渡したい

はじめに BB.excite事業部でエンジニアをしている小川です。 はじめに注意書きですが、本記事ではNext.js 12.x の Layouts機能を取り扱います。 Next.jsのPages Routerには同じ要素を再利用するための機能としてLayoutパターンが用意されています。 また、La…

初めてのオフライン展示会からデザイナーが学んだこと

こんにちは! SaaS・DX事業部デザイナーの鍜治本です! 技術ブログとは毛色が少し異なりますが、エキサイトのSaaS事業部としてオフラインの展示会に出展し、デザイナーとして体験したことをさっくり書き起こします! 出展したイベント概要 展示したもの ブー…

新しく環境を作るために必要なざっくりとしたAWSの知識

はじめに こんにちは。新卒1年目の岡崎です。 今回、初めて内部用のAPIのための環境を作成しました。その時に必要だった知識も分からずに始めたので、その備忘録として記事にまとめます。初めてAWSで環境を作るよ!という人や、まず何から初めて見ればいいの…

デザインのクオリティを上げる一手間!デザインTips集第二弾

はじめに こんにちは、エキサイト株式会社3年目デザイナーの山﨑です。 今回は、デザインのクオリティを上げる一手間!デザインTips集第二弾を紹介したいと思います! ▼前回の記事はこちら▼ tech.excite.co.jp 意外と簡単にできるものばかりなので、ぜひ実践…

Spring Securityで、同一ドメインにて別セッションでログイン管理をする方法

こんにちは。 エキサイト株式会社の三浦です。 Spring Securityでセッションを使ってログイン管理をする場合、基本的にはドメイン単位でセッションが分かれます。 今回は、同一ドメインにて別セッションでログイン管理する方法を説明します。 1. プロジェク…

タスクランナーをgo-taskにする

エキサイト株式会社メディア事業部エンジニア佐々木です。開発で使用するタスクランナーは、一般的にMakefileを使うものが多いかと思います。より簡単なgo-taskを紹介いたします。 インストール タスクファイル 実行 タスク一覧 まとめ 最後に インストール …