Подготовка к собеседованию на Golang Developer
Менторы
Специалисты своей области, которые смогут помочь вам
Middle .Net Developer
Senior Product Manager
Middle Python Developer
Ведущий программист
Backend Software Engineer (PHP)
Senior .NET/C# developer
Middle DevOps Engineer | Tbilisi, Georgia
Middle C# .NET
Senior PHP-разработчик
Middle python developer
Каналы
Полезные Telegram каналы и чаты
Транскрипция видео:
все давайте начнем а вообще как сегодня что будет проходить сначала быть большой интро я расскажу о себе расскажу об участниках потом быть интервью с ответами на вопросы в конце я буду стараться во времени выписывать какие-то вопросы чтобы ребятам задать их конце чтобы сейчас никого не перебивать и потом я расскажу про нашу замечательно ментовскую программу которую мы делаем и расскажу почему она супер до способу бинара мы хотим очень чтобы вы для вас интервью ска перестала быть черной коробкой а стала чем-то крутым
00:00:00 - 00:01:13
чем то что вы принимаете как происходит вот немного бы меня кто я такой вообще в бывшем go разработчик сейчас я продакт вот так вот меня судьба судьба пока честного вот не в свободна от работы время делал этот проект а почему я его делаю потому что когда я был башня гаишникам я очень много фигачил те кто смотрят короче презентацию второй раз это уже создают но я выскочил и фигачу безрезультатно очень сильно выгорел и потом мне в целом я выглядел примерно как в этот милый гуфер только я не милый
00:00:36 - 00:01:50
я попрошу помочь знакомого мы встречались 1 неделю это было в рамках менторства я немножко or how great i решил что типа менторства это супер и надо делать ментовскую программу вот что такое это занятие 1 на 1 с ребятами из крутых компаний вот сегодня саша и за зона но у нас есть метр из яндекса из мтс а из vk и в общем короче из всех крутых компаний кроме тинькова вот миша поэтому зови к нам своих оков ну да с ментором вы составляете индивидуальную программу и да с ментом ментор составлять вам
00:01:14 - 00:02:39
индивидуальную программу ставит домашки вас не встречаетесь столько сколько захотите и цель всего этого действа чтобы вы либо повысить great либо сменили работу и в общем все цели которые связаны стоит это все дело стоит сайт красота заодно занятия 300000 мы берем только одно занятие вы не платить какие-то покинь и пальцы сколько не платите очень платите только пока чувствуете пользу но до тех кто выйдет досмотрит до конца маски дон значит на первое занятие 2 стол будет промокнете в конце собственно давайте перейдем к тому
00:01:57 - 00:03:13
зачем мы сегодня собрались посмотрим суперской интервью в нем будет принимать счастья миша который немножко часа расскажет о себе в качестве побеседуем ago да всем привет я работаю в тиньков инвестициях недавно ну как недавно где-то месяца два-три назад апнул great terrible а учусь в баунти на каждую систему автоматизированного проектирования и как он в свое время закончил технопарк и стал ментором обязательность проектов бака саша все привет я работаю в зоне в платформе обзор вами лети в логи рование вот
00:02:35 - 00:03:52
занимаюсь тем что которые по трубам пускаю все ноги со всех трех тысяч микро сервисов и все это мы еще сохраняем в наш собственный базе которую скоро зовут ян source а вот программируя пять лет промышленная его последние три года судьба свела меня с гор за три года что ты успел в этом языке изучить и понять опере класс давайте тогда переходить к интервью ушки я простой шарьте кран выключаю камеру ухожу в нет рычат а вот и передаю слово саша в общем так давай начнем с примитивов все с этого начинают я не сделаю сейчас
00:03:16 - 00:04:43
исключение наверное вот что есть у нас такие типы данных как он ты там наверно не очень интересно но вот на чем на слайс он более интересная штука которую нам люди пришедшие с других языков иногда они очень хорошо понимают и сильно удивляются что ты знаешь об этой структуре как она работает что это такое но в общем-то слоится такая структура которая состоит из трех машинных слов это capacity его длина и указатель на область данных то есть по сути когда мы объявляем слайс мы сразу выделяем тантре машин их слова ну там
00:03:59 - 00:05:12
три машины слова там зависимости от операционной системы в общем-то самые интересные этой операции что типа как мы увеличиваем слайс как вообще всю меня он добавляем там элементы в целом если кто-то пришел из плюсов то можно проводить аналогию что слайс это что-то типа вектора ну примерно так работает плюс там как интересно работает об этом все вот эти уловки с памятью когда мы например низами думаем что мы перри создаем слайс на самом деле нет когда у нас там к постичь его не пробилась мы его не перри создали
00:04:37 - 00:05:44
и работаем с ним отомстим за по сути с той же областью данным из-за этого могут быть проблемы там если не какие-то значения индексов да вот как раз как раз про это я хотел спросить и но для начала когда мы передаем соответственно давай так когда мы создали пару слайдов и в один мы ну а пускай это будут n64 то есть восемь байт размер ячейки и в 1 слазь мы записали 10 винтов во второй мы записали пускай будет 50 собственно и передали вот функцию в первом случае во втором случае сколько мы примерно передали
00:05:11 - 00:06:36
понятно что зависит все от машинного представления как ты говоришь машины слова вот не если какая-то разница ну мы передаем по сути там еще состоит славец из лент capacity to о пусть будет по четыре по четыре байта и указатель на область памяти 8 байт но да да да разницы никакой не будет хоть все мы туда запишем все равно ментам да в отличие от массивов нет нет никакой разницы хорошо вот если мы передаем начинаем что-то менять в этих в этом слайсы внутри функции то будет ли что-то меняться снаружи ну слазь мы передали не по
00:05:54 - 00:07:17
указателю начали мутировать как снаружи мы видим изменений или не ну смотри смотри как мы меняем если мы передали слайс из 10 элементов о которого ленка пасть одинаковые и мы в него добавили элемент open дом и не вернули этот свойства снаружи ничего не будет потому что слайс перри создался через append если мы например передали слайс и там не в него не что-то запретили изменили по индексу на это что же область памяти ничего не мы там заметен изменения быть мутировали да да все так как как называется может я да ты
00:06:35 - 00:07:54
хорошо знаешь может знаешь как вратами называется что копирует собственно когда-то передаешь какая структура структура но ты знаешь даже что слайдер рефлекторы копируются и собственно у него уже записан как раз его млн не поменяешь указатель соответственно показателя может поменять это просто копия окей да тут все собственно правильно царя если мы создаем слайс и вот начинаем объявили war слайс какой-то не указали не об не указали соответственно без этого объявления что длина копейске просто вот зарезервировали и пошли туда
00:07:15 - 00:08:56
поедете будет работать ну да если у нас у нас год про создает этот год чуть умнее чем мы хотим исходит из липы флюсов так делали то это не получилось бы но он нам позволяет делать а а если мы пошли в цикле а-ай и вставляем слайс ой 0 ну и какое то значение записывать начинаем ну пойми зачем пытаться туда чему смотри мы объявили через war значит у нас леннартом к пасте тоже в принципе 0 и указательному из памяти там низами n64 и мы обращаемся по индексам она же ничего нет он будет ошибка да будет
00:08:08 - 00:09:30
ошибка out of range изменить все будет плохо мы мы просто зарезервировали память попеременно этого типа чтоб потом ее записать условно мы создали пустую структур если так можно вообще говорят структура по-своему да хорошо давай последний наверное потока безопасности слай сада у нас есть мы об и слайсы канал и вот как как сослать работать как и насколько его можно безопасно монтировать в разных местах передавать разные грудины будет ли все работать или все сломается или что 3 ну честно говоря когда хочется передать слайс через горы
00:08:49 - 00:10:07
в грудь и на книга сюда к штату стоит какая то что то мы делаем не так мы пытаемся езжайте по стала того что типа так не надо делать так можно сделать но не надо там you take some можно по проводит обложить и так записывать на 3 точно так же с мамами наверно этой фишки снег наверно устроенный каши не знаю как у вас нас выбран не устроена так что тепло у нас простые каши и меня морев тупую прям мы просто маму хранением you take some обкладывая читаем и пишем нижнем поднимут x они все каналы они потока безопасные системы это
00:09:29 - 00:10:37
по сути яблоко про слайсы дойдет до tiande каналов а если мы просто будем там в 10 грудь и нах там всякие append и делать и так далее грустно получив при выделении все верно да собственно не передавайте слов не для того чтобы все из них терзали там хорошо да давай тогда остановимся немножко на строке потому что как-то вроде она связана с лайсом но не совсем это это это это это все таки не слайс это не прикол из сети пума строка устроены дигоксин то есть там в целом можно обратиться к строке по индексу и это даже будет работ ошибок не
00:10:03 - 00:11:36
будет но за результат там нельзя ручаться потому что некоторые символы как бы все у нас читов занимает один байт не это все работает в год не так некоторые символы могут занимать ни один байт и соответственно нет гарантии что если вы обратитесь по яндекс по строке вы получите нужный символ ну да а как нам обратиться чтобы этой 8 нам поддержал иероглифы кириллицу и все хотим читать строку как мы читаем тогда ну хоть по силам и читать любого хочу по буквам читать не попасть нас есть strings плит с плитой им по пустой
00:10:49 - 00:12:05
строке он нам получаем sla из этих слоев вышла из этих строк и работаем уже с ними еще может простом по рейджу пройтись и о самых в руках преобразуют тоже да это это интересный момент что да если мы идем for a и и вставляем эдак строки то он отработать так с байтами а если идем for rain эта строка то это уже руны и хотя рупой пишет что это да и мутабельные байты мы видим что короче не так все просто а если смотришь string ядер то это тоже там юппер указатель на область памяти на самом деле вначале сказал мы не совсем да ни то ни
00:11:27 - 00:12:50
другое нам нужны разные представлениями о кейт вопрос тогда еще на такой если мы сослать сам все понятно мы передали слайс ну мы посчитали что платформа зависимо но пусть будет 16 байт когда мы функцию передали а если у меня строка пусть будет 100 килобайт я передаю аргументом функцию ну строгал смысле 100 килобайт текста строка но переменная там 100 килобайт я в стрингах тоже воспринимается что у нее есть длина и есть указатель на область памяти я напомню как раз два машинных слов год то есть там в принципе
00:12:09 - 00:13:26
насколько помню без разницы какого бы можно обращаться к этой строке будем брать значение тогда мужик получите 100 килобайт да это это рефлекс string и дердо runtime представление строки собственное и нету capacity потому что конвой capacity она и мутабельные только линн и да собственно 12 байт ну в зависимости от платформы нанизаны поэтому до можете длинный срок передавать функцию и хотя они передаются по значению сюрприз копирования не существует можно даже слазь байт привести его через reflect без локации к
00:12:49 - 00:14:03
строке передать ей потом начать эти байты меня тоже меняется конечно это можно мне надо да вот я и к тому что конечно вот эти вещи prime утомились это соглашение если нужно то мы можем всякой могу легко вскрыть с помощью эффекта mcf ну как этот же сам робко говорил что теперь не надо пользоваться рефлексом лишний раз если очень-очень надо то использовать и но не надо он не понадобится в жизни особо можете тоже сделан ну да то есть если я когда конфликт парсить и нормально когда что-то номер отзывы и подумайте бегите глупцы
00:13:26 - 00:14:55
хорошо ладно перейдем тут только понятно все вот паслась он по строкам перейдем вот к матам что такое вообще хэш-таблицы ну в принципе как понимаешь прыгну хэш-таблиц в общем то такая структура данных у которой запись и запись происходит за от единицы то есть ну мы просто вычисляем куда вставить в таблице значения через хэш-функцию а чтение в лучшем случае за единицу в худшем за n-ного общаюсь современные этих хэш-функции такие что за и мы никогда не читаем сюда почти за единицу но в целом надо понимать что мама это такая
00:14:09 - 00:15:36
структуру который чтение худшем случае за н ну да да у нас как бы зависит и дпс на племен таешь набрать я должен спросить но так верхние уровни вода вот у нас есть наверно конфликты об взяли мой хэши они могут сойтись и как что это как это называет это у нас называется коллизии целом как там происходит если мы вставили в таблицу какое-то значение комната ключу круто а мы его записали потом мы записываем еще одно значение вычисляется точно такая же ячейка и в этом случае мы вставляем например запись следующий и у нас
00:14:55 - 00:16:23
опасное дело таблицы там типа их не просто ну low идиотом поставляют типа какую ну там условный там у stories ну дальше пустота если мы обращаемся к какому-то по какому ищем какое-то значение в mapi то мы ищем даб даб с до 1 пустой клетки в общем то чтобы перебрать вот эти значения на инструментом как борется с коллизиями ну да по сути вышлем там где уже есть вот это значение которое уже перед этим была вставлена и мы не можем просто так из map удалить что то есть например если мы что-то удаляем из map это мы помещаем
00:15:39 - 00:17:08
что это не пустая ячейка а именно удаленная потому что может быть такая ситуация что мы вставили в одной ячейку потом следующего там коллизионный ходил на и разрешил и когда мы начали удалять вот этот элемент и пытаемся обратиться к этому если это будет записано как пустая а мы никогда не найдем на второй элемент поэтому его помещают как удаленный да отлично правильно да окей собственно понятно у нас вот кстати такой вопрос к у нас map и an ordered вот как ты думаешь как они будут когда-нибудь ордер отеле нет
00:16:26 - 00:17:42
в целом можно получить world но это не гарантировано я знаю потому как ты думаешь как это будет развиваться вот потому что вы сейчас generique запилили и кажется что год через полтора чинить его стадо ли буза перед world map значит такая бинокли важная тема вот я спрашивал как я не знаю на самом деле пошли мне дженерики to the top только то что не совсем нужно было в гаи если буду делать вам ордер и темп 0 я просто не представляю кейс когда это может понадобиться но когда никогда они не хотят сортировать перекладывать это с я тоже
00:17:05 - 00:18:19
не в восторге но ну как в рот прикольно но на зачем загоне для этого команде нам кажется что год через полтора сделают вас т.д. либби чего-нибудь и будет те ordered map весь набор функций я просто боюсь что у нас был превратиться в си плюс плюс я очень переживаю за этот момент чтоб какой-то момент мы начнем стрелять себе в ноги смысле блин ну дженерики круто ты заряжаешь этот батник я надеюсь мы моется все равно боимся меньше чем раб aig так что и так все страшно ok собственно вопрос если мы объявляем мапу как там и объявлять
00:17:43 - 00:19:05
правильно можем ли мы объявлять через дворы можем ли мы через майк объявлять как неправильно и так далее в общем об обычном делю через миг там типа миг-маг там тип ключа youtube в значении но это можно размеры указать так а если объявить через war но она не будет работать сколько я помню нам опять таки просто память выделенного анализировали ничего у нас не получится хорошо тоже начал проект говорить и когда я спрашивал про слайс но вернемся и дополним собственно потокобезопасность map и где оно безопасно на что она что нет ну
00:18:24 - 00:19:45
насколько я помню ну мы опять же из тоже используем youtube чтобы не записывать ну просто как может быть какая может быть ситуация если мы не можем youtube сами например у нас там не знаю мы ее обновляем каким-то образом это же самый кэш и когда мы из нее читаем и обновляемых перри создаем в общем там об у нас может получиться так что мы высчитываем из несуществующей map и тогда у нас будет ошибкой то есть основа складывается этим ютэк сына mjx он так называется ретро это не только да это понятно но то есть она
00:19:04 - 00:20:19
на запись она не сейфовая нет а на чтение если они не знали и читаем из десятка грудь и сотни мы тоже не своего окна что вдруг мой перезапишем маму это не просто чтение мы записали в начале инициализировали она туда мы можем спокойно что все будет нормально на на чтение ana sayfa вы собственно окей как как считаешь почему не сделать ее сразу саифа вы чтобы мы разработчики еще меньше думали просто махали ей не парились можно еще раз какой вопрос можно ли сделать его и почему не сделали ее сразу сейфовой чтобы мы вообще еще больше
00:19:40 - 00:20:59
расслаблялись они работали и не думали об этих мьютекс их не забывали их ночи и так далее тесно хороший вопрос я думаю что ноги же 7 км от да как бы она заставляет работать глеб все как в питании сделать очень медленно да да все очень медленно естественно да потому что все это не бесплатно и сожалением объем индукционными бесплатным да но часто нам это не нужно я часто мы можем не знаю вот иногда что-то записать набрать и сделать какой-то механизм лоб free вот посчитать из разных структурах соседних и обойтись без блокировок там и
00:20:23 - 00:21:50
теста легче писать и performance будет получше и так далее или как-нибудь обновлять хитро например читать из канала кучу апдейтов себе копить их а потом ставить блок единожды все обновлять и опять разучивать то есть мы разные приёмы и это отдано нам на лодку делать там lock free него free как мы хотим собственно есть ещё пакет sing там есть син cmos работал с ней знаешь что-нибудь о ней но figures ныне разные работу удобной команды вы в этих набор из не работали в общем то она хранится себе интерфейсные типы и она
00:21:12 - 00:22:28
потокобезопасность можно изменить iso вычитывать но нужно приводить к твоему типу постоянно когда-то вычитал значения в этом есть проблема в этом можно упадет performance такой трейдер либо ты сидишь используешь мьютекс и либо ты сидишь использующие преобразование типа через рефлекс ну как ты все время качестве хочется а как как это сделать покрасивее если мы просто положим эти мьютекс а рядом с мамами ну придет новый junior он забудет не использует разорвет нам сумма пухлом кудри вьёт ну да я я больше про то что как мы их
00:21:50 - 00:23:22
можем объединить по смыслу объединить мама пу и youtube ну да можно как-то их преобразовать эту систему то чтобы учитывать из каналов уж потом безопасны честно говоря так придумай сходу тому как можно этот день я просто имею ввиду что на же есть структура да и как можно свои обертку написать мамам на нас просто не написаны как то вы написали эту же обертку да да просто мы не знаем и не зная яркая и пишу обертку у нас нет во всяком случае наши поздно человек unsourced проектов которые мы пишем и нет да действительно
00:22:38 - 00:24:05
ну как хочешь не хочешь писать постоянному токсин у вас поди напишите mcqueen пишите обертку с ней да и mjx а повесить окей ты сразу же упомянул что есть первый облет икса поэтому я спрашиваю чем отличается mjx от обычного о это вот сюда за black растут по моему обычную монтирую просто было чуть назад из чтение а он обычно в youtube сон полегче пункт воспринимается на точно вот эту разницу не помню ну обычный просто блочит и и все doblo что все аир в ты можешь заблокировать просто сделать log да и тогда все
00:23:24 - 00:24:42
читающие ждут а если ты делаешь р м ю так что вы можете все потока безопасно читать пока кто-то лук не поставит на запись но на соответствие дождется пока вы это читаете сам возьмет свой лук ну а остальные и прочие локи обычные уже будут ждать уже нечего не по делу так давай мы прошли сейчас слайсы прошли map и и собственно мы начали искать хотим найти что-то по индексу и так далее как быстро мы там найдем если мы поищем спаси ее матери ну слазь и в общем то мы тоже за единицу это же просто индексом
00:24:04 - 00:25:26
мы находим адресно электрическая все дилан в марте тоже за единицу точно так же до такой со звездочкой со звездочкой вопрос не то что часто мы с этим сталкиваемся вот мы к дотируем спам от паслась можем ли мы послать быстрее пройти чем по мапе но мой вопрос проводить можем может быть есть идеи почему почему возможно что он послать иногда быстрее проходим ну это скорее к задача поиска потому что например мы можем что-то находить в свои семьи за н а за логарифм н с москвой бинарной поиски мы можем отсортировать
00:24:45 - 00:26:12
сначала у нас и сортированный словеса потом за бинарными по бинарному поиску что-то найти это будет быстрее чем помоги имел ввиду ты правда и праздный вопрос был просто про то что от монтируется проезжую иногда мы быстрее идем по чуть-чуть быстрее паслась но это потому что у нас в mapi есть каши указатель и так далее а слазь условно можно там сказать что у нас вызывается хэш-функция из-за того что мы кладем вызов хэш-функции нас те кто это чуть чуть больше времени на то чтобы вернуться а в славе у нас просто
00:25:28 - 00:26:43
адресной арифметики ему просто шатаемся по нему без какой без каких-либо функций дуб вызовов ну типа можно многому был чуть быстрее три раза послать окей отлично так там апу мы поняли ну давай канал и посмотрим наверное самое самое интересное и самое интересное да что такое каналы ну каналы бывают буфере zero ван и не буферизируется и в общем то можно их оценим можно их рассматривать как такую типа очередь вообще-то устройства синхронизации между грузинами то есть это условный как если сравнивать с
00:26:05 - 00:27:29
плюсами лесами труды то есть мой не традиции pipe и где мы можем условно там в один конец записала за 1 за любой рутина другая слушающая туда вычету связь между грудь инны так окей вот то сказал бы фрезерованные небо фрезерованные в чем у нас разница если вы просто пошли исполнять код записали что-то бы фрезерованный канал и в обычный ну например но насколько сюда помню если у вас есть бы фрезерованный канал то скорее всего вам вам можно заменить нам на не по фиксированной ничего не будет в все случаев но это ни к этому вопрос а
00:26:47 - 00:28:11
скорее фишка в том что когда мы записываем в небо фрезерованный канал то мы учимся и ожидаем пока кто-то оттуда вычеты ароматизирована если мы записали то мы будем записывать пока не заполнится буфер то есть условно если у нас буфер на 5 значений у нас 5 га рутин и мы не хотим ждать опроса хотим записать их завершить то нас просто напивается значение в буфер а потом они как-то вычитаются а если у нас не буферизируется вас 5 беру then и мы пишем все пять грудь он пишет в этот канал и никто не читают то мы записали одно
00:27:29 - 00:28:33
значение и 4 сидят ждут пока из канал чата вы че тут не завершаются если вообще никто из канал не вычислить то что происходит предлог да естественно а как называется этот когда мы там уже больше с каналом можем но не читаем и вот остальные сидят и скучают спартина засыпают на секунду тоже блога если еще раз если не ним и мы можем прочитать но вот программа как бы мы по логике уже выполнил выполнили что-то почитались канала и больше не хотим и у нас как бы в цикле это ведь удаление есть а мы туда больше не попадаем и вот
00:28:01 - 00:29:11
они все сидят грустные и ждут как называется вот это этот термин есть называется слышу и они они вроде как не заблочен и потому что там кто то может прочитать а он уже как бы планировать да это вот утечка гарантийным и по памяти начинаем течь довольно неприятная ситуация за этим существенно отследить даже пайка иногда в презентацию их там прекрасные примеры где протекает копируем чтобы вы как это так сам создатель хорошо канала собственно их потокобезопасность что мы с ними можем делать чего мы не
00:28:38 - 00:30:01
можем делать вот можем ли мы писать из разных грудь и в канал считать и сразу закрывать канал много раз писать в закрытый канал читайте закрытого канала вот все эти вопросы нет технический канал и потока безопасные нам не нужны имеют x и чтобы что то делать можем из лески грудь и писать из низких читать закрытием канала есть фишка мы закрываем канал но мы можем из него но это условное если мы провяжу каналы мы закрываем канал это означает конец работы с канала в закрытый канал мы по-моему можем писать
00:29:22 - 00:30:45
но это уже никто не вычитает не взять и не можем это мы паникуем ночь на оборотную можно назвать что мы можем читать окей писать и можем закрывать можем если у нас мульти рейтинг идет закрыть во всех мульти райтер их там 10 ну мы закроем канал из него будем все равно чуть читать вам будет уже закрытым ну мы его можем закрыть там дважды трижды и нормально ну нормально не будет но можем плаща и матче мы не можем этого каникулы за запрет такой сделаю скорее просто смысловой что ничего как делать поэтому когда да у нас мульти rating мы
00:30:03 - 00:31:31
сразу же сталкиваемся с тем что мы не можем в тупую закончить записи то есть мы хотим там и контекстом все отменить и оказывается что кто-то должен канал закрывать у нас 10 писателей и видимо надо чтобы кто-то их контролем пол этих писателей чтобы он командовал что я закрыл ребят прекращаете все иначе нельзя скрывать то есть с читателем конечно проще их много они читают и все вас писателями ну если мы канал закроем когда ты хитрее надо как сверху закрывать окей вот мы читаем тоже сказал действительно канал закрыли мы читаем мы
00:30:47 - 00:32:09
читаем значение считаем считаем считаем и вот его закрылись что дальше он бы фрезерованный там много значений осталось ну мы вычитаем все мужики потом возвращаются же из канала само значение этом окне облоя переменная условно закрыт канал или нет да а если вы нужно закрыть что нам какой придет значение из него int и читаем не придет стандартное значение 0 и этот вот spyder на этом все ладно окей так есть у нас свечи кейс а есть у нас собственно select почти такая же конструкция для каналов довольно
00:31:28 - 00:33:01
любопытная как она работает ну на нас работать не как switch кейс он скорее работает на чтение нужно и чтение из канала если например у нас ну на select например использовать для то чтобы закрывать грудь инны через специальный канал закрытия условно то есть там опер записываем спасибо мы закрываем эти барыкин и если мыслить и смогли смогли вычитать оттуда что-то там и закрываем грудь условный рекорд говорим если они там дальше что то делаем это выполняем robot car задуманных функций то да все верно
00:32:14 - 00:33:23
собственно ну да данко канал закрытие тогда как один инструментов синхронизации способов погасить все программам и 4 этих способом там с контекстом с с вычитанием из специального канала закрытия с закрытием самого канала ну и свои группами можно но отлично я только что хотел спрашивать про контекст и про контекст данные но ты уже ответил ну давай все-таки про контекст интересный момент до пакет контекст бантик мы от контекста можем создавать дочерние еще контекст за это дает вам интересные возможности да какие
00:32:49 - 00:34:15
ну во первых это такая штука очень удобно когда у нас есть сервер у нас есть какой-нибудь грейс вы лишь a down и там по контекста типа мы касаемся и мы можем сообщить все во всех грудь и на во всех функций что типа ребята мы все закончили пожалуйста завершать работу и там что-нибудь с этим уже давать не по вине не потеряем данные и вот контекста можно управлять по сути через приложение такая универсальная штука где можно хранить эти значения там передавать например из вида утвари и дальше в хендлеры там
00:33:31 - 00:34:46
каким и условно идишский пользователя там у из авторизации ну такая типа примитивный такой пример у нас прошу ну что там лучше хранить что лучше не хранить все таки наверное мы не все хотим туда класть но она у нас была идея хранить там указатель налоги а чтобы из контекста доставать лагерем везде пользоваться но пока что что-то стремным делом [музыка] миссис carey не знаю что там лучше не хранить это не стал посасывать с этим вопросом в одной компании которая работала под названием а вид там этого
00:34:10 - 00:35:22
кулагер хранили а потом решили что это харам ты больше не храним до клиента вот так что вы можете сделать так же начать хранить потом решим адель или не все не все были недовольны мы уже привыкли там даже обертка было сказали нет ни хорошо передавайте аргументов но собственно мне кажется не очень хорошо в контексте передавать аргумент функции мы тоже можем передавать в контексте всякий хоть и так и делать но так мы дублируем своя ebay да и наверное наверное неправильно нужно все-таки все аргумента передавать
00:34:48 - 00:35:56
в функцию если у вас аргумент много но соберите их в какую-то структуру передавайте контекстные хорошо писать вон текста может что-то потеряться мы не сошли контролирует что-то может быть чего там нет да такая большая мусорка может получится из этого контекста эту да кстати вот ты хорошо объяснил что мы можем контекст передать вниз и потом все отменить но все-таки мы можем создавать от контекста дочерней контексте вот как это мы можем использовать на весь какой-то таймаут на работу функции или там какой-нибудь комментам
00:35:22 - 00:36:38
контекст будет поймал от контекста концевую контекстом разные жить и контекст а вот что происходит мы создали и вот ты говоришь мы в мае не создали контекст главный и мы когда нужен сигнал фирменный сигнал хоп и так далее сигнал антроп мы начинаем отменять а ok и вот мы его передаем куда-то мы создали дочерней контекст и пошли в ну подушечку в сервис какой-то и так далее зачем мы создаем там дочерние контекст и в разные грузины не знаю разные сервисы пошли синхронно почему не используем оба до 11 родительски матерински
00:36:00 - 00:37:16
ну потому что можно преобразовать этот контекст из нас как бы сохраняется мы знаем о вот этом родительском контексте на нам например нужно навесить на работу с базы например что типа если там мы создаем контекста мтс тайм-аут она примерно 2 минуты на минуту или там на n секунд у нас должно этот работать чтобы мы не трогали основной контекст работали как бы со своим контекстом и уже по нему там отменяли работу у там при работе с базой ну да все верно отсюда еще вопрос вот мы в main создали контекст передали
00:36:40 - 00:37:49
в одну функцию создали от него 2 контекст вот этот второй передали создали от него 3 если мы будем отменять свой самый глубокий средний самый главный ну как это будет задействовано отмена она на кого действует отмена осознанного контекста например 3 уровня несколько 3 но если мы от меня 1 то все три каскадно да ну собственно все что вниз и это супер удобно когда мы решили пойти все сервисы по таймауту что-то делать и так далее что мы можем не создавать новые переменные дома просто обернуть и передать с новой контексте
00:37:14 - 00:38:41
отлично так еще есть все лекции у нас такая конструкция дефолт на ней уже начали селектор когда она выполняется ну если мы не зашли не копайтесь интро живых свечу ну собственно она сможет спасти от до блока если у нас не выполнилось ни первое ни второе окей хорошо есть такой еще паттерн иногда мы используем мы передали что-то в грудь in и какая-то работа идет мы хотим узнать что но грудь и ну и там чет полезное делают может они понесли все плохо мы хотим чтобы понимать их убивать и убивать есть такое он такой маленький паттерн
00:37:57 - 00:39:21
может знаешь как называется у нас не возникало такой ситуации но я думаю что это какой то же какой-нибудь канал в котором грудь и на сообщают чона делать на условный такой log on a old все верно я внизу как называть или предполагаю что типа ну какой то лук канал условно что типа мы там не знает как он титов работы выполнили горкина стала но я там степ какое-нибудь там сделала вот это с какими-то данными вот смотрите я что-то полезное делаю и там какой-нибудь как они еще одна грудь и на которой пишет вой читает все из этого лоб канала
00:38:39 - 00:39:56
смотрит на то какая гор не делает там и следить за тем что там типу каждой картины из условные техники solve что не знаю там последние пять минут никакого logo от этой беру then это наверное что то не так до 5 минут от качества мощно но в целом есть совершенно верно это версия горит оба сборках и the heart beat сердцебиение посылаю сообщение что ты там живой если не посылай что надо пересоздать иногда очень полезно такой простенький поттер да как проверить что грудь и ну вообще надо убивать это перестал отвечать
00:39:20 - 00:40:28
значит может что то там пошло не так от меня ей контекст и завершали и все отлично хорошо давай пойдем дальше у нас два интересная собственно объектная модель поближе вот собственно у нас очень интересное наследование которое на интерфейсах построены но типизация не такая как не такая как проката и так далее как она работает как-то устроен что такое общин graphics но если в общем говорить то очень похожи на абстрактный класс в си плюс плюс но это не совсем правда потому что все таки у нас при наследовании мой
00:39:54 - 00:41:13
при там виртуальных классов у нас создается таблица этих виртуальных классов где у нас идет поиск по базовому классу и по его созданным в этой табличке это чистая подмена то есть мы у нас утиная типизация если что-то входит как утка бегает как утка еще и крякать то это точно утка и не важно что и нужны батарейки потому что ну нет крякать все так хорошо есть у нас естественно и пустой интерфейс и дженериков совершенно незаменимая было как это связано с обычным интерфейсом ну пустой интерфейс в общем-то у него
00:40:34 - 00:42:00
по моему нет тоже 2 машины слова где есть где у него указано какой тип у этого интерфейса хранится и данные и когда мы преобразовываем там в какой-то интерфейс вы что-то там и этом полагаемся вот на это и метаданные все так все тогда ну то есть и что может быть пустым интерфейс у нас и [музыка] так что не может вы что не может быть пустым интерфейсу какой тип данных туда нельзя засунуть это не какой-то я не пытаюсь поймать как бы я простое спрашиваю я наверное знаю не понимаю что не может быть пустым но мы есть ли тип
00:41:19 - 00:42:46
данных которые нельзя вот объявить по столько фейсы куда сунешь ошибка компиляции и все все умерли и или можно что угодно как просто станет всему будет соответствовать на структуру мы можем преобразовать к структуре к винту там к прочим простым типом мы тоже можем по моему вот я не помню словить мы можем преобразовать этот слайд можем преобразовать по знаниям и мы все можем это как типа него не могу сказать просто подвоха нет это совершенно спрашиваю простые вещи что угодно мной контракт без условий
00:42:08 - 00:43:30
можно что угодно засунуть никаких там подводных камней пока что нету вот зачем собственно пустой интерфейс нужен generic тут недавно завезли это в пакете почему компилируем языке не пользоваться и не радоваться жизнь интерфейсами торга преобразовывать и дорого преобразовывать да но почему они нам нужны какие-нибудь парочка один кейс то где где минска или с кашами когда мы храним иногда это нужно или когда мы не знаем о хороший кейс когда мы например обмениваться сообщениями и это сообщение условно там есть четыре типа там
00:42:52 - 00:44:11
какой-нибудь тип там экз aктep там consell тип еще какое-нибудь и там зависимости от ответа мы передаем там разные типы там приходишь интерфейс мы каждый раз пытаемся издан откуда нам приходит вот это сообщение пытаемся преобразовать там разные тип данных и например стенам мы по свече пытаемся понять ученом пришло из там какого-нибудь не знаю условного сервиса которые там заявки киньте обрабатывают что типа там заявка там концу заявка язык заявка можно играть с вич инга мы смотрим король надо сделать например данным ставим оно
00:43:34 - 00:44:54
пришло мы конечно пытаемся обычно от этого избежать если это не эра switching где это в принципе нормально но но иногда до полезная штука окей собственно у нас касательно интерфейсов еще есть момент вот модем ошибку проверяем ошибку не на что будет если мы там передаем как какой-нибудь заведем work окуните кастомный указатель на ошибку вернем его будем проверять на ней мал мы иногда будем получать не всегда то что мы ожидаем увидеть ну на там же там с типом будет проблема уже по типу будет сравнивать ноября что это не
00:44:14 - 00:45:39
сработает но не вспомню почему это можно это не сработает напомню что это не сработает но потому что да там как что там уже указатель стоит блюдо газированный нил нал и 3-го страна не сравнивать нил и ним который с другим типом это не это разные милые почему это так вроде как удивительным на самом деле если там вдуматься философию бог не таков удивительно потому что ну ты зарезервировал там память в этой функции панды что-то и там ничего нет но это не просто на ты в этот нам можешь положить только данный тип ошибки а
00:44:57 - 00:46:14
другой не можешь и ты когда как бы показываешь грубо говоря пустой кошелек или просто пустой голые руки то это все не одно и то же у нас там тоже есть такая ну словно типа лиды и шныров который состоит из нескольких полей и там у нас была ошибка мы забыли что у нас типа свою ошибку и мы сравнивали с нилом и такие блин а почему не работает точно сбежали тогда есть разные легкий способ это починить вот ты получил эту ошибку как все-таки человек носил что war мой указательного ли дыры сравнивать с этим
00:45:35 - 00:46:48
указать тогда можно еще вот ррр из проверить надо но через rss до проверить но это ошибки уже проверили кстати ну вот если уж мы чуть-чуть об ошибках говорим но вот у нас есть ну ошибку словно уровня базы данных потом это оборачивается в некоторые слой старриджа это оборачивается уже в бизнес столбику в какой-то you space так далее поднимается и вот ошибка все поднимается поднимаются мы хотим понять вообще то что ну допустим лакируется она там повыше они в самом низу и мы хотим понять что это вот была
00:46:11 - 00:47:26
какая-то конкретная ошибка как ну и мы и оборачиваем как на вот этот оборот сделать какой конструкции чтобы мы получив ошибку там через пять функции могли понять что это ошибка базы данных ну и так далее ну закупку как у вас у нас просто устроенном и патрис bq в контексте храним и мы каждый раз лагерным на всех уровнях то есть мы видим что ошибка я была на уровне база данных это в три страницы видно что это на вот слое старриджа потом эта ошибка поднимается выше там тоже как-то оборачивается меня
00:46:49 - 00:48:02
в этом приложении ну и так далее выходим и смотрим патрис bq что очень происходило какой путь прошел вообще вот эти данные да а вот ты можешь в чем вопрос если ты обернешься ошибку ставишь я там в какой-то рррр вставишь как строку и потом спросишь р-р из то ты уже не получишь что они же от баз данных а я очень хочу я как-то могу это сделать то есть у меня есть способ узнать что это и ошибка от базы данных потом ее обернули во второй способ познать что это вторая ошибка ну я и естественно должен вот объявить как глобальную
00:47:26 - 00:48:46
видимость но у меня есть такая возможность причем прям в базовых пакетах я бы предположил что можно объявить какие-то ошибки на уровне прилла много на разных уровнях и их возвращали и логировать там по-разному и через и русы сравнивать что это за ошибка какого уровня и узнавать о чем ты обернешься одну ошибку в другую ошибку мы студенты сами сталкивались даже не знаю но наш самый наш базовый frt р.ф. ну да это не через бабу вот потом мы можем взять эрэс и он прям все вложенные уровне тебя познает но мы используем
00:48:06 - 00:49:29
fund.ru рф не просто так исправлен у нас если нужно вот это через rss мы просто возвращаем свои ошибки чтобы их ну и лаггер у им что есть но по-другому станок у вас библиотеки красивые хорошо наших тоже есть продуктах команда мой концерт спишь нам нельзя открыто яся но свои ограничения уж ничего не поделаешь ладно хорошо давай наконец доберемся до самого сладкого до грудь им давай пока что это такое к тебе понятого у человека красота в год этаж ну типа можно говорить что-то легко местный thread и говорит что он там
00:48:48 - 00:50:09
весит 2 максимум два килобайта на самом деле неправда исследования показывают что 4 на самом деле если посмотреть там всякие быть марки людей которые за париж но ведь нет ни 24 но в общем-то это легковесный легковесный тренд это можно так рассматривать самое интересное не это не совсем грудь и на а scheduler в блоках которые моделируют эти грудь или о а как их менеджер у это целая моделям gp типа машин грудь или и процесс ну типа машин можно рассмотреть что это реальный по sixt rent a process это типа
00:49:32 - 00:50:51
то что у нас исполняет какая грудь сейчас исполняется который что-то делает и гэга рутиной грудь или в общем-то у каждого но мы создаем там несколько машин of но обычно там на число ядер то который это можно узнать через бумаг sprugs и установить число ядер на и у нас например исполняется грудь и на и как только машина исполняет кого-то грудь и ну у него есть локальная очередь этих грудь и на которой он обрабатывает там подолгу 113 у нас был катер и кооперативной scheduler после годен 13 не кооперативный то что поменялось если
00:50:11 - 00:51:31
мы поставим вот гамак спрос 1 типа одно ядро имитируем то очень важное изменение это у нас будет одна машина не знаю давай пытаем запустили грудь и мы пишем в канал и сразу же из него читаем и поставили одно ядро 1 машину вот что у нас будет до 113 и после ну долгу 113 мы мы ждали бы как-то когда кто-то вычитаем ему и мы создаем еще одну машину чтобы взять работы свою работу и спереди тебе рутины оттуда что-то вычеты а после этого мы в рандомный момент выпьем эту картину и исполняем дальше которая есть вот до 113
00:50:50 - 00:52:27
мы не достаточно умны и мы водоблоки потому что он кладет грудь и ну наша доля и ждет и не проживёт и вычитают а ну а у нас один ну да ну да ему сдохли а как раз после 113 вот у меня на данный момент всё это вы пятница и все да и все будет извините так прервал но просто очень хочет и от быстрее рассказывающего успею задавать вопрос ну там все самое интересное как он прет работу у других как вам допустим у нас есть там не знаю мы все игры используют у нас какой то процесс зал учился ждет чего-то или еще
00:51:39 - 00:52:59
чего-то я другой процесс 1 cellid вот он думает что им делать и он начинает рутины ну да он начинает смотрится как там сначала смотрит в сначала шикарного 61 он смотрит в глобальную очередь грудь и вот это один 61 это прям документации прописаны ты вот это вот число которое заставило месяцев не спать спокойно он смотрит в логово баню очередь в один день вы можете знаешь ответ ну когда-нибудь и здоровье и потом он смотрит в локальную очередь если там ничего нет потом смотрит на других начинают он берёт половину и грудь порог
00:52:18 - 00:53:34
половину свободных беру then у другой машины и начинают их обрабатывать суши я на самом деле прав 61 даже не докапывался но на или 8 вы стали копаться который вроде приоритетное вот глобальная которое может с маленькой вероятностью глянуть еще над полер есть да там все сколы а если он сидит чили дон может украсть у других машин и других городов но нам половину работы сопрет да может украсть вот это прекрасно его великолепным скакнул еще сказать окей сариа в чем у нас такая выгода в отличие от потоков в
00:52:57 - 00:54:23
отличие от процессов быстрые классная потому что смотри когда мы переключаем по sixt rent это все-таки операция на процесс и это тяжело да в рамках горные программы это делаем не задействуя просто есть мы у себя внутри это делаем поэтому это быстро да собственно дублера там слоя очередь и мы никого не трогаем не меняем он с регистрах ничего не чистит мы экономим время да слушай ну раз ты так хорошо знаешь давайте tricky question задам которые обычные сдаю может ты его знаешь вот если мы будем писать разные грудины
00:53:40 - 00:54:57
и там сделаем slide to в общем scheduler все это поймет что ты там хочешь поспать и ничего не зависит а если мы там сделаем гамак strokes один например и импортируем сего прости господи меня за это нам импортировались его и стали писать sisley ну то есть тисков сделать из python он тоже умеет он он он еще умеет чистить засчитанный за сигова нами чести данный но сборщик и там работает ну а как вы до собственном и если мы в тысячи картин начнем спать в секунду до примерно секунду и проспится ну зависит
00:54:18 - 00:55:45
количество наших ядерных самом деле да а почему если он же отдаст вот этот контроль как бы все-таки syscall надо сделать и вот ну в этот момент он уже нельзя прерывать как как в этот момент хак нет честно говоря я не помню как он хакнуть но более он же ну когда что-то создает он же у себя и создает видят эти ссылки на данные и он тоже за ними следит но как это точно устроена я не знаю но он просто нам новые машины будет создавать это до этого более глубоко как бы мы и не хотим сейчас разбирать собственно да окей
00:55:02 - 00:56:29
буквально пару слов хочу услышать у нас есть борщ мусора слава богу на такой как джами какой он у нас в год ну в общем то как он смотрит за объектами через суд если у него ссылок не но никто на него не ссылаясь то это по сути объекту рака никому не нужен у него чистит плюсу сборщики есть интересная система с например вот у нас есть кейс как когда у нас не работает все и си плюс плюс но работает в год например мы создали функции локальную переменную автоматическую и функции возвращает указатель на инт мы
00:55:47 - 00:56:58
создали локальный int и возвращаем ссылку на этот интенсив и плюс плюс еще у нас будет у нас будет проблема потому что мы мы там пытаемся разыменовать указатель который был выделен на стыке они на куче и соответственно все это делаю не работает мы получаем огромный прорез bk кучу геморроя в голову он видит что мы нему не очень умный и говорит но я-то умный поэтому я тебе эту перемену выделю нас на хиппи ее можно вернуть и можно к ней обращаться да и мы можем эту функцию еще использовать это состояние в ней что мы как ты инкремента
00:56:26 - 00:57:33
и декремента счетчик какой-то из нее делать да действительно окей а как механизм на сборке мусор называется но я не знаю это не пума маркер с вы пунктом помечается смотрим черный серый белый потом выкидываю окей ладно ну нет не то чтобы у нас были возможности его настроить как и в режиме написать что мы настроили это вообще в этот такой камень сборщик мусора камень преткновения для хищников и плюсы веков когда они приходят набор для них вот это типа сборщик мусора и сам хочу управлять памятью но мы можем ограничить в масштабах окей
00:57:00 - 00:58:34
мы уже упомянули баттлог собственно тут все понятно есть еще у нас такая штука как lifelog знаешь лишь ты что это такое лай блог ну не в первый раз слышу но чуть более чуть более хитрая штука да как бы когда мы там по коридору ведем столкнулись мы можем как влево вправо влево вправо ходить и люди так обычно до смерти не ходит а программы могут придать noke мы просто взяли два лака и уперлись друг другу и все а при life блоке мы можем их еще размачивать его так бегать и более роль еще и процессор живем
00:57:45 - 00:59:03
кажется что программа что-то делает если даже посмотреть на поедание они учет дел . точно ничего не происходит она просто крутится или все окей а есть еще такое такая штука если мы говорим о конкуренции star вишни или голодание вот а это когда у нас угару then 1 рутина забирает на себя всю работу с этим было связано но после 11 13 так не может быть этот душе g он автоматически выполняется на уровне the scheduler а поэтому раскидываем работающие работают но собственно сам да сам старейшин он про то что до что например у нас мьютекс
00:58:25 - 01:00:01
и гарантирует что кто-то там ну лак будет на критические секции not если scheduler нечестно он может тебе никогда не дать лог новые приводят нас к речке сидят он уже пришел час назад а ему лоб не дали ну ты-то 13 осадок 113 чиниться гоша дам а после он сам это делает а что делает гоша гоша ну по сути в рандомные момент выпить в грудину изучают исполнении стает и в конец да все так иногда нам мы понимаем что мы сейчас залочены мы хотим себя выкинуть когда мы иногда с большим потоком данных работаем иногда хочется
00:59:12 - 01:00:30
подсказать немножечко что давайте попробуем после окей так еще такой вопрос есть у нас такая конструкция de fer вот зачем она нужна можно идеологией она помогает какой концепт реализовывать это крутая штука позволяет она выполняет рабу она исполняет функцию в как при выходе из области видимости в конце функции в конце закону этой фигурные скобки но не у for a forum просто копит эти дыры в конце функции их выполнять но когда мы возвращаем нот на стыке вызову наша функция кладется вот как только мы эту функцию дании
00:59:52 - 01:01:25
добирались мы выполняем бисер и да у меня выполняются в порядке последний вошел первым вышел черствость и зверства кофе даффилд vod-ok все все так а почему обычный ну вот это идиоматические написать взять лоб потом сразу дефран лоб или там за просьбой зефир там клаус сделать ну смотри напустим у нас первое это защита от дурака чтобы мы не забыли это сделать не такое первое второе например от copy-paste коми например у нас функция выполняет там три действия три раза нужно вызвать там и фортом не равно милым и прочих это
01:00:39 - 01:02:10
действия тот не писать каждый раз там если все-таки ошибка это надо закрыть и у нас к каждый этот проверка будет заполняться клаус никакими при условном закрытием он соединение чего-нибудь индус а defer нам позволяет просто при выходе из функций наших перетерли будет выход из функций выполнит все закрытие все нужные действия да окей ну да это еще концепция даже задолго до go появилась дарой инициализация команд оказывается райана их плюсах есть везде что это мьютекс взял бы сразу там передам передаешь как
01:01:30 - 01:02:43
не помню как называется глобальный объект который там тоже вы будет релизе собственно здесь до этой защита от дурака будет 3 факт редька совершит ошибку все верно а если мы передаем в эфире вызываем какую-то функцию передаем туда переменную потом переменную меняем а этот этой labs и так работает что мы можем посмотреть на время работы функции потому что когда мы дошли до демпфером и мы сохранили на стыке вот эти перемены которые мы должны отработать в эфире а потом мы заново вызываемого ну типа
01:02:07 - 01:03:18
возьмет то что вы уже была на стыке так например можно реализовать функции которые считают время работы танец и ну типа differ там и labs и там тайна у он заполнил номиналу на входе функцию когда мы доберемся до деферентом внутри этого и labs и типы настоящая тайна у минус там старт который мы передали бывший тайм-аут и мы получим время работы функции все так окей а как мне тогда я хочу чтобы мутированные данные получить исправить хочу эту ошибку как надо вызов этот отложить несетесь ну вот мы мутировали переменную
01:02:42 - 01:04:01
такую мы у меня меня меня меня и мы в конце мы хотим вызвать там differ и вот туда передать последнее значение не хотим собрать ну можно курить указатель придумать через него это делать но честно не очень понял кейс честно говоря мы хотим чтобы у нас изначально мы хотим в конце простого последнее состояние на в переменной чтобы передал в эфире было последнее состояние переменной каждого на этот момент указатель будет работать можно сделать в ней вызывает функцию на номер тоже можно но это самый самый
01:03:22 - 01:04:47
распространенный даже указатель страну можем конечно даже как-то я бы сказал что это залом вот морович нравились указателя с ними работает кажется ты их понимаешь хочется их молоток и все в мире гвоздь я посоветовал мой указатель на показатель указываешь надо писать на других языках нари а вот еще такой кейсик что вот мы значит объяви объявили ль абду и мы смотрим что если у нас какая-то переменная не знаю чему травма там не знаю на больше ста мы хотим ее значение там 0 сделать и вернуть 0 вот но просто мы написали функцию там x
01:04:06 - 01:05:39
равно store терн x а и differ если x больше 10 x равно 0 и им и нифига вот мы записали стой будет 100 как это изменить мы создали переменную на стыке мы создали перемена на стыке передали он - крым передали по значению это значит мы скопировали изменили у копии если мы хотим изменить первоначальный переменные то нужно указать или используют эту область памяти его дает способе заказать или легкий легкий способ без указателя ну ладно это не большая тайна просто именованные можно переменной а она и
01:04:52 - 01:06:20
называть и тогда он выделит куда под них сразу память а я понял это но без указатель такой самый простой способ модифицировать по-другому просто не получится без указать в принципе окей собственно мы можем ли мы в эфире ловить какие-то паники и как-то лечиться от этого на мы можем эфире помню функция которая как раз ловит парень повернул эту панику а потом делать ну а потом можете быть recover мы тоже типов книги по глоттис ну типа как лечиться от поля делали ковра насколько это часто надо делать
01:05:45 - 01:06:59
0 и коварно каждый палец по и деньгами виду стоит ли это использовать везде или мы должны там беречь ресурс дорогая дорого по easy recovery довольно дорого лучше уже ошибки возвращать не здание не злоупотреблять этим окей такое теперь немножечко больше уже под bass собственно как нам проводить удобно тестирование в голод у нас есть интерфейс и есть структуры автомойки что ли вопрос но у нас есть интерфейс которую условно мы описываем утку у нас есть реальная реализм ну ладно мы описываем старшего
01:06:25 - 01:07:48
него есть какой-то метод клеит апдейт get иди ляг и мы это сделали на базе как проверить что типа бизнес-логики это работает базу не хотели условный мог что типа вот там типа если нам функции там где то мы возвращаем и эти данные нас же эти крутые коды генерации как эти мойки делать можно самим там придумал что она вернет основе этого делать и тестировать чем wolf какой библиотекой мы пользуемся гонками на самом деле мы бишь мне так много мокнут их тестов потому что у нас есть разраб который сделал свою лигу 2
01:07:06 - 01:08:21
интеграционного тестирования и у нас докеров запускаются нужные базы сервисы кафки и прочее и мы прогоняем полный flow работаете по там внутри по вызову ручки ли чё там будет когда придет в кафку и вот смотрим на всю логику можем посмотреть в базу пришло что отправилась таких количествах какие данные какой размер и и так далее интеграционными отмазались на мы пребываем инновационный + q а команда что у нас финансовых фильм тех же если кто-то потерять деньги прилетит очень больно очки поэтому окей окей ну да я кстати
01:07:44 - 01:08:58
тоже люблю гамак используем самый такой деревянный но если горячей не тестах самый деревянный генерит не на этим нравится она просто я просто mockery это стефан в общем есть разные способы они все хороши вам окон где-то прекрасен в своей простоте мне этим нравится сам решаешь клей мог есть там вроде смог который там поднимают маленький редис на самом деле когда тестируешь с минералами не редис да да да окей так смотри вот еще днр на одно из последних домой не будет какой-то большой большого секрета вот вызываем мы например
01:08:24 - 01:09:44
какую-то какой-то структуру передали этом везде по указателю и в каком-то все ее дергают ее метод и она там in crime тебе сколько раз и и вызывали да и как бы от не очень поток безопасно как бы нам сделать ну если не хочется использовать мьютекс это можно использовать этот atomic atomic эти типы они как раз к только безопасны что в мид оксана дорогие все-таки инкремента и декремента мьютекс для этого много чести все так вот я да я думаю с указателями прекрасно понимаешь музыкантами то не будет и школу таких постоянно понимаешь
01:09:10 - 01:10:47
что там тебе нужно брать локи по что иначе листы показателя хочу вас порядочно все менять то все сломается и все будет плохо окей окей давай а вот последние наверно по медовый группы да что это такое ну вы групп это по сути такой счетчик если так можно назвать это структура которая передается всегда только по указателю потому что это условный счетчика рутин когда мы создаем грудины мы делаем бы там один или там сразу это 5 грудь или потом в грудь и никогда у нас мы выполнили мы ставим в эфир начали функции в игру dune
01:09:59 - 01:11:17
что типов сигнал о том что счетчик уменьшив и там после всех грудь эндом врага в которых ждет пока счетчик не станет нулем да окей а есть еще над ними еще такая небольшая накрутка из эти ошибки нужно если твоя грудь и нам об этой ошибке кидаются может тоже знаешь иврит группа она не возвращает ошибку это иногда не очень удобно а r-группу ты то есть а мы тут тоже вы и группа только с ошибками да но она очень удобная тогда нужны всех смогут быстро прям господи как хорошо что кто-то ее написал да она сама смешно
01:10:38 - 01:11:58
если зайти в реализацию но там вот только занимают такая удобная ужас но там дата рживает группу он просто использовать эту функцию чуть ли не у ван сон там это обмазана окей ладно так давай можешь пошарить экран этом хотели посмотреть на сайтик мы не будем какие-то сложные задачи решать потому что господи упаси я не хочу это делать вот собственно супер простой пример я не вижу тут на своих проблем но давай все-таки поищем времени мажу проблем справиться с ним вот мы хотим вывести чисел ковром в рандомном
01:11:18 - 01:12:38
порядке и нас ждет разочарование почему ну она мы инглинги рутина завершится раньше чем успеет вот это все дело отработать я все правильно окей как бы нам а то можешь написать самые-самые наверное тупой такое решение без выбору не выделываться но да но не мне не нравится не выделываться ладно хорошо выйдут а если это конечно хорошо придумал но а если ты с ним устроить запустишь что все г.г. и получится я у нас до вам мы запускать не будем поэтому там чё ты все помнишь началось не помнит лидера памяти все
01:11:59 - 01:13:29
помощь от хорошо ну и мы я часто работал свои группы мне минута что запомнилось уже еще по-хорошему то она будет передавать там да да он [музыка] область видимости он подхватит и ну да и ну типа в идеале если там другая какая-то функция там так далее ну да да все верно в говорит да все правильно и действительно давай почему мы не можем в горят внутрь во фланг поместить что не так произойдет ну не потока безопасным может несколько раз не то ну не не точное число грудь и может быть ну да не мне тот же изначально scheduler кладет
01:12:47 - 01:14:19
потом вызывает может вообще были тебя опять совершенно не исполнится никакой работы окей я думаю тоже проблем не будет если мы скажем что у нас запрещены white группы роскомнадзором мы допустим хотим с помощью канала это сделать когда мы тоже очень просто можно помощью канала сделать тоже синхронизацию какой-нибудь условный нибудь ну канал кнопку [музыка] ок чон bull нам нужно в конце нам нужно вот здесь сказать что типа кают мы запишем что да мы выходим и нам нужно следить за тем чтобы выйти то есть ждать пока он выйдет то у нас
01:13:48 - 01:15:31
будет здесь и [музыка] телек можем мы можем проще мы можем простую но второй цикл жизнь сделать я понял зачем идея но мы можем просто вот канал до сделать по числу она нам может я верю что ты можешь просто по числу что типа вычитывать из него и тип только мы нужно что сто раз записать и наверное мы хотим столько же раз прочитать в общем туда можем даже скопировать сначала циклы for только поставить кости 100 мы стоим потом определенные в [музыка] пишем и потом мы можем скопировать вниз . нам столько же раз
01:14:59 - 01:16:58
надо читать не только он сейчас здесь нужно мы должны учу закрывать не обижать [музыка] ну так то да мы должны закрывать вообще мы можем я предлагал сделать просто вот точно такой же а точно такой же for a и читать просто туда можно только принтера наверно все таки надо в первую грудь и ну вернуть потому что тут другой ой другое другое состояние да она здесь дописать печатать и писать а во второй просто читать ну здесь же он перед создаться это будет другой ай да да ну здесь мы ее сын channel читаем здесь уже все отлично да
01:16:29 - 01:18:08
окей так это тоже будет работать вот это нравится своих группами и с каналом плане но свою группу и конечно много приятней но хочется а если их не всегда можем вот так отдавая пройдемте дальше а то у нас время не так много остается как бы вам понятно есть еще пару вопросов задать устанавливать sharing или еще нужен давай остановим вот чуть чуть чуть город напялили будет окей значит смотри у нас поговорим чуть-чуть операционных системах вот просто есть потоки есть процессы и вот хотелось бы разницу между ними какую-то понять но
01:17:44 - 01:19:11
процесса свой стек своя куча это отдельная считая программа а поток у них общая куча у каждого свой стек они работают с этой куче в рамках одного процесс отлично вот это просто отличная только хочу спросить что у них у каждого свое стать но от этого уже говоришь отлично действительно лака от ропщет а астык уж извините свою хотя можно подглядеть друг другу если если очень нужно они собственно ну да отличие грудь инны от потока ну грудь и на на не по six то есть она в рамках мощной программой у него тоже свой стек и куча там тоже вот
01:18:34 - 01:20:05
и по между ними со общую но это по сути такой же трек только дне basics а внутри год это уже говорил тогда в гараж и дудари но мы хотим от еще раз вспомнить хорошо вот все-таки нас есть процессы есть опись интер процесс коми некий шанс какие знаешь и способы общения между процессами их много давай основными зовем но я помню через pipe и они же типа session и эти политики даваться там по моему можно через какие-то типы иен в переменной америка можно чуть придумать эту степень его сделать там как-то один пиши другой вычитывает на 4
01:19:19 - 01:20:36
больше способов я как-то не разбирал не помню как обменять между процессами но еще у нас есть через unix сокеты ну да через собирает андорра файлы они все на этом у них построены они постоянно пишут читают и еще наверное то что под забор но есть собственно сигналы а ну да да сильно выше вы конвейеры еще да еще есть конвейеры shared memory есть которые до блокирую мы применяем отсюда у нас и так идем в год додон коммуняки structure of memory ммр и хрупком аникеев но собственно вот отсюда из всего этого ада когда ты хочешь всю
01:20:00 - 01:21:20
эту память должен и разлучается то это один из постулатов бог как раз собственная да вот кстати да вопрос когда мы вот считаем из канала villa hotel задайте забыл какой то мы кодили и нам просто нужно оттуда прочитать что ну грудь и на разблокированном нам всегда управляют как какой тип данных лучше передавать по что им наверное дороговато 8 структуру наверно да окно здесь ровно ноль у них есть специально вот этот нулевой указатель который в 0 байт ходит да да все по так то есть не нужно bull класть а нужно классическую структуру ну
01:20:39 - 01:22:00
и не интерфейс некапризно он весит сколько там и там восьмерку он весь я чем указатель указатель на тип это долга видно типу гайд на данные ну да и сама по моему 8 до если вы хотите до отправить ну не надо под пустой интерфейс малым придет дороже чем интер пагода ну так же как 64 да ладно тут понятно и такой вопрос простой есть у нас два процесса у каждый хочет гигабайты против ки у нас гигабайт свободной оперативки в какой-то момент они оба там запрашивают эту память насколько виртуальная память
01:21:22 - 01:22:55
что типа у нас ой ну у нас есть гигабайт реальной памяти выделяется гигабайт виртуальной памяти нести на взаимодействовать но честно говоря очень опия не обладая очень глубокими знаниями в этом вопросе вкус при этом используется виртуальная память ну то есть скорее всего через лоб короче скорее всего будет нужна один процесс уложен но если совок кончится то как бы ггм делим нас давай и все но ну да есть виртуальная память ест резидентная вещи разные ok есть у нас еще контейнеризации есть виртуализации это совсем не одно и
01:22:09 - 01:23:32
то же вот мы сейчас в докер их верните сахар мазали 7 в чем разница но контейнер он имитирует систему внутри себя то есть мы можем подобраться и только через открытые с помощью там доки файла порты которые мы с вами открываем и внутри докера мы ну там в полости монтированы не заходить linux или там не за миндаль и чинить еще и мы если мы поломаем и это поломается только контейнер мы его перезапустим и все живое красивые так это говорит что он полностью miteru это виртуалка тогда что делать ну виртуалка
01:22:50 - 01:24:01
это вот реальная тачка который мы подрываем ся и все то есть это какая-то реальная машину ну да то есть все таки жареная просто против печеного потому что мы зажарили этот слой иначе тебе когда мы snapshot делаем а печеное это вот виртуалку надо поднять надо запустить не просто linux и какие-то утилита которые мы указали табаке файле там прям вот все ставится это не дешево нотариальная тачка все-таки арлета докер запустил блин любую базу вперед погнали или мог еще докер кампус у нас есть который тип
01:23:26 - 01:24:49
оркестра tor а еще uber который там апгрейт вот этого все темы давай все-таки ладно тут поняли давай немножечко еще два слова сетях есть те цепи 10 и есть и т.п. ну за штуки я знаю что я их соединил неправильно это но теперь ди пьета тисе пи трансмишн control protocol и т.п. это у нас dimensions что-то протокол наиболее первая буква общем-то это оба протокола транспортного уровня если нам важные данные их нам нельзя терять то мы используем тисе пи если нам без разницы и может что-то потеряться то используем
01:24:07 - 01:25:31
видите и например при телефонных звонках мы используем и теперь потому что если там чуть чуть там какой-нибудь кадр потеряется черт с ней а если мы пересылаем пароль то наверное мы не очень хотим будет байте потерялся все тошнит гипертекст транспорт протокол это протокол уровня седьмого этапа моим уровень приложения насколько сейчас нет сетевой уровень господи ну смотри физически канальный сетевой транспортные сеанса вы и представления приложения у нас http сетевой дебильный by транспортный ну все верно хоккей такой вопрос ты
01:24:56 - 01:26:35
сразу хорошо отметил да и т.п. нет гарантии что tata грамма дойдут мы не ретро нам в самый с метриками мы их отправляем est рейсинга my не дойдут ну бог с ними нам надо жить дальше мы не готовы умирать а вот данные должны дойти извините гарантия требуется тисе пи вот подсоединились и мы слушаем или читаем и вот нам байты не 15 себе есть какой-то там вызов узнать что байкер перестают что и больше не придут а ну там есть специальные там же этот пакет там есть специальное поле сколько должно найти
01:25:45 - 01:26:51
это какой по счету потер чтобы потом можно было выставить потом они порядке пришли чтобы порядок можно было выстроить и сколько там еще должно дойти ну ну да но в принципе если на той стороне вздох ли и нам не пишут то вот на мне пишут нас есть способ узнать вот он через pink какую-нибудь но это мы поймаем чет молчит там по моему нужны как-то сообщения перед пролез что проверить что живой вообще этот чувак трон заставляет или нет у тебя так не вспомню крупно по сути нет по сути он помер и но мы по той
01:26:18 - 01:27:28
малка отключи всегда это единственный выход но на вообще нет мы не знаю может это просто нам пакеты не пришли ему пришло ему от нас не дошли может мы ему вернуть мы не знаем ok понятно что в тисе пи это просто соки покуда мы пишем и мы не знаем тоже какие ну какой все-таки пленные сообщили сами должны там ну рассказать я имею ввиду на уровне britech на что-то открыли а вы чтите пи мы узнаем какой длины будет сообщение ну да уже есть этот контент link заголовки content and есть длина контент читаем пока она не дошла если все
01:26:57 - 01:28:15
прочитали отлично если нет ну пробуем ретро its ok ввожу на сайте тиньков руб пока мы еще на приложение не перешли полностью и что происходит кратенько как как происходит резолвится айпи адресов ну на сначала мы ввели там нас парсится url то есть мы понимаем что за версия протокола какой то какие данные запрашиваются дальше мы ищем в на в браузере у него есть свой этот хасты чтобы определить там через дойду условный dns браузере мы пытаемся найти какое печник по хостой если не нашли идем к нашему
01:27:36 - 01:28:56
роутер у aig кампус начала есть это системная функция gear вкусные там мы пытаемся найти айпишник если не смогли то мы идем к маршрутизатору и там запрашиваются dns-сервера когда и пешни в тому же угла учим и как-то находим через dns мы разве мы находим айпишник потом мы узнаем по моему mac-адрес потом у нас есть а вообще перед этим перед самим dns сам мы должны узнать сайт https лишь дтп тоже мы пытаемся определить по нашим кашан если сайт работает только на этапе он отправит построен https сам отправишься тебе
01:28:15 - 01:29:38
запрос в ответе что типа я и принимать только защищенное соединение потом после рисового mac-адресов у нас мы устанавливаем по защищенному сиденье соединившей кончик этого там клиент отправляет рассказы про хан шейка я по я понял ok она стране сервисного пей серверах ты получил уже рынок стоит допустим или в случае с губером 1 прилетает запрос как там дальше мы призываем ну мы смотрим на то какой метод какие у нас разрешенные методы смотрим на на пути типа что это вообще наш путь или нет одержим ли мы эти url или нет если
01:28:57 - 01:30:31
нет подключаем 405 если поддерживаем ту как-то серверах обрабатывает случае случае с индексом а кидаем на статику он имеет мы кидаем куда-то но случае сказку бернерс кубань под of понятно через ingress самые diablo 2 тут тоже все хорошо окей давай последний такой открытый вопросик вот у нас есть сервис рекомендации например вот и он начинает писать эти за большой нагрузке вот мы пока не знаю почему как бы нам вообще понять в чем дело что будем делать эти метрики собирать логе смотреть условно там мы можем если там в рейд
01:29:44 - 01:31:12
какой-нибудь большое мы видим что за последние пять минут ну как-то очень правильно мы посмотрели метрики допустим давай в базе мы подходим что сейчас базы узкое место она захлебывается что будем делать дальше пока это первый день работе не знаем эту базу как мы изучаем ну я смотрел бы миграции смотрел бы что-то может подвиснуть у нас плюс еще из метрики сколько длится каждый запрос базу и я бы на него смотрел в первую очередь как среди пород грехи условным помнишь как называется что именно мы где-то медленные запросы
01:30:32 - 01:31:54
отдельный прям для них есть табличка слог ладно окей мы нашли вот какой то запрос медленный допустим ну повесили индексы она стала работать лучше работал а потом сделали маркетинговую кампанию опять клиентов нам навалило уже такого простого и оптимизации нам недостаточно мы все еще хотим чтоб на базе сделать хортице они ровать можно по времени создания записей можем действительно пар тишина сделать я бы даже начал низ partition просто ну у нас есть нагрузка на чтение на запись мы это все еще можем разделить ну можно какой-то
01:31:12 - 01:32:31
трать лимитер придумать смотреть что типа чтоб не так часто к нам обращались и там смотри что не было до соли туда со так ну а мы можем же просто несколько инстансов поднять до одну можно так но я сразу решение типом с редкими тиром там с партициями у нас была эта проблема сразу выйти и ветер повесили сразу портится и придумывались сразу необычный индексы начали придумывать не я просто про ну видишь там и репликацию можем сделать сам partition тоже чуть-чуть шаг 21 даже приседать будем честны не могут быть
01:31:54 - 01:33:10
статически и динамически ну окей какие какие-то знаешь собственно партиции понятно там терн яндекс по моему и какой еще и даже не помню по репликация узнаешь топ 100 есть мастер пасти multimaster вот какие плюсы-минусы знаешь posters но в общем то может быть проблема что плюсы что у нас если отказывает мастер ли он сдохнет мы все перед перегоним на слои воевал он будет ну типа мы не ляжем будем дальше отдавать какие-то ответы проблема синхронизации мастера из ла его я нужно как-то это решать проблема в том
01:32:32 - 01:33:54
что в целом создать слайго есть у нас например за 500 миллиардов секстиллионов записи то сколько мы будем при приказу делать тоже вопрос такой открытый участок что-то как-то хорошо работает но одну дату понимаю ну а синхронизировать как-нибудь как мы приветствуем добавляем записи то нам нужно иду дальше туда добавить при удалении оттуда и оттуда надо удалить отдохнуть и там и там то есть так у меня на одну они все на мастер идут а как называется знать когда мастер умер мы выбираем своего нового мастера как этот
01:33:17 - 01:34:27
процесс переживания падения и сам просто сам термин и не знаю failover так как раз когда мы должны вместо слоев быстро мастер новый назначить налоги у нас была похожая система тоже этим занимались там следили за мастерами своего мы переключали как раз не снится пользоваться чтобы не было проблем у нас окей а может быть синхронно и асинхронно репликация какие плюсы и минусы налагает эти решения синхронная репликация этой мишуры когда мы пока сервис мы дожидаемся от реплик коко что они там жил что они к метнулись ну
01:33:51 - 01:35:09
на синхронно что тяну зеленая может быть проблема что один из них какой-то долги или на старой тачки мы все равно будем опираемся в то что ждем пока долги будет отработает в прессинг раньше не проблема синхронизации то есть и помогут данные не успеть доехать мастер кунг умрет и как бы освоить вертелся взять и все впрочем делать мой над наш трейдов когда можем можем сделать как это был полу мастер это называет как когда ты два мастера поднимающий 2 на случай если первый умер ну а из на второй тоже умер ну сплит brain возможен
01:34:31 - 01:35:47
поднимается мастер понимаете своих данные разные приехали здравствуйте ладно мы сделали репликацию сортирование приложений наш снова работала но опять мы такой хороший сервис сделали что все стал тормозить и мы поговорим черт нам нужно вот харит леметр ты уже упомянул о кей но ноги все равно мы хотим еще что-то поставить чтобы снизить одни и те же данные не постоянно читают зачем намажем да мы можем все класть в каше собственно рейтинг ишь ты говорил про янамари кэш я думаю тоже об этом рассказать это еще
01:35:09 - 01:36:24
быстрее но он не такой надежный как редис например на тип людей но он простой тупой а в одессе у нас проблема разве нет проблемы с нескольких дата-центров да в этом есть проблемы но ради стать хорош для rainmeter он же однопоточный и он роста нет проблемы что типа если мы например у нас есть тост dos-атак у нас 10 компов 10 и знаю одновременных запросов и мы пытаемся изменить одновременно в этом роде си число пришедших клиентов или за того что он однопоточный типа все будет нормально да окей смотри допустим мэтт сделали и
01:35:46 - 01:37:09
опять еще больше нагрузки нам сделали мы понимаем что черт невозможно этот апликэйшен уже тащить надо и его копировать делать много инстансов тут у нас проблема вот мы можем ходить на балансе а можем и печники вот наших инстансов зашить где-то библиотеки но собственно клайн сайт сервиса и можем сделать какие видишь плюсы и минусы у каждого из этих решений ему на зашита и пикники в прямом случае мы идем на балансе родном отдает до печники во втором они у нас зашиты в библиотеке сколько прив и команда там
01:36:27 - 01:37:56
обновлять библиотеку и там уже новое печники проблема что что будет если у нас утечет все эта тема меня ну а ну про при янтарному закрыта у нас до хорошей вода она закрыта естественно надо это учесть проблема производительности какая будет но но балансировщик у нас не тогда мы по сути бомбардировщиком когда у нас свои этот список яичников и мы как-то распределяем как мы пойдем в какую базу но мы уже знаем сразу and point разве не быстрее вот мы ставим кажется что клайд сайт делает нас быстрее мы можем так экономить время
01:37:12 - 01:38:31
ну балансир нас направят на один из под а мы вот сетевых опыт и будем делать если мы наклеить сразу их знаем вау все отлично мы экономим время но еще может же проверить какая нагрузка на каждом из них и распределять нас по более-менее свободным но мы это можем зашить в библиотек вот на грань сядем а это сделали и это плюс мы выиграли в perform если несомненно есть мемас как бы какой вот какой минус слишком много запросов на нас типа мы же должны постоянно определять мы выступаем никак балансе например вас такое
01:37:54 - 01:39:10
приложение что я не знаю может быть тут у минус он больше про момент поддержки то есть а если он шел на балансе рта мы владеем мы можем менять эти пять раз в день все отлично если же у нас все это зашит в клиентской либби мы должны обновить ее и заставить всех обновить ее а не стесняли честно говоря просто думал что типа у нас тоже есть какое-нибудь там динамический конден конфиг который мы меняем айтишники у нас есть какая-либо благо их дофига на год но вайпер нельзя использовать вайпер это зло он не
01:38:34 - 01:39:47
работает как хочется есть эти всякие конфиге есть а как я видел китайскую как будет талибу который более-менее набирает обороты и типа динамические конфигурируются и смотреть на и пишите живые окей ну наверно да мы можем так сделать но как бы здесь мы захотим по-другому конфигурировать эти все равно придется библиотек новые все-таки это шаг вперед она все равно вернемся потому что клайн сайт нам не дает обновляться свободно уже говоришь я поддерживаю две последние версии библиотеки а дальше блокируют но и все
01:39:10 - 01:40:25
всегда не успевают потом приходит к тебе говорят а и зато быстро то есть надо выбирать ну какой-то компромисс полностью уж не будет найден так мне дмитрий говорит что уже пора нам закругляться и в принципе я все что хотел спросил нам еще часа полтора поговори мне так приятно можно было поговорить про архитектуру какие-нибудь я слышал ты говорил you space я вижу чисту архитектуру отсюда мы просто используем ddd ребята я предлагаю как-нибудь устроить ночной собеседование начать в 10 вечера и по 1 и проводить
01:39:49 - 01:41:06
его потом три часа а вот но сегодня сейчас уже 9 вечера а нам надо по отвечать на вопросы поэтому извиняюсь супер сейчас начнем пораньше часиков 6 вот я давайте пока подключаем вопрос которые были в чате за это время во первых начнем судьба к саша саша что скажешь про мишу а потом просим мишу что он скажет про свой так как но могу сказать что вот миша gretsch танками на плюсах писал это где-то чувствуется что он часто показателем прибегает он вот мы говорим про структуры и так далее принципе очень
01:40:27 - 01:41:45
приятно потому что в голову очень много людей входят вот с пхп вчера понабежали тона да я сам стояке был вот иногда в голове сумбур люди вот ну базовые концепции не знают какие-то пробелы в них собственно здесь все хорошо mesh я не увидел каких-то проблем скорее наоборот на golf слишком вот в указателе упарывался что я вот хочу через указатель господину попроще уже можно же чтобы другим не было проще зачем ты держишь в эти указателя где-то немного немножко иногда что-то позабывал я я не могу никак не очень я
01:41:06 - 01:42:27
записывал что в основном все что я хотел спросить у миши знал хорошо как ты очень проактивно я только его спрашиваю вот там про многопоточность он сразу горит go mad спрос я только собирался проект простить им же как все про это рассказывает это тоже очень хороший момент отказа беседуем и тебе начинает сразу же дополнительно дополнить информацию давать ну вот какие то вещи чуть-чуть ты говорил что вот у нас тут библиотеки я поэтому сам не знаю ну наверное следует это посмотреть это некоторые до минус
01:41:46 - 01:42:53
пошел бы посмотрел бы так в целом окей все то есть про тоже про то как schedule и работает ты хорошо знаешь даже вот какие то вещи видно что смотришь про 1161 я например смотрел данного ну да бывает смотришь а что как очень интересно вот про то как собственно но момент когда ты добавил искал что-то как масштабировать но тоже собственно видно что ордера ванием сразу знаешь работу правда вот репликации этапа счет не назвал хотят 1 шаг репликации отвернул полегче чем сортирования я просто каждый раз два
01:42:20 - 01:43:42
года думаю репликации это как-то у меня есть вот эта линза в голове вот этот блок что типа этаж нужно кучу данных скопировать и что-то не хочется как то хочется по-другому это сделать ну понятно ну да вот сервер клайд серу сайт клайд сайт ну чуть чуть послабее то говорил у нас все таки мы не три часа если мы там рисовались из них дизайн возможно там что-нибудь еще интересное по вылезала бы атак но вот мы на позицию middle условно говорили но на мидл вообще ты знаешь довольно крепко все отлично прямом эфире как тут всё крепко но вот я
01:43:02 - 01:44:24
в инфраструктуру команде работаю и у нас все-таки платформе папа больше требования чем вот в продуктовых это так чисто можно сказать я вот не вижу каких-то проблем что пришёл в мир стал бы побеседовать с тобой ты что не знаешь нет он прекрасно вот знает вот go ну понимает сколько весть какие структуры понимают что то есть рефлексия как все оптимизировать то есть ну человек постоянно работает с кодом это классно ну наверное вот чуть-чуть мы коснулись вот вопросов построения вообще архитектуры наверно можно как-то еще
01:43:49 - 01:45:00
развиться на 5 метод тронули немного поэтому я не могу сказать что он здесь слова сказать не совсем не все паттерны сразу в общем у нас будет сейчас несколько минут на вопросы blitz вот советы как готовиться к system design это не blitz но да это ну вот вопрос из чата короче вот за время пока мы говорили на педали как вопросы буду озвучивать вы отвечать если мишу захочется готовится и не знаю можно наверно прочитать таких лиц пару статей как готовиться к system design вот это вам скажет что надо
01:44:24 - 01:45:53
спроектировать ленту twitter самый популярный вопрос до 2 наверное ленту нотификации просто сервис нотификации и там на самом деле вы упрётесь в то что и синхронно все не работает и все должны работать синхронно и всплывает словаков к и там сервер микро сервисиз . его сайт и там разные интересные паттерна всякие кирка брейкеры всякое понимание что вам там если вы во многих дат в центрах вам нужно там один патент ность например просто запросы могут дублироваться ну и так далее вот ну не знаю микро сервисе своего
01:45:12 - 01:46:23
посмотрите книгу не покупайте на русском ужасно переведено я купил очень пожалела очень дорогая плохая то перевод ужасный совершенно окей да вопросы по р-н лучше использовать готовое решение или писать свое и вообще спрашивает лена советских power-on такой вопрос честно говоря мне кажется старым это такое я бы сказал что это плотный кажется это не надо спуск пишите с сами руками пока вы не контролируете это лучше чем писали чем использовать какой-нибудь гором или еще чуть о том духе я поддерживаю если вам у вас горят ссылки
01:45:47 - 01:47:04
нужно срочно прототипы завтра review наверное да а так в целом вы наверное умеете писать запросы искренне такой тяжелый а профилировать воронку не сможете пишете сами да про задач с каналами я я сейчас не заметил было ли такое решение или нет но можно ли в качестве мьютекс и использовать один канал в которой канал короче сместимся один где булево значение просто будет так если бы у нас не было мьютекс of можно было так делать но это не идиоматические разработчик хотят быть отдыхать и вы тоже хотите вот как в день когда мы умны
01:46:26 - 01:47:44
и мы можем все указатели понять зачем в день когда мы не спали ночь вот когда у вас сто пятьсот каналов но тяжело разбираться пожалейте себя и других но в целом прочно тем лучше да а тогда можно без проблем вопрос абстрактной ну ладно независимо это можно считать вопросом как скоро мы все перекатился в раз вот вопрос такой был в чате тогда мы станем проверять все на потому что в 1 tiny toon on и поэтому когда мы станем то туда да теперь вопрос относительно найма есть мнение что сейчас больше внимательный ловчим джиннов если
01:47:05 - 01:48:28
приходишь на к лучше сразу учиться доминго возможно ли как дойти до метла не имея коммерческого опыта как понять что medal если работа с углом вот такой вопрос дмитрию написать чтобы я вопрос ответ будет частях я анар нас могу взять на себя это во-первых невозможно стать углом не работая на год вот хотелось бы начать с этого и сказать этого очень четко во вторых но чтобы как можно быстрее прокачиваться приходите к нам на ментовскую программу один из кейсов который мы закрываем это как раз дорасти до доме план и а чуть попозже я
01:47:46 - 01:49:06
об этом расскажу нас уже есть порубят который так сделали так я могу сказать еще одни много дополнить там можно листать не дeлoм не являюсь нилом на год смотря какая компания например индексами нанимает middle of no go который например не знают гор но это отдельные команды который направит не знаешь хорошо систем да за это вообще во всем крутую те там пять лет опыта на плюсов но год они так хорошо помнишь они говорят да у тень за неделю выучишь ты идешь medlock это такой кейс когда который куда то что ты типа джун и такой
01:48:26 - 01:49:38
ну давайте на метла попробовав не так не получится ну не бывает такого что вообще без коммерческого опыта берут с разными 2 или что такое такого надо ну например если вы супер крутой сеньор на плюсах и у вас круто или существует не согласен что донести знания всей к системы то но новый язык ты за неделю уже даже если ты супер крутой сеньор то мне кажется выучишь go-go как раз насколько понимаю1 ставка это потом он быстро учится вот на них поводу маленький да это анекдот про таблетки языками программирования это сишарп то
01:49:02 - 01:50:25
вы выучили его но лишь немножко смерти еще 100000 таблеток большие же языки ва джалла плюсы огромные ужин sharp а-ага маленький ты смотришь его уже ты через месяц многое знаешь прям реально много урок go документация на готом все эти примеры вот это всё вот эта тема наш все рассказывается в общем класс у нас тут еще привет от сбер мегамаркета с 1 мегамаркета тоже привет привет и стейков да да в общем давайте тогда как сделаем я сейчас немного расскажу вторую часть приза и про нашу ментовскую программу если у вас
01:49:43 - 01:51:11
будут вопросы которые сейчас будут возникать насчет других у или насчет технологии или ещё что-то такое вы можете написать в чат мы их разберём поставок я расскажу вот про ментовскую программу всякую штуку вы останетесь пожалуйста если вдруг будут вопросы по коду я все-таки уже продакт-менеджер и как бы уже на такое отвечать и смогу vod-ok тогда можете можно просто попросить выключить в бки если это возможно после больша-ая миша дай мне has to do все теперь ты хост я теперь хост супер до ментовской программы это слайд
01:50:30 - 01:51:43
означало это занятие мы суть в том что это занятие 1 на 1 с ментором из какой-то большой крупной компании по индивидуальной программе с дамочками и здесь есть много кейсов вы можете либо переходить с одного языка на гошку либо увеличивать great интригу ложки и так далее вообще как проходит обучение сначала у вас есть h1 интервью это фактически мог интервью то есть как будто вот так то что мы видели сейчас такая демоверсия первого занятия было в каком смысле сначала interviewer грубо говоря вас сканирует смотрят что у вас какие
01:51:14 - 01:52:19
сильные стороны какие слабые стороны и потом после этого занятия составляет программу как вы будете прокачивать какие-то свои слабые стороны начиная со второго занятия уже вы идете просто степ бай степ от одной теме к другой по программе но здесь самое главное это что отмечает меньше например в том что нет какого-то четкого срока то есть вы можете останавливаться на теме пока вы эту тему просто чувствуете в конце есть финальный интервью который проходит по вашему желанию если вы хотите потом пасу
01:51:47 - 01:52:52
ментовской программе сменить работу и соответственно в самом конце тоже мы можем помочь вам с трудоустройством это составить резюме жку можем найти рефералов практически любой российской эти компании и так далее для кого это это действующий go разработчики которые хотят увеличить свой грей например жду на доме blaas влада сеньора или разработчик которые приходят приходиться на языка на другой например ребята которые хотят приходить печки на кошку тоже их довольно много у нас и приходите всех руки до есть несколько
01:52:20 - 01:53:31
кейсов несколько отзывов вот собственно первый это герман это его аватар все играми он захотел делиться своей picture он после нашей программе сменил работу с увеличением запоя он занимался где-то около 2 месяцев сереже промашки нам если кто-то смотрел видео предыдущее трансляции то там как раз сел серёжа и то что он отметил то что он сбил работа после нас и что нет никто никого не гонят все добиваются того чтобы главное чтобы вы поняли тему и рустам рустам как раз человек который учил сначала самостоятельно кошку потом
01:52:55 - 01:54:14
захотел устраиваться на работу и у него были какие-то белые пятна которые ему нужно было закрыть то есть мне нужен был полноценный курс ему нужно было именно крис какие-то промахи которые у него были сколько это стоит одна одно занятия стоит три с половиной тысячи три с половиной тыс это час-полтора примерно то есть никто не будет прорываться на полуслове все будут до рассказывать тему я не знаю иного случая когда метра такой все быть часы и пойдем платите вы конкретно пока чувствуете пользу то есть за 1 занятие не нужно
01:53:36 - 01:54:39
платить сто пятьдесят миллионов тысяч сразу брать кредиты в этот еще нет просто пока чувствуете пользу но для тех кто на вами наряда как я уже говорил очень ужасный простите пожалуйста в правом нижнем углу у кого нет в бой пожалуйста есть qr-код на нашего бота там есть такая команда get ментор вы нажимаете на эту команду и оставляйте заявку когда вам напишет менеджер вы говорите промо-код я с вебинаром с вебинара и 1 занеся будет стоить для станет респон бич вот как так то есть если быть точным
01:54:08 - 01:55:22
то вот документов класс нажимаем junior я допустил все после этого я снова заявку и наш менеджер и [музыка] я поступил все как-то так это давайте я остановлю трансляцию давайте оставим трансляцию посмотришь в чатике происходят вопрос как скоро прибыльный расстройств вопрос неверно прочитали эту единицу в том что вакансии очень мало джунов на гоа ok ссори ребята можете вернуться пожалуйста которые саша и миша да тут утверждают что мало вакансии джуна нога и что с этим сделать мало ли их где их искать и вот это все
01:54:44 - 01:56:21
скажу свой опыт как я вижу сейчас в принципе в принципе вакансия с целым и джордану джону связи с последними событиями последних месяцев людей много вышла на рынок потому что там анонсировали разные и вроде даже применили всякие бонусы вроде потёк вроде как это даже не утка а правда мне говорят поэтому он действительно junior не всегда очень большая конкуренция к сожалению для джуниора флот зато потом когда вы же до мидла хотят разработчика дорастаете уже за вас начинают сражаться как раз вот этот пресловутой что войти это рынок
01:55:35 - 01:56:47
беседуем ого соискателя вами квартира пишу того я не хочу с тобой общаться мне счас лень вот ну-ну-ну-ну джона да действительно мало вакансии мало вакансий на куб почему потому что вот что может делать junior если мешает получать техническое образование разработчика и ну вот вы приводите всегда тогда это тяжелее если у вас нет технического образования не было ходишь и тянет фундамента то есть но эта ставка на вас и получается вы скорее всего ну джейсон и будете грузить первое время ну в базу достать положить ваши ну вот такие
01:56:11 - 01:57:26
сложные задачи которые кто-то должен делать а от go уже обычно хотят побольше ты не только должен даже эти джейсон из тех положить надо уже какой-то конкурсе применить и так далее поэтому уже пишут middle ну на всякий случай сейчас часто я даже не сказал что многие medley они там что-то супер такое умеют но простой человек вообще но вот он спички пришел спит он он не значит такой указатель он не знает что такое асинхронный запуске слез спички с junior пришел или только выучился вот выучит структур
01:56:50 - 01:58:01
данных так далее и ты с ним в квест идешь на два месяца он или научиться или не nawms еще не дай бог на лоб силу воли скажет я все ну да есть проблемы вам лучше сразу как-то подкачаться попробовать на мидла пройти но как сказал действительно правда дмитрий если у вас вообще нет опыта то этот квест тоже не получится и надо искать инженеры вакансию это сложнее но это было сложнее на любой язык честно говоря но ей у меня история тоже ну я считаю что очень сложно сейчас ты была всегда стать женой потому что уже на все таки очень
01:57:25 - 01:58:36
ограниченные вот это зона ответственности и компании хочется делать продукт делать деньги а брать джона это дорого дождь его нужно еще учить еще а если он еще ничего не умеет и мы как бы на что мы потратили деньги и он медленно учится и поэтому сюда такое там есть же есть правило что на команду не более тридцати процентов джунов что не каждая команда готова брать джуна то есть это же отдельные заказу компании сейчас еще появились отёк программы как у быка например к никогда набирать на стажировку какую щенки
01:58:00 - 01:59:07
тиньков этот сингл старт какого зона по моему у вас есть этот ванда и offer и там прочих какие-то приколы для джиннов lavita по-моему такая же тема школа 21 индекс савская вот эта академия тоже там но там тоже нужно понимаешь так же нам нужно много чего сделать и я джина на голод требуют достаточно много то что 1 1 задачи были там все-таки не прикладывают jison и а мне решили по приколу дать там и сделать мастерских для работы с базой скучно давайте посмотрим что ты сможешь сделать медики ну прикольно ты смог я такой спасибо
01:58:35 - 01:59:46
грех это была моя задача на джона тянутся время слышите можно еще я вспомнил тот одну буквально на полминутки да но очень важно если вот но человек на джуниорс композицию ищет важно понимать что важны все таки дала не то что какие-то знаешь структур данных или нет ли работодатель ищет все-таки дефицит специалистов он просто пытается найти возможность вам заплатить деньги вас нанять если вы не демонстрируйте он вас не понимает я советую к этому так относиться это правда очень сильно помогает если ты
01:59:11 - 02:00:13
считаешь что перси беседуем и и совершенно обессилев тебя он хочется нанять от правда он стекла хочет вон от вот пытаться до решить его проблемы надо пытаться смотреть ну на код как на решение проблемы сразу вот какие то демонстрировать качество не просто я выучил там синтаксис а я могу на нем что-то решать я понимаю область применения я могу не только подписать ну и поговорить о нем и о том зачем он вообще нужен и как проблемы бизнеса решает это вас неимоверно в глазах поднимает multiply целует вашу пользу но
01:59:43 - 02:00:42
и помогает получить работу ну и на самом деле и дальше расти там ты не станешь из сеньор мы так далее если ты просто ну подпишись только ты не гений вот и не пишет какие-то очень низком уровне вы и вещи вот в продуктовых компаниях от тебя хотят чтобы ты понимал как-то отражается я написал код что это значит сроки доставки ну вообще на самом деле когда программист понимают бизнес это супер круто это супер увеличивать его цен на сколько я знаю но здесь можно закопаться стать продуктов случайно вы хоть до
02:00:12 - 02:01:21
в общем если вопросов больше нет тогда я думаю мы будем закругляться хочу напомнить вам скорее всего сейчас пришлось сообщение с тем что вот с той же информация относительно дона который я сказал если хотите получить от пальцев к 12 ночи пожалуйста вот ребятам большое спасибо я надеюсь что и ребята понравилось кто смотрел и кто участвовал мне очень понравилась вот все тогда видеозапись запись этого мы выложим где-то на сочи неделя там что мы хотим смонтировать они так в голом виде выкладывать спасибо большое что смотрели
02:00:47 - 02:02:03
и всем пока всем пока
02:01:26 - 02:01:34