Как стать автором
Обновить
12
0
Руслан Гильфанов @ri_gilfanov

web-разработчик

Отправить сообщение

await anywhere, взгляд на третью сторону медали: sync vs async vs …

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров11K

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

Узнать? Да!
Всего голосов 27: ↑27 и ↓0+27
Комментарии10

Мега-Учебник Flask Глава 1: Привет, мир! (издание 2024)

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров18K

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

Начать изучение
Всего голосов 46: ↑46 и ↓0+46
Комментарии11

Как создать голосового ассистента

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.3K

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии1

Flask для начинающих

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров41K

Как начать работать с Flask

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

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

За 15-20 минут чтения вы получите не только теоретические знания, но и практические советы от опытного разработчика. Присоединяйтесь к миру веб-разработки и откройте для себя, как просто и увлекательно может быть создание ваших первых веб-приложений с Flask!

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии38

Flask для начинающих — Часть 2 пишем landing page+admin panel с редактированием контента

Уровень сложностиПростой
Время на прочтение40 мин
Количество просмотров15K

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

Flask для начинающих - Часть 2 создание Веб проекта.

Мы создадим с вами мини проект - веб сайт с админ панелью и обновлением контента сайта. При помощи Python, HTML, CSS, Bootstrap, Flask, SQLite.

создать сайт на Flask
Всего голосов 12: ↑10 и ↓2+8
Комментарии10

Векторные представления — что это такое, и почему в них важно разбираться

Время на прочтение24 мин
Количество просмотров17K

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

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

Я выступал с лекцией о векторных представлениях на конференции PyBay 2023. Эта статья — улучшенная версия той самой лекции, и она должна быть интересна сама по себе, даже если не смотреть видео.

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

38-минутная видеоверсия

Вот видеоверсия той лекции, которую я прочитал на PyBay.

Читать далее
Всего голосов 36: ↑35 и ↓1+34
Комментарии0

Компилятор за выходные: синтаксические деревья

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров24K

Вам когда-нибудь приходилось задаваться вопросом, как работает компилятор, но так руки и не дошли разобраться? Тогда этот текст для вас. Мне тоже не доводилось заглядывать под капот, но тут так случилось, что мне нужно прочитать курс лекций о компиляторах местным третьекурсникам. Кто встречался с некомпетентными преподавателями? Здравствуйте, это я :)

Итак, чтобы самому разобраться в теме, я собираюсь написать транслятор с эзотерического языка программирования wend (сокращение от week-end), который я только что сам придумал, в обычный ассемблер. Задача уложиться в несколько сотен строк питоновского кода. Основной репозиторий живёт на гитхабе (не забудьте заглянуть в мой профиль и посмотреть другие tiny* репозитории).

Читать далее
Всего голосов 75: ↑75 и ↓0+75
Комментарии28

HTTP/3: развёртывание HTTP/3 на практике. Часть 3

Время на прочтение29 мин
Количество просмотров19K

Фото Wolfgang Rottmann, Unsplash.com

После почти пятилетних разработок протокол HTTP/3 наконец приближается к окончательному выпуску. Рассказываем, какие трудности могут возникнуть при развёртывании и тестировании HTTP/3 и как адаптировать к нему сайты и ресурсы.

Это третья и последняя часть серии о новых протоколах HTTP/3 и QUIC. Если, прочитав предыдущие две части об истории и основных концепциях и функциях производительности HTTP/3, вы решили, что новые протоколы срочно нужно внедрять (будем надеяться, что так вы и решили), здесь мы расскажем, как это сделать.
Читать дальше →
Всего голосов 25: ↑23 и ↓2+21
Комментарии12

OpenConnect: недетектируемый VPN, который вам понравится

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров225K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее
Всего голосов 325: ↑324 и ↓1+323
Комментарии342

RSA простыми словами и в картинках

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров67K

Ассиметричный алгоритм криптографии RSA, что же это за алгоритм такой и как он работает? В этой статье мы разложим по полочкам, что такое RSA и ассиметричная криптография в целом, простыми словами и с картинками.

На обложке то как DALL-E представляет себе ассиметричную криптографию.

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии16

Почему linux должен быть единственной системой в образовательном процессе

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров30K

Использование проприетарных программ плохо влияет на образовательный процесс, Linux должен быть единственной операционной системой в школах и университетах.

Читать далее
Всего голосов 118: ↑61 и ↓57+4
Комментарии1135

