Pull to refresh
76
0
Zaur Nasibov @BasicWolf

Software Engineer

Send message

JIT-компилятор Python в 300 строк

Reading time11 min
Views32K

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

Как оказалось, может, но с нюансами.

Читать далее

Отрисовка в браузере большой анимации или как я ушел с mp4 к своему формату видео

Reading time17 min
Views56K

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

Читать далее

7 причин почему вы не худеете. Ожирение, инсулинорезистентность и диабет простыми словами

Reading time16 min
Views59K

С лишним весом я на ты. Со 115 кг я «сбросился» до 72, затем в течение 3-х лет вернулся обратно к 94-м, а сейчас опять худею (уже грамотно) и в данный момент вешу 88.7 кг (ещё 7 скину и остановлюсь). Таких историй много, поэтому об этом я не буду, а вот причины (биологические и поведенческие), по которым вы можете не худеть, не видел, чтобы кто-то описывал в полном объёме и понятным языком. Сегодня я постараюсь сделать это для вас, обобщив все свои знания о лишнем весе. 

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

Читать далее

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

Reading time14 min
Views377K

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

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

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

Съешь красную таблетку

Начинающие программисты боятся темноты

Reading time7 min
Views100K

Не могу больше. Это не моё. Я не тяну. Всю ночь не спал, ворочался, вставал, курил, читал, пытался смотреть телевизор, снова ложился… Ненавижу.

Всех, кто пишет эти радужные истории «войти в айти». Тех, кому я заплатил за курсы по программированию. «Друзей» и «советчиков», которые сказали: смело бросай свою старую, нелюбимую работу, и иди в программисты. Если бы вы только знали, о чём говорите…

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

Я один в темноте.

Читать далее

Синдром дефицита внимания и гиперактивности — откуда берутся самые невыносимые хулиганы и что с этим делать

Reading time12 min
Views34K


СДВГ стал официальным диагнозом у взрослых и детей, который признан крупными медицинскими, психологическими и образовательными организациями, в том числе Национальным институтом здравоохранения и Министерством образования США.

Но до сих пор сохраняется, и даже среди врачей, мнение, что это «модный выдуманный диагноз».

Поэтому нужно научиться отличать «что это на него нашло?» (то есть эпизодические сложности) от, собственно, дефицита внимания. Чтобы поставить СДВГ, мало проблем с учёбой или плохого поведения. Мало пропускать задания в учебнике, потому что что-то отвлекло. Мало «считать ворон» на уроке. Время от времени такое бывает у каждого, однако у некоторых людей проблемы настолько распространены и серьёзны, что мешают сразу нескольким аспектам их жизни: общению дома, успешности в учебе, реализации на работе.

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

Например, максимальная продолжительность активного внимания у детей в пять–семь лет — 15 минут. Когда ребёнок в три года непоседлив, криклив и не может сосредоточиться на каком-то одном деле дольше 10 минут — это нормально. Если то же самое происходит с ребёнком 9-10 лет, то это уже нарушение.
Читать дальше →

Respect Validation на Python

Reading time5 min
Views9.2K

Всем привет! Сегодня мы поговорим о валидации данных, а точнее о том как я перенёс библиотеку с PHP на Python. Библиотека настолько крутая (по мнению автора), что рекомендую вам с ней ознакомиться, особенно, если вы пишите API с библиотекой flask (ссылка на интеграцию в статье).

Читать далее

Как физические упражнения улучшают когнитивные способности и здоровье мозга в целом

Reading time7 min
Views31K


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

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

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

  1. Улучшение работы мозга и памяти.
  2. Улучшение и защита мыслительных процессов.
  3. Повышение концентрации.
  4. Уменьшение стресса, депрессии и беспокойства.
  5. Улучшение качества сна.


Физические упражнения несут в себе физиологические преимущества как для тела, так и для мозга. Упражнения укрепляют память и улучшают качество мыслительных процессов – как прямо, так и косвенно.
Читать дальше →

Почему программистам нужно знать структуры данных и как я сэкономил компании $22 000 в год

Reading time1 min
Views22K

Как я оптимизировал аналитику используя структуры данных. Что в итоге сэкономило $22 000

Читать далее

11 хитростей Chrome DevTools, которые помогут Вам стать Senior FrontEnd-разработчиком

Reading time4 min
Views77K

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

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

Давайте посмотрим

Мутационное тестирование

Reading time12 min
Views45K

Юнит тесты помогают нам удостовериться, что код работает так, как мы этого хотим. Одной из метрик тестов является процент покрытия строк кода (Line Code Coverage).


