As For JS
3.42K subscribers
140 photos
14 videos
4 files
430 links
As For JavaScript...
Обсуждения — @AsForJsTalks
Download Telegram
Сегодня в 7-00 по Киеву.
Что-нибудь полезное: Крутим VSCode

За 20 минут накинем идей на вентилятор.

VSCode собран на базе Electron. А Electron - это тот же Chrome.
А раз это Chrome, то вертеть VSCode можно точно так же.

https://www.youtube.com/watch?v=ij_PCCZVTEs
🤯11👍5
Сегодня в 8-30 по Киеву.
Что-нибудь полезное: Google Developer Tools Hints

В Google Developer Tools, есть масса команд которые не отображены в интерфейсе.
Посмотрим как их искать и как использовать.
На примере Snippets и copy

https://www.youtube.com/watch?v=z_DrRM7F_24
8👍4🔥2
Помните недавнюю трансляцию про OSR оптимизацию?

После трехдневного расследования выяснилась целая группа аномалий с одним и тем же кейсом, смысла которых я обьяснить не смог.

В результате пришлось консультироваться с разными специалистами в области на предмет - а какого художника оно так работает?

Итог: Обнаружен фееричный баг в системе оптимизации v8 которому уже больше нескольких лет. Который я лично считал не багом, а "особенностью" реализации, связнанным с условиями инлайнинга кода функции.

Есть у нас еще ягоды в ягодицах и порох в пороховницах.


Немного смешных дополнений:
Именно с єтим багом, связаны десятки тестов, которыми люди показывали преимущества цикла фор, перед редьюс.
🔥1910👍8😁2
Сегодня в 21-30 по Киеву.
Расследование бага в OSR (On-Stack Replacement) оптимизации V8

В трансляции про OSR (On-Stack Replacement) оптимизация в V8, учасник трансляции Rovshan прислал код и вопрос к нему, который привел к 3-х дневному расследованию.

В результате был обнаружен баг в системе оптимизации V8 связанной с OSR и Inlining Code Function, который я раньше считал не багом, но особенностью поведения системы оптимизации.

Шаг за шагом я повторю свое исследование, тем самым покажу пример рационального поведения в таких случаях.

В продолжение трансляции, я еще скажу об этом отдельно, я с самого начала неверно понял фразу Максима про два дополнительных ключа: --trace-maglev-inlining --trace-turbo-inlining
использование которых, сразу бы обратили внимание на важное отличие одного кода от другого, без необходимости пугать себя логами с машинным кодом

https://www.youtube.com/watch?v=dgZG-OHOyUs
🔥19
В 2-00 по Киеву
Дополнение к расследованию бага в OSR (On-Stack Replacement) оптимизации V8

Это дополнение к трансляции Расследование бага в OSR (On-Stack Replacement) оптимизации V8.
Maksym Shenderuk, вдохновившись материалом трансляции, нашел еще более простой способ сразу понять что происходило, чем это показывал я.


https://www.youtube.com/watch?v=_EtTRVJAahY
🔥9👍3😁1
Сегодня, суббота в 19-00 по Киеву:
UPD: Нет света, трансляция перенесена на
Сегодня, суббота в 21-00 по Киеву:

Что Вы не знаете о Assignment Patterns

Сломаем стереотипы о том, что стоит за синтаксисом вида:
[ a, b, c ] = [ 1, 2, 3]
или
{a, b, c} = {a: 1, b: 2, c: 3};

Даже если видели все мои прошлые стримы про Assignment Patterns - я Вам точно покажу то, что Вы о них не знаете

https://www.youtube.com/watch?v=3LTiRS55WoQ
16🔥10👍2👎2👀2
Курс Patterns не схожий на інші мої курси, він має окремі набори з датою початку і кінця, з програмою по тижнях. Це все тому, що він включає практику, рев'ю коду, роботу над проектом, групові дзвінки. Отже, з вами працює ціла команда менторів, а не тільки один я. Менторів у нас обмежена кількість та час, який вони можуть виділити теж, це всі фахівці, які працюють у компаніях чи мають свої живі проекти. Кожен на курсі отримує персональну увагу, тому що якість менторства вимагає вникнути в його код і його знання, розбір коду та рекомендації щодо його поліпшення, а груповий проект візьме ще більше часу менторів на консультації, відповіді на запитання та узгодження. Що ми маємо зараз: план Mentoring – 200 місць, Professional – 50 місць, а Exclusive – всього 3 місця, я теж не гумовий і особисто вести багато людей не можу, максимум можу 4 взяти. Курс триває 3 місяці, але є ще онбординг та канікули, так що наступний набір буде швидше за все лише навесні. Хто встигне, забронювати місце за ранньою ціною, потрапляє в основний потік, а далі ми спробуємо розширити наші потужності, але ми ніколи не робимо це за рахунок якості, тому найм нових хороших менторів позначиться на підвищенні ціни.

