Посмеялся от души, автору большое спасибо https://www.youtube.com/watch?v=PZugGAL09Qc&ab_channel=V0VAH
YouTube
Дебаты Мурыча( Demi Murych ) и Соера ( s0er ) за 20 секунд
😁105👍12❤4❤🔥3🔥3🤡2😐2
Увлекательная статья про устройство работы v8. Мне очень понравилась секция про маркировку и уплотнение указателей. Настолько, что я собрал у себя v8 из исходников и повтороил часть статьи. Вместо windbg использовал gdb для линукс.
Неудивительно, что javascript так жрёт память, на каждый чих создавать развесистую мапу - это мажорство. Всякие small integer ещё можно оптимизировать, а double уже в кучу кладётся. Жесть.
https://habr.com/ru/companies/bastion/articles/699168/
Неудивительно, что javascript так жрёт память, на каждый чих создавать развесистую мапу - это мажорство. Всякие small integer ещё можно оптимизировать, а double уже в кучу кладётся. Жесть.
https://habr.com/ru/companies/bastion/articles/699168/
Хабр
Эксплойтинг браузера Chrome, часть 1: введение в V8 и внутреннее устройство JavaScript
Cегодня браузеры играют жизненно важную роль в современных организациях, поскольку всё больше программных приложений доставляется пользователям через веб-браузер в виде веб-приложений. Практически...
👍42☃2😱2🤡1💅1
Хотел поговорить про абстракции и вспомнил, что у меня видос на эту тему есть.
На самом деле современные программисты могут добиться успеха в карьере, если понимают и умеют использовать абстракции на уровне кода и умеют работать с семантикой. Программирование все меньше требует низкоуровневых вещей и все больше умение точно формулировать и описывать абстракции.
https://youtu.be/uSnli_4BrEA?si=hFWKjU2nbgjn7u65
На самом деле современные программисты могут добиться успеха в карьере, если понимают и умеют использовать абстракции на уровне кода и умеют работать с семантикой. Программирование все меньше требует низкоуровневых вещей и все больше умение точно формулировать и описывать абстракции.
https://youtu.be/uSnli_4BrEA?si=hFWKjU2nbgjn7u65
YouTube
Про абстракции в программировании и АйТи
#soer #itubeteam
Основной канал для общения и публикации новых видео - Телегарм - https://t.iss.one/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
Основной канал для общения и публикации новых видео - Телегарм - https://t.iss.one/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
👍63❤2🤡1
Долгое время понятие "исключения" относилось к аппаратным прерываниям, которые возникали на аппаратном уровне. Затем появились программные исключения, которые создавались и резолвились самими программистами, на уровне приложения.
Для этого использовались try/catch/finnaly методы.
Интересно, что механизмы исключений в разных языках работают похожим образом - это дополнительные программные абстракции, которые управляют потоком управления программы.
Технически это просто вызов специальных методов (throw, raise и т.д.), которые затем расскручивают стек в поисках обработчика (catch).
Концепция (не реализация, а именно концепция) невероятно сложная, так как "исключение" обладает как сложной семантикой, так и сильно усложняет логику программы (по сути мы должны исходить из мысли, что каждый оператор - это последний оператор, а далее может быть exception). Поэтому многие программисты критикуют подходы, использующие исключения.
Очень часто исключения упрощают до набора простых правил, из-за которых теряется значительная часть семантики. Это приводит к тому, что исключения выбрасывают в любом удобном и неудобном случае.
Вот статейка про то как работают исключения в C++, по сути ничего "исключительного" (кроме семантики), в обработке исключений на уровне языка, нет. https://habr.com/ru/articles/279111/
Для этого использовались try/catch/finnaly методы.
Интересно, что механизмы исключений в разных языках работают похожим образом - это дополнительные программные абстракции, которые управляют потоком управления программы.
Технически это просто вызов специальных методов (throw, raise и т.д.), которые затем расскручивают стек в поисках обработчика (catch).
Концепция (не реализация, а именно концепция) невероятно сложная, так как "исключение" обладает как сложной семантикой, так и сильно усложняет логику программы (по сути мы должны исходить из мысли, что каждый оператор - это последний оператор, а далее может быть exception). Поэтому многие программисты критикуют подходы, использующие исключения.
Очень часто исключения упрощают до набора простых правил, из-за которых теряется значительная часть семантики. Это приводит к тому, что исключения выбрасывают в любом удобном и неудобном случае.
Вот статейка про то как работают исключения в C++, по сути ничего "исключительного" (кроме семантики), в обработке исключений на уровне языка, нет. https://habr.com/ru/articles/279111/
Хабр
С++ exception handling под капотом или как же работают исключения в C++
От переводчика В мире победили языки высокого уровня и в мирах руби-питон-js разработчиков остается только разглагольствовать, что в плюсах не стоит использовать то или иное. Например, исключения,...
👍40❤5🤡1
У Лиса отлично описаны аппаратные прерывания, которые используются для обработки исключений на уровне процессора.
Это даёт более глубокое понимание различий между "аппаратными исключениями" и "программными".
https://neurofox.ru/project/sasm/23_exception
Это даёт более глубокое понимание различий между "аппаратными исключениями" и "программными".
https://neurofox.ru/project/sasm/23_exception
👍31👎4
Предлагаю обсудить темы на сегодняшний техток. Напишите в комментариях свои предложения, а реакции на комментах будут показывать насколько тема интересна другим участникам
👍6🤡2
Кир разобрал вопросы со стрима, по поводу "throw - это return с особенностями", оказывается, бомбануло не только у меня (мой разбор есть на последнем стриме).
Вариант разбора Кира - https://t.iss.one/kirjs_ru/577
На канлае у Кира есть разбор и других вопросов, плюс видео разбор.
Если коротко, то мои ответы были корректны, но не объемны (но об этом Кир знал ещё на этапе согласования стрима, так как мне было принципиально подчеркнуть, что это не экзамен для меня).
Ну а качество вопросов и "правильные" ответы даже чатгпт не оценил. Реально практической пользы, в первых двух вопросах, почти нет.
Вариант разбора Кира - https://t.iss.one/kirjs_ru/577
На канлае у Кира есть разбор и других вопросов, плюс видео разбор.
Если коротко, то мои ответы были корректны, но не объемны (но об этом Кир знал ещё на этапе согласования стрима, так как мне было принципиально подчеркнуть, что это не экзамен для меня).
Ну а качество вопросов и "правильные" ответы даже чатгпт не оценил. Реально практической пользы, в первых двух вопросах, почти нет.
Telegram
kirjs_ru
Вопрос 3
Каким образом организована обработка исключений exception в современном JavaScript
Как работает throw и try/catch
почему в если выбросить ошибку при создании промиса, она не ловится в try catch
Оценка понятности вопроса
🤖ChatGPT: 100%
🤖Bard:…
Каким образом организована обработка исключений exception в современном JavaScript
Как работает throw и try/catch
почему в если выбросить ошибку при создании промиса, она не ловится в try catch
Оценка понятности вопроса
🤖ChatGPT: 100%
🤖Bard:…
👍27🤡7🔥6❤4
Начинаем голосование за награду "Золотой Соер 2024" среди ютубканалов
Anonymous Poll
5%
Програмысли
20%
Extreme code
11%
Alek Os
28%
Диджитализируй
7%
Влад Тен
3%
Selfedu
11%
UlbiTv
4%
Onigiri
6%
Егор Бугаенко
4%
Decembrist ITTV
🤡145😁15👍12🎉6🤷♂3👀2❤1🥰1🫡1🎄1🤪1
Предлагаю провести пятничный техток в новом формате. Спикером будет выступать кто-то из комьюнити, а я подключаться отвечая на вопросы и давай микрофон.
Итак, если кто-то хочет выступить в роли спикера, то пишите в коммент "хочу быть спикером" и тему обсуждений.
Время как всегда 15:00 по Мск.
Итак, если кто-то хочет выступить в роли спикера, то пишите в коммент "хочу быть спикером" и тему обсуждений.
Время как всегда 15:00 по Мск.
👍27🤡4😱2
Сегодня докладчиком был Михаил Веткин, его телеграм канал - https://t.iss.one/mikevetkin
Telegram
Михаил Веткин
Мысли и заметки от фронтенд инженера из Озона
Тэги:
#инструменты
#fcis
#юнитТестирование
Автор: @onevetka
Тэги:
#инструменты
#fcis
#юнитТестирование
Автор: @onevetka
👍16🤝2
Не баг, а фича
Есть такие каверзные вопросы, на которые нельзя ответить неправильно, но вся "соль" содержится в объяснении, которое даст человек.
Например, вопрос "Можно ли в реальном режиме Intel 386го процессора адерсовать не 1мб памяти, а 4 Гб?". Если ответ будет "нет", то человек будет прав, потому что по задумке Intel так и должно было быть.
Если скажет "да", то тоже будет прав, потому что инженеры Intel тоже ошибаются и в 386 процессорах можно было использовать хак который назывался "Unreal mode" и позволял адресовать 4Гб, правда не без проблем, например, нельзя использовать EMM386.
В истории АйТи часто бывает, что недокументированная возможность становится настолько популярной, что из разряда "багов" переходит в разряд "фич", так случилось и с Unreal Mode, Intel не стал выпиливать эту возможность, так как слишком много где ее стали использовать в работе.
А какие "багофичи" знаете вы?
Есть такие каверзные вопросы, на которые нельзя ответить неправильно, но вся "соль" содержится в объяснении, которое даст человек.
Например, вопрос "Можно ли в реальном режиме Intel 386го процессора адерсовать не 1мб памяти, а 4 Гб?". Если ответ будет "нет", то человек будет прав, потому что по задумке Intel так и должно было быть.
Если скажет "да", то тоже будет прав, потому что инженеры Intel тоже ошибаются и в 386 процессорах можно было использовать хак который назывался "Unreal mode" и позволял адресовать 4Гб, правда не без проблем, например, нельзя использовать EMM386.
В истории АйТи часто бывает, что недокументированная возможность становится настолько популярной, что из разряда "багов" переходит в разряд "фич", так случилось и с Unreal Mode, Intel не стал выпиливать эту возможность, так как слишком много где ее стали использовать в работе.
А какие "багофичи" знаете вы?
Wikipedia
Unreal mode
Unreal mode (иногда также Big Real Mode, 32 bit Real Mode, Flat Real Mode) — метод, с помощью которого реализуется возможность из реального режима работы процессора Intel 80386 и выше адресовать до 4 гигабайт памяти, вместо 1 мегабайта, доступного в реальном…
🔥40🤓14👍8🤡1🫡1
Фронтенд, такой фронтенд
Для меня верстка - это как гадание на кофейной гуще, нифига непонятно, но очень интересно. Вот сегодня узнал, про новую единицу измерения "svh", это прям открытие года!
https://youtu.be/utcDm7QuyPw?si=9FZUA-Gb9NGjBqLD
Для меня верстка - это как гадание на кофейной гуще, нифига непонятно, но очень интересно. Вот сегодня узнал, про новую единицу измерения "svh", это прям открытие года!
https://youtu.be/utcDm7QuyPw?si=9FZUA-Gb9NGjBqLD
YouTube
Не используй 100vh! Не попадись на эту багу ;)
Урок по svh, dvh, lvh - единицам измерения, которые появились в 2023 году. На примере бага, на который любой новичок может нарваться
👍35😁9❤1
А тем временем у нас в клубе S0ER Club появился эксперт по глубокому дизассемблированию накрутчиков опыта с последюущим "поясни в чем ты не прав".
Эта тема очень горячо заходит в нашем сообществе. Накрутчики напряглись. )
Эта тема очень горячо заходит в нашем сообществе. Накрутчики напряглись. )
👍12🤣8🤡2
Пятничный техток
Начинаем сбор тем на пятничный техток.
1. Если вы хотите выступить спикером, то напишите в комментарии "я хочу быть спикером" и укажите тему выступления
2. Если у вас есть материал (текст в сети или видео), который полезен для программистов или может быть интересен для обсуждения, то можно предложить его для обсуждения, опубликовав ссылку
Начинаем сбор тем на пятничный техток.
1. Если вы хотите выступить спикером, то напишите в комментарии "я хочу быть спикером" и укажите тему выступления
2. Если у вас есть материал (текст в сети или видео), который полезен для программистов или может быть интересен для обсуждения, то можно предложить его для обсуждения, опубликовав ссылку
👍4🤡1