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

Тестировщик ПО

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

Парадокс Ферми – вовсе не парадокс, а вопрос; в чём он состоит, и как его решать (часть 2)

Время на прочтение7 мин
Количество просмотров25K
image
«Репликатор» из сериала «Звёздные врата»

В прошлый раз мы разобрались с тем, что парадокс Ферми – вовсе не парадокс, а просто вопрос: «А где все?», и рассмотрели некоторые варианты ответов на него.

Вкратце: если в нашем Млечном Пути, сотни миллиардов звёзд, и у приличного процента из них есть планетные системы, а возраст Галактики составляет около 8-10 млрд лет, то уж наверняка за это время где-то должна была появиться высокоразвитая цивилизация (а, может, и не одна), способная колонизировать звёзды. Почему же мы не видим следов её деятельности?

С 1950-х годов прошлого века появилось немало гипотез, пытающихся объяснить отсутствие наблюдений. Продолжим их рассматривать.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+47
Комментарии101

Почему Starlink от Маска — это скам

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


В тоннелях Boring Company, построенных, чтобы не было пробок, теперь пробки. Cybertruck не поедет до 2023 года Но все это мелкие проблемы по сравнению с тем, чем обещает стать Starlink. Это главный проект Илона Маска, который должен спонсировать SpaceX, и собрать достаточно денег, чтобы обеспечить полет на Марс. Но он может стать и самой большой ошибкой.


1500 спутников уже запущены и работают, 145 000 пользователей в США и Канаде уже довольны своим интернетом. Тем не менее верить в успех этого проекта, скорее всего, преждевременно. И даже более того: возможно, нам будет лучше, чтобы это будущее никогда не наступило.


Осторожно, в тексте много цифр. И, если вы продолжаете верить в Starlink, он может вас сильно разочаровать.

Читать дальше →
Всего голосов 435: ↑286 и ↓149+200
Комментарии984

Забытые жемчужины отечественного игростроя

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

Ладно, признаемся честно — под словом «жемчужина» мы будем в данном случае подразумевать не «шедевр на все времена, в который стоит сыграть даже сегодня». Такая отечественная игра всего одна, и все её знают — это тетрис. Нет, мы будем говорить о просто хороших играх, которые не очень часто мелькают в обзорах первых лет отечественной гейм-индустрии.

Помимо уже упомянутого тетриса обычно вспоминают «Перестройку» от фирмы Nikita Lines, ну а дальше переходят по накатанной к общепризнанным хитам: «Parkan: Хроники империи», «Аллоды», «Дальнобойщики», «Ил-2: Штурмовик» и далее. Мы же попробуем рассмотреть здесь несколько проектов, которые чем-то примечательны, но либо прошли вовсе незамеченными, либо имели популярность, но затем канули в пучину забвения по тем или иным причинам. Список, разумеется, неисчерпывающий, так что могут последовать и продолжения. Делитесь в комментариях своими забытыми жемчужинами.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии37

Протекающие абстракции и код, оставшийся со времён Windows 98

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

В конце 1990-х команды разработчиков Windows Shell и Internet Explorer внедрили множество потрясающих и сложных структур, позволяющих использовать расширение оболочки и браузера для обработки сценариев, создаваемых третьими сторонами. Например, Internet Explorer поддерживал концепцию подключаемых протоколов ("Что если какой-то протокол, допустим, FTPS станет таким же важным, как и HTTP?"), а Windows Shell обеспечивала чрезвычайно гибкое множество абстрактного использования пространств имён, что позволяло третьим сторонам создавать просматриваемые «папки», в основе которых не лежит файловая система — от WebDAV ("ваш HTTP-сервер — это папка") до папок CAB ("ваш архив CAB — это папка"). Работая в 2004 году проект-менеджером в команде по созданию клипарта, я создал приложение .NET для просмотра клипарта прямо из веб-сервисов Office, и набросал черновик расширения Windows Shell, благодаря которому бы казалось, что огромный веб-архив клипарта Microsoft был установлен в локальной папке системы пользователя.

Вероятно, самым популярным (или печально известным) примером расширения пространства имён оболочки является расширение Compressed Folders, обрабатывающее просмотр файлов ZIP. Compressed Folders, впервые появившиеся в составе Windows 98 Plus Pack, а позже и в Windows Me+, позволяли миллиардам пользователей Windows взаимодействовать с файлами ZIP без скачивания стороннего ПО. Вероятно, это может вас удивить, но эта функция была куплена у третьих лиц — Microsoft приобрела интеграцию для Explorer, представлявшую собой побочный проект Дэйва Пламмера, а лежащий в её основе движок DynaZIP разработала компания InnerMedia.

К сожалению, этот код уже давно не обновляли. Очень давно.
Читать дальше →
Всего голосов 93: ↑93 и ↓0+93
Комментарии48

В «Castlevania: Resurrection» для Sega Dreamcast, которую отменили 20 лет назад, можно поиграть прямо сейчас

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

В 1999 году на E3 была представлена шикарная игра «Castlevania: Resurrection» для Sega Dreamcast. Это была еще не полноценная игра, но вполне играбельный прототип с рядом ограничений. К сожалению, в марте 2000 года игру отменили, и с тех пор о ней почти ничего не было слышно.

До сегодняшнего дня, ведь игра была восстановлена и загружена в интернет, где в нее можно поиграть! Все благодаря цифровому археологу и ценителю игр Комби Лорану (Comby Laurent). Он, кстати, занимается не только Castlevania, ценитель ретроигр опубликовал у себя на сайте целый список так и не вышедших тайтлов для Dreamcast. Давайте посмотрим, что из себя представляет воскресшая из мертвых игра из начала 2000-х.
Всего голосов 39: ↑38 и ↓1+45
Комментарии0

Какую роль играла MS-DOS в составе Windows 95?

Время на прочтение5 мин
Количество просмотров59K
MS-DOS в составе Windows 95 использовалась для двух целей:
  • Она служила загрузчиком.
  • Она выступала в качестве слоя совместимости с 16-битными драйверами.
Когда Windows 95 стартовала, сначала загружалась специальная версия MS-DOS, именно она обрабатывала ваш файл CONFIG.SYS, запускала COMMAND.COM, который выполнял ваш AUTOEXEC.BAT и в конце концов выполнял WIN.COM, который в свою очередь начинал процесс загрузки 32-битного менеджера виртуальных машин VMM.

Эта специальная версия MS-DOS была полностью функциональна в той мере, в которой слова «полностью функциональна» вообще применимы к MS-DOS. По-другому и быть не могло, при выходе в режим эмуляции MS-DOS только эта версия и оставалась работать.

Программа WIN.COM начинала загрузку того, что большинство людей называют собственно «Windows». Посредством копии MS-DOS она загружала менеджер виртуальных машин, считывала файл SYSTEM.INI, загружала драйверы виртуальных устройств, затем выключала EMM386 (если таковой был) и переключалась в защищённый режим. «Настоящая Windows» с точки зрения большинства людей — именно защищённый режим.

В защищённом режиме драйверы виртуальных устройств творили свою магию. В числе их действий было вытаскивание всего состояния MS-DOS, перевод его в состояние 32-битной файловой подсистемы и отключение MS-DOS. Все дальнейшие файловые операции направлялись в 32-битную файловую подсистему. Когда программа обращалась к int 21h, ответственной за обработку оказывалась 32-битная файловая подсистема.

Здесь вступает в игру вторая роль MS-DOS. Видите ли, программы и драйверы MS-DOS любили встраиваться в глубины операционной системы. Они могли заменять обработчик прерывания 21h, они могли патчить код системы, они могли заменять низкоуровневые дисковые обработчики int 25h и int 26h. Они могли также творить умопомрачительные вещи с прерываниями BIOS типа int 13h, ответственного за работу с дисками.

Читать дальше →
Всего голосов 113: ↑104 и ↓9+95
Комментарии21

SQL HowTo: решаем головоломку «Небоскрёбы» почти без перебора

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

Многие знают правила этой головоломки (Skyscrapers):

"Перед вами вид сверху на городской квартал. В каждой клетке стоит "небоскреб" высотой, равной числу в этой клетке. Числа с боков сетки означают количество "небоскребов", видимых из соответствующей строки или столбца, если смотреть от этого числа.

Задача: заполнить сетку числами так, чтобы в каждой строке и в каждом столбце каждое число использовалось лишь единожды."

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

Зачем же делать это на SQL? Потому что можем! А заодно потому что это позволит научиться конструировать "очень сложные запросы", что может пригодиться и в обычной работе.

Сломать голову, вывихнуть мозг
Всего голосов 32: ↑32 и ↓0+32
Комментарии8

Обзор исходного кода Quake 2

Время на прочтение51 мин
Количество просмотров61K
image

Около месяца свободного времени я уделил чтению исходного кода Quake II. Это был удивительный и поучительный опыт, потому что в движок idTech3 внесено большое изменение: Quake 1, Quake World и QuakeGL объединены в одну красивую архитектуру кода. Особенно был интересен способ, которым достигли модульности, несмотря на то, что язык программирования C не обеспечивает полиморфизма.

