Data-science развивается очень быстро, в том числе благодаря росту объема доступных данных для анализа или построения моделей. Но для создания сложных моделей командам аналитиков нужно работать совместно и эффективно управлять большими датасетами. И вот здесь может помочь, например, DVC — open-source система контроля версий для проектов машинного обучения.
Нашел не так много информации по ней в рунете, поэтому под катом на примере простого ML-проекта расскажу, как работать с инструментом для хранения и обновления датасета.
Надоело заморачиваться с доверенностями, банками, судами, госорганами и решили прописать в Устав второго директора. Плюс заодно избавиться от дурацкого большого устава давно было желание, чтобы не копировать толстый устав на тендеры и крупным заказчикам. Но коллеги говорили, что будет не солидно, возникнут вопросы при рассмотрении устава юристами контрагентов, которые должны оправдывать свою зарплату. И всё как-то не решались. Но год назад решились. Сделали одностраничный устав. Кстати, в поиске в Яндекс.Картинках не нахожу одностраничного устава в электронном виде. Наш первый значит будет. Год прошёл — полёт нормальный, проблем нет. Солидность не пострадала. Банк устав принял, второго директора признал. Хотя тупил страшно. Дальше о том, что должно быть в одностраничном Уставе, какие трудности были с регистрацией в налоговой и с банком. Мы всё хотели сделать принципиально в электронном виде и удалённо.
Перед тем как воспользоваться продуктом, мы обращаем внимание на его состояние. Представьте, что вы приходите в автосалон и выбираете машину. Если машина выглядит плохо, то мы начинаем испытывать негативные эмоции и чувствовать отсутствие внимания со стороны создателей этого продукта. Да и доверия не вызывает. Это сразу потеря времени. Конечно, человек умеет адаптироваться к любым изменениям, или просто может принять факт, даже если продукт функционально очень хорош. Но согласитесь, что удобство, цвета и общий стиль важны. Не каждый готов пользоваться тем, что заставляет его лишний раз надевать очки, настраивать яркость на экране или свет в комнате. Все знают великую пословицу, гласящую, что встречают по одёжке — провожают по уму. На примере одного нашего направления в компании мы хотим поделиться с вами, что это значит для нас — не на словах, а на деле.
Как можно расширить синтаксис Python и добавить в него необходимые возможности? Прошлым летом на PyCon я постарался разобрать эту тему. Из доклада можно узнать, как устроены библиотеки pytest, macropy, patterns и как они добиваются таких интересных результатов. В конце есть пример кодогенерации с помощью макросов в HyLang — Lisp-образного языка, бегущего поверх Python.
— Привет, ребята. Хочу в первую очередь поблагодарить организаторов PyCon. Я разработчик в Яндексе. Доклад будет совсем не про работу, а про экспериментальные вещи. Возможно, кого-то из вас они наведут на мысль, что в Python можно делать клевые штуки, о которых вы раньше даже не догадывались, не мыслили в эту сторону.
Сейчас популярно мнение, что текущие Javascript-фреймворки непомерно большие, а новый фреймворк Svelte очень компактный. Поэтому всем нужно переходить на него, и проблема размера JavaScript решится сама собой.
Недавно вышла статья "Хороший ли выбор Svelte для реализации виджета?" с опытом реализации проекта с критичным размером бандла. Это отличный повод проверить обещания пиарщиков Svelte на реальном проекте.
Транслитерация — это запись кириллических слов латиницей (Анна → Anna, Самара → Samara). Её используют в загранпаспортах, водительских удостоверениях, трансграничной доставке, библиотечных каталогах и множестве других международных процессов.
Так вышло, что я недавно окунулся в эту тему, а в Википедии она раскрыта слабо. Поэтому расскажу, что к чему (спойлер — если вы думаете, что с транслитерацией всё плохо, то на самом деле всё ещё хуже).
И конечно, поскольку это Хабр — предложу open-source библиотеки для решения проблемы.
Введение нового разработчика в проект практически всегда начинается с разбора codestyle'a данного проекта. Так как иногда возникает потребность в обучении разработчиков стилю написания кода, не всегда Junior-разработчики могут сразу разобрать англоязычные примеры. В результате, это привело… к переводу одного из них, о чем я и хочу рассказать в этой статье.
Прим. перев.: Эта публикация британского программиста, ставшая настоящим хитом в англоязычном интернете, ссылается на Git-коммит 6-летней давности. Он был зафиксирован в одном из открытых репозиториев Government Digital Service — службы, занимающейся развитием цифровых услуг в Великобритании и поддерживающей проект GOV.UK. Сам коммит интересен не столько изменениями в коде, сколько сопровождающим их описанием…
Я обожаю описания коммитов в Git. При правильном применении их можно назвать одним из самых мощных инструментов по документированию эволюции кодовой базы за время ее существования. Свою точку зрения хочу проиллюстрировать на примере моего самого любимого описания.
Летом мы публиковали подборку книг, в которой не было справочников или руководств по алгоритмам. Она состояла из литературы для чтения в свободное время — для расширения кругозора. В качестве продолжения мы подобрали научную фантастику, книги о технологическом будущем человечества и другие издания, написанные специалистами для специалистов.
Всем привет! Меня зовут Денис, я разрабатываю Apphud – сервис по аналитике авто-возобновляемых подписок в iOS-приложениях.
В данной статье я расскажу как настроить, реализовать и валидировать авто-возобновляемые подписки в iOS 12 и iOS 13. Бонусом расскажу о тонких моментах и подводных камнях, которые не все разработчики учитывают.
Как всегда, в нашем распоряжении только голый компилятор, никаких сторонних библитек использовать нельзя. Я не хочу заморачиваться с оконными менеджерами, обработкой мыши/клавиатуры и тому подобным. Результатом работы нашей программы будет простая картинка, сохранённая на диск. Я совершенно не гонюсь за скоростью/оптимизацией, моя цель — показать основные принципы.
Итого, как в таких условиях нарисовать вот такую картинку за 180 строчек кода?
Несколько лет назад я работал на агентство, которое входит в состав международного рекламного холдинга. Моей задачей было помогать известной платежной системе продавать свои сервисы крупным российским банкам.
UPD 2020-07-03: Прошло несколько лет, ситуация сильно изменилась, и в первую очередь я бы сейчас смотрел на wireguard + yubikey. Но все это по-прежнему работает.
В статье рассматривается настройка OpenVPN c дополнительными фичами:
сертификаты на токенах для первичной аутентификации (на примере Rutoken)
LDAP-бекенд для вторичной аутентификации (на примере ActiveDirectory)
фильтрация внутренних ресурсов, доступных для пользователяx (через iptables)
Так же описана настройка клиентов под Linux, Windows и MacOS.
Принято считать, что Wallet – не самый популярный сервис в СНГ. Но уже во втором проекте подряд заказчик ставит задачу «Сделать интеграцию с Wallet». Поэтому я решил написать эту статью, чтобы рассказать о сервисе в целом и показать, как интегрировать в него свой продукт.
Что такое Wallet? Он позволяет держать в телефоне различного вида карты (билеты, скидочные карты и т.п.), облегчая жизнь пользователям продукта. Более того, есть возможность актуализировать информацию о карте посредством push-уведомлений, но это тема для отдельной статьи. Но если у вас есть карта/билет/абонемент, которые можно интегрировать в телефон, то для этого есть решение! Как это сделать – читайте ниже.
Механизм Drag & Drop, работающий в iOS 11 и iOS 12, — это способ графического асинхронного копирования или перемещения данных как внутри одного приложения, так и между разными приложениями. Хотя этой технологии лет 30, она стала в буквальном смысле «прорывной» технологией на iOS благодаря тому, что при перетаскивании чего-либо в iOS, multitouch позволяет свободно взаимодействовать с остальной частью системы и набирать данные для сброса из разных приложений.
Возможно, кто-то понял о чем пойдет речь из заголовка, для прочих поясню — этот пост посвящен эндовибратору Льва Термена, который также именуют “Златоуст” и “The Thing” (“вещь”, “нечто”). С этим устройством связан беспрецедентный случай в истории мировых разведок, когда посольство США в Москве безнаказанно прослушивалось на протяжении семи лет. При этом у американских служб технической безопасности не было возможности обнаружить “жучок”, так как последний не имел источника питания и представлял собой небольшую конструкцию из металла.