Подробиці на сайті: https://nodeua.com/Patterns-2025-ua
👍8👎7🔥41👀1
Казантипа нет и никогда не было.
Вам все приснилось и сниться до сих пор.

Когда-то в прошлой жизни, мне повезло помогать с организацией этого мероприятия. И это, наверное, была самая лучшая работа на свете.

https://www.youtube.com/watch?v=-MZcKUkRgNo
❤‍🔥16🤯21😍1
А вам не казалось странным,
что при трансляции, автор такой же тупой как и все,
а в записи - все гении?
😁31🤯3💯3👍1👨‍💻1
Туча уже пол часа смотрит старкрафт
😍3211👀4👨‍💻2👍1
В Linux/Fedora введены правила использования AI при разработке

Использование AI не запрещается, НО человек который их применяет:

1) Несет персональную ответственность за последствия их применения

2) Код, созданный с помощью AI, вне зависимости от его обьема, должен полностью отвечать правилам, которым следуют разработчики Fedora

3) Каждый коммит, код которого генерировался с помощью AI, обязательно должен маркироваться как таковой, с указанием какой именно AI был использован.

4) Запрещено использовать AI как самостоятельный инструмент для автоматизации любого процесса разработки.
15👍9🤣7🌚3👌2
Сегодня в 21-00 по Киеву
Live Coding: Оптимизируем сайт ECMA Script

Официальная страница https://tc39.es/ecma262/, на которой расположена спецификация языка JavaScript, умудряется поставить раком, даже современные машины.

Разберемся с тем почему это происходит и попробуем исправить это недоразумение.

https://www.youtube.com/watch?v=GhxYRkXZAB4
🔥18👍1
распаковочка.
спасибо тебе, ты знаешь кто.

https://www.youtube.com/watch?v=Q1ok-mROmhM

хочешь чтобы ништяки и от тебя тоже были распакованы?

реквизиты:
Поддержать маленького бородатого JavaScript-ра
AsForJs новости в Telegram: https://t.iss.one/AsForJava...
AsForJs Talks в Telegram: https://t.iss.one/AsForJsTalks

Поддержать маленького бородатого JavaScript-ра
Карта Приват (Bobrov Maksym): 5168745021397333

USDT Tron (TRC20): TKoZu59WHiX6L6qvwYTYTsZJerDrnAHBTx
USDT etherium (erc20): 0x75fb8a62dfcf453b2e73f1ef1c407d46f918fffa
TON: UQAGXvuhxg3qU0eFgOxtdDlKXqdp1zPq6yCRSRbRYQClxOzH
bitcoin:bc1q74aru82v4d3alay7p53jdwkmxe4a5gz7fmvfm2?message=AsForJS&time=1686349743

PayPal: [email protected]
/ demimurych
Boosty: https://boosty.to/asforjs
🙏96💔2🕊1
Если Вам больно то Вы точно живы, кажется.

Оно только непонятно зачем она такая жизнь нужна.


Мы еще поборемся и обязательно прорвемся.
И Вы не здавайтесь.
🙏36💔7🕊2💯1
Кому нечего делать. Задачка на знание JS.

При выполнении следующего кода
var theArr = [6,7,8];
[1,2,3].concat(3,4,5, theArr);

Мы получим ответ: // [1, 2, 3, 3, 4, 5, 6, 7, 8];

Что нужно сделать с theArr, чтобы вместо подстановки в результат [6,7,8], то есть добавления трех элементов, мы добавили только ссылку на сам theArr.

То есть:
var theArr = [6,7,8];
// Что-то сделать
[1,2,3].concat(3,4,5, theArr);

Должен дать ответ

[1, 2, 3, 3, 4, 5, Array(3)]


Отгадка:
После определения theArr нужно добавить `theArr[Symbol.isConcatSpreadable] = false`;
🔥15😁1