Webアプリケーション開発者の方は一度は見たことがある MDN 。MDNの英語以外のドキュメントはコミュニティーによって日々翻訳やメンテナンスされています。
本セッションでは、MDNに日本語翻訳でコントリビュートする方法を0から紹介します。
GitやGitHubの簡単な使い方(git pullやcommit、push)とNode.jsの環境がPCにある方であれば今すぐ翻訳に着手できます。着手までの道筋が日本語翻訳コミュニティーによって明確化されているので簡単に準備→翻訳→ドキュメントに反映されます。
私は MDN Web Docs に日本語翻訳でコントリビュートした経験は少ないですが、初心者の目線で、MDN Web Docs 翻訳の魅力をお話しいたします。
キャリアのVSOPとは、1978年に出版された「自立人間のすすめ」という書籍で提唱された、各年代ごとにどのようなキャリアを積んでいくべきかを体系的に示したものです。
これは、エンジニアとして様々なキャリアの選択肢がある中で、自己成長の道筋を明確にするための重要な指針となります。
現代のエンジニアとしてのキャリア形成をどのように進めていくか、キャリアのVSOPに当てはめた自身の解釈とともに、実際の事例を交えながら解説していきます。
純粋関数という言葉をご存知でしょうか?
引数が同じなら常に同じ結果を返し、副作用のない関数を純粋関数と言います。
この純粋関数の基礎的な部分から、純粋関数を使うことによる良さを説明します。
そして、既存の関数を少しずつリファクタリングしていく過程を通して、開発に組み込むことを支援します。
目次は次の通りです。
サンプルコードの言語はJava/TypeScriptを利用する予定ですが、設計パターンの一つとしてどの言語でも役に立つ考え方となります!
なおこのセッションでは以下を目的としません
高齢の親など、離れて暮らす家族に異常がないか、見守るためのテクノロジーについて
私が実践していることを話します
既製品を使う方法(スマートスピーカ、監視カメラ、活動がわかる家電)
自分で開発する方法(RaspberryPiでセンサデータやカメラ映像解析)
などを解説します
スマートホーム化は見守りが必要な高齢者宅の方がメリットが大きく
親が高齢化するにあたって、誰しもが必ず直面する問題です。
現状の最新の見守りテクノロジーを知ると同時に、将来に備えることが大事です
またその過程で起きた不思議なバグ、祖母が就寝するとDBインサートが失敗するという現象について
物理現象と連動するシステムの不思議なバグについて話します
主にQiitaでバズったこの記事について話します
https://qiita.com/bohemian916/items/46f9f1e8bb32fc0a1f99
Azure AI services と Semantic Kernelなどを利用した C# のアプリケーションに、 プロンプト管理に役立つPrompty を組み込んだ構成や実装を紹介します。
さらに、AIキャラクターエージェント作成を通じたプロンプト設計やFine Tuning の実践的な内容を共有します。
生成AI関連の学習モチベーションとしてのAIキャラクター開発の良さもお伝えします!
私が携わっているプロダクトでは、GraphQLを採用しており、周辺ライブラリにはHasura、gqlgen、Apollo Client、GraphQL Code Generatorなどを使用しています。
私は開発初期から参画し、技術選定からローンチ、運用に至るまで一貫して担当してきました。
このセッションでは、それぞれの技術選定を振り返り、実際に良かった点や課題に感じた点を率直にお話しします。
さらに、これらの経験を踏まえ、もし同じプロダクトをゼロから開発するとしたら、どの技術を選び、何を考慮するかについて紹介します。
デザインシステムって「ルールの塊」や「UIライブラリ」みたいなイメージを持ちます。でも実際は、それだけではありません。デザインシステムの本質は、 運用を含む仕組み にあります。
たとえば、デザインレビューを通じて品質を保ったり、デザイナーとエンジニアでフィードバックをし合いながら改善を続けたり、変更があったときにガイドラインやドキュメントを更新して全員が迷わないようにしたり。これらの運用があってこそ、デザインシステムは単なるルールやライブラリから「使えるシステム」に進化していきます。
このセッションではプロジェクトでデザインシステムを立ち上げた経験を元に「どう作るか」「どう運用するか」をエンジニア視点でのポイントを紹介します。
再帰関数は関数内で自分自身を再帰的に呼び出す関数です。無名関数とは文字通り名前のない関数のことです。
では、再帰関数は自身の関数内で自分自身を呼び出す際に、自身の名前で呼び出しますが、これを無名関数にすることはできるでしょうか?
このトークでは、再帰関数を無名関数にするための技術をお話しします。主に関数型プログラミングに関連した内容となっております。
特に、大学で情報を専攻していない方や初学者の方に向けて再帰関数って面白いよというのを伝えます。
エラーが発生したとき、ログを追ったりデバッグを繰り返したりするのは大切な作業ですよね。でも、それだけだと「エラーが起きた後の対処」に留まってしまいます。もっと良い方法があるとしたら?
設計の段階から、エラーが「見つけやすい」仕組みや「そもそも起きにくい」コードの書き方を取り入れることで、システムの信頼性がグッと上がり、あとから困ることも減ります。
このセッションでは、例外の基本的な役割や考え方から始めて、PHPやJavaのように例外を持つ言語と、RustやGoのように例外を使わない言語のエラーハンドリングを比較。それぞれの特徴を活かした設計方法をお話します。難しい話だけでなく、「こうすれば実務で役立つ!」という具体例も紹介しますので、チームのディスカッションにもぜひ活用してください!
Java言語仕様まわりのトピックスを取り上げます。
2024年3月 Java 22
2024年9月 Java 23
2025年3月 Java 24
での更新内容などについて1年ぶんをまとめます
JavaのWebアプリケーションはJava EEを基本としてサーブレット/JSPを中心に作られていましたが、Spring Bootが主流になるなどJava EE / Jakarta EEの存在感は薄れてきています。また、クラウドやコンテナが使われるようになり、QuarkusやMicronautなどフルスタックのフレームワークもあらわれはじめ、標準規格としてもMicroProfileが活動をはじめました。
このセッションでは、リクエスト処理のフレームワークについて命令形式・宣言形式・コンポーネント形式の3つにわけて紹介し、それらの実行環境についてクラウドにあわせてどのような変化があったかを整理して現状を紹介します。
テストを書くときに「他のクラスや依存関係のせいでテストが難しいな…」と思ったことはありませんか?
そんなときに役立つのが、モックです。
モックを使えば、依存するクラスやインターフェースの動作をモックして、テストをもっとシンプルに、効率的に進められます。このトークでは、モックの基本的な使い方から実際の業務で役立つテストケースまで、具体例を交えて解説します。
取り上げる予定の内容はこちら!
モックを使えば、テストのストレスが軽減され、もっとスマートにテストが書けるようになります!ぜひテストを楽にする方法を学んでください!
これまで、地図やGPSを活用したアプリケーションをいくつか開発してきました。その際、現場で役立つアプリを設計するために、私が工夫したことを話します。具体的には、「スマホの機能(GPS・加速度センサ・カメラ)を活用して、ゴルフ場で距離・高低差を測り、弾道をシミュレーションする方法」と「緯度経度情報をもとに、AR空間にオブジェクトを配置するための、位置と回転の計算方法」について説明します。イベントに参加される方々の技術的背景は様々とのことなので、実装の詳細には触れず、あらゆる言語環境に応用可能な「考え方」をお話しできるように努めます。
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 の基本やミドルウェアなどについての解説もあわせて行います。