Мы вам перезвоним
описание
Выкладываю и разбираю вопросы, которые встречаются на собеседованиях по фронтенду Вопросы присылайте @djamah
3 865
подписчиков
Охват к подписчикам
315,4%
ERR
Реакции к просмотрам
0,20%
499 на 20 постов
Пересылки к просмотрам
0,28%
679
Постов в день
0,0
всего 20
Где отзываются чаще
доля реакций к просмотрам- 6 мая 2022 г.Зараз на ДОУ йде збір грошей на літачок для нашої армії. $1млн. Я знаю, що реалістичні прогнози редакції передбачали, що на це знадобиться тижні три. І ось пройшло 12 годин, а вже зібрано дві третини. Люди — неймовірні. Я вважаю, що допомагати армії — це найважливіше, що зараз можна робити, бо як сказала дружина нашого президента: Дитяче харчування буде непотрібним, якщо діти загинуть… https://dou.ua/forums/topic/37811/ p.s. Знаю, что здесь треть аудитории из россии, если вы с чем-то несогласны, или вам кажется, что вы на этот канал не для того подписывались.. я тоже так думал, но у меня есть одно обстоятельство, страна, которой вы платите налоги, пытается нас убивать. Если у вас есть совесть, то фонд Повернись живим принимает донаты в крипте.1,23%
- 10 янв. 2023 г.Привіт! І це знову пост не про джаваскрипт. Бо війна триває, а ми поки що не перемогли. Але хочу розказати вам про свого друга, звати Сергій, він теж розробник та керує розробкою для школі де я багато років викладав. А ще Сергій воює, і багато волонтерить. А прямо зараз збирає гроші на Мавік, а серед тих хто задонатить розіграє кейс від джавеліну. Це саме той випадок збору, коли зрозуміло кому, зрозуміло навіщо, і відомо, що точно буде толк. https://www.instagram.com/p/CnEdlyGIn5K/?igshid=NTdlMDg3MTY=1,04%
- 26 янв. 2024 г.Як там у вас, продуктивна п’ятниця? Давайте це виправимо новим випуском 1-2-3 Techno! Мені важко рекламувати кожен випуск, бо ж не можеш сказати “от раніше було так собі, а тепер ого-го”, раніше теж все добре було, але… ну ви кароч зрозуміли, я прям чекав публікації цього випуску з нетерпінням. :)0,48%
- 26 янв. 2024 г.Сані важко рекламувати кожен випуск, а мені прямо неспокійно що хтось не побачить цю розмову, бо вона прекрасна абсолютно. Слухаєш, і думаєш: як же добре що я не пішов в мобільну розробку)0,35%
- 26 февр. 2022 г.Не вимикайте геолокацію Upd. Так, можуть дивитись на гугл-карти, але якщо ви їх використовуєте, то вас і так видно. І звісно у військових можуть бути свої протоколи. Але якщо ви сидите в підвалі бомбосховища, геолокація вам загрожує менше ніж ліхтарик. Upd 2. Гугл вимкнув для України функцію Людне місце Upd 3. Як правильно зазначають в коментарях, сам по собі включений мобільний телефон є джерелом сигналу. Якщо можете виключити телефон… але ж цього ніхто не зробить, так?)0,19%
- 31 дек. 2021 г.Ну и чтобы новый год был легким, держите простенькую #Задачка_31, она в стиле старой доброй parseInt :) Что будет в консоли и почему? [42, 10, 1, 3].sort() Свои развернутые объяснения присылайте @voloshchenkoal0,12%
- 24 февр. 2022 г.В @zatelekom хорошая инструкция о том, что делать, если начинает отключаться интернет. Перевели на английский и украинский, чтобы смогли прочитать все0,10%
- 9 нояб. 2021 г.Разбор #Задачка_29 Первый вариант Решение через рекурсию от Артема const retry = async (fn, { retries }) => { try { return await fn(); } catch (e) { if (retries > 0) { return retry(fn, { retries: retries - 1 }); } throw e; } }; Лаконичное решение, мне очень нравится. Но оно не совсем подходит для прода. Автор описал свои мысли почему: > Минусы решения в коде 1. Надо добавить параметр timeoutMs в config 2. Обрабатывать ошибку, которую может вернуть fn, возможно, не надо ретраить 3. Вероятно добавить retryWhen колбэк параметром 4. Нужны стратегии (линейная, инкрементальная и тд), через какое время делать ретрай 5. Нужны логи и стратегии их отображения: когда и куда писать, например для дебага 6. Описание, типы, тесты и валидация аргументов, конфига (все ли поля используем, или есть опечатки) > Минусы решения в подходе 1. Переданная функция должна быть идемпотентной (если повезет - это at least once, явно не exact once) 2. В случаи АПИ запроса - ретраить нужно не все статусы ответов, чтобы не заДДОсить Пункты про стратегию повторных ретраев очень важны. Ведь без таких стратегий можно себя задедосить. Такое, например, было в Signal. Стратегию повторных ретраев с задержкой по времени принято называть экспоненциальной выдержкой или Exponential Backoff. Больше про нее можно прочитать здесь Второй вариант Из задачи #Задачка_28 мы знаем, что рекурсию можно заменить циклом. #Задачка_29 не исключение Решение через цикл от aslanator: async function retry(callback, options = { retries: 0 }) { let { retries } = options; while (retries > 0) { try { return await callback(); } catch (e) { retries--; } } return await callback(); } > Ход мысли тут достаточно прямолинейный, нам просто нужно отлавливать ошибку и заново запускать скрипт, пока не истекут попытки. Чтобы в конце вывести ошибку, я делаю повтором меньше на 1, а в конце просто отдаю callback. Вроде больше нечего сказать, несколько раз делал подобное в реальных проектах на работе. Третий вариант Хитрое и очень прикольное решение от Владимира const retry = (func, { retries = 3 }) => { const promises = Array.from({length: retries}, () => func()); return Promise.any(promises); } Размышление автора про минусы в своем подходе: > Проблема кроется в самом Promise.any. Из документации следует, что данный метод вызывает все промисы из массива и дожидается, когда один из них будет выполнен или выкинет ошибку в случае не исполнения никакого промиса. В конечном итоге, если данная функция будет вызвана с большим кол-во retries (200 к примеру), то есть вероятность упасть в ошибку самого браузера по количеству запросов.0,05%
- 31 янв. 2022 г.В этом выпуске ругаю айфон и хвалю Sidekick. https://youtu.be/CxF7rKPgaDI0,02%
- 26 окт. 2021 г.#Задачка_29 Нужно написать функцию retry, которая принимает два параметра: асинхронную функцию, которую будет вызывать и число попыток. Если при вызове переданная функция бросает исключение, то она вызывается повторно, но не больше, чем заданное количество раз во втором параметре. Пример кода: const getUserInfo = async () => { const response = await fetch('/api/for/user'); const userInfo = await response.json(); return userInfo; } retry(getUserInfo, { retries: 3 }); Свои развернутые ответы присылайте @voloshchenkoal0,02%
- 24 дек. 2021 г.Итоги года и новостей по версии меня с коллегами. Пою оду флаттеру. Не верю в метаверс. И отказываюсь верить в документацию (ну почти). Хотя большинство моих теперешних коллег занимаются макос-разработкой, но обсуждаем мы темы скорее общеайтишные. По секрету еще скажу. На этом ютуб канале в следующем году будет новое шоу, а уже на следующей неделе оочень прикольный технический доклад. Все в этот канал не запостишь, потому очень надо подписываться) https://youtu.be/-TjGHP8o5_I0,02%
- 17 дек. 2021 г.В последнем регулярном выпуске ДОУ подкаста я говорил, что взрослым людям пора бы знать, сколько они денег хотят получать. Меня за это много критиковали. Но мой поинт был в том, что по большому счету, все ж все знают. Компании заказывают исследования рынка, а разработчики могут посмотреть результаты зарплатного опроса ДОУ. Опрос ДОУ не социологический, там нет никаких коррекций и всяких социологических штучек. Все очень просто, чем больше людей заполнит анкету, тем точнее данные. Все результаты анонимизируются и выкладываются на гитхаб. Заполняйте, если еще не https://dou.ua/goto/KPCy p. s. Мой прогноз: медианная зарплата выросла на процентов 10 за год, не больше0,02%