PJ Dev – Telegram
PJ Dev
495 subscribers
57 photos
1 video
1 file
65 links
История в прямом эфире о том, как я стал разработчиком, изменил свои привычки и улучшил качество жизни
Download Telegram
Как я уже говорил, я планирую закончить этот учебный год в роле педагога, а дальше уже искать варианты новой работы. Будет идеально, если все-таки получится найти новое место в роле backend-разработчика.

Посидел, подумал, пообщался с людьми, которые уже устроились на работу и обсудил с ними курс Python разработчика, а в частности расширенный стек. Отзывы в основном положительные. В итоге решил, что больше опыта — больше шансов.

Так что я теперь опять студент. Курс начнётся уже 19 февраля и продлится около 4-5 месяцев за которые я должны познакомиться со следующим стеком:

— Flask
— FastApi
— SQLAlchemy
— Pydantic
— Alembic
— Selenium
— Scrapy

Не уверен насколько актуален парсинг, но все остальное 100% пригодится при трудоустройстве. Судя по запросу рынка — это сейчас вполне актуальные технологии, которые очень часто встречаются в требованиях вакансий.

Единственный минус цена все-таки немного кусается, даже несмотря на скидки. Но в такое время живём, когда жить вообще дорого.

P.s. в прошлом посте я разыгрывал небольшой подарок, и было всего два участника. То ли никто посты внимательно не читает до конца, то ли подарок такой грустный, что никому не нужен. Тем не менее, у нас есть победитель: VVVas.

#Мысливслух #ЯндексПрактикум
🔥10👍63🤔3
Начало положено: стартовала учёба и я уже написал пару мини проектов по парсингу с использованием библиотек:
— requests;
— requests-cache;
— BeautifulSoup4 (bs4).

Сначала возникли небольшие трудности, но потом втянулся и все пошло, как по маслу. Если коротко, то при помощи request делал запросы, которые потом кэшировал, чтобы сократить количество обращений при написании парсера. Научился разбивать HTML документы на элементы структуры Document Object Model (DOM) и при помощи bs4 находить необходимые теги.

Традиционно первый спринт в обучении довольно простой. Еще остались некоторые вопросы, но думаю практика их закроет. Впереди первая работа, которая должна будет пройти обязательное ревью.

Однако хочу отметить один важный момент, который меня смутил еще во время первого обучения: очень много копипаста. Курс предлагает вам сделать задание самостоятельно, а потом предлагает свое готовое решение. И уровень копипаста настолько зашёл далеко, что для студентов даже сделали возможность копировать код левым кликом по нему.

Во время своего первого обучения я активно копировал готовый код, и делал это с радостью, но больше такой ошибки не допущу — практика крайне важна для запоминания и понимания.

#Python #Парсинг #bs4 #ЯндексПрактикум
🔥8👍62🥰1
Завершил теорию первого спринта "Парсинг". В целом тема понравилась, но не уверен, что хотел бы заниматься этим всю жизнь. Однако такие знания точно где-нибудь да пригодятся.

Помимо того, что идёт работа с библиотеками requests и BeautifulSoup4, во время спринта немного освежил в памяти регулярные выражения (re). Я уже работал с ними во время основной части обучения, но, как оказалось, из-за отсутствия практики напрочь забыл.

Ещё освежил в памяти способы логирования информации, через библиотеку logging, поработал с контекстными менеджером with и c модулем csv, который я использовал при разработке игр (создавал матрицы карт для отображения объектов).

Из нового, познакомился с модулем argparse, который позволяет работать с аргументами при запуске программы. Когда я учился в школе21, то там такая практика была обычной, т.к. работа велась с языком Си, но на Python раньше не встречал такой необходимости.

В целом очень понравилась структура проекта. Не знаю, может быть раньше я на это не обращал внимания или в этом плане все действительно стало лучше, но сейчас такая явная структура вызывает только радость. Отдельные модули для вывода информации, для конфигурации, для констант, для обработки исключений и т.д. Пока все очень даже неплохо

#Python #Парсинг #ЯндексПрактикум
👍8🔥53
Репозиторий с выполненным тестовым заданием снова доступен

Тяжелая выдалась неделька...

Жизнь всегда подкидывает разные неожиданные штуки, и как известно, по закону подлости, все всегда не вовремя. У меня же в комментариях мне предложили написать тестовое задание на должность python backend разработчика. Предложение крайне актуальное, но неожиданное. Проектов на Django я не писал уже примерно полгода, а DRF последний раз тыкал палкой еще когда учился на первом курсе, чуть меньше года назад.

Естественно я согласился: люди месяцами не могут получить обратной связи от работодателей. а ко мне сами пришли. И тут, как на зло, ровно в день, когда мне дали ТЗ, я подхватил ОРВИ. Пришлось в таком состоянии работать, экстренно восстанавливать все знания и параллельно писать тестовое задание, а учёбу на курсе вообще временно отложить в сторону. Благо есть документация и остались в доступе материалы с курса — это очень помогло.

В итоге получился вот такой api-сервис по сбору пожертвований, написанный на базе DRF. У проекта есть документация сформированная при помощи Swagger, подключено кэширование при помощи Redis и настроен сервис асинхронной отправки писем пользователям при помощи Celery. Все запускается в контейнерах Docker, проект покрыт тестами.

Обратной связи от потенциального работодателя я еще не получил, но в любом случае была проделана огромная работа, которая дала мне более глубокое понимание темы вопроса. Вне зависимости от результата теперь я чувствую себя намного более уверено и в будущем это точно мне поможет.

#Django #DRF #pet #ПоискРаботы
👍13🔥11🥰1👏1
После того, как я выполнил тестовое задание, меня пригласили на собеседование, где мы с потенциальным работодателем очень приятно пообщались. Немного вопросов о жизни и будущем, немного лайвкодинга, разговоры о перспективах и компании в целом.

В итоге мне сказали, что по сравнению с другими кандидатами, мое решение тестового было очень достойным. Была названа приятная сумма, и сказано, что с огромной долей вероятности работа уже у меня.

Но жизнь, как всегда, полна неожиданностей. В последний момент появился какой-то герой, который был лучше, чем я и работа досталась ему. Рыночная конкуренция — могу только пожелать успехов этому человек и надеюсь, что у него все получится.

В целом ощущения от происходящего остались исключительно положительные. Я попробовал для себя пару новых технологий, самостоятельно написал интересный проект и получил от нескольких людей, работающих в сфере, положительные отзывы. Плюс работа в портфолио.

При всем при этом разошлись на очень позитивной ноте. Мне пообещали, что порекомендуют меня другой компании, а если появится новая вакансия, то пригласит попробоваться еще раз.

P.s. в любом случае работу разработчиком я планировал искать ближе к лету, а эта ситуация только добавила уверенности, что все получится. А пока можно спокойно продолжить обучение на расширенном стеке python-backend. Я уже немного отстал от своей группы из-за того что все силы перебросил на выполнение тестового, буду нагонять.

#Мысливслух #ПоискРаботы
🔥26💔4👏2🥰1🤔1
Жизнь потихоньку возвращается в нормально русло, но отставание по учёбе пока все ещё значительное. По советам опытных людей сделал небольшой перерыв, восстановил силы и снова вперёд к новым знаниями. Сдал на проверку итоговую работу по первому спринту обучения. Надеюсь, что серьёзных замечаний не будет.

Приступил к работе над вторым спринтом. Тут уже начинается интересное: изучение SQLAlchemy и работа с асинхронным программированием, в частности, с модулем asyncio. Ранее я уже читал книгу "Asyncio и конкурентное программирование на Python", но как тогда оказалась она была мне на вырост. Надеюсь сейчас в голове будут всплывать воспоминания из книги и будет легче закрыть этот вопрос.

Наверное это мой самый большой перерыв между постами, но кажется лучше промолчать, чем писать ерунду. Еще раз всем больше спасибо за поддержку в комментариях на счёт здоровья и трудоустройства. Уверен, что все будет хорошо, но всему своё время.

