en
Feedback
PJ Dev

PJ Dev

Open in Telegram

Для связи @Toksi86 История в прямом эфире о том, как становлюсь программистом, изменяю свои привычки и улучшаю качество жизни

Show more
427
Subscribers
No data24 hours
-37 days
-530 days
Posts Archive
Перевариваю в голове довольно большой объём новых знаний, которые получил за последнюю пару недель, и понимаю, что немного выдохся с физической точки зрения (ещё простуда никак не пройдёт, все кругом болеют), но очень замотивирован с точки зрения учебы. Наконец завершил курс по Git от ЯП. И сейчас пишу на него обзор. Хотел опубликовать его на Habr, но проштудировав правила и рекомендации модераторов, изучив опыт коллег, понял, что там этого делать не стоит. Посты с отзывами на платформе вызывают в основном негативную реакцию. Поэтому рассматриваю альтернативные платформы, а на Habr буду писать что-нибудь умное, когда опыта наберусь. Еще из новостей: уже 18 октября начинается основное обучение в Школе21. Предварительно будет установочная встреча, где расскажут все подробности, а пока только дату старта объявили. Я еще раз встретился со студентами с предыдущего потока, которые уже учатся на основном обучении, и большинство из них классные ребята с которыми очень интересно. Когда у тебя есть сообщество с соответствующими интересами - это очень помогает и даёт мотивации. Наверное, это самый большой плюс школы. #Мысливслух #Школа21

Дочитал я, в общем, первые четыре главы книги "Asyncio и конкурентное программирование на Python", которые рекомендует осилить автор. И сел думать: "А что дальше... и где это применять?!" Почитал еще другие ресурсы, а там пишут, что асинхронное программирование чаще всего используется в крупных микросервисах, что логично. Ведь там возникает множество различных запросов, а скорость выполнения ограничена скоростью ввода\вывода (IO-bound). Еще пишут, что асинхронное программирование часто используют в парсерах и в ТГ ботах. А у меня таких проектов, к сожалению, нет. И тут я понял, о чем мне говорили в комментариях: что рано я туда полез и есть множество вещей более важных на данном этапе развития, которые стоит освоить в первую очередь. В любом случае это был полезный опыт. Я стал лучше понимать, как работает процессор, что такое процессы и потоки. В чем разница между IO-bound и CPU-bound. Да и в целом для чего нужен асинхронный код и где его можно использовать, а где он вовсе может навредить. Уверен, что в будущем мне эти знания пригодятся. И так план на ближайшие пару недель: 1. Завершить курс по GIT, который я давно начал, но бросил из-за более приоритетных дел. Постараюсь написать на него обзор с публикацией на Habr. Будет мой первый пост. 2. Я вступил в сообщество "Ботаним с Диджитализируй!", где ребята разбирают умные книги, касающиеся разработки. Пойду по их следам, и начну читать книгу "PostgreSQL Основы языка SQL : учебное пособие Евгений Моргунов". Постараюсь побольше попрактиковаться с SQL, может как-то более широко внедрить его в свою игру или напишу какой-нибудь новый учебный проект под это дело. Автор клуба предлагает работать с БД через Docker, заодно вспомню что такое контейнеры. #программирование #python #asyncio #книги

После собеседования я спросил у Антона, насколько он был честен в своей оценке. По его словам, мои знания core-python на хорошем уровне, но этого мало для того, чтобы начать работать, да еще и есть что подтянуть. А дальше он дал рекомендации: 1. Разобраться с асинхронным и конкурентным программированием. 2. Изучить SQL на более серьёзном уровне. Я решил начать с асинхронного программирования, и опять же, по рекомендации Антона, начал изучение с книги "Asyncio и конкурентное программирование на Python" автора Мэтью Фаулер. Книга действительно популярная, не раз мне её рекомендовали. Все началось с простых понятий: процесс, поток, конкуренция и параллелизм. Далее тебя знакомят с командами async и await. Объясняют, что такое GIL, а дальше начинаются сложности. Автор предлагает написать свой асинхронный эхо-сервер с неблокирующими сокетами и использованием модуля selectors для построения цикла событий сокетов. Тут потребовалась вся моя концентрация, но многое до сих пор осталось непонятным. Нужно больше практики. Автор рекомендует обязательно осилить 4 главы, которые являются базой, а дальше пользоваться книгой по необходимости. Так что в планах закончить четвертую главу и написать что-то собственное на базе изученной теории. #программирование #python #asyncio

