TGViewer
Channel Public Channel
feelin

feelin

@feelindev

Разработка, чистый код, AI, безопасность — и ещё миллион тем для холиваров.

Авторский канал Валерия Филатова, Developer Advocate и Project Lead в PVS-Studio.

По вопросам: @feeeeelin
Subscribers
47
Photos
90
Videos
3
Links
168

Showing posts older than #34 · Back to latest

Older Posts 19 shown
Post #33 177
🤩 Python в веб разработке

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

Где?
Oktava IT Garage

Когда?
4 августа в 18:30

Всё бесплатно, нужно лишь зарегистрироваться по ссылке

@feelin_web
  • 🔥 2
  • 🎉 1
Post #31 60
👀
  • 👏 2
Post #30 66
🥳
  • 🎉 1
Post #29 64
🧐 Какой веб-фреймворк взять первым?

Большую часть своих последних проектов я писал на фреймворке Flask. В основном потому что проекты не особенно объёмные, и такая ситуация выработала у меня некоторую, скажем, привычку писать всё на Flask. Мне нравился этот фреймворк, да и из-за обилия работы и учёбы были проблемы со свободным временем, из-за чего не было возможности попробовать изучить что-то новое. Но сейчас, наконец-то, наступил момент, когда получилось провести некоторое количество времени за чтением документации и изучением всяких других материалов и выбрал я для этого Django Framework. Выбор, я думаю, понятный, т. к. Django это самый популярный и востребованный фреймворк для веб-разработки на Python. И, честно говоря, буквально несколько месяцев назад я уже предпринимал попытки по укрощению этого фреймворка, но как-то не задалось. В силу того, что там более серьёзная структура и много что нужно было понимать. Теперь же, как оказалось, ничего серьёзно понимать не пришлось, а нужно было просто понять то, как и что работает конкретно. И здесь для меня были прямо-таки серьёзные открытия.

Django при создании проекта уже создаёт работающий backend с подтянутыми зависимостями. Т. е. просто создав проект в IDE, импортировав в виртуальное окружение Django и прописав команду startproject, можно получить готовый каркас для вашего приложения. Казалось бы, какие тут могут быть открытие, если мы говорим про фреймворк (что с английского и переводится как каркас), но в Flask нужно было провести некоторое количество действий (и не всегда маленькое) для запуска хотя бы локального сервера.

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

В общем-то, о чём этот пост и зачем он нужен? Я встречал несколько раз таких программистов на Python, которые сразу после основ языка принимались изучать Django. И, в целом, это не плохо, но есть одна важная проблема. На таком уровне (на котором я, кстати, тоже предпринимал первые попытки покорения фреймворка) довольно тяжело понять то, что происходит внутри тех кусочков кода, которые Django создаёт автоматически. В то же время на Flask подобные вещи более дружелюбные и понятные, даже не смотря на то, что весь код на Flask нужно писать лапками и никакой структуры приложений фреймворк тебе не создаст. Упрощая всё вышесказанное до одного тезиса, Flask - это лучший фреймворк для начала работы с веб-разработкой. Просто потому что изучая его, можно пройти по всем базовым аспектам, научиться непосредственно писать код для веб-сервисов, а когда Flask'a перестанет хватать на решение задач, можно безболезненно пересесть на другой, более мощный фреймворк.

#лонгрид
Post #28 71
5. Документация, документация и еще раз документация.
На самом деле, наиболее полезным материалом для изучения будет документация, т. к. там непосредственно разработчик будет рассказывать вам о том, как, что и где работает. Но здесь сделаю поправку... Изучение языка к такому примеру не относится. Документация Python будет полезно, например, если вы, решая задачку на CodeWars (см. 3 пункт) встретились в чужом решении с функцией, которая явно решает проблему, но вы не знаете, как она работает. Здесь самым полезным действием будет открыть документацию Python, найти эту функцию и ознакомиться с назначением и примерами. Касательно изучения с нуля, документация будет невероятно полезна при изучении фреймворков и библиотек. Например, если вы захотите погрузиться в мир серьёзного бэкенда и начать изучать Django, то ничего лучше документации Django вы не найдёте, тем более, что в ней присутствует как стандартный Quick Start, так и полноценный учебник. Но также важно отметить, что не стоит избыточно потреблять документацию. Чтобы изучить фреймворк и начать на нём работать, не нужно проглатывать всю документацию целиком. Достаточно будет прочитать учебник или Quick Start и начать работать, попутно изучая функции, необходимые по ходу работы.

#лонгрид
Post #27 49
🤓 Где учить Python?

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