easypy – неизвестная библиотека для борьбы с boiler-plate на python

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.5K

Если занимаетесь автотестами на python, часто работаете с многопоточностью и хотите уменьшить количество boiler-plate кода в ваших тестах – имеет смысл посмотреть на библиотеку easypy.  

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии1

Верификация e-mail по протоколу smtp. Узнаем, что почта есть и ждёт писем при помощи python

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров5.3K

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

Это пересказ довольно старой статьи (2015 г) некоего Скотта Бради. Автор предупреждает, что попытка реализовать предложенный подход в промышленных масштабах приведёт вас в списки спамеров, и вообще всё это крайне ненадежно и сомнительно. И вообще больше с целью познакомиться с процессом, что собственно предлагаю и сделать.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии10

Как погубить децентрализованную сеть (на примере Федиверса)

Время на прочтение8 мин
Количество просмотров23K

На дворе 2023 год. Весь Интернет — под контролем Империи GAFAM. Весь? Нет, несколько мелких анклавов пока не поддались их гнёту. А некоторые из этих непримкнувших стали объединять усилия, консолидируясь в «Федиверс».

В ходе дебатов на просторах Twitter и Reddit, Федиверс стал привлекать всё больше внимания и снискал славу. Люди стали всерьёз им пользоваться. Это не могло укрыться от внимания Империи.  

Читать далее
Всего голосов 98: ↑95 и ↓3+92
Комментарии159

Автоматический обход блокировок

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров52K

Описание работы программы для автоматического обхода блокировок в интернете, код программы лежит на репозитории antiblock.

Читать далее
Всего голосов 51: ↑51 и ↓0+51
Комментарии64

Легкий фаззинг в интеграционных тестах с помощью hypothesis

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.7K

Если никогда не слышали о hypothesis и хотите дополнить свои функциональные интеграционные тесты чем-то новым и попробовать найти баги там, где вроде бы уже искали – добро пожаловать в статью. 

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

Проблемы накапливаются. Софт тормозит. Везде некомпетентность и хаос

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров52K


Закон Старджона гласит: «Ничто не может всегда идти правильно». Рано или поздно всё ломается.

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

Взять недавний случай с багом в Windows Defender, который вызывал тормоза Windows. Крайне показательная история. Да, этот баг обнаружили, но в кодовой базе остались такие же. Мы этого не знаем наверняка, но вполне логично предположить, что количество скрытых багов растёт пропорционально кодовой базе. Поэтому софт всё больше тормозит со временем. Это естественный процесс, почти как закон природы.
Читать дальше →
Всего голосов 175: ↑133 и ↓42+91
Комментарии396

В ближайшие 20 лет космонавтику ждет небывалый прорыв

Время на прочтение6 мин
Количество просмотров43K

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

Читать далее
Всего голосов 106: ↑92 и ↓14+78
Комментарии491

Я ничего не успеваю

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров27K
В годы юности я играла в «Ну, погоди» до высоких уровней, на которых яйца катились практически непрерывным потоком. В какой-то момент внимание и ловкость подводили и звучал характерный сигнал: всё, жизни закончились. А при включении можно было увидеть двух четырёхруких (шестилапых?) волков, пытающихся поймать все яйца. Казалось бы — игрушка, которая осталась в прошлом, но её образ нет-нет, да всплывает в голове. Это случается в минуты полной перегрузки делами, когда пытаешься поймать все яйца, закрыть задачи и планы, а все шесть лап опускаются. Приходит усталость: то ли от сделанного, то ли от хронического неуспевания, то ли от переживаний за всё сразу. От этого состояния до выгорания рукой подать. А вокруг все такие эффективные, скоростные, продвинутые или… нет?

Читать дальше →
Всего голосов 95: ↑81 и ↓14+67
Комментарии60

Не учите паттерны, учите концепции

Время на прочтение3 мин
Количество просмотров41K
Добрый день (или вечер, или утро, в зависимости от того, когда выйдет этот пост).

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

Итак


Любой программист с хоть немного хорошим вкусом, начавший программировать по своей воле, после понимания основ языка и написания первых проектов, будет задаваться вопросом не «как сделать что-то», а «как сделать что-то правильно» и «какие тут есть стандарты красоты».
Читать дальше →
Всего голосов 93: ↑68 и ↓25+43
Комментарии107
1
23 ...

Информация

В рейтинге
4 995-й
Откуда
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Зарегистрирован
Активность