Connect-goとVSCode Dev Containerを用いた快適なgRPC開発環境構築
こんにちは!モンスターラボで Backend チームに所属している植田です。 最近関わったプロジェクトで、gRPC を使おうという話があがったため、サクッと快適な開発環境を立ち上げる方法について、あれこれ試行錯誤をしました。 本記事ではその方法についてご紹介します。 コードは Connect-go のチュートリアルをベースとして使用しました。Dev Container でコンテナ開発環境を構築し、Air などを使用して Hot Reload を導入し、protoc-gen-validate を使用して v...
GoogleのDialogflowを使ったチャットボットの作り方
私たちは毎日のように様々な場面で、"ねぇ Google"、"OK Google"、"音楽をかけて"、"電気をつけて" と音声アシスタント機能を使用していますが、その背景で何が起こっているのか考えたことはありますか?このようなシステムがどのように機能するかを調べるために、ml-bot という名前の小さなチャットボットを作りました。 Dialogflow とは? Dialogflow は Google の AI サービスで、多言語で利用できます。 これを使うことで、会話型の音声ボットやチャットボットを簡単に...
イベント駆動アーキテクチャの入門
スケーラブルでパフォーマンスと保守性に優れたエンタープライズサービスを構築する必要性が高まる中、その解決策としてマイクロサービスやイベント駆動アーキテクチャがよく持ち出されますが、こうしたアーキテクチャでサービスを構築する場合、どのような点に留意すべきでしょうか。 はじめに 本記事では、イベント駆動アーキテクチャを利用する動機、コアとなる概念、主な課題について解説します。 また、バックエンドに NestJS、通信ツールに RabbitMQ を使用し、イベントやメッセージングを扱うイベント駆動アーキテクチャ...
FlutterFlowによるアプリ開発の効率化:入門
はじめに: 目まぐるしく変化をしていく現代では企業や開発者にとって、堅牢で使いやすいモバイルアプリケーションを作ることは非常に重要です。しかし、アプリの構築プロセスは複雑で時間がかかることがあります。その点で、FlutterFlowが大いに役立ちます。FlutterFlowは、GoogleのFlutterフレームワークを使用してアプリ開発プロセスを簡素化する強力なビジュアル開発プラットフォームです。本記事では、FlutterFlowの特徴と利点、そしてどのようにアプリ開発のワークフローを革新できるのかにつ...
フロントエンドエンジニアのフルスタック修業 - with Serverless Framework
フロントエンドエンジニアとして、フルスタックエンジニアになることは大変難しい事に思えるかもしれません。しかし、適切なツールと知識を持っていれば、フロントエンドとバックエンドの両方のロジックと機能を組み込んだ、スケーラブルな Web アプリケーションを構築することが可能です。この記事では、Universal JavaScript を使用して、インフラや API 機能のための Serverless Framework、CI/CD のための GitHub Actions を組み合わせて、フルスタックアプリケー...
FlutterでのChatGPTの統合
はじめに ChatGPTは、非営利団体のOpenAI Inc.とその子会社である営利企業OpenAI LPで構成される人工知能研究所であるOpenAIによって開発された大規模な言語モデルです。 OpenAIは、人類全体に利益をもたらす形でデジタルインテリジェンスを前進させることを目的として2015年に設立されました。彼らは、最先端のAI技術の開発、研究の実施、そしてAIの責任ある使用と安全な展開を推進することに重点を置いています。OpenAIの最も有名な成果の1つは、ChatGPTが含まれるGPT(Gen...
Flutter on the Webを触ってみた
はじめに こんにちは、モンスターラボでフロントエンドエンジニアとして働いている清水です。 モンスターラボでは最近 Flutter を使用したアプリ開発案件が増えて来ているようです。 私自身 Flutter に興味あったので、Flutter on the Web を使用して簡単な Web アプリを作成してみようと思います。 実際に作ってみたもの 今回は映画情報を表示するアプリケーションを作成してみました。 開発時の主なポイントとしては、以下となります。 The Movie Database APIを使用し...
Dev with AI
モンスターラボの開発におけるAI技術活用について 当社では、AIを活用した設計やコーディング支援ツールの導入により、開発プロセスの効率化と品質向上に取り組んでいます。 ChatGPT ChatGPTは、OpenAIが開発した言語モデルであり、当社の設計プロセスにおいて活用しています。ChatGPTを用いることで、設計メンバーが提案するドキュメントの品質向上が期待できます。ChatGPTは自然言語処理を利用しており、提案されたドキュメントを解析し、適切なフィードバックを提供することができます。また、Chat...
Jetpack Composeでナビゲーションパラメータ、ダイナミックなstartDestinationを実現
私たちのチームは最近、2つの別々のAndroidアプリケーションを必要とするクライアントとのコラボレーションで、Jetpack Composeと全く新しいプロジェクトを行う機会を得ました。このプロジェクトは無事リリースされ、クライアントは最終製品に非常に満足していました。 このブログでは、Jetpack Compose ナビゲーションのパラメータの扱いについて、特に最初はかなり厄介だったので、その過程で得たいくつかの学びを共有したいと思います。 執筆時点では、Jetpack Compose Navigat...