P.s. еще из интересного: в моей жизни появился волейбол. Когда-то раньше в школьном возрасте я профессионально занимался этим спортом и даже попал в региональную команду, но нужно было менять школу и формат жизни, а родители были против. В итоге пришлось отказаться от спорта, но может оно и к лучшему потому что за свою короткую карьеру в несколько лет я повредили себе все связки на руках и ногах. А сейчас нашлись единомышленники, и мы на протяжении пары последних месяцев стараемся хотя бы раз в неделю собираться и играть. Первые разы было очень сложно с непривычки, но чем дальше тем лучше!

#Мысливслух #ЯндексПрактикум
👍11🔥61🥰1
Ситуация на новом курсе Яндекс.Практикума меня немного разочаровала. Все группы, в которых я учился ранее, были очень активными. В местной "Пачке" всегда происходило какое-то общение по теме обучения, а в телеграмме обсуждали вообще все подряд, да и до сих пор группы живые и ведется какое-то общение. В новой же группе, где я сейчас учусь — гробовая тишина.

На мой приветственный пост из 50 человек ответил только один, сообщения куратора вообще все игнорируют, а свои вопросы почти никто не задает, хотя раньше вопросы студентов были неотъемлемой частью обучения. Аналогичная ситуация и в телеграмм канале группы, сообщения раз в неделю появляются.

На первом вебинаре было всего 3 человека, не считая наставника, а с камерой и голосом, и вовсе был я один. Сначала наставник занервничал, но я понимаю его: выступать перед стеной очень непростая задача, но потом мы с ним отлично побеседовали и он рассказал много интересного, в том числе и не по теме.

Сдал проект первого спринта. На ревью ушло 28 часов, хотя работу должны проверять в течение суток. Пожаловался куратору, вопрос решили. Следующее ревью по времени уже было в пределах нормы. По нему были небольшие замечания, которые я бы и замечаниями то не назвал, очень мелкие правки. Так что ревью пока тоже не впечатлило. Оставил свой фидбек в том числе и представителям бренда.

Я раньше уже выражал мысль, то было бы круто иметь формат обучения без наставников, группы и кураторов, только с ревью, и соответственно за меньше деньги. Сейчас в необходимость такой возможности я убедился еще больше.

При этом стоит отметить, что в теории материал отличный, хорошо подобран и структурирован. Его приятно читать, он понятный, а практика помогает закреплять полученную теорию

#Мысливслух #ЯндексПрактикум
🤔10👍43
Кажется я беру свой первый академический отпуск на курсе "Python разработчик, расширенный стек". Абсолютно ничего не успеваю, в итоге отстал уже на полтора спринта. Пытался нагнать, но разные непредвиденные обстоятельства не дают этого сделать.

Когда я учился еще на первом курсе, как только я пропустил дедлайн, то сразу честно написал куратору, что заболел (дважды в тот период переболел короной и оба академа брал из-за этого). Куратор оформила мне отдых на пару недель и потом зачислила в другую группу.

Потом, к моей обиде, выяснилось, что не уложились в дедлайн многие, но молча продолжили работать и остались в своей группе. По сути они сохранили возможность уйти в академ и и место в своей группе. Поэтому я сейчас тихонько сижу и не отсвечиваю, пишу код, сколько могу. Когда скажут, что пора, так сразу и пойду.

Как я уже говорил ранее — это очень удобный инструмент. А поменять группу, значит познакомиться с новыми людьми. Может быть та новая группа, в которую я попаду, будет более активная

P.s. прошёл блок по асинхронному программированию, какой-то он совсем маленький. Буквально на 5 минут чтения текста, если это все, что нам дадут, то я буду крайне разочарован. Потому что это был один из ключевых навыков, которому я хотел обучиться на курсе. Надеюсь, что дальше будет что-то еще

#Мысливслух #ЯндексПрактикум #Python
9👍4🥰1👏1🤔1
«Всем привет! Прошёл год с тех пор, как мы закончили курс. Интересно, как сложилась ваша судьба и помогло ли обучение в Практикуме».

