Корпорация Nvidia постепенно помогает развивать индустрию машинного обучения, разрабатывая и поставляя партнёрам во всём мире всё более мощные чипы. Открываются новые возможности, невиданные ранее, и одна из них — генерация игр посредством искусственного интеллекта. По мнению Дженсена Хуанга, главы Nvidia, полностью сгенерированные ИИ игры появятся уже через 5-10 лет. Подробности — под катом.
Разработка
Развитие баз данных
В 60-х годах прошлого века возникла потребность в надежной модели хранения и обработки данных, особенно важной для банков и финансовых организаций. В то время отсутствовали единые стандарты работы с данными и моделями, и вся работа сводилась к ручной упорядоченной организации информации. Банкам удавалось записывать информацию о транзакциях в виде файлов в заранее подготовленную структуру, причем у каждой организации было собственное представление о том, как это должно выглядеть и функционировать. Также отсутствовали понятия консистентности (согласованности данных) и целостности данных. В таких файлах часто встречались дубликаты клиентов и их транзакций, которые приходилось уточнять и приводить в порядок вручную.
Данная статья захватывает ключевые моменты в развитии систем управления базами данных, от первых иерархических моделей до современных реляционных, NoSQL и NewSQL систем.
Будьте в курсе развития RISC-V: обсуждаем обновления в разработке и изучаем бенчмарки серверов на открытой архитектуре
Если вы интересуетесь развитием открытой архитектуры или занимаетесь разработкой систем под нее, не пропустите бесплатный митап российского Альянса RISC-V. Он объединяет независимых разработчиков вычислительной техники и программного обеспечения на основе свободной архитектуры.
15 апреля в 19:00 представители альянса соберутся, чтобы обсудить последние разработки и опыт работы с RISC-V-системами. Регистрируйтесь на митап, чтобы подключиться онлайн и быть в курсе развития экосистемы RISC-V в России. Узнаете о поддержке RISC-V в Linux и результатах анализа производительности доступных на рынке RISC-V-серверов. Подробнее о программе — под катом.
На мушке у APT-группировок: kill chain из восьми шагов и котики
Пламенный хабропривет от Александра Бадаева из отдела исследования киберугроз PT Expert Security Center и Яны Авезовой, аналитика исследовательской группы. Оба мы работаем в Positive Technologies, и, как вы могли подумать, пути наши в компании не так уж часто пересекаются. Ну сами посудите: с одной стороны — хакерские группировки, распутывание цепочек атак, а с другой — анализ киберугроз, статистика, сухие цифры и красивые графики. Так, да не так. И вот когда один из нас собрал информацию о 16 хакерских группировках, атакующих Ближний Восток, другой (а точнее — другая) проанализировал их тактики и техники, результатом этого тандема стало большое исследование. Ну а в этой статье мы расскажем о том, как действуют APT‑группировки, с чего начинают атаку и как развивают ее, двигаясь к намеченной цели.
Истории
Пишу Minecraft сервера с нуля. Часть 1. Пинг
Этот цикл статей о разработке серверного ПО совместимого с протоколом Minecraft: Java Edition.
В этой части я акцентирую внимание на основных вещах: типы данных, структура пакетов и как клиент получает информацию о сервере.
Ranking Functions: ROW_NUMBER
Четыре функции ранжирования: ROW_NUMBER, RANK, DENSE_RANK и NTILE появились в SQL Server 2005 и отличаются от обычных скалярных функций тем, что результат, который они выдают для строки, зависит от других строк выборки. От агрегатных функций они отличаются тем, что возвращают только одну строку для каждой строки на входе, т. е. они не объединяют набор строк в одну. В этой статье мы рассмотрим ROW_NUMBER — самую простую из всех функций ранжирования.
Тесты: 100% покрытия и юниты не нужны
Мы покрываем код тестами, когда хотим быть уверенными, что в негативных сценариях он сработает надёжно. Хочется, чтобы тесты были не бланковой заглушкой, а полезной нагрузкой, которая позволит считать, что наше поведение достаточно валидное. Так мы можем обеспечить корректное взаимодействие системы с пользователем.
Меня зовут Максим Вишневский, я Senior Frontend-разработчик в Циан. В этой статье поделюсь историей, как наша команда реформировала подходы к тестированию: как мы отказались от 100% покрытия и unit-тестов, чем их заменили и какой получили результат. Поговорим о проблемах с Enzyme, пользе Playwright, мокинге данных для бэка и взаимодействии с QA.
SPANCheck – проверка безопасности сетевого трафика на уровне ядра (или почему NGFW недостаточно?)
Когда речь заходит о безопасности сетевого трафика, большинство сразу вспоминает про решения класса NGFW (Check Point, UserGate, Fortinet, Континент и т. д.). Это логично: защита периметра сети — это одна из ключевых задач «безопасника». Однако стоит понимать, что NGFW на периметре проверяет именно интернет‑трафик, или, как еще принято его называть, «Север‑Юг».
Но типовая сеть компании состоит не только из периметра. Практически всегда есть ядро сети или большой сегмент внутренних серверов, где объемы трафика значительно выше. Этот тип трафика принято называть «Запад‑Восток» и весьма часто он вообще никак НЕ контролируется и НЕ проверяется.
Как сделать связанный сервер для распределенной базы данных. (MSSQL + Postgre)
Материал подойдет для студентов и тех кто только начинает создавать распределенные базы данных.
Всем доброго дня, дорогие Хабровчане! Решил поделиться созданием связаннх серверов, поскольку информации в интеренете много, но не везде описываются все мелочи.
Уровень моделей для Битрикс сущностей (bitrix models layer)
В процессе разработки почти любого приложения необходим удобный механизм по работе с данными из БД. В данной статье речь пойдет о таком расширении для СMS Bitrix, как alexpr94/bitrix-models, устанавливающийся с помощью пакетного менеджера composer.
Данный пакет привносит слой модели(Model Layer) и позволяет сгенерировать классы моделей для основных сущностей CMS Bitrix, таких как инфоблоки, разделы инфоблоков, highload-блоки и пользователи.
При генерации моделей пакет автоматически считывает все существующие пользовательские поля и свойства сущности Битрикс и на их основе создает специальные типы классов с набором таких же пользовательских полей и свойств, как в Вашей базе данных в lowerCamelCase формате.
В результате Вам предоставляется возможность использовать встроенную в редактор кода(IDE) систему подсказкок возможных полей и свойств класса.
Макфол ответил на вопрос про санкции в микроэлектронике
Бывший посол США в России Майкл Макфол уже пару лет занимается санкциями против России, в том числе в микроэлектронике. Это происходит в рамках так называемой «Группы Ермака‑Макфола».
Документы группы пишут гуманитарии, например они путают Xilinx и Zilog, или «поправляют» слово ARM на слово ARMY, а также считают, что Zynq — процессор, а не гетерогенная система на кристалле с FPGA.
Кстати, Макфол мог бы попросить технических коллег из Стенфорда это править — в Стенфорде крутая электроника, его ректором был Джон Хеннесси, создатель процессоров MIPS и соавтором двух самых известных учебников по компьютерной архитектуре в мире.
Но короче, в прошлую пятницу Макфол устроил созвон в Zoom для платных подписчиков его блога на substack, я к этому созвону присоединился и задал ему такой вопрос:
За кем сейчас охотятся крупные работодатели в IT?
Привет, на связи Кирилл Антонов, коммерческий директор hitch. Мы занимаемся аутстафом IT‑специалистов — выводим разработчиков (и не только) на проекты отечественных корпораций. Непрерывно следим за тем, как меняются потребности крупнейших IT‑компаний и поведение соискателей.
Раз в несколько месяцев буду публиковать «срезы» — заметки о том, кто сейчас особенно востребован на отечественном рынке (а значит, кому больше всего платят).
Третий год борюсь с инфоцыганами. Теперь за мной следит наблюдательный совет
Никто доподлинно не знает, что происходит на рынке IT-образования.
Бизнес по торговле людьми явно более честный, прозрачный и социально ориентированный, чем то, что происходит в EdTech. Во всяком случае, чем дольше провожу исследование IT-курсов, тем сильнее у меня именно такие ощущения.
И чем больше подобных ощущений, тем сложнее оставаться эмоционально выключенным и непредвзятым.
Ближайшие события
Исходников нет, но мы не сдадимся: как и зачем я портировал более старый Android, чем стоял «с завода»?
Моддинг-сцена с разработкой и портированием кастомных прошивок для Android-устройств существует вот уже более 10 лет. В основном, энтузиасты пытаются проапгрейдить свои устройства путем портирования более свежих версий Android, чем предлагает производитель девайса. Чего уж говорить, если Galaxy S III, которому уже 12 лет стукнуло, получил неофициальный апгрейд до Android 14. Порой мне в голову приходят различные, весьма странные моддерские мысли: например, почему бы не портировать на старенький смартфон… ещё более старую версию Android, дабы посмотреть «что будет». Казалось бы «портировал и портировал», но в процессе работы я столкнулся с множеством интересных нюансов и особенностей работы Android, о которых хотел бы рассказать и вам — моим читателям! Сегодняшняя статья будет в классическом «научпоп»-стиле без кода, зато с подробными объяснениями одной из техник портирования Android-прошивок путем патчинга скриптов для конфигурации системы и подмены Board-specific библиотек, дабы система «увидела» всё необходимое железо! Интересно? Тогда жду вас под катом!
Не баг, а фича: видеоигровые баги, которые стали классикой
Даже в AAA‑играх могут быть ошибки. Чаще всего сталкиваться с багами неприятно, однако иногда они могут войти в геймплей целого жанра или вовсе стать основой целой франшизы видеоигр. Разработчикам может будет полезным что‑то позаимствовать.
В комментариях пишите о других известных багах, которые повлияли на игровой процесс в играх, особенно сделанных студиями родом из России.
В качестве бонуса в конце — небольшая подборка багов, которые превратились в мемы.
Настраиваем статический анализ Unreal Engine проекта
В PVS-Studio давно есть возможность анализировать Unreal Engine проекты. Но с момента последней заметки мы много работали над этим режимом. Поэтому хочу рассказать о том, как быстро настроить наш анализатор для проверки вашего проекта на Unreal Engine.
Kerberos простыми словами
Несмотря на то, что уже существует множество различных статей про Kerberos, я всё‑таки решил написать ещё одну. Прежде всего эта статья написана для меня лично: я захотел обобщить знания, полученные в ходе изучения других статей, документации, а также в ходе практического использования Kerberos. Однако я также надеюсь, что статья будет полезна всем её читателям и кто‑то найдёт в ней новую и полезную информацию.
Данную статью я написал после того, как сделал собственную библиотеку, генерирующую сообщения протокола Kerberos, а также после того, как я протестировал «стандартный клиент» Kerberos в Windows — набор функций SSPI. Я научился тестировать произвольные конфигурации сервисов при всех возможных видах делегирования. Я нашёл способ, как выполнять пре‑аутентификацию в Windows как с применением имени пользователя и пароля, так и с помощью PKINIT. Я также сделал библиотеку, которая умещает «стандартный» код для запроса к SSPI в 3–5 строк вместо, скажем, 50-ти.
Хотя в названии статьи фигурирует «простыми словами» однако эта статья предполагает, что читатель уже имеет какое‑то представление о Kerberos.
Принцип работы утилиты ping в Linux
Что такое ICMP протокол и с чем его едят? Что такое сетевая модель OSI? Как послать ICMP пакет на сайт и получить ответ? Как работает утилита ping на linux? Все это вы узнаете здесь.
Ваши требования … не SMART
Уверен, вы слышали, что требования к разрабатываемому ПО должны быть S.M.A.R.T. - Specific (конкретные), Measurable (измеримые), Attainable (достижимые), Relevant (значимые) и Time-bound (своевременные). Слышали это правило все, но часто ли мы соблюдаем его? Часто ли проверяем требования по этим критериям? Если нет – мало обжигались. Давайте пофантазируем с примерами: «Что, если…»
Дизайн высоконагруженных приложений будущего. Путешествие без сценария с Мартином Клеппманом
Jesse Anderson, директор Big Data Institute, и Martin Kleppmann, автор книги «Высоконагруженные приложения. Программирование, масштабирование, поддержка», вместе исследуют меняющийся ландшафт обработки данных. Они начинают с истории создания книги Мартина, подчеркивая важность искусства задавать правильные вопросы. Мартин рассказывает об изменениях, произошедших в отрасли с 2017 года, подчеркивая рост облачных сервисов. Затем беседа приобретает новый поворот, когда Мартин погружается в академические круги, делясь своими соображениями о программном обеспечении для совместной работы на основе локального подхода и увлекательном мире Automerge. Начинающие инженеры‑программисты получат несколько советов о том, как найти тонкий баланс между простотой и гибкостью. В завершение обсуждают о различных карьерных путях в динамичной сфере инженерии данных, что делает разговор полезным для профессионалов на любом этапе их пути.
Хабы
Вклад авторов
alizar 91614.8marks 24166.6ru_vds 19907.3alexzfort 14179.0XaocCPS 10986.2pronskiy 10649.4m1rko 10382.0ptsecurity 9559.4Andrey2008 9538.2Jeditobe 9387.6