Я принял участие в мок-собеседовании на позицию Junior Python разработчик. Сразу хочу отметить, что это не полноценное собеседование, а лишь его часть. Обычно собеседования длятся дольше, но это видео все равно поможет вам примерно понять, как это устроено. Хочу отметить, что меня очень порадовал чат. Зрители прям поддерживали и говорили много добрых слов. Жаль, что у меня не было возможности читать сообщения во время прямого эфира: хотелось бы на многие вопросы ответить. Так что если кто-то есть с трансляции, да и не обязательно с трансляции, пишите свои вопросы в комментариях и я вам отвечу. Запись можно посмотреть по ссылке. Ранее я писал, что запись будет доступна только тем, кто зарегистрировался, но оказалось, что видео выложили в открытый доступ. P.s. отдельное спасибо всем за поддержку и пожелания побыстрей поправить свое здоровье. Вчера пришлось закидаться таблетками, забрызгаться спреями, и это помогло. #собеседование #программирование #python

Через час начнется моё публичное собеседование. Если кто-то еще не зарегистрировался, то это все еще можно сделать по ссылке. Запись будет доступна только тем, кто зарегистрировался. Еще из новостей — я приболел. Последние несколько дней вместо того, чтобы готовиться, я притворялся овощем. Состояние все еще далеко не самое лучшее, но что есть, то есть. Закинулся таблетками и готовлюсь выступать. Это наверное уже моя традиционная проблема в начале учебного года: дети возвращаются с отпусков, собираются в группы, и обязательно кто-нибудь приходит с ОРВИ, а потом начинается. В общем, сижу, стараюсь не волноваться. Надеюсь выступлю достойно. P.s. всем спасибо за добрые слова и пожелания, очень приятно :) #собеседование #мысливслух #программирование

Сегодня день программиста или другими словами 256 день года. Большинство участников моего канала так или иначе связаны с программированием, так что поздравляю всех причастных с профессиональным праздником. И вот вам небольшое поздравление от YANDEXGPT, которое написано для нашего сообщества: Привет, друзья! Сегодня мы отмечаем наш общий праздник – День программиста! Мы в нашем телеграм-канале знаем, насколько программирование не простая работа. Скорее это стиль жизни. Это значит быть всегда в поиске новых знаний, покорять вершины и делать мир лучше. Мы гордимся тем, что знакомы со всеми вами и можем наблюдать за вашими успехами! В этот день хотим пожелать вам крепкого здоровья, творческого вдохновения, интересных задач и блестящих идей. Пусть профессионализм растет, а близкие всегда будут поддерживать и понимать ваше стремление к новому и неизведанному. С Днем программиста, друзья! Ура! P.s. по-моему очень хорошо и правильно сказано. С праздником! 🎉 🎉 🎉

Для подготовки к публичному собеседованию я попросил двух своих знакомых, которые являются опытными разработчиками со стажем работы более пяти лет, провести для меня подобие собеседования. Я спросил у них, как должно выглядеть собеседование на их взгляд, и попросил их провести такое для меня. После чего запросил обратную связь. Если коротко, то оба сказали, что не взяли бы меня на работу, но есть некоторые но. Первый думал, что я претендую на позицию middle-разработчика и мы с ним разговаривали в основном об архитектурных решениях, проблемах и как бы я их решал. Это далось непросто: на некоторые вопросы у меня не было ответов. Позже мы с ним разобрали, как было бы лучше решить эти проблемы, и по итогу он сказал, что пока рано. Говорит, что надо набраться опыта. Я уточнил у него, точно ли джун должен решать задачи подобного рода, и тут мы поняли, что изначально не договорились о позиции. Он провёл для меня собеседование ровно то же, что проводил, когда собеседовал сотрудников в компанию, где работает, а у них там только middle позиции. В итоге он уточнил, что взял бы меня на работу на роль джуна. И даже сказал, что предложил бы оффер с зарплатой в диапазоне 80-100 тысяч рублей после стажировки. Второй наоборот - задавал, скорее, технические вопросы. Как что устроено, какие бывают типы данных, функции, классы, ООП, Фреймворки, SQL. Спрашивал, какие я проекты делал и т.п. Это было больше похоже на собеседование на junior позицию. От него я получил отказ с аргументами, что сейчас конкуренция очень высокая, а у меня мало опыта работы с базами данных и асинхронным программированием. Сказал, что без этих знаний, скорей всего, найти работу будет очень трудно. Порекомендовал сделать какой-нибудь pet-проект на fastAPI в связке с Alchemy. И, в целом, больше времени уделить каким-то собственными уникальными проектам. Звучит немного грустно, но полностью справедливо. Как только я закончил курс ЯП, первой моей задачей было начать изучать асинхронное программирование, и, видимо, не зря. Я как раз начинал писать пет-проект именно на этом стэке, но переключился на проект акселерации, чтобы поработать в команде, а позже попал в Школу21, где нужно было писать уже на Си. В любом случае это все полезный опыт, который позволяет взглянуть на ситуацию более объективно. Дождусь начала обучения в школе21, оценю нагрузку и посмотрю, смогу ли я заниматься изучением двух языков параллельно. #программирование #собеседование #мысливслух

На ночь глядя пришло такое письмо. Вроде как пройден тяжелый путь и надо радоваться, но я так до конца и не определился со св
На ночь глядя пришло такое письмо. Вроде как пройден тяжелый путь и надо радоваться, но я так до конца и не определился со своими мыслями на счёт школы. Несколько раз начинал писать свой отзыв по поводу Школы21, но так и не смог его нормально структурировать и привести в адекватный вид. Позже точно допишу и опубликую. Единственное, что меня смутило в школе — это полное отсутствие старших наставников или учителей, да кого угодно, кто мог бы подсказать правильное хорошее решение возникающих проблем. Все остальное, конечно, очень радовало. В общем, думаю, что я все-таки начну учёбу и посмотрю в живую, как это все будет происходить на основном обучении. Уйти всегда можно, а позже жалеть что не попробую - глупо. Так что отдыхаю, набираюсь сил - впереди меня ждет, может быть, менее интенсивный, но еще более трудный путь. #Программирование #Школа21

Тут так вышло, что меня пригласили пройти собеседование, но не обычное, а публичное, да еще и в прямом эфире. Идея: показать начинающим специалистам, таким как я, как проходят собеседования на Junior позицию Python разработчики. Для меня же это будет новым испытанием: публичные собеседования я еще не проходил. Может кого из зрителей заинтересую как специалист, и на работу позовут. В качестве площадки будет выступать Яндекс.Практикум, а все участники приглашенные. В качестве веудщего выступит Наташа Павлова — тимлид в команде разработки на Python, в качестве собеседующего Антон Артиков — Middle Python developer в «Тензоре». Ну и соответственно в качестве претендента на позицию буду я Константин Шперлинг. Если будет интересно понаблюдать за мной в прямом эфире, то вот ссылка на регистрацию. Запись будет доступна для всех, кто зарегистрируется (придёт на почту). #Программирование #Собеседование #Junior

Недавно я вам рассказывал, что участвовал в подкасте в качестве приглашённого гостя. Так вот, он вышел под названием "Как найти себя в айти". Во время каста мы поговорили о осознанной смене профессии и организации этого процесса. Обсудили вопросы: "Как понять, какая из множество профессий твоя" и "Как определиться с выбором". Делюсь с вами ссылкой на Яндекс.Музыку, где его можно послушать. Если кому-то не удобно на Яндексе, то вот ссылка на podcast.ru, где можно выбрать другие сервисы или послушать прям там. Сейчас уже вышло четыре выпуска, включая тот, где я участвовал, а всего их будет восемь. P.s. это был мой первый опыт участия в подкасте, который был омрачен соседями, сверлящими стены. Однако монтажеры очень качественно провели свою работу и ни одного лишнего звука в запись не попало, но из-за этого пришлось вырезать несколько кусочков моей речи. Тем не менее, это был очень интересный опыт, который я бы с радостью повторил. P.s.s. если кто-то послушал, расскажите как вам) #ЯндексПрактикум #АйТи #Подкаст

Как бы от этого не было грустно, но надо признать, что лето подошло к концу. Осень уже полноправно вступила в свою силу: лист
Как бы от этого не было грустно, но надо признать, что лето подошло к концу. Осень уже полноправно вступила в свою силу: листья на деревьях желтеют, льют дожди и дуют ветры. А уже буквально через пару месяцев Сургут потонет в снегу. В целом лето получилось очень продуктивным: — Июнь: провел серию лекций по программированию на базе Minecraft для детей в школьном лагере. — Июль: участвовал в программе акселерации после обучения в Яндекс Практикуме. — Август: прошёл интенсив в Школе21 от Сбера. Также лето оказалось очень удачным на знакомства: в моем окружении появилось много новых, классных людей. Это были, как личные знакомства, так и знакомства в акселерации и школе, ну и конечно же в моем блоге с некоторыми из вас, кто недавно присоединился к нашему сообществу. Еще в начале лета нас было меньше ста человек в сообществе, а сейчас уже больше двухсот. Спасибо вам больше за поддержку и общение! За лето я провёл около 3 собеседований на вакансию разработчика, но в каждом из них получил отказ, и все они были по одной причине — отсутствие уникальных пет проектов (учебные никому не нужны). В тоже время я провёл около 6 собеседований в разные школы и колледж на должность педагога. Каждое из них закончилось оффером, но я отказался: мне удалось договориться о повышении часовой ставки на текущей работе. В целом работодатель во многом пошёл на уступки и старается создать комфортные условия. #мысливслух

Скоро будет уже полгода, как я пассивно изучаю английский: через мобильное приложение, тексты песен и техническую документаци
Скоро будет уже полгода, как я пассивно изучаю английский: через мобильное приложение, тексты песен и техническую документацию. Еще пробовал смотреть сериалы, но пока ещё рано. Да мой прогресс не очень высокий, но это расплата за пассивность. Изучение английского для меня почти ничего не стоит. Я занимаюсь этим в свободное время, короткими набегам, но что важно — каждый день. Несмотря на такую пассивность, у меня есть ощущение прогресса. Я уже понимаю некоторую базовую грамматику, и стабильно сдаю тестирование на уровень А2 - Elementary, некоторые тесты даже показали результат B1 - Pre-Intermediate. Я уже рассказывал, что занимаюсь через приложение Duolingo, и приглашал вас учиться вместе со мной, но на канале появилось много новых людей, которые об этом, возможно, не знают. Поэтому дублирую реферальную ссылку, по которой вы сможете присоединиться ко мне — будем изучать английский вместе. Мне нравится, что это приложение активно развивается и полностью бесплатное, даже рекламы нет. Кроме того, с недавних пор там появились парные задания, которые помогают поддерживать мотивацию в изучении языка: не хочется подводить товарища по команде. #саморазвитие #английский

