Go разработчики постоянно сталкиваются с предупреждениями встроенного статического анализатора. А что делать, если его возможностей не хватает или нужно искать что-то специфичное для вашего проекта? Go предоставляет мощные инструменты для разбора и анализа кода. В этой статье мы поговорим о них и даже сделаем своё первое диагностическое правило.
Читать далееЯ - Дмитрий Черняк, владелец компании, производящей цифровых консультантов "Нейроботник" и архитектор этого решения. Наиболее простой и ходовой вариант нашего продукта - консультант на сайте, с подключенной моделью и RAG-базами. Простые задачи ограничиваются одной базой, более сложные - несколькими, совмещающими семантический поиск с целевым - по ключевым словам и фразам, с многошаговым ответом. Для большинства задач в данной нише этого достаточно.
Эта статья посвящена предновогоднему тесту эмбеддеров (табличка результатов прилагается).
Читать далееСпоры о самом сложном проекте во всем IT будут продолжаться вечно. Некоторые будут говорить что тяжелее всего написать ОС, другие скажут игровой движок, может еще попасться драйвер.
В этой статье я постараюсь подробно расписать свой опыт в написании ОС.
Читать далееБольшая часть работы по теории языков программирования и проектированию языков программирования касается аспектов (1) и (2), так как именно они наиболее важны, но лично я глубоко увлекаюсь фичами типа (3). Поскольку эти фичи такие мелкие, именно они наиболее активно перетекают из языка в язык, ведь добавить их можно совсем «малой кровью». Сам я много времени провёл за изучением нишевых малопонятных языков, и за этим встречал множество крутых фич из третьей категории — таких, с которыми вы, возможно, никогда не сталкивались. Расскажу о некоторых из них!
Читать далееВ Кэмпе мы много работаем с текстовым генератором — и не в демо, а в продакшене, где ими пользуются тысячи студентов. За это время мы успели поговорить с коллегами из R&D, ассессмента и продукта и разобраться, почему один и тот же AI может писать либо внятный текст, либо странную мешанину из абзацев — даже на похожих запросах.
Читать далееПривет, Хабр! Мое плотное знакомство с консолями Nintendo началось с Wii U. Так уж получилось, что лучшей серией слешеров я считаю Bayonetta. А поскольку вторая часть вышла как эксклюзив для Wii U, мне пришлось приобрести приставку. Потом заодно познакомился с The Legend of Zelda — и понеслось. Примерно то же самое случилось и с выходом Bayonetta 3 — обзавелся Nintendo Switch. Что самое интересное, у меня никогда не было обычной Wii.
Волей случая мне в руки попался замечательный экземпляр, но на него я решил посмотреть с точки зрения железа. Внутри меня ждал любопытный конфиг из PowerPC процессора IBM Broadway + SoC производства ATI, который отвечает за графику, а также устройств ввода-вывода.
Читать далееСтройка – это всегда интересно. Звонит жена:
«Я знаю, что мой муж пытался заказать у вас дом. Накрутите ему два лишних миллиона. Я его уговорю, чтобы он не торговался, а два миллиона отдайте мне наличными».
У мужчин бывает проблема с алкоголем. Ночной звонок:
«А давайте поставим ламинированные окна на 500 000 ₽ дороже!»
Ставить дорогие окна пока не стоит, нужно дождаться письменного подтверждения. Когда человек протрезвеет, дорогие окна могут и не понадобиться.
Бывают агрессивные случаи. Заказчик с утра нормальный, а вечером звонит менеджеру:
«Слышь ты, *****, выходи на улицу, я тебя оболью бензином и сожгу».
На утро ничего не помнит.
***
Я никогда не занимался строительством, пока не столкнулся с проблемой.
Читать далееПосле релиза метрика почти всегда меняется. Иногда это реальный эффект изменения, иногда - сезонность, маркетинг, внешний фон или просто шум. Если AB теста не было, а решение все равно нужно принимать, остается вопрос: как аккуратно оценить влияние релиза по истории метрики и не обмануться простым сравнением до и после.
В статье разбираю практический подход causal impact для случая, когда у нас есть одна метрика во времени и понятная дата изменения. Строим контрфакт (counterfactual) - прогноз того, какой была бы метрика без релиза - и сравниваем его с фактом. На этой основе считаем эффект в абсолютных значениях, накопленный эффект и относительный вклад в процентах.
Отдельное внимание уделяю проверкам, без которых такой анализ может превратиться в тыкву: качество прогноза на периоде до изменения, учет зависимости по времени через block bootstrap, устойчивость к выбору окна и плацебо даты, которые помогают понять, выделяется ли реальный эффект на фоне ложных интервенций.
Материал ориентирован на продуктовые задачи: когда релиз уже сделан, данные есть, а надежной оценки эффекта нет. В следующей части перейдем к более частому сценарию, когда изменение затронуло не всех, и вместо одной линии метрики у нас появляется набор линий по группам (географии, сегменты, кластеры). Там разберем синтетический контроль и diff-in-diff и частые ошибки, которые встречаются в таких данных.
Читать далееКоманда JavaScript for Devs подготовила перевод статьи о том, как инструменты JavaScript переживают сдвиг в сторону системных языков. Rust, Go и Zig уже не эксперимент, а основа нового поколения бандлеров, линтеров и компиляторов. Выясняем, почему экосистема сознательно уходит от JavaScript в собственных инструментах, какие выгоды это даёт и какие компромиссы приносит.
Читать далееДавайте проведем мысленный эксперимент. Поставим на лабораторный стол два микроскопа. Один — перед любознательной обезьянкой. Она, конечно, деловито посмотрит в окуляр, увидит там что-то блестящее и мутное, может, даже лизнет линзу от скуки, и в лучшем случае использует увеличающий прибор как молоток для раскалывания ореха. Функционал есть — толку ноль. Всё богатство возможностей сводится к грубому физическому воздействию на мир бананов и камней.
Читать далееДанная статья предназначена в первую очередь программистам, но так же и их друзьям и знакомым.
Периодически появляется потребность написать небольшой сайт, с возможностью вести на нем список товаров с фотографиями, корзиной для покупок, и может даже с привязкой к банковским счетам для оплаты, хотя для малого бизнеса это не обязательно. Важно сообщить о наличии товара и условиях его заказа, оплаты, доставки... все остальное люди умеют делать сами. Если речь идет о состоявшемся бизнесе, который может позволить себе нанять специалистов и потратить 100т.р. то для таких клиентов существует большой выбор CMS (Джумла, Модекс, Друпал...) либо можно воспользоваться конструкторами сайтов, где пальма первенства у Тильды. Тильда конечно сэкономит кучу денег, но ей тоже надо учиться, просто так сходу не возьмешь.
Но если речь идет о стартующем бизнесе, либо семейном, либо просто о желающих начать работать самостоятельно, то такой бюджет будет велик, не хочется тратить деньги непонятно на что. Почему «непонятно на что»? Потому что MODX, Worldpress, Drupal и так далее «невероятно сложны» в управлении для непосвященных.
Если Вы опытный специалист, то скорее скажете — ерунда, там все элементарно! Но это вряд ли Вы так скажете: обычный пользователь, получив сайт на MODX, впадет в ступор от его Админки, впрочем как от всех других...
Раньше я отказывался от таких «бесплатных» заказов — быстро сделать простой сайт, так чтобы можно было что‑то продавать, но сейчас ситуация в корне поменялась. ИИ при правильном обращении генерирует сайт по любой тематике. Остается только сделать самую простую админку и передать готовый продукт клиенту буквально задаром.
Читать далееLeica G9ii
Эта статья не является подробной инструкцией. Это описание того, что происходит, когда разработчик ПО принимается за решение аппаратной задачи, пойдя по сложному пути.
Камера названа так, потому что внутренности взяты у Lumix G9ii, а корпус — это реплика Leica M, изготовленная на станке с ЧПУ. Также я изготовил новые гибкие кабели для соединения сменивших положение кнопок и колёс управления.
Зачем?
Много лет у меня была мечта написать собственное ПО для камеры или, по крайней мере, спрятать неиспользуемые меню; я хотел избавиться от бойлерплейта и оставить только самое необходимое. Я фотограф-любитель, поэтому, например, практически не использую никаких других режимов, кроме A и M. Хоть я и программист, такая задача была бы для меня невыполнимой: мне не хватает навыков в реверс-инжиниринге двоичных файлов, работе с шестнадцатеричным кодом; кроме того, если что-то пойдёт не так, я рискую превратить камеру в кирпич.
Читать далееЗдравствуйте! Это вторая часть из серии статей «Сервисы — место, где живет бизнес логика». Если Вы еще не знакомы с первой частью, то рекомендую начать с нее, чтобы у вас сложилась общая картина. Сегодня мы постараемся ответить на все оставшиеся вопросы: познакомимся с прекрасной, легковесной DI-библиотекой, научимся «инжектить» в Django, посмотрим на несколько дашбордов в Кибане и поговорим про доменные модели.
Читать далееЯ кайфую от работы с нейронками. Конкретно, через ComfyUI и вот это вот всё со стрелочками и пайплайнами. Это история о моём пути от RTX 3080 дома до GPU-серверов с ИИ-агентами.
Есть два типа людей, которые арендуют GPU-серверы:
Читать далееС самого начала одной из главных идей, лежащих в основе GRID, была идея о том, что работу с электронными таблицами (spreadsheet) и, в частности, с моделями электронных таблиц, можно сделать легче, если перенести их в веб-среду, снабдив приятно выглядящими комментариями и привлекательными интерактивными возможностями. Это касается как таблиц, с которыми взаимодействует единственный пользователь, так и таблиц, которыми одни пользователи делятся с другими.
Если говорить об интерактивности — то мы заранее знали о том, что нам понадобится наибыстрейший движок электронных таблиц, совместимый с Excel и с Google Sheets (GSheets), способный полноценно работать, пользуясь лишь ресурсами браузера. Так как подобного движка (достаточно функционального) нам найти не удалось, мы, кроме прочего, знали и о том, что нам придётся писать его самостоятельно.
К настоящему моменту мы создали то, что, скорее всего, входит в число 4–5 самых совершенных движков электронных таблиц на планете. И это (вероятно — после Google Sheets) самый продвинутый движок, который полностью работает в браузере.
Это была совсем не тривиальная задача. Расскажу о том, что мы узнали в процессе создания нашего движка.
Читать далее«Жизнь скважины»
Итак, позвольте рассказать Вам о том, с чего начинается "жизнь" скважины и чем она заканчивается) в контексте Виртуального месторождения для подготовки специалистов нефтяной и газовой отрасли... коротко про ...
Как найти нефть или газ?
Как накапливается нефть и газ ?
Как добраться до нефти и газа?
Как пробурить скважину?
Как "закончить и освоить" скважину?
Как эксплуатировать скважину?
Как поддержать пластовое давление?
Ремонт отремонтировать скважину?
Что делать, если запасы исчерпаны?
Как ликвидируют скважины.
Читать далееПривет, Хабр! Меня зовут Дмитрий Бахтенков. С 2020 я занимаюсь коммерческой разработкой на .NET, а также пишу для медиа «вАЙТИ». В сфере информационной безопасности существует множество уязвимостей, и разработчикам сложно понять, какие из них важнее учитывать при обучении или отладке процессов безопасной разработки.
Читать далееВ этой статье я расскажу о том, как добавить в С++/CMake проект возможность чтения YAML-конфигов с помощью библиотеки yaml-cpp.
Начнем с краткого обзора интерфейса yaml-cpp, а потом разработаем небольшой проект, состоящий из библиотеки с функционалом чтения конфига и приложения, использующего эту библиотеку для получения настроек из YAML-файла.
Читать далееВсегда будут «кричащие волк», чьи заявления рассыпаются под пристальным взглядом. Но инопланетяне определённо существуют - если наука осмелится их найти.
Несмотря на всё, что мы узнали о себе и физической реальности, в которой все мы обитаем, гигантский вопрос о том, одиноки ли мы во Вселенной, остаётся без ответа. Мы исследовали поверхности и атмосферы многих миров в нашей Солнечной системе, но только Земля демонстрирует неоспоримые признаки жизни - прошлой или настоящей. За последние 30 лет мы открыли более 5 000 экзопланет, выявив среди них множество миров размером с Землю, потенциально обитаемых. Тем не менее ни один из них пока не раскрыл себя как действительно населённый, хотя перспективы обнаружения внеземной жизни в ближайшем будущем завораживают.
Читать далееВсем привет.
В этой части мы познакомимся с базовыми понятиями, необходимыми для понимания процесса инвестирования и перейдем к практическому применению, где подключим API ТБанка, настроем отображение портфеля и сделаем первые заявки на покупку и продажу.
Читать далее