Pull to refresh
1
0
Филипп @firyst

Студент

Send message

Груг против сложности. Я пролинтил все посты на Хабре про Python, и вот что я нашёл

Reading time52 min
Views60K

В какой-то момент времени я превратился в педанта брюзгу. В фильмах малейшие нестыковки и провалы в логике портят мне весь просмотр. В чатах меня бесит it's вместо its. А в статьях про программирование... Всё плохо. За меня всё уже сказал @AlexanderAstafiev, я лишь процитирую:

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

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

И всё заверте...
Total votes 119: ↑114 and ↓5+134
Comments153

Пишем Telegram бот текущей погоды по IP адресу на Python aiogram

Reading time11 min
Views61K

Штош. В этой статье я расскажу вам, как создать Telegram бота, который получает текущую погоду по IP адресу. Мы будем использовать язык Python и асинхронную библиотеку для взаимодействия с Telegram Bot API - aiogram.

Читать далее
Total votes 16: ↑8 and ↓8+4
Comments51

5 советов, чтобы успешно притворяться разработчиком

Reading time3 min
Views98K

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

Читать далее
Total votes 124: ↑110 and ↓14+113
Comments110

Почему изучать программирование так сложно?

Reading time13 min
Views93K

Коля был простым «белым воротничком» в офисе и решил, что хочет научиться программировать, поэтому он поспрашивал вокруг с чего начать. Он начал с изучения Ruby, а затем пробежался по другим языкам, таким как Scala, Clojure и Go. Он изучал Emacs, затем Vim и даже раскладку клавиатуры Дворжака. Он брался за Linux, баловался Lisp и кодировал на Python, живя в командной строке более полугода.

Советы, которые получал Коля, дёргали его сначала в одну сторону, потом в другую, и так далее, как лист в торнадо, пока он, наконец, не прошёл «каждый мыслимый и немыслимый онлайн-курс». В конце концов, несмотря на то, что в итоге он получил работу в разработке, Коля:

Читать далее
Total votes 54: ↑35 and ↓19+29
Comments242

Как организовать код в Python-проекте, чтобы потом не пожалеть

Reading time10 min
Views72K

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

Бенджамин Франклин

Python отличается от таких языков программирования, как C# или Java, заставляющих программиста давать классам имена, соответствующие именам файлов, в которых находится код этих классов.

Python — это самый гибкий язык программирования из тех, с которыми мне приходилось сталкиваться. А когда имеешь дело с чем-то «слишком гибким» — возрастает вероятность принятия неправильных решений.

Читать далее
Total votes 28: ↑25 and ↓3+32
Comments34

Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python

Reading time8 min
Views16K

Учимся использовать и реализовывать на Python алгоритм поиска в ширину (BFS) для решения реальных задач.

Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться из лабиринта.

Алгоритмы поиска применяются для решения таких задач, которые можно смоделировать как графы. Каждый узел графа – это экземпляр задачи. Каждый поисковый алгоритм начинается с узла (исходный экземпляр – состояние) и наращивает вслед за этим узлом новые (то есть, новые экземпляры задачи), решая задачу допустимыми способами. Этот процесс останавливается, как только алгоритм находит решение (успех – конечное состояние) или не может создать ни одного нового узла (провал). Среди самых популярных алгоритмов поиска – поиск в глубину (DFS), поиск в ширину (BFS), жадный алгоритм, поиск по критерию стоимости (UCS), A*-поиск, т.д. В этой статье речь пойдет о поиске в ширину.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments0

Как универсально организовать импорты в проекте, независимо от того, где находятся модули?

Reading time2 min
Views8.3K

Начнем с того, что это статья посягается на святой устой комьюнити Python разработчиков, устой звучит так "синтаксис python - идеален, стандартные библиотеки - идеальны, и полноценны, GIL - это неизбежная жертва для такого прекрасного языка как Python ... может быть в конце столетия люди придумают как его обойти, но, а пока так 🥺". Приносим глубокие извинения за такую статью, это чисто юмористичная статья, не стоит принимать ей в серьез.

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

Читать далее
Total votes 24: ↑13 and ↓11+4
Comments14

[Карьера в IT] Софт-скилы: типовые вопросы, которые ждут на интервью, и шаблоны ответов для IT-инженеров

Reading time6 min
Views54K

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

Читать далее
Total votes 23: ↑19 and ↓4+17
Comments9

Как я открыл компанию по созданию детских наборов электроники – Часть 1

Level of difficultyEasy
Reading time11 min
Views31K


В 2020 году я открыл своё дело. После наёмной работы это было похоже на рай, но скоро стало очевидно, что более необдуманного решения я в жизни ещё не принимал. За два года хождения по граблям, поиска решений, борьбы с самодисциплиной и режимом дня, я собрал достаточно историй об ошибках и удачах, и теперь хочу поделиться этим опытом с вами.
Читать дальше →
Total votes 124: ↑123 and ↓1+165
Comments68