Я немного отдохнул и вновь хочу кодить, но теперь не знаю на каком языке. Об этом еще предстоит подумать… мне понравилось разбираться в работе кода на низком уровне, но практических применений этому пока очень мало — работа на перспективу. А теперь анонсы: 1. Уже в эту пятницу должен выйти подкаст, куда меня позвали гостем. Там я рассказал свою историю о том, как решился на смену профессии. К сожалению, так вышло, что во время подкаста соседи решили начать сверлить стены и частично мою речь пришлось вырезать, но все равно вроде классно получилось. Как только мне пришлют ссылку, я сразу поделюсь ею с вами. Это был очень необычный опыт. У тебя ограниченное количество эфирного времени, надо сказать только самое главное и важное, поэтому стараешься формулировать мысли заранее, но помимо этого тебе еще надо слушать других собеседников, чтобы не выпасть из разговора. В общем очень понравилось, хочу еще: зовите на подкасты. 2. Начал писать отзыв на интенсив школы 21, но он получается очень большим, из-за чего я теперь думаю над его форматом. Может быть оформить его в виде статьи на Habr (это будет первая статья), или разбить на несколько постов здесь в тележке, или беспощадно все сократить и уместить все в один пост?! Напишите в комментариях, как вам будет удобней читать. 3. Еще мне предложили пару-тройку новых офферов на ставку педагога и скоро будет еще одно собеседование. Позже об этом тоже напишу. Как все странно случилось, хотел стать разработчиком, а стал педагогом с опытом и большим количеством офферов. Может кому-то все-таки разработчик нужен? Готов работать! Пишите, обсудим. #мысливслух

Школа 21. Интенсив закончен Прошёл наш последний экзамен, который я, к сожалению, завалил. Самое обидное, что я выполнял четвёртое задание из пяти, но поймал утечку памяти и не смог разобраться, из-за чего она возникла. Очень неочевидная история, учитывая то, что я не использовал динамическую память, только статическую самописную структуру. В любом случае, это уже не важно. И всё-таки, если бы экзамен был бы зелёным, то получил бы третий уровень профиля, чего достигли единицы студентов потока. Учитывая мой высокий уровень профиля, активное участие в мероприятиях школы и регулярные посещения без пропусков, оцениваю свои шансы на прохождения, как высокие. После экзамена мы всей толпой пошли в бар, куда потом пришёл персонал школы, волонтёры, участники предыдущего интенсива и основного обучения. Все мы дружно и мирно погуляли, познакомились поближе и радостные разошлись по домам, пообещав, что встретимся на основном обучении :) P.s. ещё напишу финальный пост со своими мыслями, но сначала мне нужна пара дней на то, чтобы пережить этот непростой, но очень интересный опыт #программирование #школа21

Школа 21. Выжаты все соки Последняя неделя интенсива прошла максимально непродуктивно. Задачи становится все сложнее: начали работать со структурами, файлами, компиляцией проектов через Makefile. Помимо этого все больше и больше необходимо использование динамических массивов, которые не так просты, как кажутся, особенно когда речь идёт о матрицах. При этом сил на решение остаётся все меньше. Традиционно в первый день недели дают лёгкие задачи. Их можно было бы сдать, но у меня появилось личные дела из-за чего на пару дней я выпал из учёбы. А как оказалось проект среды рассчитан сразу на два дня среда и четверг. Сложность задания среды для новичка колоссальная. Это тоже самое, что сказать, какому-нибудь начинающему плотнику построить отапливаемый сарай. Школа как бы намекает: не суйся туда, у тебя впереди экзамен, потрать время на подготовку к нему. P.s. я недавно писал, что до конца учёбы 16 дней, но ошибся в подсчётах. Завтра последний день интенсива — финальный экзамен, и боюсь, что я к нему не готов в достаточной мере. Но это уже не важно путь пройден, осталось разорвать финишную ленту и ждать результатов. P.s.s. а дальше опять неизвестность, чем заниматься, куда расти, кем быть... #школа21 #программирование

Если вы были в Сургуте и слушали местное радио «Европа Плюс» или «Ретро FM» — вам может быть знаком голос нашего сегодняшнего
+8
Если вы были в Сургуте и слушали местное радио «Европа Плюс» или «Ретро FM» — вам может быть знаком голос нашего сегодняшнего героя. Константин Шперлинг и сейчас, несмотря на переход в IT-сферу, ведёт новости на радио — но уже в качестве хобби, а не основной работы. Если хотите прочитать историю в деталях — советуем посетить блог Константина @JuniorPy про становление разработчиком. Ну а если вы уже готовы пойти по его стопам — можете попробовать бесплатную вводную часть курса «Python-разработчик».

