Forwarded from Metarhia/NodeUA - Node.js Ukraine Community
🎉 Опа, чуть не забыл, что сегодня черная пятница, в общем так, курс по ноде продлен на следующий год, количество материалов увеличивается вдвое, оглавление опубликую на днях, а через неделю цена тоже увеличится c $200 до $300 https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2022-2023.md
⚡️ А сегодня кто возьмет за $100 на патреоне план Professional на год, то получает видеозаписи за 2023 https://www.patreon.com/tshemsedinov
Только видеозаписи, это не курс, без ревью, без проверки и обсуждения заданий, но в записях есть чужие ревью.
⚡️ А сегодня кто возьмет за $100 на патреоне план Professional на год, то получает видеозаписи за 2023 https://www.patreon.com/tshemsedinov
Только видеозаписи, это не курс, без ревью, без проверки и обсуждения заданий, но в записях есть чужие ревью.
👉 https://www.youtube.com/live/MrenxehBK1g
❓ Вопросы будут приниматься в чате под видео. Готовьте вопросы. Жду на стриме
Please open Telegram to view this post
VIEW IN TELEGRAM
Все ссылки, которые я обещал на стриме (если что забыл, скажите, добавлю):
⭐️ Гитхаб: https://github.com/tshemsedinov
⚡️ Патреон: https://patreon.com/tshemsedinov
❓ Вопросы на интервью по ноде: https://github.com/tshemsedinov/NodeJS-Interview-Questions
👉 Новый курс по ноде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2022-2023.md
🛠 Старый курс по Node.js в открытом виде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS.md
🏛 Оглавление всех лекций: https://github.com/HowProgrammingWorks/Index
👶 Для начинающих: https://www.youtube.com/watch?v=2DM5I2CI4gY&list=PLpmhTzMVLuROAIey9vW3pyRSpHfknLssu
☘️ Канал Олега Хомяка: https://www.youtube.com/@khomiakoleg4034
🗨 Телеграм: https://t.me/metarhia и https://t.me/nodeua
🚀 Конференция Метархии: https://www.youtube.com/@Metarhia
⭐️ Гитхаб: https://github.com/tshemsedinov
⚡️ Патреон: https://patreon.com/tshemsedinov
❓ Вопросы на интервью по ноде: https://github.com/tshemsedinov/NodeJS-Interview-Questions
👉 Новый курс по ноде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS-2022-2023.md
🛠 Старый курс по Node.js в открытом виде: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/NodeJS.md
🏛 Оглавление всех лекций: https://github.com/HowProgrammingWorks/Index
👶 Для начинающих: https://www.youtube.com/watch?v=2DM5I2CI4gY&list=PLpmhTzMVLuROAIey9vW3pyRSpHfknLssu
☘️ Канал Олега Хомяка: https://www.youtube.com/@khomiakoleg4034
🗨 Телеграм: https://t.me/metarhia и https://t.me/nodeua
🚀 Конференция Метархии: https://www.youtube.com/@Metarhia
Смотрим Интервью Димы Нечая, одного из ключевых людей сообщества Метархия, open source контрибьютора, преподавателя, архитектора и CTO нескольких продуктовых компаний https://www.youtube.com/watch?v=AlPxguB1gkY
YouTube
Low-code и No-code. Дмитрий Нечай.
Поговорили с Дмитрием Нечаем про технологии low code и no code.
Дмитрий Нечай имеет 7 лет опыта в роли бэкенд разроботчика и СТО. Преподает в Киевском политехническом институте и получает степень PHD.
00:00 - Промо
01:06 - Приветствие
01:30 - Low code
02:43…
Дмитрий Нечай имеет 7 лет опыта в роли бэкенд разроботчика и СТО. Преподает в Киевском политехническом институте и получает степень PHD.
00:00 - Промо
01:06 - Приветствие
01:30 - Low code
02:43…
Forwarded from Metarhia/NodeUA - Node.js Ukraine Community
Кто есть из Казахстана? Завтра даю интервью Арману Сулейманову, nFactorial Podcast с возможностью задавать вопросы и принимать участие в дискуссии, конференция будет проходить в Алматы в оффлайне, я буду по видеосвязи.
Подробности: https://sxodim.com/almaty/event/no-code-summit
Промокод на 50% скидки «FLOW50» как оффлайн так и онлайн
Подробности: https://sxodim.com/almaty/event/no-code-summit
Промокод на 50% скидки «FLOW50» как оффлайн так и онлайн
Forwarded from Metarhia/NodeUA - Node.js Ukraine Community
YouTube
🧑💻 Node.js HTTP Proxy — ревью примеров кода, собеседование, интервью после курса (часть 1)
👉 Примеры кода из видео: https://github.com/HowProgrammingWorks/ProxyHTTP
👉 Гитхаб Timur Sevimli: https://github.com/timursevimli
👉 Гитхаб Timur Shemsedinov: https://github.com/tshemsedinov
❓ Вопросы на интервью по ноде: https://github.com/tshemsedinov/NodeJS…
👉 Гитхаб Timur Sevimli: https://github.com/timursevimli
👉 Гитхаб Timur Shemsedinov: https://github.com/tshemsedinov
❓ Вопросы на интервью по ноде: https://github.com/tshemsedinov/NodeJS…
Forwarded from Metarhia/NodeUA - Node.js Ukraine Community
Видите ли Вы смысл в том, что делаете на работе? Страдаете ли от этого? Создаете ли смысл? Разделяете ли себя и работу? (можно выбрать несколько)
Anonymous Poll
20%
Не вижу смысла в работе
40%
Вижу смысл в работе
32%
Сам создаю смысл
18%
Страдаю о этого
20%
Не страдаю от этого
40%
Разделяю себя и работу
13%
Не разделяю себя и работу
40%
Деляю то, что от меня хотят
31%
Делаю то, что считаю правильным
20%
Рассказываю другим, что правильно
Collector
, имеющая интерфейс EventEmitter, ее можно так же ждать как Thenable (Promise-like) через await и она умеет собирать данные из асинхронных функций с разными контрактами, делать таймауты и обрабатывать ошибки. В общем, это универсальная штука, позволяющая делать код более простым и надежным. Посмотрите ее код, он очень маленький и понятный: https://github.com/metarhia/metautilPlease open Telegram to view this post
VIEW IN TELEGRAM
Добавил новый таер: Node + Async. Программы курсов:
🔁 Асинхронное программирование, 🚀 Node.js, ❓ Вопросы для собеседований, которые мы разберем для ноды
🎫 Регистрация
🔁 Асинхронное программирование, 🚀 Node.js, ❓ Вопросы для собеседований, которые мы разберем для ноды
🎫 Регистрация
Вот новый пример. Тут таймаут через Promise.race, а сбор данных через Promise.allSettled. Это страшно запутывает код, если качественно делать, то вообще и таймеры нужно снимать. А асинхронная коллекция похожа на Map, но с контрактом Thenable, позволяющим использовать ее с await. Collector скрывает сложность асинхронного программирования за абстракцией высокого уровня и приводит к ясному и надежному коду предметной области. https://github.com/metarhia/metautil
🎫 Внимание! 28 декабря последний день записи на курсы Node.js 2024 и на Async 2024 по текущим ценам.
Сейчас Async: $100, Node.js: $200 + локальные налоги. А вместе $250 + налоги.
С 29 декабря будет Async: $125, Node.js: $250 + локальные налоги. А вместе $350 + налоги.
https://www.patreon.com/tshemsedinov
Сейчас Async: $100, Node.js: $200 + локальные налоги. А вместе $250 + налоги.
С 29 декабря будет Async: $125, Node.js: $250 + локальные налоги. А вместе $350 + налоги.
https://www.patreon.com/tshemsedinov
Patreon
Get more from Timur Shemsedinov on Patreon
creating Бесплатные лекции по программированию и платные консуль
⚡️ Новая серия с асинхронной коллекций
- Теперь поддерживаетя отмена асинхронных операций через
- Вместо
- И
Основная идея: спрятать сложность асинхронного программирования в абстракцию, имеющую простой контракт, чтобы эта сложность не смешивалась со сложностью прикладного кода.
Можно сравнить код с коллектором и без него:
И теперь без него:
Исходники тут: https://github.com/metarhia/metautil
Collector
:- Теперь поддерживаетя отмена асинхронных операций через
AbortController
- Вместо
setTimeout
теперь AbortSignal.timeout
- И
AbortSignal.any
для объединения двух сигналовОсновная идея: спрятать сложность асинхронного программирования в абстракцию, имеющую простой контракт, чтобы эта сложность не смешивалась со сложностью прикладного кода.
Можно сравнить код с коллектором и без него:
const dc = collect(['key1', 'key2', 'key3', 'key4'], { timeout: 1000 });
const opt = { signal: dc.signal };
dc.take('key1', fs.readFile, 'README.md', opt);
dc.wait('key2', fs.promises.readFile, 'README.md', opt);
const url = 'http://worldtimeapi.org/api/timezone/Europe';
dc.wait('key3', (await fetch(url, opt)).json());
setTimeout(() => dc.set('key4', 'value4'), 50);
try {
const result = await dc;
console.log(result);
} catch (err) {
console.log(err);
}
И теперь без него:
const controller = new AbortController();
const opt = { signal: controller.signal };
const timeout = new Promise((resolve, reject) => {
setTimeout(() => {
controller.abort();
reject(new Error('Timed out'));
}, 1000);
});
const promise1 = new Promise((resolve, reject) => {
fs.readFile('README.md', opt, (err, data) => {
if (err) return void reject(err);
resolve(data);
});
});
const promise2 = fs.promises.readFile('README.md', opt);
const url = 'http://worldtimeapi.org/api/timezone/Europe';
const promise3 = (await fetch(url)).json();
const promise4 = new Promise((resolve) => {
const timer = setTimeout(() => {
resolve('value4');
}, 50);
controller.signal.addEventListener('abort', () => {
clearTimeout(timer);
});
});
const data = Promise.allSettled([promise1, promise2, promise3, promise4]);
try {
const keys = await Promise.race([data, timeout]);
const [key1, key2, key3, key4] = keys.map(({ value }) => value);
const result = { key1, key2, key3, key4 };
console.log(result);
} catch (err) {
console.log(err);
}
Исходники тут: https://github.com/metarhia/metautil
GitHub
GitHub - metarhia/metautil: Metarhia utilities 🧰
Metarhia utilities 🧰. Contribute to metarhia/metautil development by creating an account on GitHub.
Карта абстракций асинхронного программирования в JavaScript и Node.js
https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Async-2024.md
Forwarded from Metarhia/NodeUA - Node.js Ukraine Community
⭐️ Кроме всего я тут рассказываю, как рисую такие классные схемы.
🧠 Воображение для ИТ специалистов: откуда брать идеи и как развивать не предвзятый подход, выходить за рамки шаблонного мышления, находить новые решения и объяснять их коллегам https://youtu.be/pWMNBYsvBkI
🧠 Воображение для ИТ специалистов: откуда брать идеи и как развивать не предвзятый подход, выходить за рамки шаблонного мышления, находить новые решения и объяснять их коллегам https://youtu.be/pWMNBYsvBkI
YouTube
Воображение: источники, пространства, пустоты, расклейка, выход за рамки привычного взгляда.23.12.23
Воображение - как наша способность. Как работает воображение, как создает проблемы? Как с помощью воображения создавать новое? Как различать фантазии и действительность, личные комплексы (страхи, привязанности) и действительность. Воображение и тело.