Webアプリケーション開発者の方は一度は見たことがある MDN 。MDNの英語以外のドキュメントはコミュニティーによって日々翻訳やメンテナンスされています。
本セッションでは、MDNに日本語翻訳でコントリビュートする方法を0から紹介します。
GitやGitHubの簡単な使い方(git pullやcommit、push)とNode.jsの環境がPCにある方であれば今すぐ翻訳に着手できます。着手までの道筋が日本語翻訳コミュニティーによって明確化されているので簡単に準備→翻訳→ドキュメントに反映されます。
私は MDN Web Docs に日本語翻訳でコントリビュートした経験は少ないですが、初心者の目線で、MDN Web Docs 翻訳の魅力をお話しいたします。
キャリアのVSOPとは、1978年に出版された「自立人間のすすめ」という書籍で提唱された、各年代ごとにどのようなキャリアを積んでいくべきかを体系的に示したものです。
これは、エンジニアとして様々なキャリアの選択肢がある中で、自己成長の道筋を明確にするための重要な指針となります。
現代のエンジニアとしてのキャリア形成をどのように進めていくか、キャリアのVSOPに当てはめた自身の解釈とともに、実際の事例を交えながら解説していきます。
Azure AI services と Semantic Kernelなどを利用した C# のアプリケーションに、 プロンプト管理に役立つPrompty を組み込んだ構成や実装を紹介します。
さらに、AIキャラクターエージェント作成を通じたプロンプト設計やFine Tuning の実践的な内容を共有します。
生成AI関連の学習モチベーションとしてのAIキャラクター開発の良さもお伝えします!
デザインシステムって「ルールの塊」や「UIライブラリ」みたいなイメージを持ちます。でも実際は、それだけではありません。デザインシステムの本質は、 運用を含む仕組み にあります。
たとえば、デザインレビューを通じて品質を保ったり、デザイナーとエンジニアでフィードバックをし合いながら改善を続けたり、変更があったときにガイドラインやドキュメントを更新して全員が迷わないようにしたり。これらの運用があってこそ、デザインシステムは単なるルールやライブラリから「使えるシステム」に進化していきます。
このセッションではプロジェクトでデザインシステムを立ち上げた経験を元に「どう作るか」「どう運用するか」をエンジニア視点でのポイントを紹介します。
再帰関数は関数内で自分自身を再帰的に呼び出す関数です。無名関数とは文字通り名前のない関数のことです。
では、再帰関数は自身の関数内で自分自身を呼び出す際に、自身の名前で呼び出しますが、これを無名関数にすることはできるでしょうか?
このトークでは、再帰関数を無名関数にするための技術をお話しします。主に関数型プログラミングに関連した内容となっております。
特に、大学で情報を専攻していない方や初学者の方に向けて再帰関数って面白いよというのを伝えます。
テストを書くときに「他のクラスや依存関係のせいでテストが難しいな…」と思ったことはありませんか?
そんなときに役立つのが、モックです。
モックを使えば、依存するクラスやインターフェースの動作をモックして、テストをもっとシンプルに、効率的に進められます。このトークでは、モックの基本的な使い方から実際の業務で役立つテストケースまで、具体例を交えて解説します。
取り上げる予定の内容はこちら!
モックを使えば、テストのストレスが軽減され、もっとスマートにテストが書けるようになります!ぜひテストを楽にする方法を学んでください!
Shopifyは、柔軟な拡張性と豊富なAPIを備えたECプラットフォームとして、幅広い開発アプローチを提供してきました。
従来は、Liquidを用いたテーマカスタマイズが主流でしたが、現在ではRemixを基盤としたHydrogenによるフルスタック開発が新しい中心となっています。
本セッションでは、Shopifyのプラットフォームとしての特徴に触れながら、LiquidとHydrogenそれぞれのアプローチを取り上げ、
Hydrogenがもたらす開発の可能性を紹介します。
技術同人誌を書こう。
アウトプットの一つの形としての「技術同人誌」。
書くことで様々なメリットがあります。自分の知識の整理、コミュニティとのつながり、名刺/ポートフォリオとして。何より楽しい。
技術同人誌に関わるようになって20年以上経ちますが、ネタ切れするどころか様々なアウトプット、つながりを日々生み出してくれています。
そんなアウトプットの効能、始め方をご紹介します。
なんか難しいかも?と思ってませんか?そんなことないですよ。
また、技術同人誌の現物を持って行きます。
技術同人誌という世界を知らなかった人はまずは読む方で飛び込んでみましょう。
読んだことあるという方は、書いてみましょう。ハードルが高い?
いえいえ。さくっと始める方法がいくつもありますね。
このトークではLambda + Monolith = Lambdalithの特徴と、それを加速するエコシステムとして AWS Lambda + Hono + CDKを想定し、私が実際にOSSコントリビュートしたことにより如何に活用しやすくなったかを紹介します。
近年 PostgreSQL あるいは(MySQL との互換性を持つ)TiDB などにやや押され気味(?)の MySQL。
MySQL は集計系の複雑なクエリを苦手としていますが、それをカバーする技術として、Oracle Cloud(OCI および on AWS)で HeatWave が提供されています。が、色々なイベントの懇親会で個人的に HeatWave のことを話題に出してみても、残念ながら「知らない」という反応がほとんどでした。
というわけで、本トークでは
などについて触れていきます。
Pythonは動的型付け言語ですが、型を書くこともできます(Python 3.5で追加された型ヒント)。
しかしながら他の言語と比べると、Pythonの型は独特だと思います。
一生懸命型を書いても見るのは型チェッカだけで、処理系は実行時に無視します。
またよく見かける書き方は、実は適切ではありません(発表者はリンタを公開してます)
この発表を通して、ふだんPythonを使っている方には「私もっとうまく型ヒントを書けるな〜」、Pythonを使っていない方には「型の考え方おもしろいな〜」という学びを持ち帰っていただけたら嬉しいです。
持ち帰れるもの
ASP.NET Core Blazor のプロジェクトを新規作成すると色々なコードがあってよくわからないまま使っている人も多いと思います。
ここでは、コンソール アプリケーションを新規作成したところから ASP.NET Core Blazor までを解説をしながら変換していきます。ASP.NET Core の基本やミドルウェアなどについての解説もあわせて行います。
皆さん、GitHub Copilot使ってますか?
コード補完、便利ですよね。
また、分からないことをCopilot Chatで質問できます。
Chat相手には @vscode や @docker と特定のトピックの専門家も指定できます。
さらに、Chat相手を自分用にカスタマイズして実装できる機能がGitHub Copilot Extensionsです!
私はCopilot Extensionsを11月に知ってから、JavaScriptで書かれたサンプルコードを、手に馴染むPythonで再実装してきました。
発表を聞いた方が、GitHubのAPIを利用した独自のChat相手を手に馴染む言語で作れるよう、得た知見を共有します。
持ち帰れるもの
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開発を楽しく経験してみましょう
ウェブアプリはスマホOSのネイティブアプリと比べて、動きやジェスチャーといった動的な要素が控えめだと思います。しかし、これらの要素を適切に取り入れるだけで、アプリケーションをより直感的で楽しい体験に変えることができます。
モーションの実装というと「難しそう」、「時間がかかりそう」と感じる方も多いかもしれませんが、Motion(旧Framer Motion)を利用することで簡単かつ効率的に実現できます。本セッションでは、具体的な実装例を交えながら、ネイティブアプリに近いインタラクションをウェブで実現する方法を解説します。
ReactフレームワークのRemixを用いた業務管理アプリケーション開発の実体験をもとに、Remixのデータ取得・更新における複数の実装パターンを比較・解説します。
<Form>
やuseFetcher
などURLに紐付いてデータリクエストを扱う豊富なAPIが特徴ですが、それぞれの特徴と仕様を正しく理解していないと、どのAPIを選択して実装すべきか、実装時にどのようにハンドリングすべきかで混乱してしまいます。
さらに、このトピックに関する情報源も限られているのが現状です。
そこで、それぞれのAPIを用いたRemixアプリケーションの設計パターンを実装例と共に紹介します。
Remixアプリケーションの設計を検討されている方にとって、特に有益なセッションとなるでしょう。
Fluentdは、Rubyで実装されたオープンソースのデータ収集・ログ管理ツールです。多様なデータソースからログを収集・変換し、さまざまな解析システムに送信する機能を備えているアプリです。
一般的なアプリと同様にFluentdのアップグレード作業には一時的な停止が必要で、ログの損失を最小限に抑えるためには深夜や専用のメンテナンス時間を確保するなどの運用上の課題がありました。
ダウンタイムが発生せず、オフィスアワーでアップグレードができたら、快適な睡眠が確保できて素敵だと思いませんか?
このトークでは、ゼロ・ダウンタイムアップグレードを実現するための具体的な技術的手法について紹介します。
シンガポール本社企業のCOOとして働く室長〈Microsoft Regional Director(2020-)/Microsoft MVP for Business Applications(2015-)〉が、バラバラ殺データ事件に遭遇する確率は、どうやらかなり高いようです。
本セッションでは、オートモーティブ業界の国内外で散見される課題を題材に、より少ない労力で、より多くの事を達成する【Do more with less】ことの重要性と、その一つの解決策になり得るMicrosoft CopilotとMicrosoft Business Applications について、デモンストレーションを交え解説致します。