Но насколько корректен данный показатель? Имеет ли он практический смысл и можем ли мы ему доверять? Ведь если мы удалим все assert строки из тестов, или просто заменим их на assertSame(1, 1), то по-прежнему будем иметь 100% Code Coverage, при этом тесты ровным счетом не будут тестировать ничего.


Насколько вы уверены в своих тестах? Покрывают ли они все ветки выполнения ваших функций? Тестируют ли они вообще хоть что-нибудь?


Ответ на этот вопрос даёт мутационное тестирование.

Читать дальше →

Сейчас плохо, но все может быть еще хуже

Reading time23 min
Views89K

Разбираю ключевые идеи неизданной на русском книги «Внутри коллапса Венесуэлы» Уильяма Ноймана.

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

Читать далее

«Потерянный» роман Роберта Хайнлайна

Reading time3 min
Views8.9K

Роман Роберта Хайнлайна «Погоня за панкерой» был впервые опубликован в 2020 году, через тридцать с лишним лет после смерти автора. Здесь не задействована машина времени или другие чудеса науки (кажется), но, тем не менее, в истории потерянной рукописи мэтра есть что-то чудесное. Что же за роман «Погоня за панкерой», как он связан с «Числом Зверя» и чего вообще от него ждать?

Читать далее

Планковские единицы: существует ли фундаментальный предел пространства и времени?

Reading time10 min
Views51K

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

  • Учёный в интервью оговаривается, что «длина Планка — это минимальное значимое расстояние», что является сильным упрощением.
  • Журналисты и популисты передают фразу дальше, пока она не деформируется в «длина Планка — это как размер пикселя для Вселенной», что неверно.
  • Учёные замечают ошибку и начинают поправлять, чтобы устранить недоразумение: «Планковская длина не похожа на размер пикселя для Вселенной. Это как раз тот масштаб, где квантовая гравитация становится актуальной». Что, безусловно, правильно, но…
  • Научпоп пережёвывает это, пока понятие не трансформируется в «планковская длина никогда не была минимальным расстоянием, это заблуждение. Это просто масштаб, на котором наши нынешние теории разрушаются, и ничто не указывает на то, что мы не можем достичь меньших масштабов». Это звучит разумно, но неверно.

Так что будет полезным разобраться, откуда все-таки следуют эти единицы и, собственно, для чего они задают предел.
Читать дальше →

Как я Хабр взломал

Reading time3 min
Views64K

Всегда хотел взломать Хабр. Мечта такая, но как-то руки не доходили. И вот, вдохновившись статьей о праведной борьбе с Безумным Максом, я, как и автор поста, решил исследовать функционал Хабра на предмет уязвимостей.

Читать далее

Советы по собеседованиям бэкэнд-разработчикам от Netflix

Reading time6 min
Views14K
image

Сталкивались ли вы когда-нибудь с одним из следующих сценариев при поиске своей следующей работы?

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

Собеседование может быть непростой задачей, и то, как компании и команды подходят к этому процессу, сильно различается. Мы надеемся, что, прояснив этот процесс, вы почувствуете себя более информированным и уверенным в своем опыте собеседования.
Читать дальше →

Как мы отказались от JPEG, JSON, TCP и ускорили ВКонтакте в два раза

Reading time24 min
Views171K

На протяжении всей жизни мне приходится экономить вычислительные и сетевые ресурсы: сначала были компьютеры с 300 кГц (кило — не гига!) и 32 Кбайт RAM, интернет по dial-up. Потом я решал олимпиадные задачки. Теперь имею дело с терабайтами трафика и 50 млрд событий в сутки. И хотя современные телефоны в 1 000 раз мощнее любого оборудования двадцатилетней давности, я до сих пор оптимизирую. Думал даже, что это со мной что-то не так. Но потом понял, что все постоянно что-нибудь оптимизируют. 

Эта статья в меньшей степени о том, почему нужно бороться за производительность, и в большей о том, на что сейчас стоит заменить устаревший стек из JPEG, JSON, gzip и TCP — и как это сделать. 

Спойлер: у нас есть решение и мы его не только показываем — ссылки на open source в конце статьи.

Читать далее

Коварный план: почему всё вокруг ломается

Reading time7 min
Views62K

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

Читать далее

TalkPython: лучшие пакеты Python по итогам 2021 года

Reading time14 min
Views23K

На КДПВ в гостях у TalkPython вы видите Гвидо ван Россума — создателя Python, Марка Шеннона, план ускорения Python в 5 раз за 4 года и, конечно, автора подкаста. А мы делимся подборкой пакетов Python, о которых шла речь в выпусках за уходящий год.

Читать далее

Information

Rating
Does not participate
Location
Азербайджан
Registered
Activity