📹 Записал видео о том, как я изучал Английский для программирования - скорее всего, будет интересно только новичкам, но тем не менее
◾️Смотреть на YouTube
◾️Смотреть на VK Видео
◾️Смотреть на Дзен
◾️Смотреть на Rutube
◾️Смотреть на YouTube
◾️Смотреть на VK Видео
◾️Смотреть на Дзен
◾️Смотреть на Rutube
🔥21👍9🤪5❤4
💭 Несколько дней назад у меня был юбилей! Хочу до НГ попробовать дойти до 500 задач на LeetCode, чтобы потом записать видео о том, что меняется, когда решил 300/400/500 задач на LeetCode...
Кстати, у меня в boosty мы на некоторых еженедельных созвонах в Zoom разбираем различные задачи с LeetCode. Кому это актуально - можно присоединиться по ссылке
Кстати, у меня в boosty мы на некоторых еженедельных созвонах в Zoom разбираем различные задачи с LeetCode. Кому это актуально - можно присоединиться по ссылке
🔥47👍13❤6🤡3😁1
Forwarded from Maybe | Digital
Сложная неделька выдалась. А она еще и не закончилась…
Не успеваю ничего писать в канал от слова совсем.
Вчера с Вовой Балун записали еще один подкаст, обсудили. что нового произошло за год.
Если не видели предыдущий выпуск, то бегом смотреть - самый дорогой it-ментор
На фото еще наш супер крутой режиссер монтажа Наташа. Если ищете себе такого юнита в команду, поделюсь контактом
Не успеваю ничего писать в канал от слова совсем.
Вчера с Вовой Балун записали еще один подкаст, обсудили. что нового произошло за год.
Если не видели предыдущий выпуск, то бегом смотреть - самый дорогой it-ментор
На фото еще наш супер крутой режиссер монтажа Наташа. Если ищете себе такого юнита в команду, поделюсь контактом
🔥19👍5
⚙️ Продолжаю постепенно переписывать рантайм Go на чистом С - сейчас пишу свои примитивы синхронизации (мьютексы). Планирую закончить в ближайшее время, поэтому скоро на канале появится 3 часть...
Для тех, кто не смотрел предыдущие части - вот ссылка
Для тех, кто не смотрел предыдущие части - вот ссылка
🔥29👍13❤4🤔3😍1💯1
💭 Два выходных провел на интенсиве у Петра Осипова
Кто бы что не говорил, но мероприятия в офлайн (интенсивы / курсы / тренинги) - это абсолютно другое, если сравнивать с тем, когда ты читаешь книгу, смотришь видео или проходишь онлайн курс!
Появились иные взгляды на жизнь в некоторых аспектах, а еще я купил тренинг «Метаморфозы», на который уже давно хотел попасть…
Кто бы что не говорил, но мероприятия в офлайн (интенсивы / курсы / тренинги) - это абсолютно другое, если сравнивать с тем, когда ты читаешь книгу, смотришь видео или проходишь онлайн курс!
Появились иные взгляды на жизнь в некоторых аспектах, а еще я купил тренинг «Метаморфозы», на который уже давно хотел попасть…
👎47🤮45💊24👍10😐10🔥5🤨4❤3🤔3🤡3🏆1
Владимир Балун
⚙️ Продолжаю постепенно переписывать рантайм Go на чистом С - сейчас пишу свои примитивы синхронизации (мьютексы). Планирую закончить в ближайшее время, поэтому скоро на канале появится 3 часть... Для тех, кто не смотрел предыдущие части - вот ссылка
⚙️ Я сегодня первый раз залазил в исходники ядра Linux осознанно, чтобы немного разобраться с тем, как устроены там мьютексы (осторожно, много сишного кода)
Многое мне осталось непонятным, но основные концепции я разобрал. В который раз убеждаюсь, что главное это понимание базовых принципов и основ, так как эти основы остаются практически идентичными на разных уровнях абстракций, например мьютексы рантайма Go и мьютексы ядра Linux уж очень похожи (концепции ведь такие же)
Многое мне осталось непонятным, но основные концепции я разобрал. В который раз убеждаюсь, что главное это понимание базовых принципов и основ, так как эти основы остаются практически идентичными на разных уровнях абстракций, например мьютексы рантайма Go и мьютексы ядра Linux уж очень похожи (концепции ведь такие же)
🔥22👍16❤3🤔1👌1🫡1💊1
📰 Делюсь новостью - не так давно завершился отдельный поток обучения по System Design только для сотрудников Wildberries!
На этом потоке было 100+ сотрудников из Wildberries. Мы немного адаптировали материалы курса, а также сделали редизайн презентаций курса.
Мы активно растем, поэтому если вы хотите отправить ваших сотрудников на обучение в один из открытых потоков курсов, сформировать отдельный поток обучения, состоящий только из ваших сотрудников или попросить работодателя, чтобы он оплатил вам обучение - мы подготовили отдельную страницу с подробным описанием всего этого...
На этом потоке было 100+ сотрудников из Wildberries. Мы немного адаптировали материалы курса, а также сделали редизайн презентаций курса.
Мы активно растем, поэтому если вы хотите отправить ваших сотрудников на обучение в один из открытых потоков курсов, сформировать отдельный поток обучения, состоящий только из ваших сотрудников или попросить работодателя, чтобы он оплатил вам обучение - мы подготовили отдельную страницу с подробным описанием всего этого...
🔥23👍13❤3👏1🏆1
💭 Уже после Instagram и YouTube нас мало чем удивишь, но Notion - это больновато, как по мне...
У меня все личные заметки и конспекты были там, а также все внутренние и внешние процессы по проектам balun.courses и it-interview.io. На этой неделе активно переезжаю на инфраструктуру Яндекса. Хочу сказать, что очень удобно и привычно, либо я за время работы в Яндексе просто привык к этому 😅
Но еще мне нужен сервис, который сможет удобно шарить документы по ссылке и удобно их форматировать... На счет него еще не определился - поделитесь, пожалуйста, кто куда переезжает.
У меня все личные заметки и конспекты были там, а также все внутренние и внешние процессы по проектам balun.courses и it-interview.io. На этой неделе активно переезжаю на инфраструктуру Яндекса. Хочу сказать, что очень удобно и привычно, либо я за время работы в Яндексе просто привык к этому 😅
Но еще мне нужен сервис, который сможет удобно шарить документы по ссылке и удобно их форматировать... На счет него еще не определился - поделитесь, пожалуйста, кто куда переезжает.
😢15😭5👍4🫡3❤1😱1
⚙️ Мьютекс - примитив синхронизации, обеспечивающий взаимное исключение исполнения критических участков кода. Наверное, с ним сталкивались многие при программировании параллельных / конкурентных программ с использованием абсолютно разных языков программирования, но, скорее всего, не все задумывались - как этот примитив синхронизации устроен внутри и как его можно реализовать самостоятельно…
📅 31 августа в 18:00 проведу бесплатный открытый урок по внутреннему устройству мьютексов на примере языка программирования Go (урок будет актуален и для других языков программирования).
📌 На открытом уроке узнаем, что такое мьютексы и зачем они нужны, затем напишем свои собственные мьютексы несколькими способами, а также посмотрим на устройство мьютексов ядра Linux и рантайма Go!
Ссылка для регистрации
📅 31 августа в 18:00 проведу бесплатный открытый урок по внутреннему устройству мьютексов на примере языка программирования Go (урок будет актуален и для других языков программирования).
📌 На открытом уроке узнаем, что такое мьютексы и зачем они нужны, затем напишем свои собственные мьютексы несколькими способами, а также посмотрим на устройство мьютексов ядра Linux и рантайма Go!
Ссылка для регистрации
🔥26👍10❤4🥰1💯1
📹 Секреты внутреннего устройства мьютексов в рантайме Go и ядре Linux
Таймкоды:
00:00 - Введение
00:48 - Зачем нужны мьютексы
03:47 - Использование мьютексов
07:30 - Блокировка горутин
08:48 - Пишем свои мьютексы
10:00 - Неправильная реализация мьютекса №1
15:17 - Неправильная реализация мьютекса №2
17:56 - Реализация spin lock
19:20 - Барьеры памяти
21:26 - Усовершенствование spin lock
26:18 - Реализация ticket lock
29:13 - Мьютекс Петерсона
34:49 - Мьютекс ядра Linux
38:08 - Мьютекс рантайма Go
45:48 - Реализация разделяемого (shared / rw) мьютекса
50:10 - Курс по Concurrency в Go
◾️Смотреть на YouTube
◾️Смотреть в VK Видео
◾️Смотреть в Дзен
◾️Смотреть в Rutube
Таймкоды:
00:00 - Введение
00:48 - Зачем нужны мьютексы
03:47 - Использование мьютексов
07:30 - Блокировка горутин
08:48 - Пишем свои мьютексы
10:00 - Неправильная реализация мьютекса №1
15:17 - Неправильная реализация мьютекса №2
17:56 - Реализация spin lock
19:20 - Барьеры памяти
21:26 - Усовершенствование spin lock
26:18 - Реализация ticket lock
29:13 - Мьютекс Петерсона
34:49 - Мьютекс ядра Linux
38:08 - Мьютекс рантайма Go
45:48 - Реализация разделяемого (shared / rw) мьютекса
50:10 - Курс по Concurrency в Go
◾️Смотреть на YouTube
◾️Смотреть в VK Видео
◾️Смотреть в Дзен
◾️Смотреть в Rutube
🔥37👍9🤣1
🤷🏻♂️ Не знаю, один ли я такой или нет, но для моей продуктивности очень важно то, где я сейчас нахожусь.
Когда летом ездил в Ростов-на-Дону - там абсолютно не мог думать о работе. Только отдых, только развлечения, как будто приехал на дачу. Для того, чтобы что-то поделать по работе иногда приходилось себя заставлять.
После Ростова, когда вернулся в Москву - буквально на следующий день сработал какой-то переключатель и с удовольствием начался привычный мне рабочий ритм. Заставлять работать себя после отдыха не пришлось…
Когда летом ездил в Ростов-на-Дону - там абсолютно не мог думать о работе. Только отдых, только развлечения, как будто приехал на дачу. Для того, чтобы что-то поделать по работе иногда приходилось себя заставлять.
После Ростова, когда вернулся в Москву - буквально на следующий день сработал какой-то переключатель и с удовольствием начался привычный мне рабочий ритм. Заставлять работать себя после отдыха не пришлось…
👍47👏7🔥5❤1🤔1
👨💻 Сегодня освежаю знания на счет персистентных структур данных и переписываю персистентные стек и очередь...
Делюсь заодно очень короткой и неплохой статьей на счет персистентного стека: https://habr.com/ru/articles/113585/
Делюсь заодно очень короткой и неплохой статьей на счет персистентного стека: https://habr.com/ru/articles/113585/
👍17🔥7
📹 150+ айтишников в команде? Как стать руководителем департамента Ozon | Михаил Кабищев
◾️Смотреть в YouTube
◾️Смотреть в VK Видео
◾️Смотреть на Дзен
◾️Смотреть на Rutube
◾️Смотреть в YouTube
◾️Смотреть в VK Видео
◾️Смотреть на Дзен
◾️Смотреть на Rutube
🔥15👍4🤩2🌭1
⚙️ Многие понимают, как устроены массивы и срезы в Go, но:
- не все понимают, где и как они аллоцируются;
- не все понимают, как проаллоцировать срез без инициализации;
- не все понимают, как избегать утечек памяти при работе со срезами;
- не все понимают еще много разных тонкостей и нюансов при работе с массивами и срезами.
📅 7 сентября в 18:00 по МСК проведу бесплатный открытый урок по внутреннему устройству массивов и срезов в Go. Я подготовил более 150 слайдов презентации по этой теме, чтобы вопросы на собеседованиях по этой теме больше вас не ставили в тупик!
📌 Если вы думаете, что это тема простая и вы знаете о ней уже все - уверяю вас, на отрытом уроке вы откроете для себя что-то новое о массивах и срезах!
Ссылка для регистрации
- не все понимают, где и как они аллоцируются;
- не все понимают, как проаллоцировать срез без инициализации;
- не все понимают, как избегать утечек памяти при работе со срезами;
- не все понимают еще много разных тонкостей и нюансов при работе с массивами и срезами.
📅 7 сентября в 18:00 по МСК проведу бесплатный открытый урок по внутреннему устройству массивов и срезов в Go. Я подготовил более 150 слайдов презентации по этой теме, чтобы вопросы на собеседованиях по этой теме больше вас не ставили в тупик!
📌 Если вы думаете, что это тема простая и вы знаете о ней уже все - уверяю вас, на отрытом уроке вы откроете для себя что-то новое о массивах и срезах!
Ссылка для регистрации
🔥24👍8❤3🤩2🥰1💯1
📹 Все о массивах и слайсах в Go в одном видео
Таймкоды:
00:00 - Введение
00:47 - Устройство массивов в Go
01:40 - Работа с массивами в Go
10:00 - Перемещение массива в стеке
11:29 - Итерация по массивам в Go
15:11 - Где аллоцируются массивы в Go
17:22 - Педедача массива в функцию
18:16 - Слайсы в Go
21:34 - Реаллокация слайса в Go
24:45 - Резервирование памяти под слайс
25:44 - Создание слайса без инициализации
27:38 - Модификация строк в Go
28:35 - Приведение слайсов в строки и обратно без копирования
30:13 - Передача слайса в функцию
31:12 - Итерация по слайсам в Go
33:55 - Оптимизация итерации по слайсам в Go
35:42 - Получение слайсов в Go
42:40 - Получение слайса из массива в Go
43:15 - Конвертация слайса в массив в Go
44:15 - Конвертация слайса в указатель на массив в Go
45:02 - Указатель на нулевой массив в Go
46:18 - Удаление из конца слайса в Go
... (еще почти час различных тем по массивам и слайсам)
◾️Смотреть в YouTube
◾️Смотреть в VK Видео
◾️Смотреть в Дзен
◾️Смотреть в Rutube
Таймкоды:
00:00 - Введение
00:47 - Устройство массивов в Go
01:40 - Работа с массивами в Go
10:00 - Перемещение массива в стеке
11:29 - Итерация по массивам в Go
15:11 - Где аллоцируются массивы в Go
17:22 - Педедача массива в функцию
18:16 - Слайсы в Go
21:34 - Реаллокация слайса в Go
24:45 - Резервирование памяти под слайс
25:44 - Создание слайса без инициализации
27:38 - Модификация строк в Go
28:35 - Приведение слайсов в строки и обратно без копирования
30:13 - Передача слайса в функцию
31:12 - Итерация по слайсам в Go
33:55 - Оптимизация итерации по слайсам в Go
35:42 - Получение слайсов в Go
42:40 - Получение слайса из массива в Go
43:15 - Конвертация слайса в массив в Go
44:15 - Конвертация слайса в указатель на массив в Go
45:02 - Указатель на нулевой массив в Go
46:18 - Удаление из конца слайса в Go
... (еще почти час различных тем по массивам и слайсам)
◾️Смотреть в YouTube
◾️Смотреть в VK Видео
◾️Смотреть в Дзен
◾️Смотреть в Rutube
🔥43👍18❤5🤩2💯2⚡1🎉1
💭 Продуктивность != эффективность
Я периодически провожу консультации и сегодня общался с разработчиком, который хотел развиваться дальше в программировании. Он очень много всего делал, был крайне продуктивным, но не эффективным... Потому что то, что он делал - не приносило толком никакого результата! Он делал много всего, но не то, что нужно было ему для текущего развития в программировании.
После встречи я решил порефлексировать над собой - эффективен ли я или просто продуктивен. Мне пришлось взять лист бумаги, выписать то, чем я обычно занимаюсь ежедневно, затем рядом написать свои планы и цели. В итоге, несколько вещей, которыми я занимаюсь регулярно, никак не были связаны с этими планами и целями! Оказалось, что я кое-где я был продуктивен, но не эффективен. Действительно, выполнял некоторые действия регулярно, но наверное зря...
Решил просто поделиться этой ситуацией. Кажется, что иногда очень важно возвращаться через какое-то время к нашим планам, чтобы понять - делаем ли мы то, что нас приближает к ним или просто много учимся/работаем.
Я периодически провожу консультации и сегодня общался с разработчиком, который хотел развиваться дальше в программировании. Он очень много всего делал, был крайне продуктивным, но не эффективным... Потому что то, что он делал - не приносило толком никакого результата! Он делал много всего, но не то, что нужно было ему для текущего развития в программировании.
После встречи я решил порефлексировать над собой - эффективен ли я или просто продуктивен. Мне пришлось взять лист бумаги, выписать то, чем я обычно занимаюсь ежедневно, затем рядом написать свои планы и цели. В итоге, несколько вещей, которыми я занимаюсь регулярно, никак не были связаны с этими планами и целями! Оказалось, что я кое-где я был продуктивен, но не эффективен. Действительно, выполнял некоторые действия регулярно, но наверное зря...
Решил просто поделиться этой ситуацией. Кажется, что иногда очень важно возвращаться через какое-то время к нашим планам, чтобы понять - делаем ли мы то, что нас приближает к ним или просто много учимся/работаем.
👍54🔥10❤3💯2✍1⚡1😱1😍1
🚀 ПАТТЕРНЫ ОТКАЗОУСТОЙЧИВОСТИ МИКРОСЕРВИСОВ НА GO
📆 14 сентября 18:00 по МСК пройдет бесплатный открытый урок по Микросервисам, как в BigTech от Team Lead из Ozon (ex-декан Route 256)!
На открытом уроке:
- научишься разрабатывать политики повторных попыток (retry) и влиять с их помощью на стабильность микросервисов;
- разберешься в рисках, связанных с жесткими таймаутами, и поймешь, как они влияют на выполнение целевых показателей SLO;
- научишься снижать время отклика с помощью hedge-запросов;
- научишься ограничивать число запросов (ratelimit) и предотвращать с помощью этого нагрузки;
- научишься писать circuit breaker, предотвращать с его помощью каскадные отказы и защищать систему от частичных сбоев;
- задашь интересующие вопросы TeamLead'у из Ozon.
Регистрация по ссылке
📆 14 сентября 18:00 по МСК пройдет бесплатный открытый урок по Микросервисам, как в BigTech от Team Lead из Ozon (ex-декан Route 256)!
На открытом уроке:
- научишься разрабатывать политики повторных попыток (retry) и влиять с их помощью на стабильность микросервисов;
- разберешься в рисках, связанных с жесткими таймаутами, и поймешь, как они влияют на выполнение целевых показателей SLO;
- научишься снижать время отклика с помощью hedge-запросов;
- научишься ограничивать число запросов (ratelimit) и предотвращать с помощью этого нагрузки;
- научишься писать circuit breaker, предотвращать с его помощью каскадные отказы и защищать систему от частичных сбоев;
- задашь интересующие вопросы TeamLead'у из Ozon.
Регистрация по ссылке
🔥14👍6❤4⚡1🥰1💯1💘1
📹 Недавно ходил на подкаст к Денису Евтееву, за несколько часов удалось много чего обсудить! Говорили про работу в больших компаниях, карьеру в IT, обучение и личное развитие...
📌 Посмотреть можно по ссылке:
https://youtu.be/UQZ5_iy8v1c
📌 Посмотреть можно по ссылке:
https://youtu.be/UQZ5_iy8v1c
🔥18👍9❤3⚡2🤩1🤡1
📝 Делюсь планами по контенту на моем YouTube канале
◾️в октябре планирую сделать большое видео об аллокаторе Go, как обычно, начиная с основ (алгоритмы распределения памяти, свои аллокаторы, malloc, tcmalloc и вот это вот все) и закачивая тем, как Go аллоцирует память и какие там есть особенности и нюансы.
◾️в декабре-феврале планирую сделать большое видео о сборщике мусора Go, начиная с базы (виды сборщиков мусора, parallel vs concurrent GC, поколения участков памяти и многое другое) и закачивая тем, как устроен GC в Go.
Это, что касается больших видео - потому что для них потребуется много времени для подготовки... Плюс еще будет несколько "небольших" видео о различных темах в программировании!
📌 В комментария можно писать предложения на счет будущих видео, возможно, какие-то из них я запланирую на следующий год!
◾️в октябре планирую сделать большое видео об аллокаторе Go, как обычно, начиная с основ (алгоритмы распределения памяти, свои аллокаторы, malloc, tcmalloc и вот это вот все) и закачивая тем, как Go аллоцирует память и какие там есть особенности и нюансы.
◾️в декабре-феврале планирую сделать большое видео о сборщике мусора Go, начиная с базы (виды сборщиков мусора, parallel vs concurrent GC, поколения участков памяти и многое другое) и закачивая тем, как устроен GC в Go.
Это, что касается больших видео - потому что для них потребуется много времени для подготовки... Плюс еще будет несколько "небольших" видео о различных темах в программировании!
📌 В комментария можно писать предложения на счет будущих видео, возможно, какие-то из них я запланирую на следующий год!
👍52🔥28❤5💯2⚡1🤩1🙏1