1. CS50
Это официально лучший в мире курс по основам программирования, созданный и поддерживаемый университетами Гарварда и Йеля. На самом деле здесь достаточно всяких языков, начиная от Scratch, разработанного в MIT и предназначенного для обучения самым базовым функциям любого языка, и заканчивая как раз Python и даже введением в фреймворк Flask для веб-разработки. Единственное "но" в данном вопросе это факт того, что курс полностью на английском языке, что для кого-то может быть минусом. На ютубе есть версия 2015 года, переведённая на русский язык, но тогда на месте Python и Flask стоял PHP, поэтому для будущих и нынешних питонистов это не совсем подойдёт.

2. Веб-разработка на Python от Яндекс Практикума
Де-факто это платный курс (стоящий достаточное количество зелени), но самая прелесть платформы Яндекса в том, что самую базовую часть курса вам дадут пройти бесплатно, что касается и данного курса. За все пробные занятия курс познакомит вас с основами языка Python, покажет библиотеки типа request и datetime (невероятно часто встречающиеся и используемые) и помимо текстовых материалов и примеров завалит хорошим количеством практики, плавно подводя к полноценной веб-разработке на фреймворке Django (что уже идёт в платном курсе). Также у Практикума есть Хэндбук о Python с теми же базовыми функциями и библиотеками, если кому вдруг не нравится платформа Практикума.

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

4. W3schools
Данный сайт открылся мне во время стажировки фронтендера в одной из наших компаний, на нём я подсматривал некоторое количество вещей, которые ранее пропустил. Здесь есть материалы по Python и Django, максимально высушенные до фактов и обучающие вас в формате практики, т. е. после вопросов установки и каких-то базовых ритуалов в начале обучения вам ставится конкретная задача, которая на протяжении оставшихся материалов будет решаться. Сайт полностью на английском, но если вам трудно читать на английском, включение переводчика в браузере не испортит поглощение информации, т. к. опять же она здесь максимально выжата и лаконична.
Post #26 45
feelin 😎Лекция по Python! Расскажу про то, чем живёт язык, про его выразительные черты, сферы применения, сообщество, развитие и многое другое. Где? Oktava IT Garage Когда? 17 июля в 18:30 Всё бесплатно, нужно лишь зарегистрироваться по ссылке @feelin_web
Честный Pyton.pdf119.1 KB
🤜 Спасибо всем, кто пришёл!

Как и обещал, делюсь материалами по прошедшей встрече. Вот здесь презентация, а файл с текстом прикреплён к сообщению.

Пост насчёт обучения напишу чуть позднее
Post #25 52
feelin 😎Лекция по Python! Расскажу про то, чем живёт язык, про его выразительные черты, сферы применения, сообщество, развитие и многое другое. Где? Oktava IT Garage Когда? 17 июля в 18:30 Всё бесплатно, нужно лишь зарегистрироваться по ссылке @feelin_web
🤔 На**я?

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

1. Крутая площадка
В
моменте это наиболее важная из причин, потому что все остальные бы отложились в долгий ящик, да и важно это обозначить, чтобы больше людей о таком знали. Ребята и девчонки из Intensa активно влились в нашу локальную IT тусовку и наводят невероятный кипиш. Весной они проводили полноценную IT-конференцию в центре города, благодаря которой (точно знаю это на конкретных примерах) многие действительно умные люди начали активнее заниматься обучением, действительно захотев стать крутыми программистами (университет отчаянно отучал нас от ощущения, что мы вообще-то востребованные специалисты, которые действительно много могут), а я стал более активно вливаться в IT-тусовку и теперь меня можно встретить на огромном количестве ивентов, которых, как будто, стало значительно больше. Так вот ещё одной инвестицией в сообщество стало открытие IT Garage в Октаве, где каждый желающий может поделиться с миром чем-то интересным (даже музыка была). Появление такой площадки это невероятно круто и обойти такое стороной было грехом, тем более, что я давно развивал навыки подготовки материалов и выступлений. В общем, Intensa, спасибо ❤️

