Большая часть работы по теории языков программирования и проектированию языков программирования касается аспектов (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 ТБанка, настроем отображение портфеля и сделаем первые заявки на покупку и продажу.
Читать далееИзначально микросервисная архитектура решила реальную проблему - изолировала очереди и убрала “head-of-line blocking”, когда один упавший адресат тормозит всех.
Но дальше начался рост репозиториев, расхождение версий общих библиотек, рискованные обновления и операционная нагрузка. К тому же каждый сервис обладал своим профилем ресурсов и ручной настройки автоскейла.
В итоге команда объединила 140 сервисов в один монолит, собрала монорепо и стабилизировала тесты через запись/воспроизведение HTTP-трафика.
Читать далееСпустя 2 года закончилась в*йна между Великим Китайским Файрволом (GFW) и Mozilla.
История, начавшаяся в апреле 2024-го с тихой блокировки QUIC, к концу 2025 года вылилась в глобальный 74-минутный сбой всего интернета в КНР.
В этой статье мы разберем как браузер пытался обойти цензуру, а в итоге прокачал еще сильнее машину цензуры в Китае!
Читать далееСначала это были просто видеокассеты с любимыми фильмами — без особой системы, без структуры, без мысли о будущем.
Со временем их становилось всё больше. К началу нулевых, на пике своего размера, коллекция насчитывала около 450 видеокассет. И в какой-то момент возник вполне естественный вопрос: всё это нужно как-то систематизировать, завести хотя бы минимальный учёт.
Самым очевидным и доступным инструментом стал MS Excel. Никакой сложной логики — обычный список, в котором можно было зафиксировать хотя бы сам факт наличия фильма.
Читать далее