2024-01-01から1年間の記事一覧
技術の世界では、今日の王者も昨日は挑戦者でした。その最も象徴的な例の一つが、AppleのiPhoneです。Tony Fadellの著書「Build」は、このiPhoneの開発秘話を通じて、革新的な製品開発の本質に迫ります。今回は、この書籍から得られる洞察を、現代の挑戦者た…
VercelのAI SDKを使って、LLMの出力を構造化しながらストリーミングする方法をサンプルコードと共に紹介します。
近年 Bubble や Webflow、日本だと STUDIO などのノーコードプラットフォームが注目を集めています。これらのツールは、プログラミングの知識がなくてもユーザーが思い思いの UI を構築できる機能を提供し、アプリケーション開発の民主化に貢献しています。 …
こんにちは。情シスの @kaze3desu です。 このたびROUTE06では、ゼロトラストセキュリティの実現に向けて、Jamf Connectを導入しました。 Jamf Connectの導入を検討している方向けに、ポイントをまとめました。 Jamf Connectとは Jamf Connectは、Appleデバ…
LLMを利用したアプリケーションの開発において、オブザーバビリティ(Observability)確保のためにLangfuseを導入しました。 本格的な運用はこれからとなりますが、Langfuseが解決する課題についてツールの検討を通して得た知識を纏めます。 LLMOpsとObservabi…
こんにちは。情シスの @kaze3desu です。 このたびROUTE06では、ゼロトラストセキュリティを実現するために、IdPとしてOktaを導入しました。 Oktaの導入を検討している方向けに、ポイントをまとめようと思います。 Oktaとは Oktaは、クラウドベースのアイデ…
Zedに追加されたREPL機能と、Denoを使って、REPLでTypeScriptを実行する手順やデモを紹介します。
こんにちは。ソフトウェアエンジニアの id:masutaka26 です。最近は社内プロダクトの OSS 化を推進する活動をしています。 先日、GitHub の Issue テンプレートを調査しました。その中で Supabase が参考になったので共有します。 1. New Issue からの導線 …
概要 OktaとGitHub Enterprise CloudをSAML連携させるために、Oktaのアプリ統合カタログにある「Github Enterprise Cloud - Enterprise Accounts」を使ってSSO(シングルサインオン)を実現しました。 実現できたこと プライベート環境と仕事環境の切り分けが…
こんにちは、ROUTE06 でソフトウェアエンジニアをしている@MH4GFです。 私が関わるリポジトリでの共通言語を日本語から英語に変えることになり、既存のコードベースに散在する日本語文字列を一括で変換する方法を模索しました。 最終的に jscodeshift と Ope…
コードエディタのZedを紹介します。1年ほど使ってみて感じたZedの特徴、例えばVimライクな操作性や高速な応答性能、多言語サポート、AI機能などについて紹介しています。また、リアルタイムコラボレーション機能やオープンソース化後の開発状況、現時点での…
Next.jsのRoute Handlerでレスポンスの型情報を推論するType Aliasを紹介します。ZodやValibotなどのスキーマバリデーションライブラリを使用するアプローチとの比較も。
Yjsは、リアルタイム共同編集を実現するためのアルゴリズムとデータ構造を提供するフレームワークです。Notion や Figma のように、1 つのコンテンツを複数人で同時に更新する体験を提供することができます。 Y.Map, Y.Array, Y.Text といった共有データ型を…
開発者がプロダクトマーケティング思考を知ることの意味や目的をLOVEDという書籍を引用しながら紹介します。
Tailwind CSSの手軽さを活かしながら、より柔軟なスタイリングを実現するためのライブラリClass Variance Authority(CVA)をコード例を交えて紹介します。
ROUTE06 でソフトウェアエンジニアをしている @MH4GF です。 GitHub のマージキュー(Merge Queue)を私のチームでの開発フローに取り入れてから数ヶ月経ちました。マージキューは非常に便利ですが、挙動の理解やセットアップに難しさがあると感じています。い…
こんにちは。ROUTE06 Tech Blogの編集チームです。ROUTE06のエンジニア対談を連載でお届けします。 第8回は、CTOの重岡 正さんと岩井 大志(さとし)さんです。Web開発から事業会社での自社開発まで、エンジニアとして幅広い経験を積んできた岩井さん。新し…
ハイサイ ROUTE06でエンジニアリングマネージャーをしている沖縄生まれ沖縄育ちの @tamaseyo です。 今回は沖縄で開催された RubyKaigi 2024 の様子をお届けします。 ゆたしくうにげーさびら!(沖縄の方言でよろしくおねがいします という意味です) RubyKa…
OpenAI Assistants APIのFile searchにWebサイトを追加する方法を紹介します。
こんにちは。ROUTE06の技術広報Bです。TSKaigi 2024の参加レポートをお届けします。 TSKaigi 2024とROUTE06協賛の背景 TSKaigi 2024とROUTE06が協賛した背景については以下の記事をご覧ください。 route06.co.jp ROUTE06のメンバーも現地&オンライン参加 RO…
CodiumAIが提供しているPR-AgentとAzure OpenAI、GitHub Actionを組み合わせて、AIコードレビューを実現する方法と、使ってみた感想を紹介します。
ROUTE06 でソフトウェアエンジニアをしている @MH4GF です。私が関わるプロダクトでは認証や認可に Amazon Cognito を使っており、 React で実装したフロントエンドアプリケーションから Amazon Cognito との接続には AWS Amplify が提供している Auth ライ…
私のチームでは Event Sourcing と Hybrid-CQRS を採用してプロダクトを開発しています。なぜ Event Sourcing、Hybrid-CQRS を採用したのか、実際に開発してみてどうだったのかを共有することで、なにか参考になるところがあればと思います。 なぜ Event Sou…
こんにちは。hiroppyです。2023年7月に技術顧問として参加させていただき、半年経ちましたので、今回は自分からみたROUTE06社の印象と何をしているかを話したいと思います。 一言でいうと、組織が大きくなっていることが実感できた半年でした。 最初の印象 …
はじめに: 弊社のとあるEDI(電子商取引)関連のプロダクトでは、Ruby on Railsを利用してGraphQL APIを提供しています。 その開発活動の中で最近、コードの品質と整合性を維持するためのツールとして rubocop-grep を利用し始めました。 この記事ではその具体…
チームでReactを使って開発していると、コードレビューをする際に、「この書き方はしない方がいいが、それを説明するには800文字くらい必要。図も描きたい。でもそれらを準備する時間はない。」ということが度々ありました。 また、フレームワークやライブラ…
こんにちは。ROUTE06 Tech Blogの編集チームです。ROUTE06のエンジニア対談を連載でお届けします。 第7回は、CTOの重岡 正さんと玉代勢 靖さんです。 前職で、マネジメントと開発の現場、両方の立場からシステム開発に関わってきた玉代勢さん。今後のキャリ…
ROUTE06 にて業務委託でフロントエンドエンジニアをしている 寺嶋 です。 先日、私が開発に参画している to B サービス(以下、本サービス)にて一部機能を Server-Driven UI へ移行しました。 本記事ではその移行事例について紹介します。 ※一般に公開して…
こんにちは、ROUTE06 でソフトウェアエンジニアをしている@MH4GFです。 この記事では、urqlの Document Caching における additionalTypenames についての説明と、実運用でどのように扱うべきかという私見を書きます。最後に、提案する方針を後押しするため…
Microsoft Azure上に閲覧制限をかけたフロントエンドのデプロイ環境を用意できるStatic Web Appsを紹介します。