Category : habrahabr

habrahabr
4 миллиарда операторов if

Просматривая недавно соцсети, я наткнулся на этот скриншот. Разумеется, его сопровождало множество злобных комментариев, критикующих попытку этого новичка в программировании решить классическую задачу computer science: операцию деления с остатком.В современном мире, где ИИ постепенно заменяет программистов, отнимая у них работу и совершая переворот в том, как мы подходим к рассуждениям о коде, нам, возможно, следует быть более открытыми к мыслям людей, недавно пришедших в нашу отрасль? На само…

  • пятница, 29 декабря 2023 г. в 00:00:33
habrahabr
Реальный Python: грустные факты, которые вас разочаруют

Начинаем гуглить информацию о Python. Все статьи как под копирку: тут хорошо платят, легко учиться, гостеприимное коммьюнити, просто рай на земле. Это ловушка. Я писала на Python полтора года, так что пришло время поговорить о том, как там обстоят дела на самом деле. Вводные данныеначала в марте 2022 годаустановила Python 3.8  — вторая по популярности версия языкавыбрала язык из-за максимально лояльной динамической типизации, простого обучения (относительно Go) и красивых отступоврешение прини…

  • пятница, 29 декабря 2023 г. в 00:00:33
habrahabr
OpenAPI станет проще: готовится версия 4.0

Сегодня OpenAPI считается стандартом де-факто для описания программных интерфейсов. Основной смысл этих спецификаций в том, что и документация, и серверный интерфейс API генерируются автоматически на основании схемы OpenAPI. Во-первых, это гарантирует актуальность документации и её соответствие реально используемым методам. Во-вторых, сильно облегчает жизнь потребителям API, у которых автоматически генерируется клиентский код. До появления расширения OpenAPI DevTools проектировать схему Op…

  • четверг, 28 декабря 2023 г. в 00:00:25
habrahabr
Распаковываем архив gzip вручную

В этой небольшой статье мы создадим архив gzip, после чего разберём его внутренние составляющие и просмотрим начинку. Избегая лишней сложности, в качестве содержимого для сжатия мы просто запишем в изначальный файл 8 символов a. $ echo "aaaaaaaa" > test.out $ xxd test.out 00000000: 6161 6161 6161 6161 0a aaaaaaaa. Файл получился размером 9 байт — 8 символов a плюс перевод каретки в конце. Теперь архивируем его. Сделаем это командой gzip -1, поскольку так мы задействуем самый …

  • четверг, 28 декабря 2023 г. в 00:00:24
habrahabr
Тайна образования Луны, двойных астероидов и лунной воды

В 1988 году в Крымской астрофизической обсерватории доктор физико-математических наук Валентина Владимировна Прокофьева-Михайловская со своей группой начала телевизионные наблюдения блеска астероидов. Телевизионный комплекс был смонтирован на телескопе с диаметром зеркала 0.5 метра. Характерная переменность, зарегистрированная у астероида (87) Сильвия, доказывала, что этот астероид имеет спутник – что и было объявлено в статье 1992 года Прокофьевой В.В. и Демчика М.И. в «Астрономический журнал…

  • четверг, 28 декабря 2023 г. в 00:00:23
habrahabr
«Квантовая» диаграма Виенна: как нас дурит научпоп

Хорошо, когда нам простыми словами объясняют сложные вещи, правда? Особенно когда речь про такие неочевидные эффекты как квантовая запутанность, суперпозиция и прочее квантовое. А как здорово, когда квантовый эффект можно увидеть своими глазами! Нам всего-то нужны три простые советские поляризующие пластинки......и вот, вот это серое окошко на пересечении пластинок—квантовый эффект! По крайней мере, так твердит нам научпоп. This is weirder than you think! Но это неправда, и я расскажу почему.В…

  • четверг, 28 декабря 2023 г. в 00:00:22
habrahabr
Почему B-деревья быстрые?

B-дерево — это структура, помогающая выполнять поиск в больших объёмах данных. Она была изобретена более сорока лет назад, однако по-прежнему используется в большинстве современных баз данных. Хотя существуют и более новые структуры индексов, например, LSM-деревья, B-дерево пока никто не победил в обработке большинства запросов баз данных.После прочтения этого поста вы будете знать, как B-дерево упорядочивает данные и выполняет поисковые запросы.ПроисхождениеЧтобы понять B-дерево, давайте снач…

  • четверг, 28 декабря 2023 г. в 00:00:20
habrahabr
Как я научился не волноваться и полюбил технологическую сингулярность

Часто ли вы думаете о Древнем Риме технологической сингулярности? С последним рывком в развитии ИИ и растущем присутствии роботов в окружающей реальности и новостной повестке, самое время вспомнить о том, что это такое.Технологическая сингулярность — это гипотетический момент будущего времени, в котором технологический рост станет неконтролируемым и необратимым, что приведет к непредвиденным последствиям для человеческой цивилизации. Согласно самой популярной версии, модели взрыва интеллекта А…

  • среда, 27 декабря 2023 г. в 00:00:18
habrahabr
Вам [не] нужен свой игровой движок

Что мне больше всего нравится в gamedev, так это что большая часть игр и каждый первый кастомный игровой движок бросают вызов устоявшимися стереотипам разработки. Иначе зачем начинать разработку такого сложного и комплексного софта, когда десятки похожих софтин есть вокруг. Конечно такие монстры как Unreal и Unity и десяток монстриков калибром поменьше существенно упростили разработку во многих отношениях, привлекли тысячи разработчиков к созданию множества великолепных игр с использованием го…

  • среда, 27 декабря 2023 г. в 00:00:17