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

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Игровое будущее и искусственный интеллект по версии Nvidia: через 10 лет ИИ захватит игрострой?

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

Корпорация Nvidia постепенно помогает развивать индустрию машинного обучения, разрабатывая и поставляя партнёрам во всём мире всё более мощные чипы. Открываются новые возможности, невиданные ранее, и одна из них — генерация игр посредством искусственного интеллекта. По мнению Дженсена Хуанга, главы Nvidia, полностью сгенерированные ИИ игры появятся уже через 5-10 лет. Подробности — под катом.

Читать далее
Всего голосов 19: ↑16 и ↓3+13
Комментарии5

Развитие баз данных

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров5.4K

В 60-х годах прошлого века возникла потребность в надежной модели хранения и обработки данных, особенно важной для банков и финансовых организаций. В то время отсутствовали единые стандарты работы с данными и моделями, и вся работа сводилась к ручной упорядоченной организации информации. Банкам удавалось записывать информацию о транзакциях в виде файлов в заранее подготовленную структуру, причем у каждой организации было собственное представление о том, как это должно выглядеть и функционировать. Также отсутствовали понятия консистентности (согласованности данных) и целостности данных. В таких файлах часто встречались дубликаты клиентов и их транзакций, которые приходилось уточнять и приводить в порядок вручную.

Данная статья захватывает ключевые моменты в развитии систем управления базами данных, от первых иерархических моделей до современных реляционных, NoSQL и NewSQL систем.

Читать далее
Всего голосов 12: ↑9 и ↓3+6
Комментарии10

Будьте в курсе развития RISC-V: обсуждаем обновления в разработке и изучаем бенчмарки серверов на открытой архитектуре

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

Если вы интересуетесь развитием открытой архитектуры или занимаетесь разработкой систем под нее, не пропустите бесплатный митап российского Альянса RISC-V. Он объединяет независимых разработчиков вычислительной техники и программного обеспечения на основе свободной архитектуры. 

15 апреля в 19:00 представители альянса соберутся, чтобы обсудить последние разработки и опыт работы с RISC-V-системами. Регистрируйтесь на митап, чтобы подключиться онлайн и быть в курсе развития экосистемы RISC-V в России. Узнаете о поддержке RISC-V в Linux и результатах анализа производительности доступных на рынке RISC-V-серверов. Подробнее о программе — под катом.

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

На мушке у APT-группировок: kill chain из восьми шагов и котики

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров2.7K

Пламенный хабропривет от Александра Бадаева из отдела исследования киберугроз PT Expert Security Center и Яны Авезовой, аналитика исследовательской группы. Оба мы работаем в Positive Technologies, и, как вы могли подумать, пути наши в компании не так уж часто пересекаются. Ну сами посудите: с одной стороны — хакерские группировки, распутывание цепочек атак, а с другой — анализ киберугроз, статистика, сухие цифры и красивые графики. Так, да не так. И вот когда один из нас собрал информацию о 16 хакерских группировках, атакующих Ближний Восток, другой (а точнее — другая) проанализировал их тактики и техники, результатом этого тандема стало большое исследование. Ну а в этой статье мы расскажем о том, как действуют APT‑группировки, с чего начинают атаку и как развивают ее, двигаясь к намеченной цели.

Больше котиков
Всего голосов 10: ↑10 и ↓0+10
Комментарии15

Истории

Пишу Minecraft сервера с нуля. Часть 1. Пинг

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

Этот цикл статей о разработке серверного ПО совместимого с протоколом Minecraft: Java Edition.

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

Читать далее
Всего голосов 21: ↑21 и ↓0+21
Комментарии15

Ranking Functions: ROW_NUMBER

Уровень сложностиСложный
Время на прочтение5 мин
Количество просмотров923

Четыре функции ранжирования: ROW_NUMBER, RANK, DENSE_RANK и NTILE появились в SQL Server 2005 и отличаются от обычных скалярных функций тем, что результат, который они выдают для строки, зависит от других строк выборки. От агрегатных функций они отличаются тем, что возвращают только одну строку для каждой строки на входе, т. е. они не объединяют набор строк в одну. В этой статье мы рассмотрим ROW_NUMBER — самую простую из всех функций ранжирования.

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии4

Тесты: 100% покрытия и юниты не нужны

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров7.4K

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

