К 30-летнему юбилею DOOM: как два садиста, психопат и мормон создали одну из величайших игр в истории? Часть четвёртая
В прошлый раз мы оставили наших героев в тот замечательный момент, когда в начале 1991 года они наконец ушли из Softdisc и решили создать собственную компанию. Успех их первого творения, Commander Keen in Invasion of the Vorticons, ставшего первой игрой под PC с реализацией горизонтального скроллинга, открывал перед командой единомышленников большие перспективы. Но ими нужно было суметь воспользоваться, а над друзьями висели обязательства перед бывшим шефом делать ему не менее одной игры в два месяца.
Про сортировку чисел и SIMD, или Как обогнать STL в 16 раз
Есть входное множество целых чисел. Каждому множеству соответствует своё уникальное значение. При этом множества элементов, которые отличаются между собой только порядком следования элементов, а не их значениями, считаются одинаковыми и должны возвращать одно и тоже значение. Одно из решений — посортировать множества, а затем использовать результат как ключ в хэш-таблице. Одно из важных условий — количество элементов в множестве не превышает 128 элементов. Поговорим о том, как сортировать такие множества быстро.
15 января 2024 года глава Tesla Илон Маск показал, как прототип робота Optimus Gen 2 второго поколения умеет почти аккуратно складывать футболку.
Маск уточнил, что в скором времени роботы Tesla научатся это делать полностью автономно и в произвольной среде, например, для демонстрации не потребуется фиксированный на определённой высоте стол, установка коробки в определённом месте, а также только одна рубашка в коробке.
Примечательно, что в мастерской по сборке и настройке Optimus на полу размещены большие красные кнопки, вероятно, для срочного отключения персоналом роботов в случае нештатной ситуации.
Мини-ПК начала 2024 года: пять интересных моделей на все случаи жизни
Праздники уже прошли, так что наступил рабочий период. Ну а для работы нужны нормальные инструменты. Это, например, миниатюрные ПК, которые разрабатываются самыми разными производителями. В этом году уже появилось несколько интересных моделей, о которых стоит знать.
«Хороший инженер мыслит абстрактно, на языке проектирования и создания систем, на языке алгоритмов, компонентов и технического проектирования. Он необязательно знает все подробности синтаксиса конкретного языка, особенно если привык к качественной IDE, которая помогает ему в этом. Важнее понять, какой пакет мне нужно использовать, чем помнить его название»
Я разработчик, а не компилятор
«На Хабре уже были статьи про эту клавиатуру, но у авторов были собранные клавиатуры. Оказалось, сборка — это очень увлекательное занятие, которое обязательно хочется повторить в будущем. Далее опишу свои впечатления о процессе и самой клавиатуре»
Сплит-клавиатура Lily58: впечатления
Mamba: от начала до конца
Во времена повсеместного заполонения трансформерами, которые пожирали в себя всё больше и больше кремниевых чипов, когда казалось, что лучше уже не будет и за каждый новый токен нужно платить в квадрате от предыдущих, в эту холодную зимнюю пору появилась она — Мамба.
Мамба имеет линейную вычислительную зависимость и в 5 раз выше пропускную способность, чем у трансформеров. Авторы проверили своё детище на серии моделей только до 2,8 млрд параметров, что ещё мало похоже на ChatGPT, но уже утёрли нос текущим топам языковых моделей в своей весовой категории. Длина контекста при этом была выбрана как у соответствующего трансформера, так что контекст размером в миллион был проверен только на простых синтетических тестах, что, однако, тоже немаловажно, так как ни трансформеры, ни свёртки с этими тестами не справились.
В этой статье мы детально рассмотрим всю математику новой архитектуры, заметая под ковер преимущества и недостатки
«Вам когда-нибудь приходилось задаваться вопросом, как работает компилятор, но так руки и не дошли разобраться? Тогда этот текст для вас. Мне тоже не доводилось заглядывать под капот, но тут так случилось, что мне нужно прочитать курс лекций о компиляторах местным третьекурсникам. Кто встречался с некомпетентными преподавателями? Здравствуйте, это я :)»
Компилятор за выходные. Часть первая
Обнаружены шахматы для DOS… 1980 года
Шахматы для DOS 1980 года! Вытащены с найденной в 2024 году системной дискеты 86-DOS (QDOS), при этом без особых проблем работают в MS-DOS 2.11, 3.31 на 86Box, MS-DOS Player, FreeDOS, DOSBox-X, NTVDM на современных ОС.
«В IT важно держать руку на пульсе, поэтому в прошлом году, поглядывая краем глаза очередные курсы, я начал присматриваться к целой онлайн-программе. К своему невероятному удивлению узнал, что от меня требуют сертификат английского. А тем временем все мои языковые бумажки давно превратились в филькины грамоты, да разложились на плесень и липовый мёд.
«Не порядок», — подумал я. Так и родилась идея сдавать экзамен по-английскому, но почему именно CPE? А не, скажем, CAE (Cambridge C1) или там TOEFL (американский общий тест на знание английского), IELTS (тоже общий тест, но от Кембриджа).
О том, зачем это всё, да к чему — и что вообще из всего этого вышло — здесь и пойдёт речь»
Опыт подготовки и сдачи экзамена по-английскому CPE (Certificate of Proficiency in English) на уровень С2
STM32 without any trouble
Here’s a brief historical and technical overview to help you understand what a bootloader is, why you need it, and what it has to do with Marlin and STM32: https://u.habr.com/9exI0
⚡ Новости к этому часу
💬 Starlink и T-Mobile протестировали передачу текстовых сообщений с мобильных телефонов напрямую через Direct to Cell
🤖 На Amazon нашлись товары, названия которым написал ChatGPT
🎮 В Steam вышел симулятор Computer Repair Shop с механикой обмана клиентов при ремонте ПК
🛰 Peregrine находится на пути к Земле, где он, скорее всего, сгорит в земной атмосфере
🐱 Flappie представил умную дверку для кошек, которая обнаруживает добычу в зубах животных и не пускает их в дом
🪵 Air Burners представила зарядку на дровах для электромобилей
💰 Video Game Insights представили рейтинг игр в Steam, которые принесли больше всего денег в 2023 году (ФОТО)
🐱 В Роспатенте зарегистрировали шлем для космонавтов с повышенной защитой от падений
🆕 Вышел PulseAudio 17.0
#новости
На прошедшей неделе мы запускали базовую станцию стандарта 4G LTE, затыкали рот Windows 10, собирали автономную игру на C# в 2 килобайтах и разбирались, как на самом деле работает протокол X11.
Лучшие публикации недели (8-14 января 2024)
Большой тест GPT4, GPT3.5, YandexGPT, GigaChat, Saiga в RAG-задаче. Часть вторая
В первой части статьи мы говорили о создании цифрового юриста, способного отвечать на вопросы на основе 200-страничного регламента. Во второй части рассмотрим, как и зачем делать локальные токензайзеры, и попробуем запустить всё полностью на локальной машине с видеокартой 4090.
Февка — некрупная высокотемпературная горелка почти из ничего. Применение в стеклодувном деле
История знает множество замечательно простых и остроумных изобретений, не восхититься которыми может только человек грубый и нечуткий. Такова и февка, она же — паяльная трубка, издревле и традиционно использующаяся ювелирами и часовщиками для пайки твёрдыми припоями своих мелочей, а геологами — для быстрого полевого экспресс-анализа руд.
Как IT-специалисты помогли выиграть суд у банка
История о том, как в суде при помощи разработчиков удалось оспорить кредитный договор, оформленный на человека жуликами.
0xide: локальный облачный сервер
26 октября 2023 года Oxide Computer Company объявила о начале продаж «первого в мире коммерческого облачного компьютера», анонс которого состоялся ещё в 2020 году на стэнфордской лекции «Душа новой машины. Переосмысление серверного компьютера».
Не все сразу поняли, чем 0xide отличается от обычного сервера и почему в маркетинговых материалах он называется «облачный компьютер». Что ж, давайте разбираться.
«Когда я пытаюсь обойтись без *args и **kwargs в сигнатурах функций, это не всегда можно сделать, не вредя удобству использования API. Особенно — когда надо писать функции, которые обращаются к вспомогательным функциям с одинаковыми сигнатурами»
Аннотирование args и kwargs в Python
⚡ Новости к этому часу
⚙️ В МАИ создали новое средство для металлизации печатных плат
🆕 Вышла новая версия DLP‑системы Solar Dozor 7.11
💰 Binance объявила, что пользователи платформы, имеющие гражданство и резидентство России, с 31 января не смогут торговать на Binance P2P
💰 Резиденты «Технополис Москва» по итогам девяти месяцев 2023 года сэкономили на налогах ₽3,1 млрд
🏦 В 2023 году мошенники зарегистрировали 76 доменных имён, созвучных с ЦБ РФ
💳 Акционеры головной структуры «Тинькофф» одобрили переезд с Кипра в Россию
🌐 Энциклопедия «Рувики» вышла из бета‑тестирования (ФОТО)
❌ С включённым AdBlock при просмотре YouTube загрузка ЦП вырастает на 15-18%
#новости
Импортозамещение, которое мы потеряли: советские ЯП и их создатели. Часть вторая
В комментах к предыдущей части некоторые читатели предложили рассказать о ещё нескольких ЯП, которые сыграли значительную роль для развития программирования в СССР. Автор не смеет игнорировать просьбы трудящихся. В этой части цикла поговорим об АЛМО, Эль-76 и Рапира и ЛЯПАС.
О кастомных HTML-тегах по-человечески и как их использовать
Арсенал HTML‑тегов неплох, но его следует расширить. Используя кастомные теги вы можете избавится от львиной доли классов в вашей разметке, заменив их на уникальные имена тегов. Особенно хорошо это будет смотреться в рамках Systematic CSS, где элементы блока обозначаются без классов.
⚡ Новости к этому часу
👨💻 Минспорта утвердило стандарт физподготовки по спортивному программированию
⭐️ Учёные МТИ запустили открытый инструмент для оценки объёмов космического мусора
🧠 Математики описали синхронизацию колебаний нейронов мозга
💫 «Хаббл» запечатлел карликовую галактику UGC 5189A
🐧 Разработчик «Базальт СПО» создал приложение для запуска популярных видеоигр на операционных системах Linux
🌡 В ЮУрГУ создали «нестареющий» термометр
🕹️ Atari в партнёрстве с MyArcade разработала консоль с 7-дюймовым экраном за $150 для ретрогейминга (ФОТО)
#новости
Скрытые возможности элемента <input>
Элемент <input> в HTML самый интересный. Большинство его собратьев вне зависимости от своих атрибутов ведут себя одинаково. При этом атрибут type элемента <input> может принимать 22 разных значения, которые не только меняют его поведение, но и влияют на внешний вид.
Элемент <input> отвечает за всё, начиная с текстового ввода и чекбоксов и заканчивая переключателями и кнопкой для сброса всех полей в форме. В этой статье описаны не только различные типы <input>, но и сопутствующие атрибуты, о которых вы могли не знать и которые делают этот элемент более удобным и применимым в различных ситуациях.
12 января 2024 года Линус Торвальдс обозвал %^!@$% новый код Intel Xe для DRM (Direct Rendering Manager) в Linux 6.8. Он сам исправил его огрехи и призвал сторонних разработчиков и мейнтейнеров проекта тестировать, тестировать и ещё раз тестировать свои патчи.
В списке рассылки Торвальдс выразил разочарование по поводу тестирования, которого «серьёзно не хватает», когда дело касается фрагментов нового кода GPU Intel Xe. В итоге присланные коммиты от разработчиков даже не билдятся, так как там изменили тип переменной intel_wakeref_t с depot_stack_handle_t на unsigned long, а в итоге посыпались ошибки и сборка завершается с ошибкой. Также в файлах заголовков drm есть эта отвратительная вещь: файл header включает в себя файл C, что противно.
«Я пересобрал патч, исправив сломанный заголовочный файл совместимости с Xe, но это определенно НЕ то, как всё должно было работать. Как это вообще до меня дошло без какого-либо тестирования сборки? И почему %^!@$% файл заголовка включает файл C? Это неправильно, независимо от этой ошибки», — заявил Торвальдс.
«Салют! В этой небольшой статье я попытался собрать необычные и малоизвестные трюки с перенаправлениями в bash, которые могут значительно упростить работу»
Кручу-верчу, запутать хочу
— Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQL?
— Нет, SQL не подходит для реализации больших языковых моделей. Язык SQL предназначен для выполнения запросов к данным, хранящимся в РСУБД, и для управления этими запросами. Для реализации большой языковой модели требуются сложные алгоритмы, обширные датасеты, а зачастую — и фреймворки для глубокого обучения. SQL всеми этими возможностями не обладает.
Что ж, лишний раз убеждаешься, что если хочешь что-то сделать хорошо — сделай это сам.
GPT в 500 строках на SQL
Оснащение рабочего места стеклодува в домашней мастерской: меры безопасности
Работа с горячим стеклом на горелке — определённо место повышенной опасности. Здесь соседствуют пламя и высокие температуры, разного рода летучие вредности и излучения, сжатые газы и само стекло — хрупкое, склонное к термоударам, растрескиванию и образованию горячих и острых осколков. Тем не менее, приняв ряд мер, около стеклодувной горелки удаётся существовать относительно безопасно и с удовольствием.
«Привет! Меня зовут Васьен, и я пользуюсь Windows уже 24 года. Большие боссы из Майкрософт молодцы и соображают, что делают. Тут и удачные инвестиции, развитие самых различных направлений и стремление захватить как можно больше рынка (хотя куда уж больше?). Но мне, простому смертному пользователю, искренне не понятно, что же в последнее время делает Майкрософт со своим главным продуктом — операционной системой, которой я как раз и пользуюсь более двадцати лет»
Почему с каждой новой версией Windows от неё усиливается усталость
«Я учился программировать в конце 1980-х — начале 1990-х годов. Тогда я не совсем понимал, что я делаю и почему инструменты, которые я использовал, были впечатляющими, учитывая ограничения имеющегося у нас железа. С годами я приобрёл больше знаний, и теперь мне очень интересно взять в руки DOSBox, чтобы заново испытать те программы и сравнить их с нынешним положением дел»
IDE, которые были у нас 30 лет назад… и которые мы потеряли