並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 27987件

新着順 人気順

interfaceの検索結果281 - 320 件 / 27987件

  • 至高のGoプラグイン用ツールを作った - knqyf263's blog

    最近YouTuberのリュウジの料理を毎日作っているので至高とか無限とか言いがちですが個人の感想です。万人にとって美味しい料理はないように、万人にとって至高のツールは存在しません(何の話?)。ちなみに公開してすぐバグを見つけてしまったので全然至高じゃありませんでした。 要約 概要 特徴 使い方 流れ 事前準備 インタフェースの定義 SDKの生成 プラグインの実装 ホストの実装 実行 発展 Host Functions ファイルアクセス その他 苦労した点 まとめ 要約 Goでプラグイン機構を実現するためのツールを作りました。Protocol Buffersのスキーマからコードを自動生成するので簡単にプラグイン機構を実現可能です。内部的にはWebAssembly(Wasm)を使っています。最近はWasmはブラウザ外での利活用が進んでおり、今回のツールもブラウザは一切関係ないです。Wasmはサ

      至高のGoプラグイン用ツールを作った - knqyf263's blog
    • TypeScriptの型定義で麻雀の役判定をする 【dwango Advent Calendar 2日目】 - MANA-DOT

      このエントリは ドワンゴ Advent Calendar 2021 2日目の記事です(夜が明けるまでは2日目!)。 はじめに TypeScriptには Conditional Types や Template Literal Types といったクッソ強力な型機能があります。 これらを用いて、今回は 2p3p4p2m3m4m2s3s4s4s5s6s8s8s のような天鳳牌譜形式の文字列を型引数に渡すと、麻雀の役判定をする型(あくまで型です、関数ではありません)を作ってみようとおもいます。 (ただし時間がなかったため断么九と平和のみです)。 Conditional Types, Template Literal Types って何? それぞれ具体的にどんなものか、マニュアルの例を用いて示すと、以下のような感じです。 // Conditional Types の例 interface Anim

        TypeScriptの型定義で麻雀の役判定をする 【dwango Advent Calendar 2日目】 - MANA-DOT
      • Diver-X、世界初!寝ながらの使用に最適化したVRデバイス「HalfDive」を発表 -ゲーム及び寝ながらの作業用途でコンシューマー展開を目指す-

        Diver-X株式会社(本社:東京都中央区、代表取締役:迫田大翔、以下「Diver-X」)は、世界初*となる、寝ながらの使用に最適化したVRデバイス「HalfDive(ハーフダイブ)」を発表します。2021年11月6日からのクラウドファンディングサイトKickstarterを通じた支援者募集に向けた準備を進めております。*自社調べ 【HalfDiveの特長】 一般的なVRヘッドマウントディスプレイ(以下、VR HMD)とは異なり、最初から寝ながら使用することを前提に開発しています。現行のVR HMDの殆どは動き回りながら使用することが想定されており、それ故に小型かつ軽量であることが求められています。しかし、その制約下ではハードウェアの進歩は半導体性能の向上に伴う解像度やトラッキング精度の向上などに留まっていました。それに対し、HalfDiveの最大の特徴は寝ながらの使用に最適化し、完全据え

          Diver-X、世界初!寝ながらの使用に最適化したVRデバイス「HalfDive」を発表 -ゲーム及び寝ながらの作業用途でコンシューマー展開を目指す-
        • Kubernetes: kube-scheduler をソースコードレベルで理解する - チェシャ猫の消滅定理

          はじめに Kubernetes において、Pod を配置するための Node を決定する手続きをスケジューリングと呼び、デフォルトのクラスタでは kube-scheduler がその責務を担っています。本記事ではこの kube-scheduler のソースコードを時系列に沿って追いつつ、どのようなロジックで Pod を配置する Node が決定されるのかを解説します。 なお、本記事は Kubernetes の内部実装について学ぶ勉強会 Kubernetes Internal #3 の補足資料を意図して執筆されました。本文中で参照しているソースコードのバージョンは v1.19.4 です。 Kubernetes Internal #3 録画 スケジューラの概要 ソースコードを読むに先立つ予備知識として、スケジューリングの大まかな流れと Scheduling Framework の概要に触れてお

            Kubernetes: kube-scheduler をソースコードレベルで理解する - チェシャ猫の消滅定理
          • AmazonのAPI設計方針 (The Bezos Mandate) - Qiita

            はじめに The Bezos Mandateという文書があります。日本語に訳すと「ベゾスのお達し」とか「ベゾスの勅令」でしょうか。 言わずと知れたAmazon.comのCEO、ジェフ・ベゾスが開発チームに通達した内容です。 これが(元Amazon.com従業員によって)公開されたのは2011年ですが、ベゾスがこのお達しを出したのは2002年前後です。17年経過した現在でも真理をついているどころかようやく時代がベゾスに追いついたかという感想です。 この記事ではThe Bezos Mandateの紹介と、僭越ながら補足説明も行います。 お達しの内容 原文は元Amazon.com従業員のGoogleエンジニア(公開当時)、Steve Yeggeによって公開されました。 Google+にStevey's Google Platforms Rantというタイトルで、Amazon.comと比べたGoo

              AmazonのAPI設計方針 (The Bezos Mandate) - Qiita
            • `*.d.ts` ファイルをコミットする前に知ってほしい4つのこと

              export type Bookmark = { id: number; url: string; comment: string; }; このファイルには型しか書いてありませんね。ということは、「型定義ファイル」として bookmark.d.ts という名前にするべきでしょうか。実はそうではなく、この場合は bookmark.ts とするべきです。 「型定義ファイル」とは、「どこか別の場所にある実装に型をつけるためのファイル」です。たとえば、以下のファイルは「どこか別の場所にある実装」に型をつけているから、 *.d.ts にするのは自然です。 いっぽう、 type Bookmark は別のどこかにある *.js の型を与えているわけではないので、 *.ts でよいです。 このように本来 *.ts であるべきものを *.d.ts にしてしまうことには問題があります。代表的な問題として型エラ

                `*.d.ts` ファイルをコミットする前に知ってほしい4つのこと
              • NEC’s Tetris Processor

                Tetris is a classic time-waster, both in and outside of the office. What good is any computing device if it can’t play this game? Tokyo System House certainly thought so, and ported it to the NEC mini5 line of CP/M-based word processors. Let’s preserve it for future generations and then see what it’s like! I’ve been trying to get this game for a bit. First, I had been looking at the online old-gam

                  NEC’s Tetris Processor
                • TypeScript の型定義に凝りすぎじゃね? - Neo's World

                  TypeScript の型定義に凝りすぎじゃね? ここ数年で、Qiita や Zenn で TypeScript の話を見かける機会が多くなった。JavaScript には Java のような型定義がなく、初心者の混乱の元・ひいては障害の元になりうるのはよく分かる。 しかし、最近どうにもこうにも、TypeScript でむりくり型定義するような Tips を多く見かけて、疑問に思っている。たかが TypeScript に頑張り過ぎじゃね? と。 【TS】TypeScript 4.0 の新機能 - Qiita こういう新機能とか、追加されるのはいいんだけど、本当に便利なんか?と思ってしまう まず、TypeScript による型定義は単なる Linter でしかない。コードが実行される時は基本的に JavaScript に変換され、TypeScript の構文で記した型定義は消失する。コーディ

                  • Clean Architectureなにもわからないけど実例を晒して人類に貢献したい - エムスリーテックブログ

                    こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 これまでは、中村の記事で宣言した 「医師版Stack Overflow」(12/16に正式名称Docpediaとしてリリースされました) の技術的チャレンジの 記事を続けて書いていたのですが、今回はここで宣言しなかったClean Architectureについて書きます。 浪江駅(なみええき)は、福島県双葉郡浪江町にある、東日本旅客鉄道(JR東日本)常磐線の駅。本文には特に関係ありません。 Clean Architecture 達人に学ぶソフトウェアの構造と設計 (アスキードワンゴ) 作者:Robert C.Martin,角 征典,高木 正弘出版社/メーカー: ドワンゴ発売日: 2018/08/01メディア: Kindle版 なぜ書くのか 参考にできる実例を増やしたい Tech Blogはそのままドキュメ

                      Clean Architectureなにもわからないけど実例を晒して人類に貢献したい - エムスリーテックブログ
                    • GitとGitHubを分かりやすく! 組織開発で生かすツール選択とプロジェクト進行を解説|ハイクラス転職・求人情報サイト AMBI(アンビ)

                      GitとGitHubを分かりやすく! 組織開発で生かすツール選択とプロジェクト進行を解説 分散型バージョン管理システムのGitと、そのホスティングサービスとしてプルリクエストなどの機能をもつGitHubは、ソフトウェア開発環境として広く普及しています。本記事ではGitやGitHubの考え方や使い方の基本を解説するとともに、実際のプロジェクトにおける開発の進め方を簡単に紹介します。 この記事を読み始めているということは、GitやGitHubに興味をお持ちのことでしょう。Gitはバージョン管理システム、GitHubはGitのホスティングサービスで、いずれもソフトウェア開発を中心に利用されています。近年では、2018年にGitHubの運営会社がMicrosoft社によって買収されたことでも話題になりました。 この記事では、GitやGitHubの基本的な使い方や考え方を解説します。また、実際の開発

                        GitとGitHubを分かりやすく! 組織開発で生かすツール選択とプロジェクト進行を解説|ハイクラス転職・求人情報サイト AMBI(アンビ)
                      • KeyTrap (CVE-2023-50387)を検証してみた - knqyf263's blog

                        DNSは趣味でやっているだけですし有識者のレビューを経ているわけでもないので誤りを含むかもしれませんが、DNS界隈には優しい人しかいないのできっと丁寧に指摘してくれるはずです。 追記:めちゃくちゃ丁寧にレビューしていただいたので修正いたしました。森下さんほどの方に細かく見ていただいて恐れ多いです...(学生時代に某幅広合宿で森下さんの発表を見てDNSセキュリティに興味を持った) 4万文字を超える大作、おつかれさまです。わかりやすく書けていると思いました。 ざっと読んで、コメントしてみました。ご参考まで。https://t.co/bVj5WeFHQr https://t.co/ku5NOx6ua8— Yasuhiro Morishita (@OrangeMorishita) 2024年2月19日 要約 背景 詳細 DNSSECとは? DNSSECの可用性 鍵タグの衝突 攻撃内容 SigJam

                          KeyTrap (CVE-2023-50387)を検証してみた - knqyf263's blog
                        • スケルトンスマホ「Phone (1) 」説明会で知ったNothingの高すぎる透明性

                          スケルトンスマホ「Phone (1) 」説明会で知ったNothingの高すぎる透明性2022.08.10 14:0017,199 武者良太 透明性というか、ぶっちゃけ具合というか。 スケルトンなハウジングを用いて、ハードウェアの中身をかっこよく見せることを大事にしているNothing(ナッシング)。彼らの最新作であるスマートフォン「Phone (1) 」がついに発表されました。発売は8月19日、予約受付は8月10日から。まずいちばん気になるお値段からお伝えしましょう。 税込み6万9800円です。RAM8GB、ストレージ256GB。SoCはSnapdragon 778G Plusで、Theミドルレンジですが、思っていたより安い! バッテリーは4500mAh、6.55インチOLEDディスプレイには指紋認証センサーが埋め込まれており、カメラは広角が1/1.56インチ・5000万画素のソニーIMX

                            スケルトンスマホ「Phone (1) 」説明会で知ったNothingの高すぎる透明性
                          • 発明家の北神@ Interface 2022年11月号 on Twitter: "す、すげぇ。東横イン、部屋事にSSIDがあって(ルーター名が部屋番号)確かルーターが沢山あるとチャンネルの奪い合いになるのでは?って思い出して調べたら、まぁひどい状況w 部屋同士戦い合う仕組みになってる、どうして汗w https://t.co/Cvs8pZzZOP"

                            す、すげぇ。東横イン、部屋事にSSIDがあって(ルーター名が部屋番号)確かルーターが沢山あるとチャンネルの奪い合いになるのでは?って思い出して調べたら、まぁひどい状況w 部屋同士戦い合う仕組みになってる、どうして汗w https://t.co/Cvs8pZzZOP

                              発明家の北神@ Interface 2022年11月号 on Twitter: "す、すげぇ。東横イン、部屋事にSSIDがあって(ルーター名が部屋番号)確かルーターが沢山あるとチャンネルの奪い合いになるのでは?って思い出して調べたら、まぁひどい状況w 部屋同士戦い合う仕組みになってる、どうして汗w https://t.co/Cvs8pZzZOP"
                            • Effective Error Handling in Golang

                              This article explores Go error handling. Earthly is popular with Go developers for ensuring reproducible builds. Check it out. Error handling in Go is a little different than other mainstream programming languages like Java, JavaScript, or Python. Go’s built-in errors don’t contain stack traces, nor do they support conventional try/catch methods to handle them. Instead, errors in Go are just value

                                Effective Error Handling in Golang
                              • AlmaLinux、今後はRed Hat Enterprise LinuxのABI互換を目指すと発表。これまでの「バグまでRHEL互換」の路線を変更

                                AlmaLinux、今後はRed Hat Enterprise LinuxのABI互換を目指すと発表。これまでの「バグまでRHEL互換」の路線を変更 2020年にRed Hatは、Red Hat Enterprise Linux互換OSとして使われてきたCentOSの開発中止を発表しました。 これをきっかけに、CentOSの後継を担うことを目指していくつかのRHELクローンOSが登場します。その代表的なLinuxディストリビューションの1つがAlmaLinuxです。 AlmaLinuxはRHELのソースコードを基に、RHELのバグまで含めて完全にRHEL互換をうたうLinuxディストリビューションを開発、提供してきました。 しかしRed Hatは先月(2023年6月)、RHELのソースコードの一般公開を事実上終了するとともに、クローンOSベンダに対して「付加価値もなくコードをリビルドするだ

                                  AlmaLinux、今後はRed Hat Enterprise LinuxのABI互換を目指すと発表。これまでの「バグまでRHEL互換」の路線を変更
                                • 「いじめられたから見返そうと頑張る」には無理がある(Interfaceに論文掲載) | 富永 京子 / TOMINAGA Kyoko

                                  社会運動の専門誌Interfaceに論文が掲載されました(こちらから読めます)。国際誌への掲載としては、2017年に刊行された前回の論文から随分時間が経ってしまいました。内容は「社会運動の旅(Protest Journey)」に関するものですが、ここでは今回の論文の執筆に至るまでの少し別の話をさせてください。 この3年間はある事情で研究が難しい状況にありました。この論文もいくつかの雑誌に投稿を繰り返してようやく掲載されたというところです。理由は後述しますが、いままでお世話になってきた「日本の社会運動論の先生に認められるため」に頑張ってきたのですが、もう限界があるような気がします。この論文が掲載されたこともあり、しばらく、社会運動研究のほうは好きなペースで行うことにしようと思います。 なんで認められることに躍起になっていたのかというと、数年前にある社会運動の研究会(特にメンバーシップというも

                                    「いじめられたから見返そうと頑張る」には無理がある(Interfaceに論文掲載) | 富永 京子 / TOMINAGA Kyoko
                                  • 法令APIを利用したリサーチツールを自作してみた【SmartRoppo】 - Qiita

                                    1. はじめに 2. リーガルテックっぽいプロダクトを作ってみた 3. SmartRoppoのコンセプト 4. SmartRoppoの主な機能・特長 5. なぜ自分で作ろうと思ったのか? 6. 今後の課題 7. おわりに 1. はじめに この記事は、じゃんく(@jank_2525)さんからバトンを受け継ぎ、「法務系 Advent Calendar 20191」の14日目エントリーとして執筆しています。 皆さんのエントリー、どれも個性あふれる素敵な内容で、毎日大変興味深く拝見しています。 2. リーガルテックっぽいプロダクトを作ってみた さて、突然ですが、リーガルテック的なプロダクトを作ってみたので、このエントリーをもってβ版を公開させていただきます。【SmartRoppo】といいます。 SmartRoppo -法令データベースを、もっと賢く- https://smartroppo.com/

                                      法令APIを利用したリサーチツールを自作してみた【SmartRoppo】 - Qiita
                                    • WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進

                                      WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進 WebAssemblyには、ファイルI/OやネットワークアクセスなどのOSが備える基本的な機能を抽象化するWASI(WebAssembly System Interface)と呼ばれる業界標準仕様があります。WASIに準拠して生成されたWebAssemblyバイナリはWindows、Linux、macOSなどのOSに依存せず、どのOS環境でもそのまま実行可能です。 参考:WebAssemblyをWebブラウザ以外の実行環境へ。システムインターフェイスへのアクセスを可能にする「WASI」の策定開始。Mozillaが呼びかけNode.jsらが賛同 WebAssemblyに対してパブリッククラ

                                        WebAssemblyに対してクラウドサービスを抽象化、そのままAWSでもAzureでもGoogle Cloudでも実行可能にする「SpiderLightning」、Deis Labsが公開、標準化も推進
                                      • 機械学習APIでWebサイトの改善点を提案するサービスを作った話 - Qiita

                                        まえがき アクセシビリティーの観点からWebサイトを診断し、AIプラットフォームを利用して得た情報をもとにベストプラクティスを提案してくれるオープンソースのWebサービス「Visible」を開発しました。 WebサイトURL: https://visi.dev GitHubリポジトリ(Starください!): https://github.com/visible/visible GoogleのLighthouseなど、Webサイトの診断を行ってくれるサービスは以前からありましたが、診断だけではなく改善点の提案も行う新しいサービスになっています。また、アクセシビリティーに関する理解を深めてもらえるように工夫をした設計にしていたり、コマンドライン版ではスタンドアロンで実行可能なようになっています。 2020年度の「独創的アイデアと卓越した技術を持つ小中高生クリエータ支援プログラム」未踏ジュニアに

                                          機械学習APIでWebサイトの改善点を提案するサービスを作った話 - Qiita
                                        • React + Material-UIで管理画面を作成してみた | DevelopersIO

                                          Reactアプリを作成 Material-UIで管理画面を作るためのベースとなるReactアプリを作成します。 Create React App Create React Appで新しいReactアプリを作成します。 npx create-react-app react-material-ui-sample --typescript プロジェクトのディレクトリへ移動して実行します。 cd react-material-ui-sample npm start ブラウザにReactアプリが表示されます。 ディレクトリ構成 ディレクトリはあまりネストさせすぎずシンプルな構造にしました。コンポーネントの分け方はAtomic Designを参考にしています。 src/ ├ components/ │ └ atoms/ # 原子(個々のパーツ) │ └ molecules/ # 分子(原子の集合体)

                                            React + Material-UIで管理画面を作成してみた | DevelopersIO
                                          • AWS re:Invent 2020で発表された新サービス/アップデートまとめ - Qiita

                                            AWS re:Invent 2020の会期中に発表された新サービス/アップデートのまとめです。 今年も、後から出来るだけ素早く簡単に振り返ることができるようにまとめました! 凡例 (無印) 新サービス (Update) 既存サービスのアップデート (APN) パートナー制度に関連したリリース/アップデート 12/1 (火) 今年の開幕は「Amazon EC2 Mac instances」でした。 Amazon EC2 Mac instances macOS用のAmazon Elastic Compute Cloud (EC2) Macインスタンス EC2 Macインスタンスを使用すると、iPhone、iPad、Mac、Apple Watch、Apple TV、Safari用のアプリ開発者は、macOS環境を数分でプロビジョニングしてアクセスし、必要に応じて容量を動的に拡張し、AWSの従量課

                                              AWS re:Invent 2020で発表された新サービス/アップデートまとめ - Qiita
                                            • Pythonが教育用途において十分だという話

                                              Pythonが教育用途において十分だという話 今話題のPythonを教えている現役の講師です。Pythonを教える際に重視すべきだと考えている機能等について書いておきます。 dataclass / Pydantic 自分は型ヒントよりもdataclassやPydanticを使った型付けを重視しています。いわゆるクラスベースな言語の書き方が大事だと考えています。 dataclass Pythonは動的型付け言語であり、interface相当の機能すらclassの構文で書く変わった言語です。近年Pythonの型ヒントは少しづつ充実してきていますが発展途上であることは否めないですし、何より実行時にその型であることは保証されないので、dataclass等を使った開発スタイルが依然強力だと考えています。 Python+TypeScriptというようなスタックを使う際には両言語の差に混乱するでしょう。

                                                Pythonが教育用途において十分だという話
                                              • WebAssemblyでの機械学習モデルデプロイの動向

                                                本記事はMLOps Advent Calendar 2020の 2 日目の記事です。 WebAssembly(Wasm)は機械学習モデルをデプロイする新たな手段になりうるでしょうか。 この記事では、機械学習モデル(特に Deep Learning)を Wasm でデプロイする周辺技術の動向や内部の仕組みをざっくりと説明します。 Table of Contents tkat0 です。WebAssembly(Wasm)面白いですね。 私も最近はyewでフロントエンドを書いて遊んでいます。Rust で React っぽいことできるのは新鮮で面白いです。 Wasm は、なんとなく速い JavaScript?とか機械学習で何に役立つの?とか思ってる方も多いと思います。 しかし、Wasm はブラウザでの推論時に使えるだけでなく、機械学習モデルのサービングやエッジデバイスでの推論にも使えると知ったら驚き

                                                  WebAssemblyでの機械学習モデルデプロイの動向
                                                • Don't Panic: Kubernetes and Docker

                                                  By Jorge Castro, Duffie Cooley, Kat Cosgrove, Justin Garrison, Noah Kantrowitz, Bob Killen, Rey Lejano, Dan “POP” Papandrea, Jeffrey Sica, Davanum “Dims” Srinivas | Wednesday, December 02, 2020 Update: Kubernetes support for Docker via dockershim is now removed. For more information, read the removal FAQ. You can also discuss the deprecation via a dedicated GitHub issue. Kubernetes is deprecating

                                                    Don't Panic: Kubernetes and Docker
                                                  • この世の中に溢れているので自分が発言する必要はないが「ソフトウェアは認知の限界まで複雑になる」を自分なりに再考する - じゃあ、おうちで学べる

                                                    人間が何もしないと病気になるのと同じように、ソフトウェアも何もしないと複雑になる。 はじめに ソフトウェア開発の世界に飛び込んでから、「ソフトウェアは認知の限界まで複雑になる」という言葉を耳にしたとき、正直なところ、「ほへー」って思いながら何も理解していませんでした。しかし、大規模なシステムに携わるようになって、その言葉の重みを身をもって感じるようになりました。内部構造や相互作用が複雑化し、全体を把握するのが難しくなっていく。それは挑戦であると同時に、私たち開発者の存在意義を問いかけるものでもあります。 A Philosophy of Software Design, 2nd Edition (English Edition) 作者:Ousterhout, John K. Amazon この複雑性との闘いは、時に苦しいものです。でも、それを乗り越えたときの喜びは何物にも代えがたい。私たちの

                                                      この世の中に溢れているので自分が発言する必要はないが「ソフトウェアは認知の限界まで複雑になる」を自分なりに再考する - じゃあ、おうちで学べる
                                                    • Linuxカーネル内部をフックするeBPFを用いてセキュリティの可観測性を実現する「Tetragon」がオープンソースで公開

                                                      Linuxカーネル内部をフックするeBPFを用いてセキュリティの可観測性を実現する「Tetragon」がオープンソースで公開 Linuxカーネルを書き換えることなくその内部の機能をフックし、フック先でサンドボックス化されたプログラムを実行することにより、カーネルをプログラマブルに機能拡張できる「eBPF」(Extended Berkeley Packet Filter)は、クラウドネイティブ関連で最も注目されている技術の1つです。 eBPFを用いたソフトウェアとしては、CNI(Container Networking Interface)を用いてコンテナ間のセキュアな接続やロードバランシングなどさまざまな機能拡張を実現する「Cilium」がCloud Native Computing Foundationのプロジェクトとしてよく知られています。 今回、そのCiliumを開発するIsoval

                                                        Linuxカーネル内部をフックするeBPFを用いてセキュリティの可観測性を実現する「Tetragon」がオープンソースで公開
                                                      • 何問解ける?TypeScriptクイズ! #techtekt Q - techtekt

                                                        みなさまこんにちは。techtekt編集部です。 パーソルキャリアのエンジニアやデータサイエンティストなどが出題する「techtekt Q」という新たなコンテンツをスタートしました。 社内でよく使われる言語から、注目しているフレームワーク、答えを導くプロセスなど、さまざまな視点でクイズを出題します! トップバッターをかざってくれたのは、主に新規サービスの開発を担う「サービス開発部」からYuto SAGAWAさんと、@_k725さんからの出題です。さて、あなたは何問解けますか??? ※Yuto SAGAWAは退職していますが、本人の同意を得て掲載を継続しています。 出題背景 私達のチームではメインの開発言語にTypeScriptが採用されています。 TypeScriptには静的型付けなどがあり、またトランスパイルする時点でエラーが分かることから、複数名での開発で便利なことが特徴です。 便利で

                                                          何問解ける?TypeScriptクイズ! #techtekt Q - techtekt
                                                        • gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog

                                                          こんにちは、Wantedly の Infrastructure Team で Engineer をしている南(@south37)です。 今日は、WANTEDLY TECH BOOK 6 から「gRPC Internal」という章を抜粋して Blog にします。 「WANTEDLY TECH BOOK 1-7を一挙大公開」でも書いた通り、Wantedly では WANTEDLY TECH BOOK のうち最新版を除いた電子版を無料で配布する事にしました。Wantedly Engineer Blogでも過去記事の内容を順次公開予定であり、この Blog もその一環となっています。 Wantedly における Go 導入にまつわる技術背景 | Wantedly Engineer Blog (本記事は Go Conference 2019 Autumn にて無料配布した冊子『WANTEDLY TE

                                                            gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog
                                                          • Chromium にコントリビュートするための周辺知識 | blog.jxck.io

                                                            Intro Chromium にコントリビュートするためには、ソースコードを理解する以外にも、もろもろ必要な周辺知識がある。 ドキュメントはかなり整備されている方ではあるが、そのドキュメントにたどり着くのが難しい場合もある。 レビュアーなどが親切に教えてくれるものをローカルにメモしているが、それも散らばってきたため、ここにまとめることにする。 まずは初期状態で公開するが、どんどん更新していき、長くなっても分割しないで追記を繰り返そうと考えている。 関連サイト 始めて取り組もうとすると、まずどこを見ればわからないところから始まる。 似たようないくつかのサイトがあり、使い分けがされているからだ。 code search https://source.chromium.org/chromium/chromium/src コードをインタラクティブに検索するためのサイト Workspace 風の U

                                                              Chromium にコントリビュートするための周辺知識 | blog.jxck.io
                                                            • WebAssembly の過去・現在・未来 - Qiita

                                                              はじめに WebAssembly (略して Wasm) では WASI や WIT、 Component Model など様々な仕様があります。 それぞれが登場した背景、モチベーションなどを理解することでなんとなく概要を掴んでいくことができるのではないかと考えたため、過去・現在・未来と時間軸で整理してみました。 まず Wasm とその特徴に関して簡単に紹介した後、Wasm の過去として生まれた背景やモチベーションを紹介します。 そして現在の Wasm がなぜ注目を集めているのか、そして現在策定中の仕様と目指している未来について紹介します。 WebAssembly とはなにか WebAssembly はスタックベースの仮想マシン用バイナリ命令フォーマットの仕様です。Wasm と略されます。 Wasm ファイル(Wasm モジュール)は一般に .wasm という拡張子で表されるバイナリファイル

                                                                WebAssembly の過去・現在・未来 - Qiita
                                                              • Goでつまづいたところを仕様を見ながら理解してみる - ravineport blog

                                                                Go言語デビューしました!🎉 シンプルなのもあってすぐに馴染むことができています。Goよいですね! さてさて今回はGoを書いていて「これできるんだ」「これはコンパイルエラーなんだ」となったところをGoの仕様などを見ながら(できればそのwhyまで)理解したいと思います。 Go 1.18時点での記事です。 つまづき1:constをポインタとして扱えない 例えばこんなのがあったとして const Ten = 10 type User struct { age *int } 以下のコンパイルが通りません。 func main() { user := User{ &Ten, // コンパイル通らない🤔 } fmt.Println(user) } エラーメッセージを見てみると invalid operation: cannot take address of Ten (constant 10 of

                                                                  Goでつまづいたところを仕様を見ながら理解してみる - ravineport blog
                                                                • role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのか - Qiita

                                                                  role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのかHTMLアクセシビリティWAI-ARIA 最近、いくつかの場面でWebアクセシビリティについて、コーディングに関する技術的な説明をする機会がありました。そのなかで、そもそもWAI-ARIAというものが、どういう立ち位置のものなのかがわかりづらい状態にあるということに気付きました。その結果として、WAI-ARIAの活用を含めたWebアクセシビリティ向上に取り組むことへのネガティブな印象が生まれてしまったり、理解が足りないままWAI-ARIAの属性を使うことでかえって問題が発生しやすくなってしまったりしている現状があるのではないかと思うようになりました。 そこでこの記事では、なるべくわかりやすい形で、WAI-ARIAそのものや、その中で登場する role 属性や、名前に aria- のプレフ

                                                                    role 属性とは、aria-* 属性とは、WAI-ARIA とは、いったい何なのか、いつ使うべきなのか - Qiita
                                                                  • WebAssemblyをあらゆるプラットフォームでセキュアに実行できるようにする「Bytecode Alliance」発足。インテル、Mozilla、Red Hatなど

                                                                    WebAssemblyをあらゆるプラットフォームでセキュアに実行できるようにする「Bytecode Alliance」発足。インテル、Mozilla、Red Hatなど WebAssemblyは、Webブラウザ上でネイティブコードのように高速に実行できるバイナリフォーマットして策定された標準仕様で、すでにChromeやFirefox、Edge、Safariなどの主要ブラウザでサポートが実現されています。 このWebAssemblyをWebブラウザだけでなく、デスクトップPCやサーバ、IoTデバイスなどあらゆる環境で、セキュアに実行することを目指した団体「Bytecode Alliance」が発足しました。 Bytecode Allianceの創立メンバーは、インテル、Mozilla、Red Hat、Fastlyの4社。 前述したように、WebAssemblyはもともと、Webブラウザで実行

                                                                      WebAssemblyをあらゆるプラットフォームでセキュアに実行できるようにする「Bytecode Alliance」発足。インテル、Mozilla、Red Hatなど
                                                                    • 【TypeScript と友達に】Type Challenges を全問解いたのでエッセンスと推し問題を紹介してみる - 前編

                                                                      【TypeScript と友達に】Type Challenges を全問解いたのでエッセンスと推し問題を紹介してみる - 前編 はじめに 自己紹介 初めまして、@kakekakemiya と申します。 現在は東京大学大学院学際情報学府の修士 1 年で、フロントエンドエンジニアとして活動しています(25 卒の就活生です)。TypeScript × React × Next.js が主戦場ですが、Flutter でモバイルアプリを開発するときもあります。 今回は自分の TypeScript 力の向上のために、合計 170 問あるType Challenges を全問解いたので、Type Challenges における推し問題を紹介しながら、型パズルを解く上でのエッセンスを述べていく記事を書いてみようと思います。 Zenn での初投稿なので、何かと至らない点があるかもしれませんが、よろしくお願い

                                                                        【TypeScript と友達に】Type Challenges を全問解いたのでエッセンスと推し問題を紹介してみる - 前編
                                                                      • New – Application Load Balancer Support for End-to-End HTTP/2 and gRPC | Amazon Web Services

                                                                        AWS News Blog New – Application Load Balancer Support for End-to-End HTTP/2 and gRPC Thanks to its efficiency and support for numerous programming languages, gRPC is a popular choice for microservice integrations and client-server communications. gRPC is a high performance remote procedure call (RPC) framework using HTTP/2 for transport and Protocol Buffers to describe the interface. To make it ea

                                                                          New – Application Load Balancer Support for End-to-End HTTP/2 and gRPC | Amazon Web Services
                                                                        • Rails+Next.jsでGraphQLを導入する時に考えたこと - Timee Product Team Blog

                                                                          こんにちは、タイミー開発プラットフォームチームで業務委託として働いている宮城です。 タイミーはリリースから4年が経過したプロダクトで、2022年の前半から一部領域でGraphQLを利用し始め現在導入を進めています。 本記事では、GraphQLをプロダクトに導入する上で判断に迷った箇所や課題に対して、タイミーでの意思決定とその理由を紹介します。参考にしていただければ幸いです。 GraphQLの選定理由についてはこの記事では触れませんが、CTOの@kameike が以下のイベントで詳しく紹介する予定です。まだ参加申し込みは可能ですので、興味がある方はぜひ合わせてご覧ください。 timeedev.connpass.com なお、本記事のタイトルはソウゾウさんの以下の記事にインスパイアされています。 engineering.mercari.com GraphQLの「Getting Startedの

                                                                            Rails+Next.jsでGraphQLを導入する時に考えたこと - Timee Product Team Blog
                                                                          • 「手のひらを虫が這う感覚」を体験できる超薄型「電子皮膚」 無線から電気刺激で触覚生成

                                                                            Innovative Tech: このコーナーでは、テクノロジーの最新研究を紹介するWebメディア「Seamless」を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。 香港城市大学などに所属する研究者らが発表した論文「Encoding of tactile information in hand via skin-integrated wireless haptic interface」は、手のひらへの電気刺激で触覚を着用者に与えるVR向け極薄ハプティクスデバイスを提案した研究報告である。 電極が備わったパッチを手のひらに貼り付け、無線で電気を流すことで着用者に対してVRに応じた触覚刺激を提供できる。 触覚を加えたVR体験は臨場感の向上につながり、中でも手への触覚刺激は高い効果が得られる。だが、手の場合だと手袋を装着するなどかさばる仕様のものが多い。没入

                                                                              「手のひらを虫が這う感覚」を体験できる超薄型「電子皮膚」 無線から電気刺激で触覚生成
                                                                            • 脳・脊髄インターフェース  ―12年もの間,下半身不随だったひとの歩行を可能とする驚異の医療!!― - Neurology 興味を持った「脳神経内科」論文

                                                                              感嘆して思わず仰け反ったNature誌論文です(解説動画をご覧ください).主人公は40歳のGert-Jan Oskam氏,バイク事故による頸髄損傷により12年間にわたって下半身不随,上肢も一部麻痺になってしまいました.スイス連邦工科大学ローザンヌ校のCourtine博士は,記者会見で「我々はOskam氏の意思を捉え,その意思を脊髄への刺激に変換し,自発運動を再び獲得させることに成功した」と述べています. 博士らは2018年,脊髄の電気刺激と集中的リハビリにより,脊髄損傷患者の再歩行が可能となることを実証しました.しかしその効果は不十分であったため,さらに研究が進められました.Oskam氏が身体のさまざまな部分を動かそうとしたときに,脳のどの部分が電気信号を発するか,つまりその「意思」を解読するために,機械学習プログラムを使った観察を行いました.そしてこの人工知能の「デコーダー」により,特定

                                                                                脳・脊髄インターフェース  ―12年もの間,下半身不随だったひとの歩行を可能とする驚異の医療!!― - Neurology 興味を持った「脳神経内科」論文
                                                                              • TypeScript 型レベル関数型プログラミング in 2023 - Object.create(null)

                                                                                ちょっと前に話題になった hotscript の技法の紹介やら, ラムダ計算を TypeScript の型にコンパイルする話やらなんやら. 通常の型レベル関数 TypeScript の型エイリアスはパラメータを取れるので, これは型レベルの関数であるとみなせます. type IsNumber<X> = X extends number ? true : false; type A = IsNumber<42>; // = true 一方でこのようにして定義された関数は第一級ではない, つまり関数そのものを他の関数の引数として渡したりすることができません. type FilterUnion<F, X> = X extends unknown ? (F<X> extends true ? X : never) : never; // ~~~~ // ^ Error: Type 'F' is n

                                                                                  TypeScript 型レベル関数型プログラミング in 2023 - Object.create(null)
                                                                                • 重複した IP アドレス範囲を持つネットワーク間接続 | Amazon Web Services

                                                                                  Amazon Web Services ブログ 重複した IP アドレス範囲を持つネットワーク間接続 本稿では、重複した IP アドレス範囲を持つネットワーク間接続のいくつかの方法を紹介していますが、第一に VPC の IP アドレス範囲は、通信するネットワークと重複しないように慎重に設計することが重要です。 お客様のネットワークにて、IP アドレス範囲が重複したリソース同士が通信する必要のある状況がよく見られます。これは、企業が買収された際、同じプライベート (RFC1918) アドレス範囲を使用している場合によく発生します。しかし、固有の IP アドレス範囲を持つサービスプロバイダーが、同じ IP アドレス範囲を持つ2つの異なるコンシューマーにアクセスを提供する際に発生する可能性もあります。 ネットワークの重複は意図せず発生することもあります。Amazon SageMaker や AW

                                                                                    重複した IP アドレス範囲を持つネットワーク間接続 | Amazon Web Services