Такое сообщение появилось в одной из групп, где все еще поддерживают общение студенты,в том числе и я, из нескольких когорт курса Python разработчик. А далее последовало несколько крутых историй, которыми я хочу поделиться. Поэтому вот вам небольшие цитаты, которые я немного подрезал и оставил только основную суть, т.к. иначе просто в пост не поместились бы.

— — —
«Слава Богу,обучение пошло на пользу.Курсы лично мне дали многое. И самое главное это то,что я попал в группы с вами. Я и представить не могу более сильную компанию,чем наша».

— — —
« С работой пока сложилось не очень, недавно взяли девопсом/сисадмином в небольшую компанию на удаленку. Обучение помогло по большей части. Сейчас уже не так страшно трогать новые для меня проекты»

— — —
«Пол года назад устроился в организацию, которая метро строит. Уже почти забил, но вдруг знакомый подсказал, кому нужен питонист. Сначала настраивал АПИ и писал геометрические задачки через код, сейчас пишу сайт, бэк и фронт, расширяю возможности, так сказать»

— — —
«В последнее время геймдевом загорелся. Копаюсь в Unity и C#, мечтаю сделать игру и запушить ее в стим. А что касается как помогли курсы - это, пожалуй, лучший опыт в моей жизни, который в принципе открыл двери в IT»

— — —
«Соглашусь. Я вообще считал что способность к обучению утратил когда шел на курс и честно говоря вообще не был уверен что смогу его пройти, даже имея определенный it бэкграунд). Это кстати помогло мне пойти на авантюру, согласившись взять на себя целый проект в одно лицо через месяц после выпуска с курсов»

— — —
«У меня по наклонной вверх работаю qa auto python+selenium, плюс устроился в практикум на наставника»

— — —
«Я была из разряда самых слабеньких студентов: проходила этот курс, как первый в it, пока в декрете была. После устроилась в центр цифрового развития в своем городе. Мечтаю набраться здесь опыта и уйти в сторону удалёнку»

— — —
«Учеба далась супер тяжко, еле написала диплом. Потом была в акселераторе на проекте по созданию генератора грамот. Поняла, что полноценно работать прогером — не потяну, тем более в моем городе анриал найти вакансии с питоном, а переезд невозможен. В самом конце акселератора нашла работу, точнее мне её предложили: менеджером в 1с франчайзи на сопровождение. Обычная офисная работа, но в ИТ компании все таки»


UPD. comment

— — —
«Можно тоже в копилку: прошел курсы на Python-middle, устроился go разработчиком»


#ИсторииПодписчиков
🔥14👍21
У нас в Сургуте проходит мероприятие "Инклюзивная школа", где собирали детей с ОВЗ со всей России и организовали для них различные мастер классы.

Меня пригласили выступить в качестве эксперта по теме "Работа с искусственным интеллектом". В общем, рассказываю ребятам, как он устроен, что умеет и как им пользоваться.

Так вот ИИ открылся для меня совершенно с другой стороны. Дети, которым тяжело говорить, могут набирать текст и воспроизводить его, соответственно, и наоборот, кто-то не может писать, но может сделать устный запрос. В перспективе это может в будущем, да уже и сейчас, серьёзно облегчить их жизнь.

При помощи yandexGPT с учениками создаём истории, а потом при помощи dream.ai делаем для них иллюстрации. Получается такой небольшой иллюстрированный рассказ.

P.s. очень сильно волновался, когда готовился выступать, но выступил и все прошло очень хорошо. Немного непривычно, но очень хорошо. Впереди два дня работы и 8 групп.

#мысливслух
12🔥6👍4
Говорил, что планировал академ, так вот, как запланировал, так и получилось. Уже сходил, вернулся и даже сдал второй спринт по парсингу.

В общем Beautiful Soup вполне простой и понятный инструмент, попользовался, в целом понравилось. Очень радует, что появилось больше практики работы с Requests и Requests Cache, понимание запросов и формирование страниц — точно пригодится. Ну и в конце меня ждал Scrapy, который, наверняка, для своих задач очень хорош, но немного нагружен, как мне показалось. Такой всё умеющий комбайн. Ему конечно стоило бы посветить больше времени, чтобы досконально разобраться, но основы понятны, а если придётся с ним работать, то уже будет ясно куда смотреть и как это устроено. Разобраться не составит тяжелого труда.

Наконец впереди Flask, FastApi и практика по SQLAlchemy. Пока складывается ощущение, что этот курс не такой большой и полезный, каким он мне показался изначально, но выводы делать рано. Сначала завершу блок по фреймворкам, потом будет еще какой-то блок "Python для бизнеса" — но я вообще не очень понимаю что это и зачем. Завершит эту картину месяц проектной работы, вроде как обещают работу с реальным заказчиком.

В любом случае прогресс есть, новые знания и уверенность появляются. Значит все не зря. Возможно стоило пойти на middle курс, его очень сильно хвалят, но есть вероятность, что я бы его не вывез. Подумаю о нем после завершения этого.
Кстати это полностью бы вписалось в мой изначальный план: я планировал уделить учёбе три года, а потом устраиваться на работу. Предполагал такой некий курс специального высшего образования. И если взять в расчёт middle курс, то как раз выйдет примерно три года.


#Мысливслух #ЯндексПрактикум #Python
🔥13👍4👏2🏆21
⚠️ Друзья, коллеги, подписчики у меня к вам небольшая просьба и я буду крайне благодарен, если вы мне поможете.

Недавно я поучаствовал в вебинаре по развитии телеграм-каналов. Так вот авторы этого мероприятия запустили конкурс, суть которого до 15 мая постараться набрать как можно больше новой аудитории. Победителям оплатят курс от ЯП по smm-продвижению, которые я бы с радостью прошёл, но не за деньги, так как это всё-таки хобби, а не основная работа. Я поставил себе совсем скромную цель: увеличить аудиторию на 50 человек примерно до 400 подписчиков, но уверен, что можно добиться и больших результатов, особенно если вы мне поможете.

Так вот сама просьба: поделитесь моим каналом с людьми, которые могут быть заинтересованы в контенте, который я создаю.

Может быть у вас есть какие-то тематические чаты с другими разработчиками или людьми, которые планируют сменить профессию или уже в процессе смены, людьми, которые меняют свой образ жизни и большую часть жизни посвящают учёбе. Поделитесь каналом со своими однокурсниками, если вы учитесь. Раз вы тут, значит чем-то этот канал вам полезен, пусть он будет полезен и другими людям. Чем больше нас будет, тем лучше и активней будут обсуждения.

В общем я буду крайне рад, если вы расскажете о моём канале, сделаете репосты постов или просто поделитесь ссылкой на канал.

К сожалению или к счастью, но в telegram нет рекомендационных систем, и сарафанное радио — единственный рабочий инструмент для получения новой аудитории.

P.s. сдал спринт по парсерам, теперь неделя каникул. В следующую пятницу перехожу к изучению Flask и FastAPI

#просьба
🔥172👍2🥴2🥰1
Еще немного объективной критики в сторону курса, который я сейчас прохожу "Python разработчик расширенный".

Спринт по парсерам я сдал, но, позже выяснилось, что моя программа не выполняет те задачи, которые должна. Я это не заметил, когда сдавал работу, но что более удивительно: за две проверки ревьюер тоже этого не заметил. Я думаю он даже не запускал код и соответственно не смотрел результат работы программы. Хотя, по сути, результаты лежали в проекте и даже не нужно было программу разворачивать у себя на устройстве, чтобы понять, что что-то тут не так.

В общем парсер должен был собирать информацию о PEP документах с официального сайта. Конкретно три столбца:
1. Номер;
2. Название;
3. Статус.

Еще через PipeLine нужно было собрать второй документ, где будет вестись подсчёт количества документов с уникальными статусами. Мой же парсер не получал статусы, только номера и названия, а соответственно таблицы были не полные. Сейчас я уже все исправил, но вопросы к проверкам остались.

Ревью — это тоже образовательная часть, за которую мы с вами платим. И, когда у человека хороший ревьюер, он может научиться не меньшему, а может быть и большему, чем во время прохождения теории. Жаль, что у меня возникла такая ситуация. Справедливости ради подчеркну, что бывают и очень крутые ревьюеры, которые дают миллион правок и объясняют почему правильно так, а не иначе. Вспомнить только Квичанского, кто знает тот поймёт. Многие их недолюбливают за это, но я был бы рад такому подходу.

В общем жалобу отправил напрямую представителям курса. Они ко мне уже пришли с ответом и поинтересовались подробностями. Сказали, что будет проведена работа. Посмотрим, что будет дальше

#Мысливслух #ЯндексПрактикум
👍62🤨2🥰1
Наконец закончились каникулы, и началось самое интересное — изучение Flask, FastAPI и SQLAlchemy. И знаете, я чувствую себя уверенно. Всё началось с Flask + SQLAlchemy, и хотя раньше я не работал с Flask, всё оказалось довольно понятным. Он очень похож на свои аналоги — Django и FastApi.

Я вспоминаю, как начинал изучать Django — тогда было много информации, и я не понимал, как всё устроено. Кроме того, ещё приходилось изучать core-python. Сейчас же было легко разобраться, как настроить urls, создавать модели, получать выборки из базы с помощью ORM или передавать нужные объекты в шаблонизатор. По сути, когда вы уже знаете и понимаете основы, всё, что нужно сделать — это изучить синтаксис новых фреймворков и понять их особенности. Меня радует, что всё идёт так хорошо. До конца спринта ещё 2 недели, а я уже почти дошел до финального задание.

P.S. Немного о конкурсе, о котором я вам говорил. До конца осталось 2 недели, а мой канал в рейтинге на 6 месте. Самое интересное, что от третьего места, которое также предполагает награду в виде курса, я отстаю всего на 11 подписчиков. Надеюсь, получится увеличить аудиторию канала и победить. Победа вполне возможна, хотя сначала я в это не верил, так что нужна ваша помощь. Отдельное спасибо Анжелике за репост на свой канал. Она кстати живёт в Грузии и занимается фотографией.

#python #flask #обучение
🔥11👍51🥰1👏1
Добил я теорию модуля "Альтернативные фреймворки — Flask" до конца. В целом хорошо, но по сути ничего нового, кроме синтаксиса другого фреймворка, что логично. Приятно освежил все это дело в памяти.

В модуле:
1. Научился создавать Flask проекты;
2. Подключать к ним БД и работать с ней при помощи ORM SQLAlchemy;
3. Поработал со встроенным во Flask шаблонизатором Jinja2, тоже самое, что и в Django (Jinja), только поновее. Разбил шаблоны на модули: базовый, футер, хедер, наполнение. Тут все по классике;
4. Поработал с формами для получения данных через POST запросы;
5. Создал костюмную обработку ошибок, чтобы было красиво. Яндекс заботливо все нарисовал, оставалось только подключить;
6. Научился создавать пользовательские команды и пользоваться теми, что есть во Flask. В частности сделал команду для наполнения БД моковыми данными;
7. Написал API сервис для проекта, который умеет в CRUD;
8. Поработал с фреймворком для миграций Alembic, точнее обёрткой для Flask: Flask-Migrate;
9. Вспомнил, как пользоваться Postman и протестировал свой API.

Вот рассказал, какой я молодец и сколько всего сделал, но наверное правильней было бы сказать скопировал. В теории было довольно мало практики, когда нужно было делать что-то самому. Буквально несколько раз я себя поймал на мысли, что тут надо подумать. Но впереди финальное задание, которое надо полностью сделать самому. Вот и посмотрим, все ли так просто, как кажется.

P.s. хочу сказать большое спасибо тем, кто помогает мне с развитием канала и, соответственно, с продвижением к лидерству в конкурсе. Отдельное спасибо Андрею Пронину за рекомендацию на своём большом канале о Python. Также отдельная благодарность всем людям с которыми я вместе учился, и которые решили меня поддержать (я опубликовал ссылку на канал во всех чатах когорт, где когда-либо учился). По моим предварительным подсчётам, я должен выйти на третье место, которое уже призовое, но другие каналы тоже развиваются. Поэтому праздновать пока рано, нужно думать, как еще привлечь людей, какую бы коллаборацию устроить или где бы заявить о себе.

#обучение #Python #Flask
👍11🔥4🤝21
Все оказалось не так очевидно, как казалось изначально. Еще раз убеждаюсь, что копи-паст — это плохо. Во время прохождения теории по блоку Flask я очень много копировал примеров из теории в свой проект. Но как обычно, пока всё сам ручками не попробуешь — не запомнишь.

Финальный проект спринта — это сервис по сокращению ссылок. Идея не новая, и, наверное, всем понятная. Скармливаем оригинальную ссылку в форму, если хотим то придумываем короткий идентификатор, который будет добавлен к домену и вместе с ним составит результирующую ссылку или же получаем случайный идентификатор. Ссылки связываются между собой и хранятся в базе данных. Если вы обратитесь на короткую ссылку, то сервер сделает редирект на оригинальную. Естественно все с валидацией данных.

Ко всему этому еще надо прикрепить API сервис, через который можно будет сделать два запроса:
1. На добавление новой ссылки;
2. На получение оригинальной ссылки по короткому идентификатору.

В общем задача простая, задача понятная, но отсутствие опыта работы с Flask немного заставило задуматься. Уже практически все дописал, но сдавать буду только после майских праздников: вынужден на несколько дней уехать к родственникам, где не будет интернета. Так что скорей всего до понедельника буду не в сети.

P.s. На счёт конкурса. Еще раз всем большое спасибо за поддержку и продвижение канала. Нас с вами, внезапно, уже больше 400 человек, что меня очень радует. До конца конкурса осталось всего 3 дня, так что надо сделать последний рывок и верить, что получится победить. Шансы оказаться в числе победетелй довольно высоки. Но даже если победить не получится, это все равно было очень полезно. Аудитория канала за месяц выросла более чем на 15%, что уже очень достойный результат!

#Flask #проекты
👍12🔥32
Относительно недавно я пытался устроиться на работу, но взяли другого кандидата. Тогда я попросил показать мне его код, чтобы понять, что я сделал не так. Наши работы оказались очень похожими.

Одним из ярких отличий его работы от моей - наличие документационных строк. Они ярко выделялись на фоне кода и приковывали к себе внимание, отвлекая от реализации. У меня сразу возник вопрос: "А почему я не добавил их в свой проект?".

Наверное, я считал, что это не важно. Я старался больше внимания уделить именно технической составляющей, но оформительская часть не менее важна.

Мысль поплыла дальше: "А почему ни в одном из своих учебных проектов я не писал документационных строк? Почему большинство других студентов этого не делает?". Потом те же вопросы возникли и про Type Hinting. Что более важно — курс этому учил! Но, к сожалению, не требовал, и такой важной привычки не появилось. Будем исправляться.

Сдал на ревью проект, написанный на базе Flask. Это сервис по сокращению ссылок, в котором реализован API. При помощи формы на веб-странице можно добавить оригинальный url, и либо получить автоматически-сгенерированный короткий идентификатор длиной в 6 символов, либо написать собственный длинной не более 16 символов. Короткий идентификатор должен быть уникальным, но оригинальным — не обязательно. Если кроткий идентификатор будет занят, имеет недопустимые символы или заходит за пределы допустимой длины, то система сообщит вам об этом. Время жизни ссылок никак не ограничивается.
В комментариях была интересная идея, вести анализ того, на какие ресурсы чаще всего ссылаются пользователи. Мне в голову пришла та же мысль, но в рамках ТЗ этого пункта не было. Может быть когда-нибудь я доработаю этот проект, а может и нет. Впереди еще точно много всего интересного.

P.s. сейчас понял, что забыл оформить README файл. Сделаю пуш с изменениями уже после ревью.

#Python #Flask #Программирование #Проекты
👍144🔥3🥰1
Очередное ревью, очередная задержка. Проверка заняла более 26 часов

Сдал свой Flask проект по укорачиванию ссылок, о котором писал выше, на ревью. Приняли за две итерации. В качестве критических ошибок были отмечены две:

1. Не заполненный README файл (просто забыл про него);
2. Попросили заменить способ создания словарей с dict() на {}.

О том, что в какой-то момент сервис просто перестанет исполнять свои обязанности из-за бессрочного хранения ссылок и ограничения по их количеству, к сожалению, ни слова. Хорошо, что есть прекрасные комментаторы, которые готовы указать на ошибки и даже предложить их решение, вот оно настоящее ревью! В общем, попросил сменить ревьюера на другого. Заявку приняли, сказали, что следующий проект будет проверять уже новый ревьюер.

А вот следующий проект как раз должен быть самым сложным и интересным. Сейчас разбираю теорию по фреймворку FastAPI, пока все доступно и понятно. Впереди Pydantic, SQLAlchemy и Alembic — то, что сейчас нужно. По большому счёту ради этого я и шёл на курс.

P.s. Информация на счёт конкурса:
Я не занял призового места, отстал буквально на 5-6 подписчиков. Немного обидно, но обиду скрашивает мысль о том, как сильно вы меня поддержали. Буквально за 3 недели на канале появилось 70+ новых подписчиков, что очень большой рост для моего канала.

Больше вам спасибо за поддержку.


P.s.s. справедливости ради. Спросил у других студентов с курса, есть ли у них такая проблема. Мне ответило всего три человека, но каждый из них сказал, что их проверки качественные и своевременные. Если вопрос качества субъективен, то со временем не поспоришь — укладываются в срок. Очень много зависит от человеческого фактора, на кого попадёшь, так сказать. Так что если вы учитесь, и вас что-то беспокоит, не стесняйтесь об этом говорить, пробуйте решить проблему.

#Мысливслух
👍11🔥32
Люблю я все-таки детей. Очень уж мне нравится с ними заниматься. Они любознательные, креативные и трудолюбивые. А круче всего, когда у них получается какая-то мелочь и они этому очень рады. Надо учиться радоваться мелочам

Сейчас учебный год подходит к концу. Группы, с которыми я занимался, завершают своё обучение и выпускаются. Немного грустно от того, что я их больше не увижу. Но зато я уверен, что теперь у них хорошая база по core-python.

Но как бы не была эта работа хороша и приятная, кажется, что пора двигаться дальше.

Перед тем, как начать учиться, я запланировал, что потрачу на обучение три года. Прошло, примерно, два из трех, но я уже чувствую, что готов к продуктовой разработке. Теперь буду стремиться в эту сторону. Так что если у кого-то есть предложения о работе, то готов обсуждать и буду благодарен за любую помощь в этом направлении.

#Мысливслух
16👍7🔥3🥰1🤡1
Сейчас в процессе прохождения собеседовании, общаюсь с HR разных компаний. В том числе крупных банков и операторов связи. Заметил интересную тенденцию: каждый из них первым вопросом спрашивают: "Как обстоят дела с военным билетом".

Еще из интересного: когда я искал первую работу, в основном, все собеседования проходили в формате телефонного разговора, а сейчас почему-то наоборот больше предпочитают переписку. Мне и так и так удобно, но кажется что по телефону или видеосвязи можно больше сказать и лучше себя презентовать.

Может быть это конечно просто совпадение, но пока три из трех.

Друзья, коллеги, если у вас есть интересные предложения или может быть вы сейчас тоже находитесь в активном поиске и готовы порекомендовать какую-то вакансию, то пишите пожалуйста мне в личные сообщения или прямо в комментариях. Может быть в работаете в крупной компании и у вас есть реферальная программа, то буду рад за рекомендацию меня, как специалиста.

#Мысливслух
🔥122👍2🤡2
Немного пропал из информационного поля: сейчас прохожу серию собеседований из-за чего в очередной раз отложил учёбу, а ещё заканчиваю работу на предыдущем месте.

Все развивается очень быстро и немного неожиданно. Позже обязательно все расскажу, а пока пусть это останется тайной.
Много нового опыта, всем хочется поделиться, но придётся немного подождать

#Мысливслух
🔥185👍2🤔2🤡1