JavaScript や TypeScript を主に使っているエンジニアにとって、OpenTelemetry はあまり馴染みのない技術かもしれません。しかし、Next.js が公式にサポートしていたり、最近では Deno もビルトインでの対応を進めているなど、OpenTelemetry は次第に身近な存在になっています。
この発表では、まず OpenTelemetry の概要を説明します。その後、JavaScript におけるOpenTelemetry の対応状況や、Node.js サーバーのモニタリングに OpenTelemetry を活用する方法を紹介します。さらに、Web フロントエンドでの OpenTelemetry の活用方法についても説明し、多くのエンジニアにとって OpenTelemetry がより身近に感じられる内容を目指します。
SpringBootは、Webアプリケーションフレームワークというのが
一般的な認識だと思いますが、Batch処理を作ることも出来ます。
使うライブラリで一番最初に候補に出てくるのはSpring Batchだと思います。
もちろんSpring Batchでも良いのですが、独特な部分が多く、つまずきポイントが
多いのではないでしょうか?
そこで、少しマイナーですが、Spring Shellというライブラリも存在します。
Spring Shellの使い方について説明します。
Robocode は、対戦型のロボットシミュレーションゲームです。
ロボット(戦車型ロボット)をプログラミングして、他の人が作ったロボットコードと対戦させることが可能です。
ロボットを動作させるフレームワークが用意されているので、ロボットコードの作成に専念することができます。
対戦で勝ち残るために色々と工夫してプログラミングしていくことで、楽しくプログラミングが学習できるようになっています。
当初、プログラミング言語には Java が採用されていましたが、最新版では .NET(C#など)もサポートされていて、JavaScript、Pythonで作ることもできるようです。
こちらをベースにAI開発を楽しく経験してみましょう
最近では、Reactを使ってアニメーションを実装するシーンでは、Motionが人気です。
Webアニメーションの実装では、古くからGSAP(GreenSock Animation Platform)が有名でした。特にタイムラインという形のAPIで動画編集のようにアニメーションの変化を指定できるAPIが人気でした。
しかしながら、GSAPとは違いタイムラインに基づくアニメーションを実装するためのAPIがMotionには提供されていません。
本LTでは、Motionを使用してタイムラインをベースしたアニメーションの実装例を紹介します。
ウェブアプリはスマホOSのネイティブアプリと比べて、動きやジェスチャーといった動的な要素が控えめだと思います。しかし、これらの要素を適切に取り入れるだけで、アプリケーションをより直感的で楽しい体験に変えることができます。
モーションの実装というと「難しそう」、「時間がかかりそう」と感じる方も多いかもしれませんが、Motion(旧Framer Motion)を利用することで簡単かつ効率的に実現できます。本セッションでは、具体的な実装例を交えながら、ネイティブアプリに近いインタラクションをウェブで実現する方法を解説します。
ReactフレームワークのRemixを用いた業務管理アプリケーション開発の実体験をもとに、Remixのデータ取得・更新における複数の実装パターンを比較・解説します。
<Form>
やuseFetcher
などURLに紐付いてデータリクエストを扱う豊富なAPIが特徴ですが、それぞれの特徴と仕様を正しく理解していないと、どのAPIを選択して実装すべきか、実装時にどのようにハンドリングすべきかで混乱してしまいます。
さらに、このトピックに関する情報源も限られているのが現状です。
そこで、それぞれのAPIを用いたRemixアプリケーションの設計パターンを実装例と共に紹介します。
Remixアプリケーションの設計を検討されている方にとって、特に有益なセッションとなるでしょう。
国のルールである「法律」は、一見するとプログラミングとは無縁の存在ですが、法律の姿を複数の視点から捉えてみると、意外にもコンピュータプログラムやシステム開発と共通する興味深い特徴が数多く浮かび上がります。
そのために、システムのプログラムの刷新は、まるで法律を大改正するような注意と配慮が必要になります。
本セッションでは、私が現職で取り組んでいるSaaS製品のフロントエンド刷新プロジェクトの事例と現状を紹介し、一方で「法律の脱レガシー」に近い取り組みの1つである「法律の現代語化」にも触れて両者の共通点を考察。法律の現代語化の一事例の顛末を教訓としてフロントエンド刷新プロジェクトの今後の注意点を探ります。
フロントエンド刷新の進め方や難点を学べるだけでなく、難解なイメージを持たれがちな法律の存在を身近に感じることもできる一粒で二度おいしい発表です!
Fluentdは、Rubyで実装されたオープンソースのデータ収集・ログ管理ツールです。多様なデータソースからログを収集・変換し、さまざまな解析システムに送信する機能を備えているアプリです。
一般的なアプリと同様にFluentdのアップグレード作業には一時的な停止が必要で、ログの損失を最小限に抑えるためには深夜や専用のメンテナンス時間を確保するなどの運用上の課題がありました。
ダウンタイムが発生せず、オフィスアワーでアップグレードができたら、快適な睡眠が確保できて素敵だと思いませんか?
このトークでは、ゼロ・ダウンタイムアップグレードを実現するための具体的な技術的手法について紹介します。
OSS(オープンソース・ソフトウェア)の開発に参加したことはありますか?
それはハードルが高いな、と思ったそこのあなた、実は少しコツをつかめば誰でも気軽に参加できるんです!
このトークでは、その最初の一歩を支援する取り組み「OSS Gate」について紹介します!
OSS開発に興味がある方、世界を広げたい方、社員教育の題材をお探しの方などに、
「OSS Gate」という面白い取り組みがあることを知っていただき、今後活用していただければと思います。
「OSS Gate」は、OSS開発に参加する「入り口」を提供する取り組みです。
定期的に有志のワークショップを開催し、OSS開発をみんなで体験しています。
様々なソフトウェアの開発を、世界中のエンジニアと一緒に、自由にできる、
そんな魅力的なOSS開発の世界への「入り口」として、ぜひ「OSS Gate」をご活用ください!
シンガポール本社企業のCOOとして働く室長〈Microsoft Regional Director(2020-)/Microsoft MVP for Business Applications(2015-)〉が、バラバラ殺データ事件に遭遇する確率は、どうやらかなり高いようです。
本セッションでは、オートモーティブ業界の国内外で散見される課題を題材に、より少ない労力で、より多くの事を達成する【Do more with less】ことの重要性と、その一つの解決策になり得るMicrosoft CopilotとMicrosoft Business Applications について、デモンストレーションを交え解説致します。
Open UIは、Web プラットフォーム全体のInteroperabilityをUIの側面から高めることに取り組む、W3CのCommunity Groupです。
本セッションでは、<select />
の進化とGlobal Design Systemの話を交えつつ、UIにおけるWebの歴史的変遷、課題、そしてWeb UIのこれからの展望を包括的に紐解きます。
富山での教員時代の原体験をもとに、富山で開発した個人開発サービス『席替えメーカー』についてお話します。
『席替えメーカー』は、学校の業務を改善し、教員の負担を軽減することを目的として開発したWebサービスです。
2021年3月にリリースしてから、累計ユーザー数は50万人を突破し、今では日本中の教員の方が使ってくださるサービスに成長しました。
本セッションでは『席替えメーカー』の紹介だけでなく、サービスをリリースするまでの開発の過程や、実際にターゲットとしていた教員の方にサービスを認知してもらうために行ったマーケティング施策など、複数の観点でお話します。
ただサービスを開発するだけでなく、実際に多くの方に使ってもらえるようなサービスに育てたいという想いを持った方のお役に立てるようなセッションにしたいと思います。
Azure AI Servicesの背後にあるAI Platformの仕組みをシンプルに解説します。データ処理からモデルの構築・デプロイまで、Azureが提供するAI基盤の全体像を探りながら紹介します。データの収集と前処理において、データパイプラインの構築方法を解説します。また機械学習モデルの構築とトレーニングでは、モデルの開発、ハイパーパラメータのチューニング、モデルの評価方法について紹介します。さらに、モデルのデプロイと運用では、スケーラブルなデプロイ方法を紹介します。
RailsとAmazon Auroraの接続における、DBのフェイルオーバー発生時の接続の問題とその解決策について話します。 具体的にはRailsのコネクション管理、様々なgemの使用の検討やクラウド側での運用による回避策の検討、そして最終的に選定したRDS Proxyの導入について詳しく解説します。
このセッションを通じて、トラブル発生時でもアプリケーションを正常に稼働し続けられるための技術選定や運用コストの比較を、アプリケーション側とクラウド側の両方の視点で伝えます。また、RailsアプリケーションとAuroraの接続に関する実務的な知見を共有し、技術的な課題の解決に向けた一助となることを目指します。
JSONのユニークな利用例として自作言語「ExprML」の開発について紹介します。
ExprMLは「JSONで式を記述」「他言語に組み込み可能」をコンセプトとした自作言語です。「汎用データ記述フォーマットJSON」と「JSONの型・制約を規定するJSON Schema」を活用することで次の開発上の利点を実現します。
発表では上記解説の他に以下のデモを実施します。
サービスを作る上で、維持費と収益を獲得できるかどうかは、非常に重要な要素です。
StripeのDeveloper Relationsとしてユーザーや社内のプロジェクトに関わった経験と、
前職や個人開発におけるマネタイズに関する経験と想いを元に、ウェブサービスを開発する際のマネタイズ手法や料金モデル、そしてリリース後に発生しがちな請求管理に関するアレコレを紹介します。
トピックの例
・初期フェーズで決済・サブスクリプション機能の開発をやるべきか否か?
・開発工数と売上は比例しない話
・本当にあった、サブスクリプション請求管理で頭が痛くなる話
GitHub Copilotをはじめとする生成AIツールの登場により、コード上でのインタラクティブなサポートや、組織のコードベースを活用した開発が可能になった今、開発者には「生成AIとのコラボレーションを強化できるコードベース」を育てることが求められます。
このセッションでは、DevOpsの歴史を振り返り、IaC(Infrastructure as Code)など「X as Code」の概念がどのように生まれ、インフラやパイプライン、構成管理のコード化が開発プロセスをどう変えたのかを概観します。そして、GitOpsという新たな開発文化の可能性を探り、生成AI時代に適したコードベースの構成や運用のための技術プラクティス、組織的な課題についてお話します。
プログラミング言語にはドキュメンテーションの仕組みがあります。Rubyには標準添付ライブラリとしてRDocというツールと記法が存在しますが、広く使われているのは標準ではないYARDというツール及び記法であるなどエコシステムが統一されていません。
そこで私は今、標準添付であるRDocに各種ツールを統合するための基盤整備を行っています。具体的にはRDocに拡張機能の仕組みを導入することで、将来的なドキュメンテーションへの要求にRDocのみで応えられるようになることを目指します。このプロジェクトは2024年度Rubyアソシエーション開発助成にも採択されています。
このトークではRDoc拡張機能基盤プロジェクトの概要とこれまでの進捗を説明し、さらにRubyにおける「たのしいドキュメンテーション」という最終目標に関連したいくつかの計画についてお話できればと思います。
2021年にGartne社が提唱したCloud Native Application Protection Platforms(以下CNAPP)はそれ以降、多くのベンダーによってクラウドセキュリティ、クラウドネイティブセキュリティ向けに開発されたセキュリティ機能を多く取り込むようになりました。サイロ化されていた機能が一つのプラットフォームで活用できるようになることで優れた相関効果を期待することができます。仮想マシンインスタンスや仮想ネットワーク、コンテナやサーバーレス、CI/CDパイプライン向けに留まらず、昨年からは生成AI向けセキュリティ機能も有するベンダーが登場してきました。
本公演では、クラウドベンダー・サードパーティベンダーのCNAPPが有するセキュリティ機能の紹介と企業利用における導入・運用課題について解説したいとおもいます。
サイバー攻撃への対策として、近年はEDRやXDRのような攻撃検知製品が企業環境で盛んに導入されています。日々進歩するサイバー攻撃技術に対策するべく、Windows OS自体にも様々なセキュリティ機能が導入されており、EDRやXDRのような攻撃検知製品でもそれらの機能を攻撃検知に活用しています。本講演では、こうしたWindows OS自体に組み込まれているセキュリティ機能を中心に、EDRやXDRの機能の実装を支えている技術について実演を交えて解説します。