Web標準のHTTPクライアントfetch()でストリーミングしながらアップロードできるようになる。
エンジニアお茶会 2020/08/19 pastak.icon @pastak この発表のゴール 現代のウェブブラウザの目指している方向性について紹介する モダンブラウザで使える最新の面白便利APIを紹介する ちゃんと仕様に入りそうなもの(Googleの力技で…も含む) (前半の各ベンダの話はpastak.icon個人の見解を含みます) 次ではない フロントエンドなんでも相談室 前提知識のコーナー "WebAPI"とは何を指すのか、標準化について ECMAScript Ecma InternationalにてECMA-262という規格番号 ほぼLiving Standardという雰囲気もあるけど、年に1回タグが付く ES2020: ECMAScript® 2020 Language Specification 最新の様子: https://tc39.es/ecma262/ Array、Nu
三体の邦訳を黒暗森林まで読んだんだけどさ ムズくね? いや俺はわかるよ?大学院で化学の勉強をしたゴリゴリの理系だから でも文系にはムズくね? 日頃からSF読みまくってるとかじゃなきゃムズくね? そもそも三体問題からして難解じゃん 俺は大学の基礎物理学の講義で勉強したけど、理系の高等教育を受けないと普通は三体問題なんて知らないでしょ?なんで知ってるの?知らなかったけど解説を読んで理解した?それはそれですごくね? 智子の話も理解できたの?低次元展開した智子の表面をエッチングしてスーパーコンピューターにするとかさあ、理解できた?無理じゃね?俺もそんなによくわかってないのに 水滴が強い相互作用で結合した物質からできてるとかさあ、わかった?強い相互作用って何かわかる?普通の物質はどんな相互作用でつながってるかわかる?俺もよくわからないんだけど 公理とかわかる?公理。聞いたことある?馬鹿にしてないぞ、
Firefox / Safari MozillaはMozilla Specification Positionsというリストを公開しています。 IETFやW3C、TC39などが提唱しているWeb技術に対して、Mozillaはどのように評価しているかという立ち位置を表明したものです。 あくまで現時点での評価であり、もちろん今後の仕様変更などに伴い評価は変わる可能性があります。 Mozilla's Positions Mozillaはどのように評価しているかの分類。 under consideration 評価の検討中。 important 優れた概念であり、Mozillaにとっても重要である。 worth prototyping 優れた概念であるが、プロトタイプを作成し、フィードバックを得て磨きをかける必要がある。 non-harmful 有害ではないが、良いアプローチではなく、取り組む価値
現在ピグ事業部の主力サービスである「ピグパーティ」でサーバーサイドエンジニアをしております新卒2年目の川口です。普段はSRE関連の業務を主とし、サーバーサイドの業務効率改善や、システムの運用保守、時には機能の開発や修正なども担当しております。 ピグパーティは、2015年にiOS/Androidでリリースされたアバターコミュニティアプリで、サーバーサイドはNode.js(JavaScript)+MongoDBを採用しています。 ピグパーティではこれまでにプライベートクラウドからGCPへの移設、Kubernetes(GKE)の採用など、技術的負債の排除や新技術の採用などを積極的に行ってまいりました。今回は、サーバーサイド開発時の大きなボトルネックになっていた、型がわからないことに起因する複数の問題を解決するために、TypeScriptを導入することにしました。その結果、システム規模に対して少な
TL;DR clubhouse のような複数人でのボイスチャットサービス「mixroom」をつくりました 主にSkyWay・Firebase・Next.js を使いました。 https://mixroom.fun 「mixroom」 とは mixroom は"目的ベース"でボイスチャットをする場所を提供するサービスです。 昨今は人と話す機会が減り、友好関係も自分から能動的に獲得しにいかないと減るばかりで「孤独感を感じる」みたいなことが増えてきました。 そんなとき、ふらっと立ち寄れるなんの気構えしなくて良い場所があればなと思い、このサービスを作ってみました。 ボイスチャットをするモチベーションを"特定の人"ではなく、ゲーム・実況・もくもく会などの"目的"にすることで良い意味で言い訳ができ、人とのつながりを感じることができるんじゃないかなと考えています。 気構えしなくてよい・カジュアルに参加で
アーキテクチャの議論でよく出てくるのが、コンウェイの法則と、逆コンウェイ戦略です。これについては、うっかりIT用語をバズらせてしまう達人のマーチン・ファウラーのブログにも詳しい説明があります。角さん、いつも翻訳ありがとうございます。 「逆コンウェイの法則」が持ち出された議論が苦手なんどけど、なんでなのかな。コンウェイの法則はよく理解できるんだがー。 — Kazunori Otani (@katzchang) February 28, 2023 この@katzchangさんのツイートもそうですが、逆コンウェイ戦略に関しては僕も少しモヤモヤするところが個人的にあり、そのあたりを周りの人(@katzchangさんや@tokoroten、@__garsue__氏)と議論したらいろいろ自分が思っていなかった知見も得られたりしたので、まとめてみます。 コミュニケーションがかえって増える問題コンウェイの
概要 こんにちは。NTTコミュニケーションズのyuki uchidaです。普段はSkyWayというWebRTCプラットフォームの開発やWebRTCリサーチャー(見習い)をしています。 この記事は NTTコミュニケーションズ Advent Calendar 2020 の3日目の記事です。 昨日はMasaki Shimuraさんの記事、 「Threat Intelligenceの活用を促進するMISPの紹介」でした。 この記事は、WebSocketの次の技術ではないかと噂される、WebTransportの概要や双方向通信の歴史をまとめつつ、WebTransportのdatagram形式でデータを送信してみるチュートリアル記事です。 対象読者 WebTransportっていう技術を初めて聞いた人 WebSocketを使ったことがあり、不満がある人 双方向通信・リアルタイム通信について興味がある人
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Nostrという、SNSのようなものはご存知でしょうか? ご存知でなければ、ぜひまず一度触ってみることをお勧めします。 割と普通にSNSっぽく使えます。 分散系SNSっぽいシステム Nostrは、分散系のSNSっぽいネットワークです。 図で表すとこんな感じ。普通に想像するWebサービスとは随分形が違うと思います。 各所のリレーサーバーに、ユーザーは投稿をばらまき、ユーザーがそれを見る形です。 分散の責任がユーザー(クライアント)側にあって、リレーサーバーが落ちたり消えたりしても影響が起きにくい仕組みです。 より詳しい説明は上記
async/awaitの鬼門の一つとして、適切なキャンセル処理が挙げられます。別に基本的にはそんな難しいことではなく、CancellationTokenSourceを作る、CanellationTokenを渡す、OperationCanceledExceptionをハンドリングする。というだけの話です。けれど、Tokenに手動でコールバックをRegisterしたときとか、渡す口が空いてないものに無理やりなんとかするときとか、タイムアウトに使った場合の始末とか、ちょっと気の利いた処理をしたいような場面もあり、そうした時にどうすれば良いのか悩むこともあります。 こういうのはパターンと対応さえ覚えてしまえばいい話でもあるので、今回はAlterNatsの実装時に直面したパターンから、「外部キャンセル・タイムアウト・大元のDispose」が複合された状況での処理の記述方法と、適切な例外処理、そして最
はじめての方、はじめまして。久しぶりの方、お久しぶりです。 イノベーションセンターの何縫ねの。(@nenoMake)です。 普段の業務ではソフトウェアエンジニアとして Node-AI という WEB アプリケーションの開発をしています。 パブリックな活動としては、好きな言語である C# 関係の OSS 開発や技術ブログの投稿、登壇などをしています。 ですが、今回は C# ではなくフロントエンドのお話をします...! この記事では今まで Vue.js 2.x で開発されていた Node-AI の WEB フロントを完全に捨て去り、React にリプレイスしたお話をつらつらとしていきます。 まずは前編ということで、リプレイスプロジェクト発足時の課題感からはじめ、プロジェクトの進め方や選定技術などについてお話しします。 後編には内部の設計などのより技術的なお話をしたいと思います。では前編スタート
ドリームキャスト。セガが実質最後に発売したコンシューマーゲーム機の名である。 当時No1プラットフォームであるプレイステーション、そして長年のライバルであった任天堂のニンテンドウ64。 彼らに打ち勝つべく、セガが送り出したこのコンシューマーゲーム機は、セガに致命傷を負わせ、セガが自力で立てなくなるほどの状態に陥らせた。なぜここまでのダメージを負ってしまったのだろうか。 この記事はドリームキャストでセガがやろうとしたことを読み解き、今に至るまでの歴史を解説していく。 セガサターン時代、セガは流通改革でセガ・ユナイテッドを構築したが、結果だけを見ればこれは上手くいかなかった。(前回の記事参照) 理由はSCEがそれ以上に洗練された流通網を有していたことと、複数の問屋の集合体であるセガ・ユナイテッド内部で競合が起きてしまったこととがある。 セガはドリームキャスト発売の前段階として、この流通を改革し
Goodpatchのエンジニアマネージャー西山雄也氏:先日Goodpatchの新しいプロダクトとしてβ版をリリースしたStrapの紹介と、あとはそれにまつわるナレッジの紹介をもう1人の黄から発表します。 僕はGoodpatchのProduct Div.という自社プロダクト開発の部署でエンジニアマネージャーをやっています。プロトタイピングツール『Prott』とクラウドワークスペースツール『Strap』の開発責任者です。フルスタックエンジニアからフロントエンドエンジニアになり、今はGoodpatchに入ってマネージャーをやっているという経歴です。 僕はいわゆる日本のインターネット普及期の2000年以降に情報系の大学に行っていて、インターネットにすごくワクワクした世代なんですね。在学中に個人でいろいろなWebサービスを発信したり、Webアプリケーションを作ってブラウザだけでいろいろなことができて
はじめに こんにちは。 都内在住のフロントンドエンジニアです。 僕はとある会社にて約 1 年半ほど React と WebRTC を用いて映像配信のアプリケーション開発を行ってきました。 そこでは開発をスムーズに進める為に WebRTC の SDK を利用していて、 本来学習コストが高いとされている WebRTC をカジュアルに利用することができています。 しかし、より入り組んだ実装をしたり映像配信特有の問題(後述) を解決するとなると以下 3 つの WebAPI の理解は避けて通れません。 MediaStream RTCPeerConnection WebSocket 詳しくは文中に記載しますがこれらの理解を深めないと開発の進行に大きな影響があると思ったので、WebRTC 関連のライブラリ等を利用せずに映像配信のアプリケーションを作って学習しようという考えになり、実際に作ってみました。
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これは CAMPFIRE Advent Calendar 2024 の 13日目の記事です。 他の方がCAMPFIREに関連したことを書く中、去年に引き続き、あまりCAMPFIREとは関係なく記事を書きます(去年は量子コンピューティングでした)。去年よりはWeb技術なのでCAMPFIRE寄りの内容です。 さて、みなさんはWebのリアルタイム通信、双方向通信といえば、何を思い浮かべるでしょうか? おそらく、WebSocketが一番多いのではないでしょうか。ちなみに私もそうです。 それ以外にもW3Cで標準化済みやドラフトの技術として、Ser
3月24日、サイバーエージェントのエンジニア・クリエイターによる技術カンファレンス「CyberAgent Developer Conference2022」を開催しました。本記事では、「スマホゲーム業界におけるPHPの歴史とLaravel Octaneで広がるこれからのPHP」の様子をお届けします。 目次 ■サイバーエージェントグループのゲーム事業の歴史とPHP ■PHPで培ったもの ■多様化するゲームの要件とサイバーエージェントグループでの事例 ■PHPの変革「Swoole」「Laravel Octane」の登場 ■Laravel Octane Deep Dive ■まとめ ■サイバーエージェントグループのゲーム事業の歴史とPHP まずはサイバーエージェントグループのゲーム事業の歴史とPHPについて振り返ります。サイバーエージェントグループでは2009年からゲーム事業に参入しており、20
2020年2月13日、『神姫PROJECT』などソーシャルゲームの企画・開発を手がける株式会社テクロスが主催するイベント「TECH x GAME COLLEGE」が開催されました。第32回となる今回のテーマは「ゼロからリアルタイムサーバーを作るまで」。ソーシャルゲームのリアルタイム性を実現する「リアルタイムサーバー」の仕組みと作り方について、株式会社gumiの清水佑吾氏が解説します。講演資料はこちら ゼロからリアルタイムサーバーを作るまで清水佑吾氏(以下、清水):本日はお招きいただきありがとうございます。株式会社gumiの清水と申します。よろしくお願いします。今日は「ゼロからリアルタイムサーバーを作るまで」ということで発表します。 まずは会社の説明をさせてください。私は株式会社gumiというところで働いております。 2007年にできた会社で、主にモバイルゲームを作ったり、VR・AR・
2023/07/01よりクラスター株式会社に入社しました。 corp.cluster.mu 今回もいくつかオファーをもらったが、次の理由からクラスター株式会社へ決めた。 とにかくクリエイターを応援したい 社内にもクリエイター気質の人が多そうだ リアルタイム通信サーバーなど、裏側のシステムにワクワクする VR自体が子供の教育を改善しうる とにかくクリエイターを応援したい 転職活動の際にいろんな転職軸を言語化していたのだが、結局のところ自分がどうしても貢献したいプロダクトでなければモチベーションを保てないと感じた。もう一度これまでの仕事を振り返った時、自分は「漫画家・小説家・ブロガーなどのクリエイターが、自分の作ったプロダクトによって報われた時」に非常に嬉しく感じる1ことに気づいた。 クラスター株式会社は現在clusterというメタバースプラットフォームを作っているが、単純にメタバースプラット
CA.unityはサイバーエージェントが運営するUnityをテーマにした勉強会です。サイバーエージェントのサービス開発者と社外の開発者を交えて、Unityに関する知見を共有します。河合宜文氏からは、Cysharp社のOSSについて紹介がありました。 Cysharpのモットーは「C#の可能性を切り開いていく」河合宜文氏(以下、河合):「A quick tour of the Cysharp OSS」というテーマでCysharpの河合が話します。お願いします。 私は河合宜文と言って、Cygamesの子会社であるCysharpという会社で社長をしています。今回イベントを主催したサイバーエージェントの子どもの子どもなので、孫会社です。Cysharpはいろいろとやってはいて、目に見えるところで一番大きなものは、OSSの提供だと思っているんですが、我々は「C#の可能性を切り開いていく」というのをテーマ
これはなんらかのアドベントカレンダーの何日目かの記事だったりしません。 KOBA789 です。仕事では人工衛星の搭載ソフトウェアを書いたり、人工衛星の管制システムのソフトウェアを書いたりしています。 先日、こういうツイ……ポストをしたらちょっとバズりました。意外と興味持ってくれる人が多かったので、それに関連するオタク早口記事でも書くかぁと思って筆を執っています。 うちの人工衛星の開発ツールはウェブ技術でできている 前述のポストは管制システムについてですが、開発用ツール(C2A DevTools)もまた React + TypeScript でできています。 まぁ画面見てもなにがなんだかという感じだと思いますが、UNIX サーバーで top コマンド叩いたときの内容と、サーバーのログが合体したみたいなものが表示されていると思ってください。 これらの数値は gRPC-web の Server-
W3CとIETFは、WebRTCが正式な標準仕様に到達したことを発表しました。 The @W3C and the @ietf are pleased to announce that Web Real-Time Communications (WebRTC) is now an official standard, bringing audio and video communications anywhere on the Web.https://t.co/GCHkDK7BHH pic.twitter.com/gBwdap47sO — W3C (@w3c) January 26, 2021 The @ietf and @w3c are pleased to announce that Web Real-Time Communications (WebRTC) is now an offi
かなり幅広い分野で利用されている便利なツール・サイトや, 個人的に推していきたいものを紹介します。 今回の記事は,基本的にはゲーム開発者向けの内容となっております。 ただ,ゲーム開発者の方でなくても使えるモノが沢山含まれているので,一応最後まで目を通していただけるとありがたいです。 ※ 更新履歴 2021/12/17: 内容の大幅修正。項目にFigmaとMiroを追加。 2021/02/10: 項目にCanvaを追加。 GitHub プロジェクトの変更履歴を保存・追跡できるバージョン管理システム Git に幾つかの機能を加え,クラウド上で操作できるようにしたものです。 下記のようなケースに対応できます。 ファイルを消してしまったが,何を消したか分からない 開発途中で致命的なバグが発生したが,いつからあるのか分からない ひとつのプロジェクトを複数人で平行して作業を行いたい といったケースです
はじめに 現在進行形でC#のみを使って個人でソシャゲ作りを試しているyoship1639です。 本記事はQiita夏祭り2020「〇〇(言語)のみを使って、今△△(アプリ)を作るとしたら」のテーマに沿った内容となっています。 近年のソーシャルゲーム界隈は多様化が進んでクライアントサイドだけではなくサーバーサイドもあらゆる言語やフレームワークが試みられていますが、クライアントもサーバーも統一の言語で構成されているのはほとんどないかと思われます。言語にはその言語の得意分野があると思うので。 しかし、今まさに私が開発中の環境が好きな言語で開発しやすいという理由でクライアントもサーバーもC#で構成した作りになっているので、どのような構成でどうすれば最低限のソシャゲの基盤が作れるかを、解説が長くなり過ぎないようにまとめることが出来ればと思います。 三部構成で、クライアント実装、サーバー実装、AWS
やまゆです。 現在 TLS の実装として一番に挙げられるライブラリは OpenSSL 1.1 ですね。 他に Google fork の BoringSSL や LibreSSL などがありますが、もともとはどちらも OpenSSL の実装をベースにしていますので、やはり大元としては OpenSSL になります。 執筆現在の OpenSSL 安定板バージョンは 1.1.1l です。 2.x はリリースされず 3.0 が次のリリースになる予定です。 このツイートによると、 来週火曜 に正式リリースされるようです。 追記 2021/09/07) OpenSSL 3.0.0 がリリースされました! こちらの記事から変更点について挙げていきます。 ライセンスの変更。今までは OpenSSL と SSLeay のデュアルライセンスでしたが、 Apache License 2.0 に変更されます。 バ
こんにちは。サービス開発室の武田です。このエントリは、2018年から毎年公開しているAWS全サービスまとめの2024年版です。 こんにちは。サービス開発室の武田です。 このエントリは、2018年から毎年公開している AWS全サービスまとめの2024年版 です。昨年までのものは次のリンクからたどってください。 AWSにはたくさんのサービスがありますが、「結局このサービスってなんなの?」という疑問を自分なりに理解するためにまとめました。 今回もマネジメントコンソールを開き、「サービス」の一覧をもとに一覧化しました。そのため、プレビュー版など一覧に載っていないサービスは含まれていません。また2023年にまとめたもののアップデート版ということで、新しくカテゴリに追加されたサービスには[New]、文章を更新したものには[Update]を付けました。ちなみにサービス数は 247個 です。 まとめるにあ
※ 2021年1月 更新 マルチクラウド化が進むにつれて、各種クラウドサービスを比較する機会が増えるのではないかと思います。 今回は、自分の整理も兼ねて、Azure (Microsoft 365)/AWS/Google Cloud (Google Workspace)/OCI のサービス比較表 を作成してみようと思います。 *1*2 Azure/AWS/Google Cloud (GCP)/OCI サービス比較 マーケットプレース データベース ID WEB コンピューティング ストレージ セキュリティ 仮想デスクトップ 統合 分析 まとめ 参考情報 Azure/AWS/Google Cloud (GCP)/OCI サービス比較 マーケットプレース Azure AWS Google Cloud OCI マーケットプレース Azure Marketplace AWS Marketplace
読者の皆さんこんにちは。はじめましての方ははじめまして。合同会社もりたつ技商 代表社員、内閣官房IT総合戦略室 政府CIO補佐官、さらに株式会社Diarkis 取締役をしている久森達郎(@myfinder、まいんだー)と申します。 本記事では私の経歴を現在に至るまで、どのような技術的チャレンジをしてきたかアウトプットとともに振り返りながら、そこにある転機や挑戦についてお話ししていきたいと思います。冒頭でいきなり肩書きが3つも出てきたので混乱した方もいらっしゃるかと思いますが、それぞれの詳細は追って紹介します。 私が経験した事業領域も規模も異なる企業でのキャリアは、自分が望む方向に変化しようと挑戦してきた結果でもあります。本記事があなたにとって、多様なキャリアのあり方を知ることと、それを支えるマインドセットの獲得に多少なりとも有益な貢献ができれば幸いです。 プロの現場が知りたくてエンジニアの
C#の可能性を切り開いていく専門会社「Cysharp」の目指すところ プログラミング言語のC#を中心としたゲームの技術開発を行い、C#(※1)の良さを世の中に伝えていくために設立されたサイゲームスのグループ会社「Cysharp」。ゲーム業界への貢献のためにC#向けのOSSライブラリを数十個公開するなどの活動をし、「CEDEC AWARDS 2022 エンジニアリング部⾨優秀賞」の受賞、国際的なゲームクリエイターの祭典「GDC2022」に登壇するなど認知を広めています。そんな「Cysharp」設立の経緯から今後の展望まで、代表取締役に話を聞きました。 ※1 C#……Microsoftが開発した.NETプラットフォーム向けプログラミング言語。ゲームエンジンUnityでも採用されるなど幅広い領域で使用されている。サーバーサイド開発では世界中のエンジニアが利用している開発者向けQ&Aサイト「Sta
Dioxusの概要 Dioxus(ディオクサス)は、Dioxus Labsによるクロスプラットフォーム対応のアプリを構築できるRustライブラリです。移植性が高く(portable)、高性能で(performant)、人間工学に基づいた(ergonomic)設計が特徴とされています。Dioxusでは、単一のコードで以下のプラットフォームで動作するアプリを開発可能です。 (1)Web WebAssembly技術を用いたSPA(Single Page Application)を開発できます。WebAssemblyについては@ITの連載「いろんな言語で試す、WebAssembly入門」で紹介しています。その第5回「RustでWebAssembly――「Rust and WebAssembly」を体験する」でRust and WebAssemblyを紹介しています。本記事の理解にWebAssemb
初めまして。丸山しんぺい(@shinpei0213)です。Classi株式会社で、VPoT(Vice President of Technology)という役職に就いています。技術部門の責任者として、Classiという会社がソフトウェアの力で教育をよりよくしていけるようなあれこれについて、技術の視点からグランドデザインを描き、そのグランドデザインを達成することに責務を負っています。 今回、キャリアとその選択について書く機会をいただいたため、あらためて自分のキャリアを振り返ってみると「スペシャリストとして成長した先に、技術の責任者があった」となりそうです。それが正しいとも、誰でも参考になるとも思っていませんが、それでもソフトウェア・エンジニアは比較的新しい職種であり、再現性の高いキャリアパスもまだまだ整備されていない世界だからこそ、誰かが振り返ったキャリアが他の誰かのヒントになることがあるか
こんにちは! Chatwork 株式会社のプロダクトマネージャー (PM)、宮下 (@ryugoo_) です。 2013 年にモバイルアプリエンジニアとして入社し、 2014 年に Android 専任になり、 2019 年からは PM に転向してそろそろ 2 年になろうとしています。 さて、今回はエンジニアから PM になった私から見た、 Chatwork の技術選定の流れの変化について話してみようと思います。 技術選定の歴史 2013 年 - PMF を目指すために 2014 〜 2016 年 - 技術的課題を解決するために 2017 〜 2020 年 - ユーザー影響を最小化するために これから - 攻めた技術選定を、ユーザーのために 2013 年 - PMF を目指すために 2013 年当時の Chatwork は PMF (Product Market Fit) を目指すフェーズ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 歴史で振り返るWebRTC 概要 すでにいろんなブラウザに実装されて、商用(?)サービスなども登場しているWebRTCですが、この記事では「なぜWebRTCが登場したのか?」「どうしてこんな仕組みになっているのか?」を振り返ることで、VoIPからWebRTC、そしてORTCへの変遷を振り返りたいと思います。 Before WebRTC: VoIP WebRTCが登場するまでは、インターネット上/IP上でリアルタイム通信を実現する技術としてVoIPがありました。中でも、今までで最も成功したVoIPのフレームワークとしてはSIPが挙げられる
初めに ChatGPTの登場によって、ここ数カ月、生成系AIが非常に盛り上がっていますね。 連日新しいサービスやプラグインが生まれているイメージです。 さて、エンジニア界隈では、このChatGPTにプログラムを自動生成してもらい、ノーコードツールのように使用するようなユースケースが度々見受けられます。(日本語で書いた文章から自動でアプリケーションを構築するサービスなんかも出来てましたね) 今回は、そんなChatGPTとGitHubCopilot(以降Copilotと表記します)を使用してアプリケーション開発をしてみたので、その感想や上記ツールを使用するコツを書いていこうと思います。 アプリケーションアーキテクチャ 今回開発したアプリケーションのアーキテクチャは以下の構成になっています。(本記事に直接は関係ないので、読み飛ばしてもらって問題ないです) バックエンド AWS Chalice A
筆者の愛車遍歴まずは、今回がITmedia時代の「西川善司の日産GT-Rとのシン・生活」の「精神的続編」ということもあるので「そのあらすじ」を軽く紹介したい。 筆者は、スポーツカー好きで、ボディの左右にドアが1枚ずつついた、いわゆる2ドア・クーペの車しか、所有したことがない。 1台を所有すると車検を3回パスするくらい乗るので(例外はあったが)、まあまあ長く乗る方だとは思う。 人生初のマイカーは、大学生の時に購入したホンダの「プレリュード Si VTEC」(BB1型)。父親がホンダ勤務だったので(現在は定年退職)、父親名義で社割で新車を安く購入。ただし、筆者は高校生のときから、市販ゲームの移植業務を行ったり、パソコン誌でも記者デビューをしていて、学生にしては稼いではいたので、完全自腹で購入している。この車は7年乗った。 ▲筆者の最初の愛車、ホンダ「プレリュード Si VTEC」(BB1型/5
この記事は? こんにちは。NTTコミュニケーションズのyuki uchidaです。普段はSkyWayというWebRTCプラットフォームの開発やWebRTCリサーチャー(見習い)をしています。 この記事は NTTコミュニケーションズ Advent Calendar 2020 10日目の記事です。昨日はy-i さんの記事、 「グループ内プログラミングコンテストをオンライン上で開いた件」でした。 前回、 NTT コミュニケーションズのアドベントカレンダー3日目の記事として、「WebSocketの次の技術!?WebTransportについての解説とチュートリアル」という記事を投稿しました。 WebTransportが出てきた背景や、双方向通信の歴史について解説しているため、興味があれば是非ご覧ください。 今回の記事は、そのWebTransportとWebCodecsを組み合わせてビデオチャットを実
はじめに #おうちハッカソンというものに同期と参加して、gRPCを使ったリアルタイム通信ゲームを作りました。 これは、ゲームクライアントを作った人間の視点での話になります。私はサーバサイドを担当していないので、サーバサイドをやってくれた人が記事を投稿してくれることを期待しています。 自己紹介 Twitter @AblerBiri Github Gamu2059 サイバーエージェント21年度入社予定 Unity、ゲームクライアント系がメインフィールドのエンジニア プログラミング歴だけだと7年くらい おうちハッカソン https://connpass.com/event/174573/ @at_sushi_atさんが主催されたハッカソンです。 内定者同士でリモート飲み会をした時に、「なかなか交流できないからハッカソンとかやって交流したいね」という意見が出ていました。 ちょうどその時にこのハッカ
DiscordやSlackなどチャットやビデオ通話を主目的としたソフトウェアは数々存在しますが、オープン標準かつ軽量なリアルタイム通信プロトコルMatrixを採用したチャットソフトウェアが「Element」です。Elementはエンドツーエンド暗号化を用いたセキュアなチャットが行えるというだけでなく、ビデオ通話まで可能ということなので、実際に使ってみました。 Secure messaging app | End-to-end encrypted messenger https://element.io/personal というわけで、Elementを実際に使ってみます。Elementはウェブブラウザ版・iOS版・Android版・PCソフトウェア版が存在するので、それぞれを実際に使ってみます。 ・目次 ◆ウェブブラウザ版 ◆iOS版 ◆Android版 ◆PCソフトウェア版 ◆ウェブブラウ
こんにちは、クライアントエンジニアの竹澤(@to4iki)です。 Mirrativでは、リアルタイムの配信視聴時のコメントやギフト機能を実現するために、WebSocket ベースの仕組みを利用して、サーバー・クライアント間でPub/Subのメッセージングを行っています。*1 サーバーからのHTTPレスポンスをマッピングするように、ペイロードのJSONを受け取り、それをクライアントで扱う型に変換して使用していますが扱いにくい点がありました。本記事では改善に取り組んだ内容と進め方を紹介します。 目次 課題 ゴールと進め方の認識あわせ 1. 最初にゴールの定義を行う 2. 段階的な進め方の方針と見通しを立てる ゴールまでの道筋を可視化する 3. 技術的な懸念事項などを先に潰し作業をパターン化する 動作検証に利用する再利用可能なサンプルのペイロードを定義する Decodable準拠のレスポンスでI
こんにちは、バックエンドエンジニアの近です! 4/24〜4/26にかけてアトランタで開催されたRailsConf 2023にWEARバックエンドブロックから近・小山・高久の3人が参加しました。 去年はコロナの影響もあってオンラインの開催だったのですが、今年はオフラインでの開催となり、大勢が参加していて大盛況でした。 我々が開発・運営しているファッションコーディネートアプリ「WEAR」のバックエンドはRuby on Railsで開発しています。現在では、新機能の開発やリプレイスなど、チームメンバーの全員がRuby on Railsに関わっているため、今回RailsConfにて様々なセッションを聞けたことはとても有意義な経験でした。 RailsConfとは 1年に1回開催されるRuby on Railsに関する世界最大のカンファレンスとなります。(公式サイト) 2020〜2022年はコロナの影
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く