Яндекс Практикум взял у меня небольшое интервью, чтобы написать историю выпускника в карточках. Вроде классно получилось. Теперь будете знать обо мне немного больше. Хотя я изначально вообще планировал вести канал анонимно))

Школа 21. Самые бесполезные четыре часа в жизни Много чего хотел написать, но как-то немного приуныл и не хочу собирать мысли в кучу. Поэтому коротко Сегодня во время экзамена случилась проблема с серверами, и после сдачи первого задания у меня все зависло. Из-за этого я не смог получить следующее задание и оставшиеся 3 часа 55 минут придумывал себе развлечения. Написал не питоне игру в камень ножницы бумага с генерацией случайных вариантов у компьютера. Из 10 игр выиграл его только раз - не повезло. Потом написал игру на Си "Угадай число". Простенькая задачка, где по определённому алгоритму можно угадать любое загаданное число за фиксированное количество попыток. Прошел Сапёра на профессионале, поиграл в Паука и долго смотрел в окно. В общем грусть, тоска, но ничего критичного. Сапорты сказали, что этот экзамен не будет учитываться при подведении итогов, когда будут решать брать меня на основное обучение или нет. #школа21 #программирование

Школа 21. Поймал себя на мысли, что нет времени учиться: надо сдавать проекты Я часто сохраняю себе информацию, которую не готов осилить в моменте, но было бы хорошо изучить ее в перспективе. Таким образом отложил для себя несколько книг, курс на степике и несколько ютуб каналов. Все надо посмотреть и почитать. Но как бы парадоксально это не звучало у меня нет времени на учёбу. Сейчас приходиться хватать только самое необходимое, что позволит сдать проект, а разбираться с тонкостями приходится позже. Наверное очень похоже на реальные рабочие кейсы, когда проект надо было сдать ещё вчера, а ничего не готово. С начала учёбы прошло какое-то время, и только сейчас я в достаточной мере, при большом количестве практики, начинаю понимать, как работают вещи, которыми я пользовался во время выполнения задач. Из хороших новостей: закрыл первую работу на 100% - групповой проект. Опять был лидом в своей команде. Кроме того, закрыл один индивидуальный проект, что позволило увеличить свой внутренний уровень профиля в школе. До конца интенсива осталось 16 дней. Время летит просто с космической скоростью... #школа21 #программирование

Школа 21. Итоги второй недели Внезапно пролетело две недели, и хочу вам признаться: это было круто, несмотря на все трудности. Но не только из-за школы, а ещё из-за тёплой погоды, которая у нас на севере бывает редко, прекрасной компании и огромного количества живого общения с самыми разными новыми людьми в моей жизни. На второй неделе мы проходили структурное программирование, указатели, массивы и использование динамической памяти. Так вышло, что по самым разным причинам я успешно завершил только один индивидуальный проект. Еще есть групповой, но его получится проверить только во вторник. При этом в групповом проекте я уже второй раз играю роль тимлида и надеюсь, что в этот раз, в отличии от предыдущего, все будет хорошо. Проект выполнен в полном объеме, и я провёл все необходимые проверки. При этом эта сложная неделя точно прошла не зря. Хоть и не сразу, но я все-таки научился создавать массивы, матрицы и работать с ними, что позволило мне выполнить проект этой недели: очень популярную игру на языке Си с символьной графикой, работой из терминала, интерактивными режимом и нулевым игроком. Впереди еще изучение динамической памяти. К сожалению, задания интенсива и их реализацию выкладывать нельзя, так бы поделился своим кодом. Но вот проекты, написанные во время основного обучения, уже будут в открытом доступе. Отдельно хочу поблагодарить всех, кто меня поддерживает, и особенно свою любимую жену. Если бы не вы, то этот путь был бы намного мрачней и грустней. А может быть его бы уже и не было, кто знает… #школа21 #программирование