Quake II во многих отношениях является блестящим образцом программного обеспечения, потому что это был самый популярный (по количеству лицензий) трёхмерный движок всех времён. На его основе было создано более 30 игр. Кроме того, он ознаменовал переход игровой индустрии от программной/8-битной системы цветов к аппаратной/24-битной. Этот переход произошёл примерно в 1997 году.

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

Процесс «подчистки» меня сильно увлёк: в статье теперь более 40 мегабайт видео, скриншотов и иллюстраций. Сейчас я не знаю, стоили ли мои труды того, и нужно ли публиковать в будущем необработанные заметки в ASCII, выскажите своё мнение.
Всего голосов 111: ↑110 и ↓1+109
Комментарии63

Почему важно, что системы линейных уравнений решаются быстрее, чем множатся матрицы

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

В 1998, когда Google только появился, его киллер-фичей был патентованный алгоритм PageRank для сортировки результатов поиска по популярности. Описанный стэнфордскими аспирантами Брином и Пейджем в научной статье, он сводится к очень простой идее:

Читать далее
Всего голосов 50: ↑45 и ↓5+58
Комментарии11

Полезные консольные Linux утилиты

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

В этой подборке представлены полезные малоизвестные консольные Linux утилиты. В списке не представлены Pentest утилиты, так как у них есть своя подборка.


Осторожно много скриншотов. Добавил до ката утилиту binenv.


binenv — cамая интересная утилита для установки новых популярных программ в linux, но которых нет в пакетном менеджере.

Читать дальше →
Всего голосов 96: ↑92 и ↓4+110
Комментарии110

Модель угроз: как и зачем мы поделили хакеров на категории

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

Долгое время мы делили киберпреступников на две группы: любителей и профессионалов. Первые бомбили доступным ВПО и баловались мелким хулиганством. Вторые разрабатывали собственные утилиты, целясь в крупный бизнес и госвласть. Подход понятный и простой. Проблема только в том, что сами хакеры уже вышли за пределы этого шаблона. А раз врага надо знать в лицо, то и мы в JSOC решили подойти к делению хакеров и определению их инструментов, методик и целей с другой стороны. В итоге у нас получилось 5 уровней злоумышленников. Каких именно, читайте под катом.

Кто стучится в сеть ко мне?
Всего голосов 11: ↑9 и ↓2+9
Комментарии6

Как в Яндексе используют PyTest и другие фреймворки для функционального тестирования

Время на прочтение19 мин
Количество просмотров125K
Всем привет! Меня зовут Сергей, и в Яндексе я работаю в команде автоматизации тестирования сервисов монетизации. Перед каждой командой, которая занимается задачами автоматизации тестирования, встает вопрос: «Какой [фреймворк|инструмент] выбрать для написания своих тестов?» В этом посте я хочу помочь вам на него ответить. Если быть конкретнее, речь пойдет об инструментах тестирования на языке Python, но многие из идей и выводов можно распространить на другие языки программирования, поскольку подходы часто не зависят от конкретной технологии.



В Python существует множество инструментов для написания тестов и выбор между ними неочевиден. Я опишу интересные варианты использования PyTest и расскажу о его [плюсах|минусах|неявных возможностях]. В статье вы найдёте развёрнутый пример использования Allure, который служит для создания простых и понятных отчётов автотестов. Также в примерах будет применяться фреймворк для написания матчеров — Hamcrest для Python. Надеюсь, что в итоге, те, кто сейчас в поиске инструментов для тестирования, смогут на основе изложенных примеров быстро внедрить функциональное тестирование в своем окружении. Те же, кто уже использует какой-то инструмент, смогут узнать новые подходы, варианты использования и концепции.
Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии10

Как я нашел в публичном доступе исходники нескольких сервисов ФНС

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

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

Читать далее
Всего голосов 223: ↑215 и ↓8+278
Комментарии193

Чтение на выходных: 17 независимых блогов по математике, алгоритмам и языкам программирования

Время на прочтение5 мин
Количество просмотров59K
Сегодня мы подготовили очередную [наш IaaS-дайджест и материалы по структурированию кода] подборку полезных источников. На этот раз мы решили изучить тематическую ветку на Hacker News и рассказали о блогах, которые могут хорошо дополнить чтение «Хабра».

Авторы данных блогов готовят как материалы для новичков с туториалами и разъяснениями основ, так и более углубленные статьи и исследования. Всех заинтересовавшихся приглашаем под кат.

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

Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии1

Заключённый использовал одиночную камеру для изучения математики. Сегодня он решает самые трудные уравнения в мире

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

В 2010 году некий Кристофер Хейвенс (Christopher Havens) был приговорен к 25 годам тюремного заключения за убийство. В 2020 году его работа по теории чисел была опубликована в научном журнале. Все стены камеры, в которой Кристофер Хейвенс отбывает срок, испещрены бумажными листками с формулами.

Бумажные листы, исписанные числами и греческими символами, уже не помещаются на небольшом столике и теперь, как пёстрые обои, развешаны по всем стенам камеры размером 2.4x3.7 метров. В процессе поиска решений он мог записывать на стенах уравнения непрерывных дробей длиной до 4.5 метров. Это его история.

Приятного чтения!
Всего голосов 116: ↑96 и ↓20+112
Комментарии131

Как освоить Vim?

Время на прочтение6 мин
Количество просмотров99K
Осваивать Vim — это, пожалуй, страшно. Или, точнее, очень страшно. Речь идёт об изучении совершенно необычного подхода к редактированию кода, не говоря уже о работе с простым текстом. Многие несправедливо обвиняют тех, кто выбирает Vim, в том, что они впустую тратят время.

Я со всей уверенностью могу заявить о том, что Vim позволил мне повысить эффективность в деле написания программ. Работать стало удобнее (ниже я расскажу об этом более подробно). Я никому не хочу навязывать Vim, но очень рекомендую освоить этот редактор всем, кто занимается программированием, работает в сфере Data Science, в общем — тем, кто так или иначе пишет и редактирует некий код.



Если вам очень хочется узнать о том, стоит ли вам использовать Vim, и о том, кто и для чего им реально пользуется — взгляните на этот материал (кстати, не позвольте его названию, «Не пользуйтесь Vim», ввести себя в заблуждение). Ещё можете посмотреть это видео, которое, кстати, подготовил сам Люк Смит.

А теперь, учитывая всё вышесказанное, предлагаю поговорить о том, что такое, на самом деле, Vim!
Читать дальше →
Всего голосов 44: ↑39 и ↓5+51
Комментарии370

Телефонное мошенничество – по горячим следам

Время на прочтение5 мин
Количество просмотров133K
Намедни моих тестя и тещу телефонные мошенники развели на 350 000 (триста пятьдесят тысяч) рублей. Я не смог им помешать, хотя очень пытался, и деньги заслуженных пенсионеров пополнили общак в какой-нибудь колонии под Челябинском, зато у меня получилось по горячим следам получить ответы на вопросы, которые интересовали меня, когда я читал подобные истории в интернете.

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

Добро пожаловать под кат!
Читать дальше →
Всего голосов 138: ↑123 и ↓15+154
Комментарии703

Почему чип Apple M1 такой быстрый?

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

Опыт использования новых маков с М1 начинает расставлять точки над i. Эти чипы быстрые. Очень быстрые. Но почему? В чем магия?

Я смотрел видео на Youtube, где автор купил iMac в прошлом году максимальной конфигурации. Машина с 40+ Gb ОЗУ стоила ему около 4000$. Он смотрел с недоверием, как его гипердорогой iMac был разнесен в пух и прах новеньким Mac mini с М1 на борту, который стоил около 700$.

В реальном мире, тест за тестом, макбуки с М1 не просто превосходят топовые компьютеры Intel прошлых поколений. Компьютеры Mac просто уничтожают их. С недоверием люди стали спрашивать, как такое возможно?

Читать далее
Всего голосов 99: ↑57 и ↓42+31
Комментарии550

Разработана опенсорсная утилита Depix для восстановления паролей с размытых скриншотов

Время на прочтение6 мин
Количество просмотров18K
Разработана опенсорсная утилита Depix для восстановления паролей с размытых скриншотов


Результат работы программы Depix (исходный код)

В голливудских фильмах любят преувеличивать. Они зуммируют фотографии в миллион раз — и выводят цифры из одного пикселя.

Хотя это невероятно, но научные исследования в этой области идут давно. Ещё в 90-е годы были опубликованы теоретические работы и PoC с восстановлением текста из размытых изображений. В 2012 году Владимир Южиков писал на Хабре о своей программе SmartDeblur для восстановления смазанных и расфокусированных снимков.

Несмотря на достаточно хорошее развитие науки в данном направлении, до сих пор не было специализированного инструмента конкретно для восстановления паролей (текста) после пикселизации. Программа Depix — первый такой инструмент.
Читать дальше →
Всего голосов 47: ↑45 и ↓2+63
Комментарии34

Интуитивное объяснение интеграла. Часть I — от умножения натуральных чисел до Ньютона и Лейбница

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

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

Читать далее
Всего голосов 17: ↑14 и ↓3+16
Комментарии67

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность