並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 216件

新着順 人気順

双方向通信の検索結果1 - 40 件 / 216件

  • 働きながら情報系の大学院を修了した|父

    2022年9月末で北陸先端科学技術大学院大学の博士前期課程を修了し、修士(情報科学)が授与された。働きながら通い始めて丸3年かかった。 学位記。大変だったので嬉しい…とても大変だったので学位記が届いたときは万感の思いだった。ただ、このエントリを書いたのは「すげえだろ」とかそういうのとはどちらかと言えば真逆の感情で、僕の修士課程がどのくらい低空飛行でどのくらい誰にでもできることなのかを詳らかにして同じような境遇の人を鼓舞することが目的だ。そのために敢えてみっともない、見栄を張りたいなら書く必要のない恥まで含めてある。学位というものに一抹の未練がある人は是非読んで欲しい。 筆者について進学時36歳、修了時39歳。 職業はソフトウェアエンジニア。2児の父。4流大の文学部卒。 暇な人は過去のエントリに詳しいが、別に読まなくても構わない。 入学まで僕が大学院進学を決意したのは元同僚で友人のさのたけと

      働きながら情報系の大学院を修了した|父
    • 注目のITサービスを支えるアーキテクチャ特集 技術選定のポイントと今後の展望 - Findy Tools

      公開日 2024/05/27更新日 2024/05/27注目のITサービスを支えるアーキテクチャ特集 技術選定のポイントと今後の展望 現代のITサービスは、ユーザーに高品質で安定した体験を提供するために、より効率的で柔軟な技術選定が不可欠です。 本特集では、注目企業のシステムアーキテクチャ設計に携わるエンジニアの方々より、それぞれの技術選定における工夫と、未来を見据えた展望についてご寄稿いただいています。 各企業がどのように課題を乗り越え、開発生産性や品質を向上させるためにどのようなアプローチを採用しているのか ー この記事を通じて、実際の現場で活用される最先端の技術や戦略を学び、皆さんのプロジェクトに役立つ洞察を得ていただければ幸いです。 ※ご紹介はサービス名のアルファベット順となっております airCloset - 株式会社エアークローゼット エアークローゼットは日本初・国内最大級、女

        注目のITサービスを支えるアーキテクチャ特集 技術選定のポイントと今後の展望 - Findy Tools
      • ブラウザ自動操作API入門: WebDriver APIとChrome DevTools Protocol(CDP)

        ウェブブラウザを自動操作する際には、WebDriverやChrome DevTools Protocol (CDP) などのAPIが広く利用されています。 これらのAPIを基盤に構築された様々なブラウザ自動操作フレームワークが、テスト自動化の分野で重要な役割を果たしています。 例えば、SeleniumやPlaywrightといったフレームワークを利用して、テストの自動化に取り組まれている方もいらっしゃると思います。 私もテスト自動化フレームワークの便利さを享受する一方で、フレームワークを介さずにブラウザを自動操作する方法についての興味がわいてきました。 そこで、この記事ではWebDriverやCDPが提供するAPIを直接利用してブラウザを操作する方法を基礎から探求してみることにしました。 これにより、私たちが普段利用しているフレームワークの背後にある原理を理解し、より深い知見を得ることを目

          ブラウザ自動操作API入門: WebDriver APIとChrome DevTools Protocol(CDP)
        • 【重要】学習・開発で必ず確認するべきOSS

          はじめに 今回の記事では、プログラマーが学習・開発を円滑に進めるために知っておきたいOSSを紹介する。特に開発されているアプリケーションに焦点を当てて紹介する。今回の記事では、主に著者の得意分野や興味のある分野に絞って確認するべきGitHubリポジトリを紹介する。 紹介する分野は主に以下の通り。 Web Android Flutter 学習・開発でOSSを使うメリット プログラマーが学習・開発でOSSを使うメリットは以下の通り。 ソースコードを通して、開発したいアプリケーションの具体的なイメージや自分に足りないもの(必要な知識や言語等のスキル)を理解できる 自分が普段学習・開発で使っている言語の活用事例を確認できる アプリケーションの構造や開発フローを理解できる 確認が必須であるWebサイト OpenSourceAlternative.to 世界中のオープンソースのアプリケーション(特に有

            【重要】学習・開発で必ず確認するべきOSS
          • PythonでRaspberry PiにLTE通信を組み込める「sakura.io」を使ってみた! - paiza times

            どうも、まさとらん(@0310lan)です! 今回は、Raspberry PiにLTE通信を簡単に組み込めるsakura.ioを利用した通信モジュールの使い方についてご紹介します! 月額60円という破格の安さで通信ができることに驚きますが、専用のクラウドサービスを活用したデータのやり取りなども簡単に導入できるのも魅力的です。 初心者でも簡単にIoT開発に取り組めるのでご興味ある方はぜひ参考にしてみてください! なお、通信制御のプログラムはPythonとJavaScriptで書きますので、paizaラーニングの「Python3入門編」「JavaScript入門編」の学習講座もチェックしてみてください。 【 sakura.io 】 ■モジュールデバイスの組み立て方 sakura.ioの通信モジュールは、ArduinoやRaspberry Piなどに最適化された専用のモジュールデバイス(拡張ボー

              PythonでRaspberry PiにLTE通信を組み込める「sakura.io」を使ってみた! - paiza times
            • サーバーレスでclubhouse みたいなボイスチャットサービス「mixroom」を開発しました - y-ohgi's blog

              TL;DR clubhouse のような複数人でのボイスチャットサービス「mixroom」をつくりました 主にSkyWay・Firebase・Next.js を使いました。 https://mixroom.fun 「mixroom」 とは mixroom は"目的ベース"でボイスチャットをする場所を提供するサービスです。 昨今は人と話す機会が減り、友好関係も自分から能動的に獲得しにいかないと減るばかりで「孤独感を感じる」みたいなことが増えてきました。 そんなとき、ふらっと立ち寄れるなんの気構えしなくて良い場所があればなと思い、このサービスを作ってみました。 ボイスチャットをするモチベーションを"特定の人"ではなく、ゲーム・実況・もくもく会などの"目的"にすることで良い意味で言い訳ができ、人とのつながりを感じることができるんじゃないかなと考えています。 気構えしなくてよい・カジュアルに参加で

                サーバーレスでclubhouse みたいなボイスチャットサービス「mixroom」を開発しました - y-ohgi's blog
              • GraphQLはいつ使うか、RESTとの比較

                さぼです、沖縄でWebと設計について考えてます。2023/09/23 に沖縄で行われたTechBaseOkinawa2023 にて上記のタイトルで登壇しました。 今回の内容は GraphQLを設計の観点から考えてみる GraphQLの目的や用途を整理する GraphQLを使う時、または使わない時のヒントを持ち帰ってもらう 最近、GraphQLじゃなくてRESTで良くないと思うケースがなんとなくわかってきたのでそれを共有する という感じで話しました。話した内容を文字に起こし少し改修してZennでも共有することとします。 まえおき 最近はクライアントAppとサーバーAppを分けて実装する事が増えてきた クライアントの環境はますます複雑になっている クライアントとサーバーはWebAPIで通信を行う クライアントが複雑になるのと同時にWebAPIの要求が更に増して来ている APIの要求・応答を効率

                  GraphQLはいつ使うか、RESTとの比較
                • ChatGPTをぬるぬるにする🐌Server-Sent Eventsの基礎知識

                  単方向通信であるということと、HTTP/1.1上で動作しているのが大きな特徴です。 また、HTTP上で動作することから、通信の互換性が高く、セキュリティモデルも使いまわせるので安心です。 どんな用途と相性がいいの? 双方向通信がしたいわけでなければ、相性の幅がとても広いです。 今回の ChatGPT のような、GPT がトークンを生成するごとに送るケースはもちろん、通知の未読件数バッジの更新、ニュース速報の表示など、サーバからイベントを送りたい時ならなんでも使えます。 HTTP/1.1で動くカラクリ SSEはHTTPのレスポンスヘッダにContent-Type: text/event-streamを指定した上で動作します。 SSEが動く流れ クライアントがサーバーに HTTP/1.1 リクエストを送信し、イベントストリームに接続します。 サーバーは、Keep-Alive 接続を使用して、T

                    ChatGPTをぬるぬるにする🐌Server-Sent Eventsの基礎知識
                  • HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題|ハイクラス転職・求人情報サイト AMBI(アンビ)

                    ハイクラス求人TOPIT記事一覧HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題 HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題 IETFで標準化が進められているWebの新しい通信プロトコルQUICとHTTP/3について、現在のインターネットが抱える課題やプロトコル設計での議論を中心に、ASnoKaze blogの後藤ゆき(@flano_yuki)さんに執筆いただきました。 2021年、Webに新しい通信プロトコルが登場しました。RFC 9000として標準化されたQUICと、その上で動作するHTTP/3です。HTTP/3はまだドラフト版ですが出版準備段階となっており、すでに実際のWeb通信でも広く使われています この2つのプロトコルは、現在のWebやイン

                      HTTP/3とQUICはなぜ必要になり、どのように標準化されてきたのか? 現代のプロトコル設計とインターネットの課題|ハイクラス転職・求人情報サイト AMBI(アンビ)
                    • ロボットエンジニアのためのgRPC入門 - MyEnigma

                      WEB+DB PRESS Vol.110 目次 目次 はじめに gRPCとは? gPRCの特徴 Protocol buffersでRPCを定義することで、様々な言語のサーバ・クライアント実装が自動生成可能 通信プロトコルにHTTP/2を使うことで高速化、双方向通信、streaming等を実現 通信のデータ量が小さく、データ解釈時の計算時間も短い ProtoファイルでのRPCの宣言 Unary RPC Server streaming RPC Client streaming RPC Bidirectional streaming RPC gRPCのサンプルコード Python Unary RPC Server streaming RPC Client streaming RPC Bidirectional streaming RPC gPRCのgの意味 参考資料 MyEnigma Supp

                        ロボットエンジニアのためのgRPC入門 - MyEnigma
                      • WebSocketの次の技術!?WebTransportについての解説とチュートリアル - Qiita

                        概要 こんにちは。NTTコミュニケーションズのyuki uchidaです。普段はSkyWayというWebRTCプラットフォームの開発やWebRTCリサーチャー(見習い)をしています。 この記事は NTTコミュニケーションズ Advent Calendar 2020 の3日目の記事です。 昨日はMasaki Shimuraさんの記事、 「Threat Intelligenceの活用を促進するMISPの紹介」でした。 この記事は、WebSocketの次の技術ではないかと噂される、WebTransportの概要や双方向通信の歴史をまとめつつ、WebTransportのdatagram形式でデータを送信してみるチュートリアル記事です。 対象読者 WebTransportっていう技術を初めて聞いた人 WebSocketを使ったことがあり、不満がある人 双方向通信・リアルタイム通信について興味がある人

                          WebSocketの次の技術!?WebTransportについての解説とチュートリアル - Qiita
                        • 認証に電話網を使うのはそろそろやめよう

                          こんにちは、Azure Identity サポート チームの 高田 です。 本記事は、2020 年 11 月 10 日に米国の Microsoft Entra (Azure AD) Blog で公開された It’s Time to Hang Up on Phone Transports for Authentication の抄訳です。新着記事ではありませんが、以前より繰り返し様々な記事で参照されており、多くのお客様にとって有用であるため抄訳しました。ご不明点等ございましたらサポート チームまでお問い合わせください。 以前のブログ パスワードで攻撃は防げない - Your Pa$$word doesn’t matter では、パスワードに潜む脆弱性を明らかにしました。加えて、「でもパスワード以外の他の認証方法も侵害される可能性あるでしょ」という無数の DM や E メールに対する答えとして

                          • 私がDjangoでWeb開発を行う理由

                            はじめに 今回の記事では、私がPythonのWebフレームワーク「Django」で開発を進める理由を独自の視点から徹底解説する。今回の記事の読者の対象は主に以下の通り。 個人開発でDjangoを使おうとしているプログラマー Djangoについて深く理解したいプログラマー Djangoを個人開発(Web開発)に採用するメリット・デメリットを把握したいプログラマー すでにRailsやLaravelなど他のWebフレームワークを使った開発を経験しており、他のWebフレームワークの特徴を把握しておきたいプログラマー Web開発の技術選定で困っているプログラマー Djangoとは DjangoはPythonで開発されたWebフレームワークである。フレームワークを簡潔に説明すると、開発に必要な機能をデフォルトで揃えているものを意味する。WebフレームワークはWebアプリケーションの開発を効率化させるた

                              私がDjangoでWeb開発を行う理由
                            • RustからWebAssembly (wasm)を生成してJavaScriptとブリッジ通信してみる | DevelopersIO

                              Rustはじめました Rustイイですよね。Cと同程度のパフォーマンスで動作して、メモリリークを防止し、マルチスレッドも安全に記述できます。GC(ガベージコレクション)処理よりも高速にメモリーを開放します。今まで、より高速に動くプログラミング言語を求めるとC/C++等が必要になり、安全面で気をつけないところが増えてしまって手が出しづらく、一方で、Javaなどの安全面が確保された言語や、JavaScriptやPythonなどのスクリプトで記述できる言語は、nullやundefinedなどを気をつける必要があり、更に実行速度を上げるには課題がありました。(Javaは十分速いと思います) Rustは、C/C++と同程度のパフォーマンス(強い)を持ちつつ、型やメモリやスレッドに関する安全面を備えているため、今後、OSやミドルウェアの開発に使われることが増えるのではと思っています。一方で、JavaS

                                RustからWebAssembly (wasm)を生成してJavaScriptとブリッジ通信してみる | DevelopersIO
                              • ボイジャー2号と7カ月ぶりに交信再開。187億kmの彼方から“hello”とあいさつ。

                                ボイジャー2号と7カ月ぶりに交信再開。187億kmの彼方から“hello”とあいさつ。2020.11.06 13:0020,454 George Dvorsky - Gizmodo US - [原文] ( R.Mitsubori ) 地球を離れて43年、ボイジャー2号は今日もゆく…。 今年の3月中旬以降、地球のミッションオペレーターと無人宇宙探査機ボイジャー2号はずっと音信不通でした。しかし新しいハードウェアのテストを実行したところ、NASAの深宇宙通信情報網(DSN)が順調にアップグレードされている兆候が確認できたのです。 10月29日、NASAは7カ月ぶりにボイジャー2号へのコマンド送信が成功したと発表しました。そして今回の通信に使われたのが、ボイジャー2号と唯一通信できるパラボラアンテナ「深宇宙ステーション43(DDS43)」です。1977年に打ち上げられたボイジャー2号は現在、地球

                                  ボイジャー2号と7カ月ぶりに交信再開。187億kmの彼方から“hello”とあいさつ。
                                • ReactとWebRTCでZoomのようなビデオチャットアプリを作ってデータフローを図解してみた

                                  はじめに こんにちは。 都内在住のフロントンドエンジニアです。 僕はとある会社にて約 1 年半ほど React と WebRTC を用いて映像配信のアプリケーション開発を行ってきました。 そこでは開発をスムーズに進める為に WebRTC の SDK を利用していて、 本来学習コストが高いとされている WebRTC をカジュアルに利用することができています。 しかし、より入り組んだ実装をしたり映像配信特有の問題(後述) を解決するとなると以下 3 つの WebAPI の理解は避けて通れません。 MediaStream RTCPeerConnection WebSocket 詳しくは文中に記載しますがこれらの理解を深めないと開発の進行に大きな影響があると思ったので、WebRTC 関連のライブラリ等を利用せずに映像配信のアプリケーションを作って学習しようという考えになり、実際に作ってみました。

                                    ReactとWebRTCでZoomのようなビデオチャットアプリを作ってデータフローを図解してみた
                                  • モバイルとの相性最強と言われるgRPCをFlutter x NestJSで実装し、Stream通信や認証、複数言語実装に使えるか試す

                                    まとめ 相性バツグンといわれる、モバイル x gRPCは思ったよりずっと簡単に実装可能 複数言語間でもProtocol Buffersの恩恵により型変換を意識することなくスムーズに開発が進められる。 メソッド、引数の型、引数の返り値の型が自動生成されるのでとても良い RESTful APIにおけるheaderを、表現力の高いMetaDataとして利用し、認証認可等にも使えそう Streamをうまく使いこなせば、ユーザー体験をめっちゃ高くできそう。チャットやゲームなどの双方向通信が比較的楽に実装できるかも どんな人向きでない記事? NestJSの詳しい実装を知りたい方 Bidirectional streaming, Client streamの詳細実装を知りたい方 モバイル向け通信技術の本格的な選択肢、gRPCを実際に試してみたい 現在、私の働いているMinediaで開発しているサービス群

                                      モバイルとの相性最強と言われるgRPCをFlutter x NestJSで実装し、Stream通信や認証、複数言語実装に使えるか試す
                                    • 一般のご家庭に25GbEネットワークを導入する

                                      事の発端はこちらのツイートこの低価格NICはずっと気になっていて、ほしいものリストにもずっと突っ込んでありました。突っ込んだ当時の価格からずいぶんと安くなり、2016/07/04時点で2万円を切っていたので、以下のような煽りも受けたついでに2枚買ってみました。買って挙動を確かめてみたレポートです。Amazon.co.jp: intel X540-T2: パソコン・周辺機器... Mzyy94 Network 05 Jul, 2016 当時のNASはHDDを4つ積んでRAID5相当で組んだシンプルなストレージ構成ではあったものの、1 GbEでは通信速度が頭打ちとなってしまってストレージのスピードを発揮し切れていなかったのです。 10GbEの導入でディスクをフルスピードで稼働させ、快適なデータ転送を行えるようになりました。 もちろん、QNAPのNASにも10GbEで爆速の移行を成し遂げたもので

                                        一般のご家庭に25GbEネットワークを導入する
                                      • GoとDockerでLet's try gRPC - LiBz Tech Blog

                                        はじめに gRPCとは gRPCの特徴 gRPCが解決するマイクロサービスの課題 gRPCの課題 Let's try gRPC 1. 準備 2. protoファイルの作成 3. server側の処理 4. client側(リクエスト)の処理 5. buildして実行 最後に はじめに こんにちは!エンジニアの渡邊です。早いもので、11月でLiBに入社して丸1年がたちました。 このブログへの投稿も4回目になります。 前回の とってもRailsライクなサーバーレスフレームワーク「Ruby on Jets」を本番環境に導入した話 では、jetsの開発者であるtongueroo氏や、Rubyの生みの親まつもとゆきひろ氏をはじめ、多くの方にシェアをしていただき大変励みになりました!みなさんありがとうございました。 今回はGoogleが開発したRPCフレームワークgRPCについて書こうと思います。 g

                                          GoとDockerでLet's try gRPC - LiBz Tech Blog
                                        • 2021年 HTTPやQUICの最新動向振り返り - ASnoKaze blog

                                          2021年について、プロトコル周りの動向を振り返っていきたいと思います。 今年は、個人的には次の2点がホットトピックと挙げられると思います。 QUICやHTTP/3を活用した応用系プロトコルの作業が進む プライバシー系の取り組みが活発化 それでは、個別に補足していきます。(IETFの動向がメインです。なお、個人的にキャッチアップできてないトピックもあります...) HTTP関連 まずは、HTTPです。HTTP/3の標準化が注目を浴びていますが、HTTP/1.1やHTTP/2なども改定作業が行われております。あわせて、HTTPセマンティクスは各バージョンから独立し、各バージョンから参照される形となりました。それぞれRFC出版の最終段階となっています。 書いた記事はここらへん HTTPのバージョンについて、現在のまとめ HTTPセマンティクス仕様の改訂版 まとめ HTTP/2の改定版仕様の変更

                                            2021年 HTTPやQUICの最新動向振り返り - ASnoKaze blog
                                          • 自分がプログラミング力の成長を実感できるようになった瞬間について

                                            私はプログラミングを 3 年近くやってみて、「ただ知らなかっただけで損した」という悔しい経験をたくさんしました。 そこで自分にとって「これを知っているだけでエンジニアとしてステップアップできた」というものをまとめてみようと思います。 ちなみにステップアップする前の私はこのようなとても凄いコードを書いていました。 ご査収ください。 プログラミングを始めて最初に作った成果物です。 https://gist.github.com/sadnessOjisan/6f1a1956d4848e3c17f0c0c5af28cfb8 (//varを付けたらダメだよ(ローカル変数になっちゃう。関数内だからローカル変数使うと外部からアクセスできない) というコメントがすごい・・・) はじめに 書こうと思ったきっかけ 自分は大学生の時にプログラミングに触れたことがあるものの情報系を出ておらず、エンジニアになったの

                                              自分がプログラミング力の成長を実感できるようになった瞬間について
                                            • 猫とIoT

                                              うちでは猫を2匹飼っています。どっちも野良出身で、子猫の時に拾ってうちの飼い猫になりました。 当然ですが、猫はご飯を食べます。 普段は僕か妻がご飯をあげてるけど、泊まりで出かける時は自動給餌器をセットしていきます。自動給餌器がちゃんと動けば人間がいなくても猫が飢えることはありません。 と思って、帰ってきてみたら途中でご飯が出なくなっていたりすることがありました。設定を間違えたこともあったし、機械の不具合で止まっていたこともありました。 今回は長年に渡る我が家での自動給餌器との戦いについて書いていきます。 あばよ涙、よろしく勇気、こんにちは松本です。 1976年千葉県鴨川市(内浦)生まれ。システムエンジニアなどやってましたが、2010年にライター兼アプリ作家として自由業化。iPhoneアプリはDIY GPS、速攻乗換案内、立体録音部、Here.info、雨かしら?などを開発しました。著書は「

                                                猫とIoT
                                              • N予備校のマイクロサービス - ドワンゴ教育サービス開発者ブログ

                                                N予備校のバックエンドは、2016年のリリース当初からマイクロサービスアーキテクチャを採用しています。 この記事では、N予備校のマイクロサービスアーキテクチャについて、主にアプリケーション側の観点からご紹介していきます! 目次 目次 N予備校の全体構成 なぜマイクロサービスにしたか? 採用しているマイクロサービスのデザインパターン Decomposition/サービスの分割 Data management/データ管理 External API/外部API, Orchestration/オーケストレーション Communication/コミュニケーション Deployment/デプロイ, Service discovery/サービスディスカバリ 利用しているフレームワーク/サービス マイクロサービスの運用の難しさと今後の展望 課題: 責務の分割へのハードル 今後の改善方針 We are hi

                                                  N予備校のマイクロサービス - ドワンゴ教育サービス開発者ブログ
                                                • Selenium 4 の新機能・変更点まとめ

                                                  2021/10/13 に Selenium 4 の正式リリースがアナウンスされました。 Selenium 4 の変更点について調べたので、まとめておきます。 後方互換性のない変更 基本的には後方互換性ありですが、一部のコードに依存していると修正が必要です。 Selenium 4 へのアップグレード方法のドキュメントが↓にあり、プログラミング言語ごとに修正例が載っているので参考になります。 大きなところでは、Capabilities 系のクラスや findElement(s)By* 系のメソッドが使えなくなっています。細かいところでは Java だと Waits や Timeout 系の引数が Duration 型になっているなどいろいろあるので、アップグレードするときはちゃんと上記のドキュメントを読んで影響範囲を把握しましょう。 新機能 Relative Locators ブラウザ上の他の

                                                    Selenium 4 の新機能・変更点まとめ
                                                  • Puppeteer、テスト自動化の次世代標準「WebDriver BiDi」に対応開始。Firefoxもサポートへ

                                                    Puppeteer、テスト自動化の次世代標準「WebDriver BiDi」に対応開始。Firefoxもサポートへ Node.jsでヘッドレスブラウザを用いたテスト自動化のためのフレームワーク「Puppeteer」が、ブラウザ自動化の次世代標準である「WebDriver BiDi」(「BiDi」は双方向を表すため、読みは「ウェブドライバー バィディ」とのこと)への対応を開始しました。 Puppeteerは、ChromiumベースのWebブラウザに対してChrome DevTools Protocolを用いて通信することで、Webブラウザの操作を自動化するとともに、コンソールに表示される情報やログなどの収集、画面キャプチャなどの取得によって、テストの自動化を効率化してくれる機能を備えています。 このPuppeteerが、現在策定中の次世代標準の「WebDriver BiDi」に対応を開始しま

                                                      Puppeteer、テスト自動化の次世代標準「WebDriver BiDi」に対応開始。Firefoxもサポートへ
                                                    • 今流行りのgRPCについて簡単にまとめてみた(Goのサンプルコード付き) - Qiita

                                                      はじめに (当時)Go歴1ヶ月の私が急遽gRPCを用いてバックエンドのAPIを開発してる業務に参画することになり、必要にかられて急いで学んだので、その時の学びを共有します✎ gRPCって最近よく聞くけど、「なにそれ?」って方も多いと思うので(私もそのうちの1人でした)、自分の学びを纏めるためにもgRPCのエントリー記事を書こうと決意し、Go 5 Advent Calendar 2020に登録しました! gRPCとは gRPCって良いらしい 最近gRPC流行ってるらしい 等聞いたことは多いと思いますが、簡単に説明すると RPC (Remote Procedure Call) を実現するためにGoogleが開発したプロトコルの1つ Protocol Buffers を使ってデータをシリアライズし、高速な通信を実現できる IDL(インターフェース定義言語)を使ってあらかじめAPI仕様を .pro

                                                        今流行りのgRPCについて簡単にまとめてみた(Goのサンプルコード付き) - Qiita
                                                      • MQTT Version 3.1.1 をふりかえる - OPTiM TECH BLOG

                                                        ご無沙汰してます。中野です。 相変わらずNATSやNSQやら、AWSやAzureやらと戯れてます。 はじめに IoTの流行りとともに脚光を浴びた通信プロトコルにMQTTと呼ばれるものがあります。 MQTTがIoTのシーンにおいて、HTTPなどの他のプロトコルと比較して、 プロトコル的にどう優れているのか、どう劣っているのか、結局ユースケース次第なのでここでは割愛します。 ただ事実としてあるのは、 Amazon Web Services (AWS) Microsoft Azure Google Cloud Platform (GCP) らが、IoT向けのメッセージブローカーとしてMQTTをサポートした以上、 MQTTというプロトコルの存在を無視はできないということです。 (製品に採用するかどうかは、ユースケース次第なのでまた別の話です。) (MQTTそのものの良し悪しより、それぞれのクラウド

                                                          MQTT Version 3.1.1 をふりかえる - OPTiM TECH BLOG
                                                        • Googleのサービス終了癖が発動、今度はIoTデバイス管理サービス「Cloud IoT Core」

                                                          Googleは2013年には「Googleリーダー」を終了、2018年には「Google+」を終了といったように多数のユーザーを抱えるプロジェクトをバッサリ終了してきました。新たに、IoTデバイス管理サービス「Cloud IoT Core」のサポート終了がひっそり告知されています。 Cloud IoT Core release notes  |  Cloud IoT Core Documentation  |  Google Cloud https://cloud.google.com/iot/docs/release-notes Cloud IoT Coreは、Googleのクラウドプラットフォーム「Google Cloud」を用いてIoTデバイスを管理できるサービスで、IoTデバイスのモニタリング機能やメッセージの双方向通信機能を提供していました。しかし、Cloud IoT Coreは

                                                            Googleのサービス終了癖が発動、今度はIoTデバイス管理サービス「Cloud IoT Core」
                                                          • LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法

                                                            LINE Developer MeetupはLINEが定期的に開催する技術者向けミートアップです。66回目の今回はLINEの新規サービス開発に携わる奥山氏が社内フレームワークArmeriaを使って簡単にgRPCサーバーを実装する方法を共有しました。 gRPCって何だったっけ? 奥山裕也氏(以下、奥山):LINEの開発4センター、 Official Account開発室の奥山が、「OA DevにおけるgRPC」についてお話しします。 まず簡単に自己紹介しますと、私は2019年の4月に新卒で入社しました。Official Account開発室というチームで、LINE公式アカウント関連の新規サービスを主に開発しています。コードは、サーバサイドで主にKotlinを書いています。また、line-bot-sdk-pythonというMessaging API SDKのメンテナーもしています。 今日は、最

                                                              LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法
                                                            • ヒトに意識は必要か? 稲葉振一郎『銀河帝国は必要か?』読書会【闇の自己啓発会】|江永泉

                                                              闇の自己啓発会は2月8日、都内某所で稲葉振一郎『銀河帝国は必要か?』読書会を行いました(都合により、予定していた課題本を変更しました。楽しみにしていた方には申し訳ありません…)。調子の悪い人が多く、いつも以上に具合の悪い話が多くなった気もしますが、その模様をお伝えしていきます。 ※これまでの活動についてはこちらをご覧ください。 https://note.com/imuziagane/m/mbd28cf65025b ※【闇の自己啓発会】は読書会記事を募集しています。 https://note.com/imuziagane/n/n9123acc09bec ◇参加者一覧 【ひで】シス 目黒から新宿に引っ越しました。今回の引っ越しで10回目です。無職になりました。 役所【暁】 今までに8回引っ越しています。転職に向けて動き始めました。好きな異世界召喚系ゲームは、Xuse『永遠のアセリア』。 【江永

                                                                ヒトに意識は必要か? 稲葉振一郎『銀河帝国は必要か?』読書会【闇の自己啓発会】|江永泉
                                                              • QUIC, HTTP/3の標準化状況を確認したい (2019年11月版) - ASnoKaze blog

                                                                2020/06/01追記 まるっと解説記事を書き直しました asnokaze.hatenablog.com 目次 Status The Plan Versions Extensions Applications Other Things More Information 関連記事 QUICは現在IETFで標準化が進められているトランスポートプロトコルであり、HTTP/3はそのQUICの上で効率よくHTTPのメッセージをやりとりするプロトコルです。 ChromeやFirefox, Nginxなどがすでに実装を行っており、「相互接続テスト」を定期的に実施している。その他多くの実装があり、「Implementations」から確認ができる。 その標準化状況について、QUIC WGとHTTP WG両方のチェアを務めるMark Nottinghamが先週行われたIETFで発表した「Quick QUI

                                                                  QUIC, HTTP/3の標準化状況を確認したい (2019年11月版) - ASnoKaze blog
                                                                • WebTransportとWebCodecsを組み合わせてビデオチャットを実装してみる - Qiita

                                                                  この記事は? こんにちは。NTTコミュニケーションズのyuki uchidaです。普段はSkyWayというWebRTCプラットフォームの開発やWebRTCリサーチャー(見習い)をしています。 この記事は NTTコミュニケーションズ Advent Calendar 2020 10日目の記事です。昨日はy-i さんの記事、 「グループ内プログラミングコンテストをオンライン上で開いた件」でした。 前回、 NTT コミュニケーションズのアドベントカレンダー3日目の記事として、「WebSocketの次の技術!?WebTransportについての解説とチュートリアル」という記事を投稿しました。 WebTransportが出てきた背景や、双方向通信の歴史について解説しているため、興味があれば是非ご覧ください。 今回の記事は、そのWebTransportとWebCodecsを組み合わせてビデオチャットを実

                                                                    WebTransportとWebCodecsを組み合わせてビデオチャットを実装してみる - Qiita
                                                                  • なぜか日本人は「PDCA」を「PdCa」にしてしまう…日本企業が残念な失敗を繰り返す根本原因 「考えてばかりで、何もせずに、怒られないように終始する」

                                                                    なぜ日本は残念な失敗を繰り返すのか 崩れてきているとはいえ、日本企業には、組織的な知識創造や、あうんの呼吸で理解をしあうハイコンテクストの知といった強みがありました。私たちはそれを持って世界で戦い、イノベーションを生み出し、世界に貢献してきました。 しかし、その裏側では失敗が多かったのも事実です。レジリエンスの強化に当たっては、そのことも認識しておく必要があります。 数多くの残念な失敗にある日本の問題の1つは、強みがあるにもかかわらず、それを発揮しきれずに「中途半端」に終わってしまうことだと著者らは考えています。ビジネスをやっていく上では徹底的に、圧倒的なナンバーワンにならなければ大きな収益を上げることはできません。 組織内の論理やしがらみに邪魔されたり、先を見通す目がなかったりしたために、せっかくのイノベーションを活かしきれずナンバーワンになる機会を逃してしまった例をいくつか見ていきまし

                                                                      なぜか日本人は「PDCA」を「PdCa」にしてしまう…日本企業が残念な失敗を繰り返す根本原因 「考えてばかりで、何もせずに、怒られないように終始する」
                                                                    • WebTransport over HTTP/3のプロトコル仕様 - ASnoKaze blog

                                                                      WebSocketに変わる、Webの新しい双方向通信仕様 WebTransportの標準化・実装が進められています。 このWebTransportではHTTP/3の特徴を活かし、パケットの順番が入れ替わったり、パケットロスがあったとしても受け取った順番に処理を行うことが出来ます。DATAGRAM拡張を使えば、パケットロスしたデータも再送不要にできます。 前回紹介した通り、WebTransportは「WebTransportover QUIC」や「WebTransportover HTTP/3」がありましたが、HTTP/3を使う方向で議論が進んでいます。 asnokaze.hatenablog.com Chromeの開発者メーリングリストでは、この「WebTransport over HTTP/3」実装が進められている事が書かれています。 groups.google.com そこで、今回はプ

                                                                        WebTransport over HTTP/3のプロトコル仕様 - ASnoKaze blog
                                                                      • 【セッションレポート】Nature Remoの裏側 ~ AWSとWeb技術をIoTの世界でフル活用する【#AWSDevDay】 | DevelopersIO

                                                                        こんばんわ、札幌のヨシエです。 今週開催されたAWS主催のAWS DevDay Tokyo 2019に参加しました。 以前より自宅で利用しているNature Remoに関してのセッションを拝聴しましたのでレポートとして書き出します。 登壇者 Nature 株式会社 松木 雅幸 氏(@songmu) アジェンダ Nature 及びNature Remoの紹介 システムアーキテクチャ解説 ECS活用事例 現在の課題 その他の細かい取り組み 会社と製品 Nature 株式会社 製品として「Nature Remo」、「Nature Remo mini」の2種類を販売している Nature Remo/mini スマートリモコンとしてスマートフォンやスマートスピーカーから赤外線で家電などを操作出来る製品 スマートフォンの位置情報を利用して家電を操作することが出来るので、外出先から家に近づいたタイミング

                                                                          【セッションレポート】Nature Remoの裏側 ~ AWSとWeb技術をIoTの世界でフル活用する【#AWSDevDay】 | DevelopersIO
                                                                        • Starlinkのアンテナはどのように人工衛星と通信しているのか?

                                                                          by Steve Jurvetson イーロン・マスク氏率いる宇宙開発企業のSpaceXは、1万2000基の人工衛星を用いてインターネットアクセスを提供するサービス「Starlink」を展開しています。専用の受信アンテナを用いれば都会だろうと田舎だろうと同レベルの通信が可能とされたこのサービスですが、実際に上空を飛び回る人工衛星とどのように通信しているのかが気になるところ。Starlinkの通信がどのように行われているのかについて、科学・工学系の動画を作成するBranch Educationが解説しました。 How does Starlink Satellite Internet Work?????☄???? - YouTube Starlinkの人工衛星は上空550kmの低軌道を周回していますが、その速度は時速2万7000kmにも達します。超高速で移動する人工衛星と通信を行うのが以下のよ

                                                                            Starlinkのアンテナはどのように人工衛星と通信しているのか?
                                                                          • async/awaitは今後もベストフレンドであり続けるか - hadashiA

                                                                            えーあーー みなさん聞こえますでしょうか。この記事はC# アドベントカレンダー17日めのために書かれました。 いくつかみかけた、async/await と java loom/goroutine的なものを比較する議論に興味があり、少し追ってみた感想です。実装まで深く調べられてません。 TL;DR Green Thread Experiment Results #2398 .NET の runtimelabにて、async/awaitの代替としてのグリーンスレッドを検証した結果が公開されていたが、今後も async/await でいくという結論になっている。 JVM (Java) は対象的に、コードの書き方をなにも変えなくてもランタイムが自動的にI/Oを非同期にしてくれる夢のVirtual Thread を導入した。 Rust界隈では「Why async/await ? why? why?

                                                                              async/awaitは今後もベストフレンドであり続けるか - hadashiA
                                                                            • いまさらだけどgRPCに入門したので分かりやすくまとめてみた - Qiita

                                                                              はじめに gRPCという言葉自体はよく聞いていたのですが、「RESTと同じような立ち位置なんだよね?何が違うの?」という状況だったので調べてまとめてみました。 モダンな技術を採用している企業では、既にサービスで当たり前のように活用されている技術ですので、gRPCの基本レベルで自信無い方は目を通してみてください。 gRPCとは gRPCはGoogle謹製のHTTP/2を利用したRPCフレームワークです。 Protocol Buffersを利用し、データをシリアライズして高速なRPCを実現します。 (Protocol Buffers以外も利用可能ですが、デファクトスタンダードとなっているため、本記事ではProtocol Buffersを前提に説明します。) protoファイルと呼ばれるIDL(Interface Definition Language)にAPI仕様を記述します。 また、IDLか

                                                                                いまさらだけどgRPCに入門したので分かりやすくまとめてみた - Qiita
                                                                              • Wi-Fiより高速通信できる次世代規格の「Li-Fi」とは?

                                                                                インターネット通信を利用する上で欠かせない技術となっている「Wi-Fi」とは別の、次世代の無線通信技術が「Li-Fi」です。Wi-Fiの標準規格を策定するIEEEが発行する雑誌・IEEE Spectrumが、Li-Fiとは一体どんな無線通信技術なのかをまとめています。 Why Li-Fi Might be Better than Wi-Fi - IEEE Spectrum https://spectrum.ieee.org/li-fi-better-than-wi-fi Wi-Fiは電波を用いてデータ通信を実現する規格ですが、スコットランドのpureLiFiが開発する次世代無線通信技術の「Li-Fi」は、電波の代わりに光波を用いてデータの送受信を行います。2023年7月、IEEEはLi-Fiの標準規格として「IEEE802.11bb」を承認しました。 IEEE802.11bbはLi-Fi対

                                                                                  Wi-Fiより高速通信できる次世代規格の「Li-Fi」とは?
                                                                                • Kubernetes の upstream のキャッチアップ

                                                                                  先日、Kubernetes Meetup Tokyo #59 で「KEP から眺める Kubernetes」というタイトルで発表しました。発表の後で Kubernetes の upstream のキャッチアップ方法について質問を受けました。その場で回答はしたのですが、ちょうど社内の共有会で似たような話をしたところだったので、加筆修正したものを公開しておきます。 はじめに Kubernetes の upstream を追いかけ始めて 1 年ちょっと経ったので、その経験をまとめます。Kubernetes の upstream やエコシステムを観察しているだけで、コントリビュータではありません。間違っている部分があったらごめんなさい...! Kubernetes の開発体制や開発者の所属組織の分布、新しい機能を追加する際のプロセスの話を簡単にしてから私のキャッチアップ方法についてまとめています。

                                                                                    Kubernetes の upstream のキャッチアップ