home.social

#webworkers — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #webworkers, aggregated by home.social.

  1. Веб-воркеры — многопоточность в JavaScript

    Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?

    habr.com/ru/articles/915518/

    #javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры

  2. Веб-воркеры — многопоточность в JavaScript

    Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?

    habr.com/ru/articles/915518/

    #javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры

  3. Веб-воркеры — многопоточность в JavaScript

    Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?

    habr.com/ru/articles/915518/

    #javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры

  4. Веб-воркеры — многопоточность в JavaScript

    Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?

    habr.com/ru/articles/915518/

    #javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры

  5. I'd like to spend some more time with #WebComponents, #ServiceWorkers, #WebSockets, #OffscreenCanvas, #WebWorkers, #WebGPU, #SVG, and the #GamePad #API.

    I've been noodling for a long time about how you could build a game using #ESModules, and #CustomElements to allow players to author their own components to extend the game.

    I guess I'm just more interested in how the game works mechanically than how it looks.

  6. 4'33" (as performed by your browser)
    5013.es/toys/433/

    With several players to choose from, you'll never get tired of listening to their performances of John Cage's 4'33" in your browser.

    Some background here: 5013.es/p/10/

    With thanks to @darius and @jenn for the spark of inspiration like 10 years ago 😃

    #webaudio #webworkers #audioworklet #music #javascript #audio

  7. It's possible to do multi-threading with shared memory in the browser with WASM and Rust, Max says. This works using WebWorkers. The only thing not available is std::thread, since the model is different.

    #EuroRust #EuroRust23 #WASM #webworkers

  8. As far as I can see, #WebComponents and #WebWorkers are not enough.

    The 1st allows us to execute JS in an isolated environment, but it has no access to the DOM (not even a "scoped" or shadow DOM).

    The 2nd gives us a shadow DOM, but it does not prevent code to touch the rest of the DOM.

  9. C) send the client an empty shell. using #webWorkers have the client make the API requests retrying if necessary. Insert the results in a client side store and update the view.

  10. Same!

    > I've always tended to be a web maximalist, but I've never felt more optimistic than I do now about the power of the modern web as a true application platform. @ameo

    cprimozic.net/blog/building-a-

  11. ⚡️JavaScript in parallel⚡️
    A while ago, I wrote a bit on #webworkers, #javascript parallelism and a bunch of the nuances that go into that.
    👉 Read more at buff.ly/2Q29E4H

  12. I'd like to spend some more time with #WebComponents, #ServiceWorkers, #WebSockets, #OffscreenCanvas, #WebWorkers, #WebGPU, #SVG, and the #GamePad #API.

    I've been noodling for a long time about how you could build a game using #ESModules, and #CustomElements to allow players to author their own components to extend the game.

    I guess I'm just more interested in how the game works mechanically than how it looks.

  13. I'd like to spend some more time with #WebComponents, #ServiceWorkers, #WebSockets, #OffscreenCanvas, #WebWorkers, #WebGPU, #SVG, and the #GamePad #API.

    I've been noodling for a long time about how you could build a game using #ESModules, and #CustomElements to allow players to author their own components to extend the game.

    I guess I'm just more interested in how the game works mechanically than how it looks.

  14. I'd like to spend some more time with #WebComponents, #ServiceWorkers, #WebSockets, #OffscreenCanvas, #WebWorkers, #WebGPU, #SVG, and the #GamePad #API.

    I've been noodling for a long time about how you could build a game using #ESModules, and #CustomElements to allow players to author their own components to extend the game.

    I guess I'm just more interested in how the game works mechanically than how it looks.

  15. I'd like to spend some more time with #WebComponents, #ServiceWorkers, #WebSockets, #OffscreenCanvas, #WebWorkers, #WebGPU, #SVG, and the #GamePad #API.

    I've been noodling for a long time about how you could build a game using #ESModules, and #CustomElements to allow players to author their own components to extend the game.

    I guess I'm just more interested in how the game works mechanically than how it looks.

  16. Same!

    > I've always tended to be a web maximalist, but I've never felt more optimistic than I do now about the power of the modern web as a true application platform. @ameo

    cprimozic.net/blog/building-a-

    #Browser #WebDev #WebWorkers #SharedArrayBuffer #OffscreenCanvas #Wasm #WebGPU

  17. Same!

    > I've always tended to be a web maximalist, but I've never felt more optimistic than I do now about the power of the modern web as a true application platform. @ameo

    cprimozic.net/blog/building-a-

    #Browser #WebDev #WebWorkers #SharedArrayBuffer #OffscreenCanvas #Wasm #WebGPU

  18. Same!

    > I've always tended to be a web maximalist, but I've never felt more optimistic than I do now about the power of the modern web as a true application platform. @ameo

    cprimozic.net/blog/building-a-

    #Browser #WebDev #WebWorkers #SharedArrayBuffer #OffscreenCanvas #Wasm #WebGPU

  19. Same!

    > I've always tended to be a web maximalist, but I've never felt more optimistic than I do now about the power of the modern web as a true application platform. @ameo

    cprimozic.net/blog/building-a-

    #Browser #WebDev #WebWorkers #SharedArrayBuffer #OffscreenCanvas #Wasm #WebGPU