Как стать автором
Обновить

Что такое комментарии, зачем они нужны и в каких случаях?

Уровень сложностиСредний

Что такое комментарии, зачем они нужны и в каких случаях?

Содержание:

- Нужно ли использовать комментарии?

- Может ли типизация заменить комментарии и когда?

- Итог

Читать далее

Переменные в Python: полное руководство для начинающих

Уровень сложностиПростой

«Переменные в Python: полное руководство для начинающих» — это исчерпывающий материал, который поможет вам освоить основы работы с переменными в Python. В статье подробно разбираются ключевые аспекты: от создания переменных и правил именования до их типов, областей видимости и работы с памятью.

Вы узнаете:

Как правильно объявлять и использовать переменные

Какие типы данных существуют в Python и как с ними работать

Что такое динамическая типизация и чем она отличается от статической

Как избежать распространённых ошибок

Лучшие практики именования и организации кода

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

Читать далее

SOLID: S — Single-Responsibility Principle

Уровень сложностиПростой

История первого принципа из SOLID берёт своё начало ещё в 1972 году, когда Дэвид Лордж Парнас, канадский пионер в области программной инженерии, выпустил статью под названием «On the Criteria To Be Used in Decomposing Systems into Modules». Она появилась в декабрьском выпуске журнала «Communications of the ACM», том 15, номер 12. В своей статье Парнас сравнивал две разные стратегии декомпозиции и разделения логики на примере простого алгоритма. Вывод статьи заключался в следующем:

Читать далее

COSR: Обучение компактных ИИ математике и коду через курируемое самообучение

Наверняка вы замечали: найти маленькую нейросеть, которая бы действительно точно и надежно решала задачи по математике или генерировала качественный код, ‑ непростая задача. Для сверхбольших моделей появляются методы полностью автономного самообучения, такие как AZR, но их применение к моделям с ограниченным «объемом знаний» и способностей может оказаться неэффективным стартом — им может не хватить «искры» для самостоятельного разгона. С другой стороны, классическая дистилляция, когда маленькая модель просто пытается повторять за «учителем», часто упирается в потолок возможностей этого учителя и не всегда развивает подлинное умение рассуждать.

Что, если решениекроется в умном наставничестве? Представляю концепцию (пока что только идея) — COSR (Curated Objective Self‑play Reasoning ‑ Курируемое Объективное Размышление‑Самообучение). Это подход, где мощная ИИ‑модель выступает в роли интеллектуального Куратора для обучения меньшей модели ‑ Ученика. Куратор не просто делится знаниями, а направляет самообучение Ученика в математике и программировании: он подбирает задачи, адаптируя их сложность под текущие способности и прогресс Ученика, и помогает ему учиться на объективных критериях проверки, предоставляемых независимым Верификатором (например, исполнителем кода или математическим решателем).

Читать далее

Как я решил демоэкзамен по разработке: система учёта партнёров на Flask + PostgreSQL

Уровень сложностиПростой

В этой статье я поделюсь подробным решением практического задания демоэкзамена ГИА по направлению «Разработка, администрирование и защита баз данных». Мы создадим полноценное веб-приложение на Python с использованием фреймворка Flask и базы данных PostgreSQL, реализующее:

учёт партнёров;

расчёт индивидуальной скидки;

просмотр истории продаж;

расчёт необходимого количества материала с учётом параметров продукции и процента брака.

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

Читать далее

Как создать сайт самому с нуля: когда no-code и конструкторы замена разработке, а когда — нет

Уровень сложностиПростой

Пока разработчики пишут фронт с анимациями и прорабатывают бэк, маркетологи уже запустили три лендинга и провели A/B тест. Это сила no-code платформ: вы можете собрать сайт, не залезая в код вообще. Спорно? Да. Эффективно? Тоже да.

No-code — это подход к созданию цифровых продуктов без написания кода. За несколько часов можно собрать лендинг, MVP интернет-магазина или прототип сервиса, не привлекая разработчиков. И правда, конструкторы вроде Tilda или Mobirise позволяют самостоятельно запустить сайт за день, а не за спринт. Это не альтернатива продакшену, а способ быстро протестировать идею и сэкономить бюджет на стадии гипотез. Цель этой статьи — разобраться, когда no-code уместен, кому он помогает и почему нельзя просто «потом всё доработать».

Читать далее

Как мы боролись с DDoS-атакой (и победили)

Уровень сложностиСредний

Кажется, у нас появился настоящий «фанат», причём настолько страстный, что решил обрушить наш сайт массированной DDoS‑атакой. Сначала мы даже улыбнулись — ну, внимание приятно. Но серверу было не до шуток.

Несмотря на то, что у нас стоял «Оранжевая защита», включение режима JS Challenge не помогло — часть запросов всё равно проходила, и сервер ложился от нагрузки. Пришлось действовать решительно.

Читать далее

ShieldPHP: многоуровневая защита от DDoS и брутфорс-атак для PHP-сайтов

Уровень сложностиСредний

ShieldPHP — это модульная система безопасности для веб-сайтов на PHP, которая обеспечивает многоуровневую защиту от различных типов атак, включая DDoS, брутфорс и сканирование уязвимостей. Рассмотрим её технические особенности и принципы работы.

Читать далее

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

Уровень сложностиПростой

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

Читать далее

Анализ атаки на Loopscale: манипуляция ценой PTUSDe и её последствия

Уровень сложностиСредний

Исследую атаку на Loopscale: как манипуляция ценой PTUSDe через недостаточную проверку данных оракула позволила вывести миллионы USDC и SOL, что стало причиной этого. И так ли безопасны не openSource проекты.

Читать далее

Анализ уязвимостей POS-терминалов

Уровень сложностиПростой

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

POS-терминалы (Point of Sale) — это специализированные компьютеры для обработки платежей. Несмотря на их критическую роль, многие из них работают на устаревших ОС (Windows CE, Embedded Linux). Как раз в этих системах и стоит искать уязвимости.

Читать далее

Технологии моей образовательной платформы: осознанный выбор или случайность?

Уровень сложностиПростой

Выбор технологий для создания чего-то по-настоящему мощного играет ключевую роль в развитии каждого проекта. Сегодня я хотел бы поделиться, почему я сделал выбор в сторону PostgreSQL, в чем причина замены Vue на React или почему используется WebSocket вместо REST API.

Читать далее

Оптимизация производительности сайта на Spring Boot: как это влияет на SEO

Уровень сложностиПростой

Привет, коллеги! Меня зовут Сирин Имамов, я backend-разработчик на Java, и сегодня разберём, как оптимизация Spring Boot-приложения может не только ускорить ваш сервис, но и улучшить его ранжирование в поисковиках. Да, SEO — это не только фронтенд и контент. Медленный бэкенд убивает пользовательский опыт, а Google это прекрасно видит.

Читать далее

Шпаргалка по обнаружению и удалению руткитов ядра Linux

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

Поскольку большинство современных руткитов используют ftrace, почему бы не отключить его?

Читать далее

Как один проект 1С обернулся для моей компании долгами в 72 млн рублей

Уровень сложностиПростой

Меня зовут Калашников Роман, я основатель и руководитель компании «Фобизнес», 17 лет официальный партнёр 1С, более 20 лет в ИТ, десятки внедрённых проектов, в том числе федерального масштаба.

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

Читать далее

Магия шанса в играх: от истории вероятности до ваших игровых механик

Уровень сложностиПростой

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

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

Читать далее

Стрелочные функции JS, быстро, просто и без проблем

Уровень сложностиСредний

Стрелочные функции JS, быстро, просто и без проблем!

1. Стрелочные функции: arguments, hoisting

2. Работа с контекстом

3. Методы присваивания контекста

4. Обработчик событий

Читать далее

Выгрузка данных в Python: JSON/XML/Excel/CSV

Уровень сложностиПростой

Аннотация
Статья «Выгрузка данных в Python» — это практическое руководство по работе с ключевыми форматами данных в современных проектах. Вы узнаете:

Как выбирать инструменты под разные сценарии:

JSON для интеграции с веб-сервисами

XML для сложных древовидных структур

Excel для бизнес-отчетности

CSV для кросс-платформенной совместимости

Лучшие практики работы с популярными библиотеками:

pandas для табличных данных

xml.etree.ElementTree для парсинга XML

json и кастомные энкодеры

Как избежать критических ошибок:

Обработка кодировок (автоопределение через chardet)

Защита от уязвимостей (XXE-атаки в XML)

Валидация входных данных

🔧 Бонус: Готовые примеры кода, таблицы сравнения форматов и чек-лист выбора инструмента под задачу.

Для кого:

Python-разработчиков

Data Analyst и Data Engineer

Всех, кто работает с импортом/экспортом данных

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

Читать

Когда аквариум становится хакером: нестандартные инциденты кибербезопасности и чему они нас учат

Уровень сложностиПростой

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

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

Читать далее