2. Развитие сообщества
Я не просто так читаю лекцию именно о Python. Все наши местные IT-компании работают на PHP (есть отдельные случаи существования Java и C#, но таких примеров единицы) и Python у нас не существует в принципе. Единственная локальная вакансия на Python была от Сбера (и то там сплошные скрипты и больше пришлось бы использовать Visual Basic [официально признан мёртвым]). При том реально крутых программистов, пишущих на Python действительно много. И вот здесь и хотелось поработать - показать востребованность и открыть язык для того, кто его так долго игнорировал. Помимо этого, я надеюсь положить кирпичик (или даже кирпичики) в развитии нашего локального Python Community. Ведь наша змейка так славится своим сообществом по всему миру.

3. Развитие навыков публичных выступлений
Как и обещал, никакой субъективщины тут не будет, и этот пункт - не исключение (так может показаться по его заголовку). Быть программистом - это не только тайпать умные штуки на клавиатуре и красить кнопки. Помимо этого, каждому программисту предстоит делиться своими знаниями с новоприбывшими или другими программистами. Это может быть как наставничество в компании, так и выступления на конференциях, и в обоих случаях (да и многих других) навыки публичных выступлений и структурирования материала очень важны. И открещиваться от подобных вещей не стоит, потому что пусть это и дополнительная работа над собой, но результат, как я думаю, довольно важен, ведь в итоге мы получаем как минимум новых крутых программистов в команде, а как максимум привносим в сообщество что-то новое, что заставляет конкурентную среду коммерческой разработки шевелиться. Если говорить про конкретный кейс из поста выше, я надеюсь на появление большего количества разработчиков, пишущих код на Python.

#лонгрид
  • ❤‍🔥 1
  • 🔥 1
Post #24 149
😎Лекция по Python!

Расскажу про то, чем живёт язык, про его выразительные черты, сферы применения, сообщество, развитие и многое другое.

Где?
Oktava IT Garage

Когда?
17 июля в 18:30

Всё бесплатно, нужно лишь зарегистрироваться по ссылке

@feelin_web
Post #23 54
Во-вторых, я окончательно подтвердил свои догадки о том, что понять о том, айтишник ты или нет, можно просто поработав даже с маленьким проектом. Любая работа, связанная с кодом для меня была кайфом на протяжении всего пути, а время, затраченное на выполнение задач, проходило чуть ли не мгновенно (как-нибудь напишу о 36-часовом кранче на хакатоне в другом лонгриде). Так что всем сомневающимся в своём пути рекомендую попробовать поработать над чем-то, соответствующим текущим навыкам, а работодателям хотелось бы если не порекомендовать, то попросить создать возможность для стажировок даже для самых маленьких разработчиков (я про профессиональный возраст естественно). Тех, кто хочет работать и сможет справиться с поставленными задачами, вы увидите довольно много, чем не возможность для безболезненного и своевременного пополнения штата?

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

#лонгрид
Post #22 53
🤟Work, work!

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

Во-первых, я одновременно работал над заказным проектом и некоторыми задачами в компании, что оказалось не настолько травматично и страшно. В общем и целом, голова не рвалась от обдумывания всего и сразу, а одни задачи не путались в голове с другими. Возможно, из-за разной обстановки вокруг одного и другого было проще отделять, да и стек был разный (проект на Python, а работа на фронтенде с JS и его приколюхами).
Post #21 55
БУГАГАШЕНЬКА!
Я обновил телеграм-канал!

Пока не понятно, что именно здесь будет, но зато понятно, как оно будет выглядеть!

You are welcome!
Post #16 53

Forwarded from Valerii Filatov

Я: решаю задачи на стажировку в Яндекс
В то же время задачи на стажировку в Яндекс:
Post #13 59
Нашей группе выдали темы для работ на производственную практику.

Итого:

- Была обнаружена новая методология программирования - объёмно-ориентированное программирование

- Найдена новая интересная софтина от несуществующей компании Mikrosovt - Exsel
Post #11
Channel name was changed to «feelin | web dev»
Post #10
feelin pinned «На университетском хаке понаделал всякого интересного и спешу поделиться результатами спустя месяц За 50 часов несмыкания век, распития растворимого кофе и разговоров с умными представителями человеческой расы получилось разработать симпатичный такой сервис…»
Post #9 59
На университетском хаке понаделал всякого интересного и спешу поделиться результатами спустя месяц

За 50 часов несмыкания век, распития растворимого кофе и разговоров с умными представителями человеческой расы получилось разработать симпатичный такой сервис для поиска проектов под названием Эврика. Писал бэкенд на родном питонячьем фреймворке Flask и немного успел даже HTML поверстать (а это, как известно, лучшее, что есть в жизни).

Собственно, вот ссылка на прод, там можно кнопочки потыкать и всяким интересным позаниматься. А оценить качество написанного можно в репке. Там не только первую MVP версию можно посмотреть, а ещё и мои в течение месяца от нечего делать добавленные обновления
GitHub GitHub - feeelin/eureka: Project developed on the hackathon Project developed on the hackathon. Contribute to feeelin/eureka development by creating an account on GitHub.
Post #8
Channel name was changed to «feelin»
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →