Сборщик RSS-лент

Go напишем шахматный сервер? Часть первая — Введение и пока ни слова про Golang

Habr.com - ср, 05/15/2024 - 14:06

Сегодня мы порассуждаем об одной из самых древних и знаменитых настолок — шахматах. Что вообще нужно для комфортной игры двух человек по сети?

База данных, где будет храниться информация об играх? Удобный и понятный интерфейс? Движок, подсказывающий возможные ходы? Прежде чем хвататься за код, нужно понять, что (кроме возможности играть на расстоянии в тысячи километров) может дать игрокам вычислительная техника оснащённая соответствующим софтом.

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

Предлагаю с этого и начать

Давайте порассуждаем

Крутятся диски. Дисковые магнитофоны, которые мы потеряли

Habr.com - ср, 05/15/2024 - 14:00

Рассказ о войне стандартов, которая привела к появлению на рынке современных аудиокассет, был бы неполным без упоминания ещё одной удивительной технологии прошлого — магнитофонов, использовавших в качестве носителя информации не ленту, а… магнитный диск. Такие устройства сочетали в себе более высокое по сравнению с винилом качество магнитной записи и свойственную пластинкам возможность произвольного доступа к любому фрагменту фонограммы без необходимости перемотки кассеты. Как же работали подобные устройства?
Читать дальше →

Борьба за открытые данные в строительной отрасли. История появления AUTOLISP, SDK, intelliCAD, openDWG, ODA, openCASCADE

Habr.com - ср, 05/15/2024 - 13:51

Апрель 2024 года ознаменовался особым событием для строительной отрасли: два ведущих производителя CAD (BIM) систем, чьи инструменты используются для создания значительной части документации по строительным проектам, объявили в совместном коммюнике о начале продвижения открытых и совместимых рабочих процессов.

◾️ Но что стоит за этим решением?
◾️ Как сами CAD (BIM) вендоры обрабатывают данные из других CAD (BIM)? 
◾️ Кто первыми открывал проприетарные форматы CAD вендоров?
◾️ Как инструмент LISP, повлиял на создание intelliCAD и альянса OpenDWG?
◾️ Как мировая строительная отрасль зависит от степени открытости форматов данных?◾️ Откуда появились первые открытые альянсы и инициативы в CAD отрасли? 

Эти и многие другие вопросы по теме данных в строительной отрасли мы рассмотрим, опираясь на исторические данные и факты.

Читать далее

Моя стратегия тайм-менеджмента для основателей стартапов

Habr.com - ср, 05/15/2024 - 13:43

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

Но как только мы касаемся основателей или руководителей высшего звена, уровень неопределенности резко повышается. Каждый рабочий день этих менеджеров состоит из самых разнообразных и быстро сменяющихся задач, которые нужно балансировать между собой буквально на ходу. Тут и внезапные созвоны, и юридические вопросы, и практическое взаимодействие с командой — все это делает роль этих управленцев совершенно непредсказуемой. Даже не смотря на наличие квартальных целей и ключевых показателей (OKR), реальной проблемой для основателей бизнеса является именно динамическая корректировка планов для решения внезапных и крайне важных задач, которых не существовало еще полчаса назад. И все это надо делать в условиях жестких временных ограничений, потому что сутки не резиновые.

Читать далее

Dev контейнеры и с чем их едят

Habr.com - ср, 05/15/2024 - 13:33

Настраивать зависимости проекта на локальной системе — это не страшно. Ну, только если зависимостей немного, проект один и вы единственный разработчик в команде. Иначе — очень страшно!

В этой статье мы поговорим о контейнерной разработке с помощью dev контейнеров: что это такое, чем полезно, как настроить и как быстро это работает.

Читать далее

ChatGPT + YandexGPT API = ЛЮБОФ. Часть 1

Habr.com - ср, 05/15/2024 - 13:09

Сказ о том, как мы, дата-сайентист и аналитик данных, на троих с ChatGPT, без программиста и девопса, создали сервис пересказа новостей TechMix с текстом и озвучкой. ChatGPT писал код, а мы ему только поддакивали.

Авторы: Эдуард Ланчев, Илья Кузнецов, ChatGPT

Третьим будешь? (вместо вступления)

Собрались мы с Ильёй написать сервис, который берет зарубежные Tech-новости и пересказывает их на русский. И не простой сервис в монолите, а с кучей микросервисов, шиной, базой данных, логированием, парой моделек машинного обучения под капотом, работой с парой внешних API, да еще и с CI/CD. И не просто написать, а чтобы потом можно было масштабировать, добавляя другие сервисы. 

Собрались, а рядом ни программиста, ни девопса нет. А хотя бы третий в команду точно нужен — факт, известный всем. Время идет, ничего не меняется, ночь сменяется днем и так по кругу. И в какой-то момент открыли мы браузер и написали первому, кто под руку попал:

— Третьим будешь?

— Какой контекст у этой фразы в вашем случае?

— Нам программист нужен. Будешь третьим в команде?

— Звучит интересно! 

Хотели уже с ним по зуму пообщаться, а оказалось, чаты перепутали и это ChatGPT. Хоть и железка, но мы ж уже договорились. Вот так и стали втроем работать: Илья, я и наш неожиданный помощник ChatGPT.

Читать далее

Гейминг за 300: как я купил и оживил дешевую игровую консоль на Android. Можно ли поиграть, сэкономив на шаурме?

Habr.com - ср, 05/15/2024 - 13:01


Несмотря на незаурядное название, наверняка многие олдовые читатели будут рады видеть статью в «старом» формате с оживлением и попыткой использования чего-то очень дешевого, грязного и нерабочего. В процессе подготовки подробного материала о том, как работали 2D игры на телефонах из прошлого, я не терял времени и искал различные интересные девайсы на онлайн-барахолках «за копейки». Так уж получилось, что на моей карте осталось 60 рублей, ещё 250 рублей задонатил читатель и я увидел её: Android-игровую консоль «на запчасти», которую мне удалось забрать всего за 300 рублей. Сегодня мы с вами: поговорим, есть ли смысл брать дешевые консоли на Android, во всех подробностях отремонтируем и отреставрируем нерабочий, грязный девайс «из подвала» и проведем бенчмарки эмуляторов, дабы понять — реально ли получить игровую консоль по цене шаурмы. Интересно? Тогда жду вас под катом! Читать дальше →

Что такое WAF и как с ним работать? Показываем на примере уязвимого веб-приложения

Habr.com - ср, 05/15/2024 - 13:00

Информационная безопасность веб-приложений за последние несколько лет стала, наверное, одним из ключевых вопросов в IT. Для компаний стабильность работы систем — это репутация и отсутствие лишних издержек. Ежегодная статистика больших ИБ-компаний говорит о росте количества и качества атак.

Ранее в статье я рассказывал о защите веб-приложений с помощью систем класса IDPS. Сегодня — хочу поделиться информацией о том, как работать с WAF. В статье постараюсь оттолкнуться от теории и перейти к вопросу настройки. Будем запускать два сервера, где один будет атаковать, а второй — защищаться с помощью WAF. Надеюсь, текст станет доступным входом для инженеров, которые ранее не задумывались о работе с WAF из-за непонятности этого типа систем. Интересно? Тогда добро пожаловать под кат! Читать дальше →

Дайджест научпоп-новостей за неделю, о которых мы ничего не писали

Habr.com - ср, 05/15/2024 - 12:33

Воздушные батареи на морском дне предлагают более дешёвые долгосрочные накопители энергии

Австралийские инженеры разработали ультразвуковую кофеварку для холодного заваривания

Учёные создали улиток-роботов, которые могут передвигаться самостоятельно с помощью гусениц или работать вместе, чтобы подниматься

В наблюдениях «Уэбба» содержится намёк на возможное наличие атмосферы у скалистой экзопланеты

Астрономы открыли 27 500 новых астероидов, спрятавшихся на архивных снимках

Читать далее

Шорт-листы «Технотекста 2023»: достойные из достойных

Habr.com - ср, 05/15/2024 - 12:30

Мы получили 1022 заявки, приняли из них 918, в шорт‑листы попало более 300 статей. Точной цифры по шорт‑листам нет неслучайно: поскольку наш естественный интеллект это вам не ChatGPT склонен уставать и ошибаться, несколько статей могут попасть в шорты, но, скорее всего, выпадут из них — так, во время подготовки этой статьи выяснилось, что из финала выбыли двое участников, скрывшие свои публикации в черновики.

Вообще, такого «Технотекста», как в этот раз, ещё не было: обычно мы сравнительно легко отсеивали участников и выбирали финалистов, разница в уровне материалов была очевидной. В этот раз номинанты сильные — и многие статьи не вышли в финал не потому, что они какие-то не такие, а потому что они объективно слабее лучших из лучших — но очевидно, что сильнее большей части статей на Хабре. Хотя участники «Технотекста» из года в год находят отличные способы добить нервную систему модераторов конкурса

Firefox 126

Linux.org.ru - ср, 05/15/2024 - 11:54

Доступен Firefox 126. Из интересных новшеств — поддержка сжатия zstd, каталанский язык, увеличение доли кода на Rust, начало прекращения поддержки Theora, ужесточение требований к старым дополнениям и многое другое.

( читать дальше... )

 ,

Как замерять и повышать производительность Java-кода: личный пример с JMH

Habr.com - ср, 05/15/2024 - 11:49

Привет, Хабр! Большинство команд разработки так или иначе вовлечены в гонку за производительностью. Если понимать этот показатель как скорость работы системы, то вся деятельность по прокачке производительности — это, по сути, анализ метрик и поиск инструментов, которые эту скорость могут повысить.

Меня зовут Александр Певненко, я работаю в СберТехе, компании, которая разрабатывает ПО. Для большинства наших продуктов производительность — критичный фактор, поэтому анализ метрик и оптимизация кода — важная часть цикла разработки. Хочу поделиться личным опытом и мнением обо всём, что касается оптимизации и повышения скорости работы кода, а также нагрузочного тестирования как части этой работы. Тут представлены моя собственная практика использования набора библиотек JMH для нагрузочного тестирования и замеров производительности Java-кода. Всем, кому интересно, добро пожаловать под кат!

Читать далее

Ходить как человек: генеративный ИИ и локомоция

Habr.com - ср, 05/15/2024 - 11:45


Глядя на улицы города утром буднего дня, мы видим множество людей, каждый из которых торопливо или размеренно идет куда-то по своим делам, будь то на учебу или на работу. Скорость, особенности шага и общая картина локомоции человеческой ходьбы являются уникальными для каждого человека. При этом обстоятельства окружающей среды имеют немалое влияние на то как ходит человек. Говоря о роботах, мы уже давно научили их ходить, подобно человеку. Однако адаптация к динамическим условиям окружающей среды, особенно настройка скорости в реальном времени, остаются крайне сложной задачей. Ученые из Университета Тохоку (Япония) разработали новую методику обучения роботов, использовав возможности генеративного ИИ. Насколько данная методика была эффективной для обучения роботов, и насколько лучше стала их локомоция? Ответы на эти вопросы мы найдем в докладе ученых. Читать дальше →

Геймдев. Итоги апреля

Habr.com - ср, 05/15/2024 - 11:00

Уволено больше 1000 работников

Согласно данным Game Industry Layoffs, в апреле 2024 года было уволено больше 1000 работников геймдев-индустрии.

Читать далее

Developer Keynote Google I/O 2024: официальная поддержка KMP, развитие Gemini и AI в Андроиде

Habr.com - ср, 05/15/2024 - 07:43

Всем привет! Меня зовут Мялкин Максим, я лид мобильной команды в KTS. Сейчас проходит Google IO 2024, и мы с ребятами в команде решили выпустить обзор треков, которые нам показались интересными. Мы сконцентрируемся на Android-направлении. На основном keynote все внимание было уделено развитию AI, также это коснулось и части разработки.