Меня зовут Максим Вишневский, я Senior Frontend-разработчик в Циан. В этой статье поделюсь историей, как наша команда реформировала подходы к тестированию: как мы отказались от 100% покрытия и unit-тестов, чем их заменили и какой получили результат. Поговорим о проблемах с Enzyme, пользе Playwright, мокинге данных для бэка и взаимодействии с QA.

Читать далее
Всего голосов 22: ↑18 и ↓4+14
Комментарии11

SPANCheck – проверка безопасности сетевого трафика на уровне ядра (или почему NGFW недостаточно?)

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.5K

Когда речь заходит о безопасности сетевого трафика, большинство сразу вспоминает про решения класса NGFW (Check Point, UserGate, Fortinet, Континент и т. д.). Это логично: защита периметра сети — это одна из ключевых задач «безопасника». Однако стоит понимать, что NGFW на периметре проверяет именно интернет‑трафик, или, как еще принято его называть, «Север‑Юг».

Но типовая сеть компании состоит не только из периметра. Практически всегда есть ядро сети или большой сегмент внутренних серверов, где объемы трафика значительно выше. Этот тип трафика принято называть «Запад‑Восток» и весьма часто он вообще никак НЕ контролируется и НЕ проверяется.

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

Как сделать связанный сервер для распределенной базы данных. (MSSQL + Postgre)

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.8K

Материал подойдет для студентов и тех кто только начинает создавать распределенные базы данных.

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

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии19

Уровень моделей для Битрикс сущностей (bitrix models layer)

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

В процессе разработки почти любого приложения необходим удобный механизм по работе с данными из БД. В данной статье речь пойдет о таком расширении для СMS Bitrix, как alexpr94/bitrix-models, устанавливающийся с помощью пакетного менеджера composer.

Данный пакет привносит слой модели(Model Layer) и позволяет сгенерировать классы моделей для основных сущностей CMS Bitrix, таких как инфоблоки, разделы инфоблоков, highload-блоки и пользователи.

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

В результате Вам предоставляется возможность использовать встроенную в редактор кода(IDE) систему подсказкок возможных полей и свойств класса.

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

Макфол ответил на вопрос про санкции в микроэлектронике

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров8.2K

Бывший посол США в России Майкл Макфол уже пару лет занимается санкциями против России, в том числе в микроэлектронике. Это происходит в рамках так называемой «Группы Ермака‑Макфола».

Документы группы пишут гуманитарии, например они путают Xilinx и Zilog, или «поправляют» слово ARM на слово ARMY, а также считают, что Zynq — процессор, а не гетерогенная система на кристалле с FPGA.

Кстати, Макфол мог бы попросить технических коллег из Стенфорда это править — в Стенфорде крутая электроника, его ректором был Джон Хеннесси, создатель процессоров MIPS и соавтором двух самых известных учебников по компьютерной архитектуре в мире.

Но короче, в прошлую пятницу Макфол устроил созвон в Zoom для платных подписчиков его блога на substack, я к этому созвону присоединился и задал ему такой вопрос:

Читать далее
Всего голосов 48: ↑38 и ↓10+28
Комментарии61

За кем сейчас охотятся крупные работодатели в IT?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров67K

Привет, на связи Кирилл Антонов, коммерческий директор hitch. Мы занимаемся аутстафом IT‑специалистов — выводим разработчиков (и не только) на проекты отечественных корпораций. Непрерывно следим за тем, как меняются потребности крупнейших IT‑компаний и поведение соискателей.

Раз в несколько месяцев буду публиковать «срезы» — заметки о том, кто сейчас особенно востребован на отечественном рынке (а значит, кому больше всего платят).

Читать далее
Всего голосов 49: ↑40 и ↓9+31
Комментарии75

Третий год борюсь с инфоцыганами. Теперь за мной следит наблюдательный совет

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров46K

Никто доподлинно не знает, что происходит на рынке IT-образования.

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

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

Читать далее
Всего голосов 50: ↑35 и ↓15+20
Комментарии95

Ближайшие события

Исходников нет, но мы не сдадимся: как и зачем я портировал более старый Android, чем стоял «с завода»?

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров13K
image


Моддинг-сцена с разработкой и портированием кастомных прошивок для Android-устройств существует вот уже более 10 лет. В основном, энтузиасты пытаются проапгрейдить свои устройства путем портирования более свежих версий Android, чем предлагает производитель девайса. Чего уж говорить, если Galaxy S III, которому уже 12 лет стукнуло, получил неофициальный апгрейд до Android 14. Порой мне в голову приходят различные, весьма странные моддерские мысли: например, почему бы не портировать на старенький смартфон… ещё более старую версию Android, дабы посмотреть «что будет». Казалось бы «портировал и портировал», но в процессе работы я столкнулся с множеством интересных нюансов и особенностей работы Android, о которых хотел бы рассказать и вам — моим читателям! Сегодняшняя статья будет в классическом «научпоп»-стиле без кода, зато с подробными объяснениями одной из техник портирования Android-прошивок путем патчинга скриптов для конфигурации системы и подмены Board-specific библиотек, дабы система «увидела» всё необходимое железо! Интересно? Тогда жду вас под катом!
Читать дальше →
Всего голосов 85: ↑84 и ↓1+83
Комментарии32

Не баг, а фича: видеоигровые баги, которые стали классикой

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

Даже в AAA‑играх могут быть ошибки. Чаще всего сталкиваться с багами неприятно, однако иногда они могут войти в геймплей целого жанра или вовсе стать основой целой франшизы видеоигр. Разработчикам может будет полезным что‑то позаимствовать.

В комментариях пишите о других известных багах, которые повлияли на игровой процесс в играх, особенно сделанных студиями родом из России.

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

Читать далее
Всего голосов 26: ↑22 и ↓4+18
Комментарии12

Настраиваем статический анализ Unreal Engine проекта

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

В PVS-Studio давно есть возможность анализировать Unreal Engine проекты. Но с момента последней заметки мы много работали над этим режимом. Поэтому хочу рассказать о том, как быстро настроить наш анализатор для проверки вашего проекта на Unreal Engine.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Kerberos простыми словами

Уровень сложностиСредний
Время на прочтение46 мин
Количество просмотров13K

Несмотря на то, что уже существует множество различных статей про Kerberos, я всё‑таки решил написать ещё одну. Прежде всего эта статья написана для меня лично: я захотел обобщить знания, полученные в ходе изучения других статей, документации, а также в ходе практического использования Kerberos. Однако я также надеюсь, что статья будет полезна всем её читателям и кто‑то найдёт в ней новую и полезную информацию.

Данную статью я написал после того, как сделал собственную библиотеку, генерирующую сообщения протокола Kerberos, а также после того, как я протестировал «стандартный клиент» Kerberos в Windows — набор функций SSPI. Я научился тестировать произвольные конфигурации сервисов при всех возможных видах делегирования. Я нашёл способ, как выполнять пре‑аутентификацию в Windows как с применением имени пользователя и пароля, так и с помощью PKINIT. Я также сделал библиотеку, которая умещает «стандартный» код для запроса к SSPI в 3–5 строк вместо, скажем, 50-ти.

Хотя в названии статьи фигурирует «простыми словами» однако эта статья предполагает, что читатель уже имеет какое‑то представление о Kerberos.

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии19

Принцип работы утилиты ping в Linux

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров9.6K

Что такое ICMP протокол и с чем его едят? Что такое сетевая модель OSI? Как послать ICMP пакет на сайт и получить ответ? Как работает утилита ping на linux? Все это вы узнаете здесь.

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Комментарии13

Ваши требования … не SMART

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.1K

Уверен, вы слышали, что требования к разрабатываемому ПО должны быть S.M.A.R.T. - Specific (конкретные), Measurable (измеримые), Attainable (достижимые), Relevant (значимые) и Time-bound (своевременные). Слышали это правило все, но часто ли мы соблюдаем его? Часто ли проверяем требования по этим критериям? Если нет – мало обжигались. Давайте пофантазируем с примерами: «Что, если…»

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии6

Дизайн высоконагруженных приложений будущего. Путешествие без сценария с Мартином Клеппманом

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров1.3K

Jesse Anderson, директор Big Data Institute, и Martin Kleppmann, автор книги «Высоконагруженные приложения. Программирование, масштабирование, поддержка», вместе исследуют меняющийся ландшафт обработки данных. Они начинают с истории создания книги Мартина, подчеркивая важность искусства задавать правильные вопросы. Мартин рассказывает об изменениях, произошедших в отрасли с 2017 года, подчеркивая рост облачных сервисов. Затем беседа приобретает новый поворот, когда Мартин погружается в академические круги, делясь своими соображениями о программном обеспечении для совместной работы на основе локального подхода и увлекательном мире Automerge. Начинающие инженеры‑программисты получат несколько советов о том, как найти тонкий баланс между простотой и гибкостью. В завершение обсуждают о различных карьерных путях в динамичной сфере инженерии данных, что делает разговор полезным для профессионалов на любом этапе их пути.

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