並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 2458件

新着順 人気順

WebAssemblyの検索結果321 - 360 件 / 2458件

  • WasmLinux: LinuxカーネルをWebAssemblyにする

    LinuxカーネルがWebブラウザで動いたらどう考えても面白い んだけど、そこに至るまではなかなか難しい道のりになる。その第一歩として、Linuxカーネルのユーザーランド版であるLKL( https://github.com/lkl/linux )をWebAssemblyにコンパイルして、wasm2cでC言語に変換した上、Visual Studio 2022でコンパイルしてWindows上で実行してみた。 まだWebブラウザでは動いていないが、思ったよりは簡単にWasmに移植できた(個人の感想です) ウケが良ければMUSL libc移植編 → デバイスドライバ活用編 → Webブラウザ上動作編と続ける感じで。。 EDIT: Visual Studioのスクリーンショットを撮りなおし。 memory-control はanonymousなmapしか救えないので、ここ数年スパンではエミュレーシ

      WasmLinux: LinuxカーネルをWebAssemblyにする
    • WebAssembly Interface Types で全てが連携する! (翻訳) - inzkyk.xyz

      ブラウザ外での WebAssembly の利用が盛り上がっています。 盛り上がりはスタンドアローンのランタイムを使った WebAssembly の実行だけではありません。Python, Ruby, Rust といった言語からの WebAssembly の実行にも注目が集まっています。 なぜそんなことが望まれるのでしょうか? 理由はいくつかあります: 「ネイティブ」をもっと簡単に Node あるいは Python の CPython のようなランタイムでは、C++ などの低レベル言語でもモジュールを書ける場合があります。低レベル言語を使っ

        WebAssembly Interface Types で全てが連携する! (翻訳) - inzkyk.xyz
      • Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで

        この本の概要 小さなプログラミング言語から本格的なプログラミング言語へ……ステップバイステップでの開発を通して,プログラミングそのものへの理解を深めよう! こんな方におすすめ コンピュータサイエンス,とくにプログラミング言語そのものやコンパイラについての素養を得たいと考えている人 他言語でのプログラミング経験があり,Rustの習得に興味のある人。とくに,学習のための題材を探している人 第1章:プログラミング言語概論 プログラミング言語の分類 他の切り口での分類方法 コンパイルパイプライン 第2章:スタックベース仮想マシン 仮想マシン概論 Rustでの実装 標準入力からの読み込み パースとコマンドの実行 ブロックとネスト構造 if制御構文 変数の定義 複数行のソースコードへの対応 関数呼び出し 関数の再帰呼び出し WebAssemblyへのコンパイルとブラウザでの実行 第3章:プログラミング

          Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで
        • フロントエンドパフォーマンスのチェックリスト2021年版(PDF、Apple Pages、MS Word)-後編 | POSTD

          目次# 前編 準備段階:計画と指標 パフォーマンスを重視する文化、Core Web Vitals、パフォーマンスのプロファイル、CrUX、Lighthouse、FID、TTI、CLS、端末。 現実的な目標の設定 パフォーマンスバジェット、パフォーマンス目標、RAILフレームワーク、170KB/30KBバジェット。 環境の定義 フレームワークの選択、パフォーマンスコストの基準設定、Webpack、依存関係、CDN、フロントエンドアーキテクチャ、CSR、SSR、CSR + SSR、静的レンダリング、プリレンダリング、PRPLパターン。 中編 アセットの最適化 Brotli、AVIF、WebP、レスポンシブ画像、AV1、アダプティブメディア読み込み、動画圧縮、Webフォント、Googleフォント。 ビルドの最適化 JavaScriptモジュール、モジュール/ノーモジュールのパターン、ツリーシェイ

            フロントエンドパフォーマンスのチェックリスト2021年版(PDF、Apple Pages、MS Word)-後編 | POSTD
          • フロントエンドパフォーマンスのチェックリスト2021年版(PDF、Apple Pages、MS Word)-中編 | POSTD

            目次# 前編 準備段階:計画と指標 パフォーマンスを重視する文化、Core Web Vitals、パフォーマンスのプロファイル、CrUX、Lighthouse、FID、TTI、CLS、端末。 現実的な目標の設定 パフォーマンスバジェット、パフォーマンス目標、RAILフレームワーク、170KB/30KBバジェット。 環境の定義 フレームワークの選択、パフォーマンスコストの基準設定、Webpack、依存関係、CDN、フロントエンドアーキテクチャ、CSR、SSR、CSR + SSR、静的レンダリング、プリレンダリング、PRPLパターン。 中編 アセットの最適化 Brotli、AVIF、WebP、レスポンシブ画像、AV1、アダプティブメディア読み込み、動画圧縮、Webフォント、Googleフォント。 ビルドの最適化 JavaScriptモジュール、モジュール/ノーモジュールのパターン、ツリーシェイ

              フロントエンドパフォーマンスのチェックリスト2021年版(PDF、Apple Pages、MS Word)-中編 | POSTD
            • 世界のプログラミング言語(20) 「WebAssembly」ならブラウザで高速にCもRustもGoも動く

              今回紹介するのは、WebAssemblyです。これは、その名の通りWebブラウザ上で動かせるアセンブリ風の言語です。既に、C/C++言語、RustやGo言語などのプログラミング言語がWebAssemblyに対応しています。また、主要Webブラウザではサポートされており、JavaScriptよりも高速に実行できるため、ブラウザの可能性が大きく広がっています。今回は、WebAssemblyについて、また、実際にブラウザで実行する方法を紹介します。 Go言語でWebAssemblyを出力して実行したところ ブラウザにはJavaScriptがあるのになぜ? WebAssemblyはWebブラウザ上で動作する言語です。しかし、Webブラウザ上で動作する言語には、既にJavaScriptがあります。モダンブラウザであれば、どのブラウザを使っても同じようにJavaScriptのプログラムを動かすことがで

                世界のプログラミング言語(20) 「WebAssembly」ならブラウザで高速にCもRustもGoも動く
              • Announcing wasi-threads

                Until now, one piece missing from WebAssembly standalone engines was the ability to spawn threads. Browsers have had this ability for some time via Web Workers, but standalone engines had no standard way to do this. This post describes the work of several collaborators to bring about wasi-threads, a proposal to add threads to WASI. It will explain the history to this proposal, the work done to get

                  Announcing wasi-threads
                • どのプログラミング言語が使われているのか、JetBrainsが調査レポートを発表

                  どのプログラミング言語が使われているのか、JetBrainsが調査レポートを発表:移行先はGo、Kotlin、Python JetBrainsは、開発者エコシステムの現状に関する4回目の年次調査の結果をまとめたレポート「The State of Developer Ecosystem 2020」を発表した。開発者がどのようにビッグデータを分析しているかについても調べた。 Java IDEの「IntelliJ IDEA」やプログラミング言語の「Kotlin」などを手掛けるJetBrainsは2020年6月11日(現地時間)、開発者エコシステムの現状に関する4回目の年次調査の結果をまとめたレポート「The State of Developer Ecosystem 2020」を発表した。 JetBrainsはこの調査を2020年初めに行い、2万人弱の開発者が回答した。調査結果の概要は次の通り。

                    どのプログラミング言語が使われているのか、JetBrainsが調査レポートを発表
                  • What's New In DevTools (Chrome 94)  |  Blog  |  Chrome for Developers

                    Use DevTools in your preferred language Chrome DevTools now supports more than 80 languages, allowing you to work in your preferred language! Open Settings, then select your preferred language under the Preferences > Language dropdown and reload DevTools. Preferences" width="800" height="494"> Chromium issue: 1163928 New Nest Hub devices in the Device list You can now simulate the dimensions of Ne

                    • モバイルアプリ上の WebAssembly 製ライブゲームで発生した例外を捕捉して計測する - Mirrativ Tech Blog

                      こんにちは、エンジニアのちぎら(@_naru_jpn)です。ミラティブでは、配信中のゲームに視聴者が介入できるゲームとライブ配信が融合した次世代のゲーム体験を提供しており、この体験を ライブゲーミング と呼んでいます。 ライブゲーミングは、Unity から WebGL 向けにビルドされた WebAssembly 製のゲームを、アプリに配置したウェブブラウザ上で動作させることによって実現しています。*1 今回は UnityでモバイルWebGLゲーム開発を頑張る話 の「メモリリークによって発生するクラッシュ」にも書かれているような、捕捉は難しいがユーザー影響があるような例外の発生を捕捉して、計測をするための仕組み作りについて解説をします。 ライブゲームが動作する仕組み 例外を捕捉することを考える前に、ライブゲームがどのように動作しているのかを知る必要があります。 Unity の WebGL 向

                        モバイルアプリ上の WebAssembly 製ライブゲームで発生した例外を捕捉して計測する - Mirrativ Tech Blog
                      • Rubyのコミッタになりました - kateinoigakukunのブログ

                        実は先日 ko1さんとmameさんから推薦をいただき、Rubyのコミッタになりました。 ここ数ヶ月間、Rubyアソシエーションの開発助成プロジェクトとしてCRubyのWASIサポートを進めており、WASIのプラットフォームメンテナが必要ということで。 WASI対応の話はPublickeyさんに良い感じにまとめていただきました。詳しい実装の話は後日書こうと思います。1 www.publickey1.jp 正直Rubyのことを聞かれても答えられる自信はありませんが、CRubyの実装はほんのり分かるようになりました。あとビルドスクリプトはどこもつらい。2 という訳で、晴れてSwiftとRubyのコミッタという謎の人材になりました。 引き続きどちらもやっていくので、よろしくおねがいします。 書きました An Update on WebAssembly/WASI Support in Ruby |

                          Rubyのコミッタになりました - kateinoigakukunのブログ
                        • シリコンバレーのスタートアップWasmerでインターンするために行ったこと|d0iasm

                          シリコンバレーとは、アメリカ合衆国カリフォルニア州に位置し、Apple、Facebook、Googleなどの大手IT企業やITスタートアップが集まる地域の名称です。そんなシリコンバレーでソフトウェアエンジニアとして働くことは憧れでしたが、日本に住み日本の大学に通っている私にとっては、遠い、夢のような話でした。しかし、2019年11月末から2020年2月末までの約3ヶ月間、サンフランシスコに本社を置くWasmer社で日本に住みつつリモートでインターンシップをしました。そして、シリコンバレーのエンジニアは決して雲の上の存在ではないと考えるようになりました。 本記事では、自身の経験から、どうやってインターンを探したのか、インターンに受かるために普段から何を意識していたのか、そして、インターンを通して何を学んだのかについて書きます。あくまでも一個人の経験に基づいたもので一般論ではありませんが、海外

                            シリコンバレーのスタートアップWasmerでインターンするために行ったこと|d0iasm
                          • Go + WebAssembly に入門して Dockerfile の依存グラフを図にしてくれるサービスを作ったので、知見とハマりポイントを共有します。 - Qiita

                            Go + WebAssembly に入門して Dockerfile の依存グラフを図にしてくれるサービスを作ったので、知見とハマりポイントを共有します。 こんにちはpo3rinです。 「Go + WebAssembly + BuildKit」 で Dockerfile の依存グラフを図にしてくれる誰得サイトを作ったので紹介します。その名も「Dockerfile Dependency graph」!!! https://po3rin.github.io/dockerdot/ (PCブラウザだけ対応してます) 今回はこれをどのように作ったのかの共有とハマった点を紹介します。リポジトリはこちら!! どのように作ったか 全体像はこちらになります。 内部では Dockerfile から LLB(プロセスの依存関係グラフを定義するために使用されるバイナリ中間言語)を取得して、それをdot言語(データ記

                              Go + WebAssembly に入門して Dockerfile の依存グラフを図にしてくれるサービスを作ったので、知見とハマりポイントを共有します。 - Qiita
                            • emruby: ブラウザで動くMRI - クックパッド開発者ブログ

                              こんにちは、フルタイムRubyコミッタの遠藤です。 Ruby 3.0が出てもう4ヶ月経ってしまいました。最近のTypeProfの開発ですが、vscode拡張として使えるようにするために、一生懸命Language Server Protocolをいじって遊んでるところです。 今日の成果です。 RBS が .rb と別ファイルなのが面倒という問題、vscode 拡張をちゃんと作れば解決できそう(まだ実現可能性を調べただけで中身はありません)。 pic.twitter.com/tv6xB0Tm59— Yusuke Endoh (@mametter) 2021年4月2日 こっちのほうはまだ実験段階なので、まとまったころに説明するとして、今回は、Ruby 3.0リリース後にほそぼそとやっていたemrubyをご紹介してみます。 emrubyとは ブラウザの上で動くMRI(Matz Ruby Inter

                                emruby: ブラウザで動くMRI - クックパッド開発者ブログ
                              • ウェブ エコシステムの根本的なセキュリティ保護に向けて

                                .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                  ウェブ エコシステムの根本的なセキュリティ保護に向けて
                                • Web開発でJavaScriptの代わりにC#でロジックを書くBlazorがめちゃ便利! - Qiita

                                  はじめに UL Systems Advent Calendar 2019 の17日目です。 Blazorとは、.NET の技術を使ってクライアント側のWeb UIを構築するためのフレームワークです。このBlazorを使えば、今まで主に業務アプリケーションの開発で C#を使用してきたような開発者であっても、極力JavaScriptを使わず、追加の学習コスト少なくWebアプリケーション(SPA)を開発することができるようになります。 Blazor には、サーバ側で処理するBlazorサーバーと、クライアント側で処理するBlazor WebAssemblyがあります。Blazorの開発を今まさに進めており、2019年9月にリリースされた.Net Core 3.0にてBlazor サーバーが正式にサポートされるようになりました。Blazor WebAssemblyも2020年5月に正式リリースされ

                                    Web開発でJavaScriptの代わりにC#でロジックを書くBlazorがめちゃ便利! - Qiita
                                  • Speculation in JavaScriptCore

                                    This post is all about speculative compilation, or just speculation for short, in the context of the JavaScriptCore virtual machine. Speculative compilation is ideal for making dynamic languages, or any language with enough dynamic features, run faster. In this post, we will look at speculation for JavaScript. Historically, this technique or closely related variants has been applied successfully t

                                    • ハンズオンJavaScript

                                      JavaScriptの入門書。対象読者は、完全なプログラミング初心者からプログラミングの初級者です。また、中級以上の方のクライアントサイドJavaScriptの知識の更新にも利用できます。本書ではChrome DevToolsのコンソールにコマンドを入力してその動作を確認しながら、JavaScriptの基本や多種多様なWeb APIをひとつひとつハンズオン形式で学びます。また、コードの背景にある設計思想や、プログラムの挙動の仕組みについてもしっかり掘り下げます。本書のゴールは、読者がJavaScriptの全体像を掴み、業務の内容や興味に応じて必要な知識を自分自身で探求できるようになることです。 まえがき 1章 学び始めるまえに 1.1 プログラムについて 1.2 JavaScriptについて 1.2.1 JavaScriptを始める 1.2.2 JavaScriptを続ける 1.2.3 J

                                        ハンズオンJavaScript
                                      • OSS開発者が自分の人生を犠牲にしなくていい。「フルタイムRubyコミッター」という生き方が与えてくれた恩恵 - Findy Engineer Lab

                                        お店のデジタル化を支援するSTORES 株式会社(以下、STORES)は、Rubyコミッターの笹田耕一(@koichisasada)さんと遠藤侑介(@mametter)さんの両名を社員として採用しました。笹田さんと遠藤さんはフルタイムのRubyコミッターとして STORES に入社し、Rubyの機能改善や品質向上のための仕事に専念します。 どのような経緯で、両名は STORES への転職を決めたのでしょうか。そして、今後の具体的な活動内容とは。笹田さんと遠藤さんにお話を伺いました。 「6月は2人で一緒に、フルタイムRubyコミッターとして働く道を探ろう」 笹田さんが取り組む並列並行処理の改善 遠藤さんが取り組む静的型解析 世の中のニーズと本人のモチベーションが合致して生まれる、奇跡的なキャリア 「6月は2人で一緒に、フルタイムRubyコミッターとして働く道を探ろう」 ――転職活動どうもお疲

                                          OSS開発者が自分の人生を犠牲にしなくていい。「フルタイムRubyコミッター」という生き方が与えてくれた恩恵 - Findy Engineer Lab
                                        • Adding Python WASI support to Wasm Language Runtimes

                                          We recently added Python support to Wasm Language Runtimes. This article provides an overview of how Python works in WebAssembly environments and provides a step by step guide on how to use it. At VMware OCTO WasmLabs we want to grow the WebAssembly ecosystem by helping developers adopt this new and exciting technology. Our Wasm Language Runtimes project aims to provide up-to-date, ready-to-run We

                                            Adding Python WASI support to Wasm Language Runtimes
                                          • 「多くの人々にポジティブな影響を与える存在でありたい」フロントエンドのスペシャリスト鈴木僚太に、目指すエンジニア像を聞いた

                                            LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINEで働くエンジニアに色々と話を聞いていく「LINE Engineer Insights」。LINEの技術組織で働く個々人に、何を重視して技術者としてのキャリアを歩んでいるのか、今LINEで何に取り組んでいるのか、今後実現していきたいことなどを聞いていきます。 今回登場するのは、LINE証券のフロントエンドエンジニアとして働く鈴木僚太。彼は業務においてチームのフロントエンド開発をリードするだけではなく、技術記事の執筆や技術イベントへの登壇、オープンソースへのコントリビューション、書籍の執筆など社外活動も積極的に行っています。 このインタビューでは鈴木の業務内容やフロントエンド領域に魅力を感じる理由、今後の目標などを聞きまし

                                              「多くの人々にポジティブな影響を与える存在でありたい」フロントエンドのスペシャリスト鈴木僚太に、目指すエンジニア像を聞いた
                                            • ウェブのプライバシー強化: サードパーティ Cookie 廃止への道

                                              .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                ウェブのプライバシー強化: サードパーティ Cookie 廃止への道
                                              • Node.js fetch の内部の話 - from scratch

                                                前置き この記事は リクルートエンジニアアドベントカレンダーの3日目の記事です。 Recruit Engineers Advent Calendar 2022 - Adventar ちなみにココで書いたやつを一部抜粋させていただいております(ネタ切れにより過去投稿を利用してしまっております。。。すいません。。。) www.codegrid.net fetch が Node v18 から試験的にサポートされた ブラウザでは数年前から採用されていた HTTP リクエストを行う関数の fetch が global 空間に関数として作成されました。使うだけなら特に何のフラグもいりません、その代わり使うと Experimental であることを知らせる Warnings が出ます。 // fetch.mjs const response = await fetch('https://api.gith

                                                  Node.js fetch の内部の話 - from scratch
                                                • Swiftのみを使って、今Qiitaを作るとしたら - Qiita

                                                  Swift は iOS アプリを作るための言語というイメージが強いと思います。しかし、実際にはサーバーサイドプログラムや機械学習、コマンドラインツールの開発など、 多様な目的で利用できる汎用言語です 。 2015 年にオープンソース化され、 Linux でも動作し、近々 Windows もサポートされる予定です。 Swift は Apple の言語ですが、それは TypeScript が Microsoft の、 Go が Google の言語だというのと同じ程度の意味しか持たないと思います。 Swift Core Team には Google のエンジニアも入っていますし、新しい言語の機能はすべて、オープンな場で議論された上で決定されます。 そんな Swift にとって期待される二つの分野が、 Web のクライアントサイドとサーバーサイドです。 WebAssembly に対応することで、

                                                    Swiftのみを使って、今Qiitaを作るとしたら - Qiita
                                                  • PWAゲームを開発しネイティブアプリ化までした中での課題と対策 - builderscon tokyo 2019

                                                    Abstract 本セッションでは、PWAゲームを開発し1年以上運用してきた経験から アセット配信 マスターデータの配信や管理 アニメーションや動画を使ったリッチな表現 一部ユーザーからのチート行為への対策 といったゲーム開発を行う上で必要となる諸機能が、ブラウザというフィルタを通すことで 「ディスクキャッシュ容量が限られる中でいかに通信量を減らして」アセット配信するか 「ブラウザのストレージ容量が5MB,10MBと制限される中での」マスターデータの配信や管理 「通信量を抑えなければならない中での」アニメーションや動画を使った表現 「DeveloperConsoleから簡単に通信情報やソースコードが見れる中での」チート行為対策 と変貌することへのとりうるアプローチの考察や実際に行った対策について、 クライアント・サーバー両方の立場から説明していきます。 ( 説明の中には、Goやcgoを使っ

                                                      PWAゲームを開発しネイティブアプリ化までした中での課題と対策 - builderscon tokyo 2019
                                                    • FirefoxもWebAssemblyのガベージコレクション機能を実装中であることが明らかに

                                                      Google Chromeに続いてFirefoxもWebAssemblyのガベージコレクション機能を試験的に実装していることが、KotlinのWebAssembly対応ドキュメントから分かりました(現時点ではFirefoxのBeta版やNightlyのドキュメントには記載がないようです)。 すでにGoogle Chromeが、Dart言語のWebAssembly対応への対応のために試験的実装を示すOrigin TrialとしてWebAssemblyのガベージコレクション機能の実装を開始しています。 参考:WebAssemblyにガベージコレクション機能が登場、Chrome 111で試験的実装に。Dartなど高級言語のWebAssembly対応へ前進 Firefoxでもほぼ同様に、現在Nightlyとして公開されているFirefox 112aにおいて、開発者向けの設定である「about:co

                                                        FirefoxもWebAssemblyのガベージコレクション機能を実装中であることが明らかに
                                                      • SwiftUI で Web アプリという可能性 - OPTiM TECH BLOG

                                                        はじめに こんにちは.R&D チームの久保です. 現在 JavaScript や JavaScript にトランスパイルする言語 (TypeScript, 新し目の ECMAScript など) が主流であるフロントエンドの Web アプリケーションフレームワーク界隈ですが,数年前に WebAssembly の実行が主要ブラウザ全てでサポートされて以来,ひそかに他の言語によるフレームワークが増えつつあるのをご存知でしょうか?しかもそれらは,JavaScript でデファクトスタンダードとなりつつある React や Vue.js などと同様,仮想 DOM を実装していたりします. 例としては C# (.NET) の Blazor, Rust の Yew, Go の Vugu, C++ の asm-dom などがあります.ただ,現時点ではその多くが実験的なプロジェクトであり,今すぐに Jav

                                                          SwiftUI で Web アプリという可能性 - OPTiM TECH BLOG
                                                        • RustとDioxusで投稿アプリのSPAを作ってみよう

                                                          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

                                                            RustとDioxusで投稿アプリのSPAを作ってみよう
                                                          • WebAssembly Reference Typesで、WasmでDOMを操作する壁がここまで下がった

                                                            きっかけ(となったtweetの訂正) もう1ヶ月以上も経ってしまったが、こちらのtweetの公約どおり、WebAssembly (Wasm)におけるDOMの操作について知っている限りのことを書こう。 まずこの節の見出しのとおり、上記の発言は大きく間違えている。私はReference Typesがもたらすパフォーマンス的なメリットや、JavaScriptのオブジェクトを直接Wasmで渡すことが(一応)可能になったということを根拠に上記のtweetをした。しかし下記のtweetでも否定されているとおり、この観点は穴だらけなので、実際のところ多くの人が「直接操作できる」と実感できる状態ではないだろう。 詳細は後述するとして、我ながらひどい凡ミスを犯してしまった。JavaScriptのことを十分に知っているはずなのに、情けない。謹んでお詫びし、ここで訂正する。 大前提: ある意味で永遠にそんな日は

                                                              WebAssembly Reference Typesで、WasmでDOMを操作する壁がここまで下がった
                                                            • 都会の星の撮り方本を出版しました。WebAssembly を使っています

                                                              先日、都会で撮る 星の軌跡の撮影術 〜はじめて撮る人から上級者まで比較明合成による撮影の完全ガイドという本を出版しました。 この本は、比較明合成という画像処理によって都会の星の軌跡の撮り方を紹介している本ですが、それを WebAssembly を用いてブラウザ内で実現する Web アプリ を作りました(そしてその使い方を本の中で解説しました)ので、この記事では WebAssembly による移植周りについて少し解説したいと思います。 なぜ WebAssembly が必要だったか 今回 WebAssembly を、LibRaw というオープンソースソフトウェアをブラウザ上で利用するために使いまいた。 比較明合成をわかりやすく説明すると、複数の画像を比較して、最も明るい点を選択する合成方法です。星は日周運動により地上からは動いているように見えますが、カメラを固定して連写で何百枚と写真を撮り、そ

                                                              • コンテナランタイムのcontainerdに、WebAssemblyをコンテナとして扱うための「runwasi」が統合。これからのコンテナランタイムはWebAssemblyと統合されていく

                                                                コンテナランタイムのcontainerdに、WebAssemblyをコンテナとして扱うための「runwasi」が統合。これからのコンテナランタイムはWebAssemblyと統合されていく コンテナランタイムの事実上の標準となっているcontainerdに、WebAssemblyをコンテナとして扱うための「runwasi」が昨年(2022年)12月に統合されていたことが分かりました。 これによりcontanerdはWebAssemblyランタイムとしてWasmtimeとWasmEdgeを正式にサポートし、containerdの管理下でこれらのランタイムを用いてWebAssemblyバイナリの実行が可能になる見通しです。 将来のcontainerdのリリースでこれらの機能が正式版として登場すると見られます。 containerdでWasmEdgeが正式サポート 先月、1月31日にWebAsse

                                                                  コンテナランタイムのcontainerdに、WebAssemblyをコンテナとして扱うための「runwasi」が統合。これからのコンテナランタイムはWebAssemblyと統合されていく
                                                                • Chrome におけるスキームフル Same-Site の適用について

                                                                  .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                                                    Chrome におけるスキームフル Same-Site の適用について
                                                                  • Flutterが進化する方向とは? WebAssemblyサポート、コンポーネントとしてWebアプリに組み込み可能に。Flutter Forward 2023

                                                                    GoogleでFlutter & DartのプロダクトとUX担当ディレクターTim Sneath氏は、アフリカのケニア共和国ナイロビで開催された「Flutter Forward 2023」の基調講演で次のように話し、Flutterの進化の方向性を示しました。 「Flutter for Webは汎用目的でデザインされてはいないことを明確にしておきたい。すでにDOMの分野で上手く行っているAngularやVue、Reactのような、DOMベースの新たなフレームワークを作ろうとしているわけではない。 そうではなく、(CanvasやWebAssemblyのような)新しいWeb標準をベースとする最初のフレームワークを作ろうとしているのだ。」 その上で、Flutter for WebがWebAssemblyをサポートする予定であることを明らかにしました。 「FlutterからWebAssemblyへの

                                                                      Flutterが進化する方向とは? WebAssemblyサポート、コンポーネントとしてWebアプリに組み込み可能に。Flutter Forward 2023
                                                                    • Making JavaScript run fast on WebAssembly - Bytecode Alliance

                                                                      JavaScript in the browser runs many times faster than it did two decades ago. And that happened because the browser vendors spent that time working on intensive performance optimizations. Today, we’re starting work on optimizing JavaScript performance for entirely different environments, where different rules apply. And this is possible because of WebAssembly. We should be clear here—if you’re run

                                                                        Making JavaScript run fast on WebAssembly - Bytecode Alliance
                                                                      • Introducing OG Image Generation: Fast, dynamic social card images at the Edge – Vercel

                                                                        We’re excited to announce Vercel OG Image Generation – a new library for generating dynamic social card images. This approach is 5x faster than existing solutions by using Vercel Edge Functions, WebAssembly, and a brand new core library for converting HTML/CSS into SVGs. Dynamic with limitsThe engagement rate of Tweets that embed a card is 40% higher. While creating and sharing static social image

                                                                          Introducing OG Image Generation: Fast, dynamic social card images at the Edge – Vercel
                                                                        • フロントエンドエンジニアがスキルアップのために意識する「素振り」の仕方と求められる役割 | Offers Magazine

                                                                          「Offersエージェント」では、業界で活躍するプロフェッショナルがあなたの転職を徹底サポート。CxO経験者を含む現役エンジニア・デザイナー・プロダクトマネージャーが在籍し、職種に特化した専門的なアドバイスをご提供・非公開求人の紹介も可能です。 →【かんたん30秒】無料登録で転職相談する ▲登壇時の写真 はじめまして、フリーランスエンジニアとしてフロントエンド開発をメインに行っている、小林(@neo6120)と申します。 もともとはインフラやサーバサイドも扱っていましたが、独立時にフロントエンドに絞り、現在もフロントエンドメインでエンジニアをしています。 変化が激しいと言われるフロントエンド界隈ですが、今回はフロントエンド特化のフリーランスエンジニアとして、スキルアップのために普段どのような点に気をつけているか、また注目している技術はなにか、について紹介したいと思います。 広がるフロントエ

                                                                            フロントエンドエンジニアがスキルアップのために意識する「素振り」の仕方と求められる役割 | Offers Magazine
                                                                          • AMP の誤解を払拭する

                                                                            .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads 71 Ads API 11

                                                                              AMP の誤解を払拭する
                                                                            • Zellij: a Rusty terminal workspace releases a beta

                                                                              Zellij: a Rusty terminal workspace releases a beta 2021-04-20 :: Aram Drevekenin After long months of work by a dedicated team of enthusiasts, today we are proud to announce the release of the beta version of Zellij! Zellij is a terminal workspace and multiplexer written in Rust, aiming to become a general purpose application development platform in the future. How to install? Download a prebuilt

                                                                                Zellij: a Rusty terminal workspace releases a beta
                                                                              • Progressive Web Appsの振り返りとこれから | gihyo.jp

                                                                                Progressive Web Apps(以下、PWA)は2018年ごろからホーム画面へのインストール機能やキャッシュ戦略等の技術視点でエンジニアの間で話題に挙がるようになりました。現在ではWebパフォーマンス、ユーザビリティ向上、PoC(実証実験)といったビジネス視点でも注目されており、多くのWeb実装にPWAが取り入れられています。 今回の記事では、国内のPWAの動向を振り返り、改めてPWA開発のスタンダードとこれからのPWAについてまとめます。 日本国内でのPWAの動向 2015年にPWAという名称が生まれ、Google Chromeを始めとした各ブラウザが順次PWAに対応していきます。2018年にiOSのSafariがService Workerに対応したことををきっかけに国内でもPWAが注目され始めました。筆者もその頃からPWAに興味を持ち、2019年2月に立ち上がったTechコ

                                                                                  Progressive Web Appsの振り返りとこれから | gihyo.jp
                                                                                • RustでWebAssemblyインタプリタ作った話 - Qiita

                                                                                  はじめに RustでWebAssemblyインタプリタを作ったのでその実装の話や、wasmの仕様についての記事です。 HListを使ったジェネリックプログラミングの話や、最後の方には「自作言語 on 自作wasmインタプリタ on 自作wasmインタプリタ」みたいな話も出てきます。 分かりにくい所や間違っている所は指摘してくださると助かります。 リポジトリ 作った成果物のリポジトリです。まだpublishはしていませんがクレートになっています。 cargoのexample実行に対応しているのでそれを見ればだいたい分かると思います。 今回はadc-2019-12-22というタグがついたコミットのソースを元に解説していきます。 https://github.com/kgtkr/wasm-rs/tree/adc-2019-12-22 仕様書 この記事では仕様書を読みながら順番に実装を解説していき

                                                                                    RustでWebAssemblyインタプリタ作った話 - Qiita