В этой статье мы посмотрим что нам рассказали на developer keynote, а в следующих подробно погрузимся в технические треки.

Читать далее

[recovery mode] Борьба со сложностью

Habr.com - вт, 05/14/2024 - 21:38

Почему работа всегда сложнее чем кажется в начале?

Почему с течением роста проекта производительность программиста падает?

Почему читать код сложнее чем писать?

И что же со всем этим теперь делать?

Неочевидное ML: примеры от SberDevices

Habr.com - вт, 05/14/2024 - 19:42

Казалось бы, нам всем так прожужжали уши аббревиатурой «ИИ», что с ней всё уже очевидно.

Но весь хайп последних лет крутится вокруг нескольких сценариев: «нарисуй картинку», «напиши код», «ответь на вопрос».

И по-моему, сейчас самое интересное — это менее заезженные применения. Окей, стало можно одним промптом нарисовать капибару верхом на драконе, это мы поняли. А вот чем нейросети могут помочь инженерам, редакторам или неслышащим людям? До чего дошёл прогресс, в чём сложности, как их преодолевают?

Скоро мы проведём конференцию I'ML, а недавно помогали SberDevices провести GIGA R&D DAY. Я посмотрел записи докладов GIGA R&D DAY — и там как раз говорится о подобных гранях AI. По-моему, это интересно, поэтому захотелось сделать так: 

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

Читать далее

Обзор аппаратного файервола Zyxel USG Flex 100AX

Habr.com - вт, 05/14/2024 - 14:00

За последние 20 лет интернет сильно изменился. Сейчас уже не встретить вырвиглазного Flash-баннера с мигающей надписью «Click me!» и примитивного трояна по ту сторону гиперссылки. Почти все современные сайты де-факто используют TLS и этим защищают пользователя от перехвата чувствительных данных. Всё больше законодательных инициатив направлено на то, чтобы сделать интернет безопаснее.

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

Сегодня у нас на обзоре аппаратный файервол Zyxel USG Flex 100AX, являющийся продолжателем славных традиций линейки ZyWALL и предназначенный для работы в небольших офисных сетях. Традиционно, в нашем блоге на Хабре, мы развинтим эту железку и посмотрим на неё изнутри, чтобы вам этого делать не пришлось. Наливайте себе кружечку крепкого чая и добро пожаловать под кат.
Читать дальше →

Моё лучшее вложение 13 тыс. рублей (какой ботаник без микроскопа?)

Habr.com - вт, 05/14/2024 - 13:01


Сидел я тут недавно перед монитором и размышлял чем бы себя ещё порадовать, а надо сказать, что порадовать меня не так просто (смайл). Долго я размышлял и решил остановить свой выбор на… микроскопе. Почему бы и нет? У меня уже давно стояло в планах оснастить лабораторию подобным инструментом.

И вот этот девайс неожиданно не просто меня порадовал, а вызвал настоящий вау-эффект. Это реально просто обалденная штука (простите за мой французский) и у меня возник только один вопрос — почему я не купил его раньше?

Далее я попробую простыми словами описать что это такое и приведу примеры фото и видео с этого микроскопа, после которых вы всё бросите закажете себе такой же (или даже лучше).
Читать дальше →

Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года)

Habr.com - вт, 05/14/2024 - 12:36

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

Занимаясь БПЛА с 2016 года, я решил разобраться в устройстве полетных контроллеров максимально глубоко и создать квадрокоптер с нуля, не используя готовый полетный контроллер и готовый софт. Спустя долгое время разработки мне удалось это сделать. Я написал прошивку с максимально простым исходным кодом и выложил ее на GitHub. В этой статье я расскажу о теории и практике разработки полетного софта для квадрокоптера и проиллюстрирую это на примере своего дрона на базе микроконтроллера ESP32, который можно увидеть на картинке выше.

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 0 гостей.
Ленты новостей