Асинхронный python без головной боли (часть 1)

Reading time14 min
Views267K

Почему так сложно понять asyncio?

Асинхронное программирование традиционно относят к темам для "продвинутых". Действительно, у новичков часто возникают сложности с практическим освоением асинхронности.

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку
Total votes 135: ↑135 and ↓0+135
Comments56

14 Важных UI/UX типсов для твоего дизайна

Reading time6 min
Views17K

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

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

Узнать подробнее
Total votes 19: ↑18 and ↓1+21
Comments9

Я два года выпускаю крошечные проекты

Reading time6 min
Views42K

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

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

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

В этом посте мне хочется рассказать о запущенных проектах и поделиться тем, чему научился в процессе создания этих крошечных Интернет-проектов.
Читать дальше →
Total votes 111: ↑111 and ↓0+111
Comments102

OSINT по спутниковым изображениям

Reading time3 min
Views41K
image

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

Зеленый Кот нашел разбившуюся советскую исследовательскую станцию «Марс-3» по снимкам со спутника, тысячи экологов следят за лесами Амазонки и состоянием береговой линии, школьники делают учебные проекты по слежке за популяцией моржей, репортеры проводят расследования, освобождают рабов, мониторят лагеря беженцев.

Предлагаю вам подборку бесплатных ресурсов и проектов со спутниковыми данными, программами обработки этих данных и полезные статьи.
Читать дальше →
Total votes 41: ↑40 and ↓1+53
Comments11

Как изучить SQL за ночь или шпаргалка для системного аналитика

Level of difficultyEasy
Reading time10 min
Views140K

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

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

Изучите теорию на примерах и закрепите на 13 практических задачах по SQL.

Читать далее
Total votes 51: ↑46 and ↓5+52
Comments41

Как попасть на дачу президента в пять часов утра

Reading time6 min
Views322K
Этот пост о том, как обычный взлом обернулся муками совести и душевными терзаниями. Исходников будет не много, больше фоток и анализа. Итак, некто Вася работает «плохим парнем». Степень падения Васи такова, что средства на жизнь ему приносит поиск и разбор информации, доступ к которой был скомпрометирован вследствие неграмотного обслуживания, безалаберности или экономии на обслуживающем персонале.


Читать дальше →
Total votes 392: ↑385 and ↓7+378
Comments443

Спать мало, но правильно?

Reading time7 min
Views898K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →
Total votes 713: ↑670 and ↓43+627
Comments420

Грокаем алгоритмы

Reading time4 min
Views154K

Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих от Бхаргава А. Эта книга рекомендована Яндекс Практикум при подготовке к алгоритмическому собеседованию. Сам автор указывает, что книга для самоучек, студентов, выпускников и тех, у кого программирование не является основным профилем.

Мое впечатление неоднозначно. С одной стороны, до сего момента я не встречал описания динамического программирования, поиска кратчайшего пути в графе по алгоритму Дейкстры и использование K ближайших соседей для классификации и аппроксимации (возможно, все это есть в 4м или последующих томах Кнута, но в магазине они мне не встречались). С другой стороны, описания и примеры, приведенные в книге, таковы, что практической пользы не представляют. Описания очень поверхностны, примеры нарочно примитивны, код в половине случаев не приведен. Но даже там где есть код, он нарочито упрощен под конкретный пример и на практике бесполезен.

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

Вернемся к Яндекс Практикум и их рекомендации. Если алгоритмы так важны, то почему именно эта книга? Есть масса других, где и алгоритмов больше и разобраны они так, что бери да пользуй. Например, классический труд Д. Э. Кнута Искусство программирования. Да, рисунки в детском стиле в Грокаем алгоритмы забавны. Но иллюстрации в Искусство программирования полезны для понимания. Разве это не важнее, если уж кандидата посылают на алгоритмическое собеседование?

Читать далее
Total votes 25: ↑22 and ↓3+21
Comments29

Заградотряд

Reading time7 min
Views90K

Вот вы как программистов удерживаете в компании? Хорошо платите? Создаёте комфортные условия? Интересные задачи и проекты? Перспективы? Обучение?

И как, получается? Сидят, не уходят? А сколько денег и усилий затрачиваете? Стоит оно того? Наверняка стоит. Но можно и по-другому. Дёшево и бесчеловечно.

Например, используя заградотряд.

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

Читать далее
Total votes 206: ↑181 and ↓25+208
Comments243

Советы для начинающих (и не очень) разработчиков на Unreal Engine

Reading time17 min
Views35K

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

Надеюсь что описанные мною вещи будут вам интересны и полезны. Желаю приятного чтения :-)

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments21

Оконные функции SQL простым языком с примерами

Reading time4 min
Views461K

Привет всем!

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

P.S. Если автор что-то не разобрал и не написал, значит он посчитал это не обязательным в рамках этой статьи))) 

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

Читать далее
Total votes 49: ↑46 and ↓3+58
Comments16
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity