Новости
Забудьте про корпоратив, делайте для людей
Не знаю как было раньше, но в 00-х информацию собирали по крупицам, реально изучали язык, возможности, чтобы написать программу. Программу, которая работает, и полезна. Больше от неё не требуется, она просто должна стабильно выполнять свою задачу.
Сейчас тенденция совершенно другая. Весь мир разработки оброс кучей.. “мусора” (хотел написать другое слово), который превратил разработку программ в постоянные битвы между управлением, разработкой, тестированием, процессами, и в целом программный продукт стал восприниматься как вещь с завода, с конвейера, а про пользователя почти всегда забывают.
Так вот, простое правило – всё это для людей. Вся эта шелуха про управление, процессы, коллаборацию, всё это в конечном итоге должно приносить пользу конечным пользователям. Если на выходе получается продукт, который глючит или им неудобно пользоваться, то в процессах или в кадрах есть проблемы.
Фразы “для людей” и “приносить пользу”, это значит что человек должен открыть программу, понимать как при её помощи он может решить свои задачи (и решать их), и в любой момент её использования не быть потерянным в ней, не получить дискомфорта от использования, а быть постоянно в курсе что происходит.
Плохой пример – открыли форму авторизации, ввели наш логин и пароль, жмакнули “Войти”, и получили ошибку что логин и пароль не найден. О блин, так логин и пароль же мой?.. а где, куда, почему?.. а всё потому что разработчики не обработали ошибки авторизации, а просто лупанули один текст ошибки в UI на любую ошибку которая прилетит с сервера. И поэтому отсутствие интернета, долгие запросы, проблемы с прокси, падение сервера, деактивация аккаунта, да и миллион других сценариев, всё это работает неправильно. Человек откроет, не поймет, закроет. Ну напишет в поддержку. Хорошо это? Конечно нет. Нормально ли это? В современных процессах часто да, просто потому что “а давайте сделаем на одну фичу больше вместо обработки исключений”.
Независимые онлайн-сервисы: философия свободного интернета и истории его администраторов
Предлагаю познакомиться с людьми, на чьих плечах лежит инициатива и жизнеобеспечение интернета без корпораций, регистрации по номеру телефона, слива наших персональных данных и прочего, что мы ненавидим, но к чему привыкли.
Здесь не будет технических спецификаций и команд для копипасты в терминал, только истории людей (в том числе значительных персон даркнета). Что может быть лучше, чтобы увидеть источник жизни независимого интернета, как не личные убеждения и истории администраторов свободных интернет-ресурсов?
u-принцип и проявление детальных требований и потребностей ИТ-системы
Статья отражает как прорабатывать детальные требования, откуда брать их обоснования и почему важно строить синхронизированный процесс проектирования бизнес-процессов и поддерживающих ИТ систем.
И как следствие, почему OpenAI не может создать детальные требования.
Postgresso 48 (11)
PostgreSQL 16: Часть 3 или Коммитфест 2022-11
Вышел очередной обзор Павла Лузанова. Самое интересное из первых коммитфестов можно прочитать в предыдущих статьях серии: 2022-07 (ru / en), 2022-09 (ru / en).
Postgres-сообщество и образование
Что для вас PostgreSQL-комьюнити?
Живёт своей жизнью затея Райана Буза (Ryan Booz) - его Пятнецы (PGSQL-Phridays). На 3-м этапе этого флеш-моба ход Пэта Райта (Pat Wright). В отличие от обычных пятниц и PG-пятнец Шона Томаса, PGSQL-пятнецы случаются раз в месяц, и эта, 3-я пятнеца в 2022-м последняя. И вот вопрос: желающих приглашают ответить на вопрос: What is the PostgreSQL community to you?
Аналоговые часы SFML C++
Бессердечная биохимия. Как был открыт и укрощён талидомид
Некоторое время назад, когда «все переквалифицировались в вирусологов» и костерили вакцину «Спутник-V», на Хабре всплыла острая тема «этичности» и «поспешности» клинических исследований в медицине. Тогда же в довольно интересных статьях, например, здесь и здесь, всплывала тень талидомида – одного из самых жутких фармацевтических просчётов XX века. Тем не менее, подробной статьи о талидомиде на Хабре я пока не нашёл (возможно, потому, что статьи на Хабре принято иллюстрировать). Сегодня хотелось бы кратко рассказать об этом препарате, а также – о его трудном и грозном возрождении, случившемся в последние 20 лет.
К середине XX века в развитых странах разразилась настоящая эпидемия злоупотребления барбитуратами. Барбитураты применялись в качестве успокоительных и снотворных, при этом быстро вызывали привыкание. Наиболее известный препарат такого класса, веронал, был назван в честь Вероны (города, в котором разворачивается трагедия Ромео и Джульетты). Веронал не составляло труда приобрести в аптеке. Cреди известных жертв веронала – Акутагава Рюноскэ (1927) и Стефан Цвейг с женой (1942). Широко известна также зависимость от барбитуратов (барбитуризм), приводящая к отмиранию нейронов головного мозга и умственной деградации. К началу 1950-х активные поиски безвредного снотворного и успокоительного привели немецких фармацевтов из компании Хеми-Грюненталь к созданию талидомида, синтезированного в 1954 году. В 1956 году он был лицензирован в ФРГ, а позже в Великобритании в качестве безрецептурного седативного и транквилизатора. Но препарат оказался настолько модным, что его также назначали при пневмонии, простуде и гриппе. Также выяснилось, что талидомид облегчает симптомы токсикоза на ранних сроках беременности.
Деплоим Machine Learning Workloads используя MLFlow
Сегодня мы узнаем, как развертывать различные рабочие нагрузки машинного обучения с помощью MLflow.
Не будем томить, сразу к делу.
Под капотом у компилятора Go: добавление нового оператора в Go — часть 1
Это первая статья из серии из двух частей, в которой мы в форме туториала изучаем компилятор Go. Компилятор большой, и для его корректного описания потребовалась бы целая книга, поэтому идея этих постов заключается в том, чтобы вместо этого обеспечить быстрое погружение в тему. В будущем я планирую написать ряд более описательных статей о конкретных областях компилятора.
Мы собираемся изменить компилятор Go, добавив новую (условно) языковую фичу, и собрать модифицированный компилятор, чтобы ее опробовать.
Отчёт о кибербитве Standoff 10, прошедшей осенью
Информационная служба Хабра 22 ноября и 23 ноября 2022 года посетила юбилейную десятую кибербитву Standoff между этичными хакерами и специалистами по информационной безопасности, среди которых также присутствуют этичные хакеры. Есть две стороны – одна атакующая (Red Team), другая защищающая (Blue Team). Последние две кибербитвы «защищающаяся» сторона не защищается, а расследует инциденты. Это сделано для большего приближения к реальным условиям. То есть Blue Team находит недопустимое событие и расследует его причины, а потом предоставляет отчёт.
Как макросы в Confluence упрощают жизнь
Многие так или иначе сталкивались с продуктами компании Atlassian, такими как Confluence, Jira. Их использование позволяет организовать работу команды разработки наиболее удобным способом, обеспечить доступ к информации проекта. Кроме того, что эти продукты обеспечивают онлайн-доступ к основным материалам проекта, они также включают в себя много интересных плюшек. В этой статье ведущий системный аналитик ДОМ.РФ Екатерина Шипкова расскажет о полезных фичах Confluence.
Одним из основных инструментов аналитика в IT является Confluence или Wiki. Данные пространства используются для написания требований к разрабатываемой системе и в целом похожи друг на друга своими функционалами. Требования, которые аналитик формирует к системе, должны отвечать определенным критериям, таким как: полнота, завершенность, атомарность, непротиворечивость, идентифицируемость, трассируемость. Поддерживать эти критерии становится крайне непросто, если документация проекта включает множество страниц со статьями, т.к. время, которое автор будет затрачивать на то, чтобы скорректировать одинаковые требования, найти их в пространстве проекта будет колоссальным. Именно для сокращения времени на поиск необходимой информации и сокращение дублирования одинаковых материалов можно использовать различные макросы в Confluence.
Основы автоматизации в Ansible: роли и сценарии
Ansible — инструмент управления конфигурациями. Задачи, которые решаются с его помощью, часто повторяются у разных людей и команд. Как и в случае программирования, где общий код выделяют в библиотеку, Ansible выделяет повторяющиеся вещи в роли. В статье объясним, в чём основная идея ролей, а также подробно разберём процесс их создания.
Нельзя просто взять и обезличить данные — опыт команды разработки «Сферы»
Бизнесу нельзя использовать данные клиентов as is для тестов. Отдел разработки не может просто взять персональные данные (ПДн) и проверить на них новую фичу, обучить Machine Learning-модель. Этот момент регулируют законы и отраслевые стандарты. Чтобы с данными можно было работать, их необходимо обезличить. В крупных компаниях сотни таблиц переплетены идентификаторами, формулами, процедурами. И здесь речь идет уже о формировании обезличенных интеграционных полигонов (комплексов БД). Максим Никитин, тимлид группы разработки, поделится опытом команды разработки платформы производства ПО «Сфера».
Событийная онтология vs объектная
В общем случае (вне и до информационных технологий), произнося слово «семантика», предлагают обсудить смысловой уровень языка – значения знаков и структур знаков (текстов). При этом семантика противопоставляется синтаксису, то есть формальным правилам соединения знаков в текст. Когда же речь о семантике заводится в сфере IT, то имеют в виду особые технологии, архитектуры приложений и языки описания данных, ориентированные на знаковое представление объектов и их свойств в компьютерных моделях предметных областей. В качестве основной цели семантического подхода видится «научение» компьютера распознавать смысл данных, описывающих деятельность и ее элементы, то есть реализовать переход от оперирования безликими данными к работе со значениями и знаниями. Предполагается, что широкое использование семантического подхода к моделированию предметных областей позволит унифицировать обмен информацией между независимыми поставщиками данных и приложениями, а также обеспечит возможность модифицировать структуру данных и бизнес-логику приложений не путем переписывания кода, а только через преобразование семантически определенных данных. К основным методам семантического подхода следует отнести: унификацию формата записи, уникальную идентификацию записей, включение метаданных в данные, стандартизацию словарей.
Традиционно семантическое описание предметной области называют онтологией этой области. При этом выражения «онтологическое описание», «онтологическая модель», «онтология предметной области» используют как синонимы. Онтология или онтологическая модель предметной области – это, по сути, структура из сущностей (концептов, понятий, типов объектов), их свойств и правил установления отношений между ними. Обычно онтологию представляют в виде графа, вершинами которого являются объекты, а ребрами – свойства. Часто такую структуру из объектов и значений их свойств, построенную для определенной предметной области, называют графом знаний (Knowledge Graph).
Истории
Swift модуляризация вашего проекта
Всем привет сегодня я покажу как можно завернуть проект в spm (модуляризация)
Модуляризация — Это процесс разбиения кодовой базы на небольшие специализированные, готовые к повторному использованию модули
У меня есть небольшой проект и я хочу чтобы он был завернут в spm.
Несколько советов по работе с CORS для начинающих разработчиков
В этой статье мы с вами разберемся, что такое CORS, CORS-ошибки и из-за чего мы можем с ними сталкиваться. Я также продемонстрирую возможные решения и объясню, что такое предварительные (preflight) запросы, CORS-заголовки и в чем заключается их важность при обмене данными между сторонами.
Эта статья рассчитана на тех, у кого уже есть базовые познания в области веб-разработки и некоторый опыт с протоколом HTTP. Я старался писать статью так, чтобы она была понятна и новичкам, будучи наполненной знаниями, но при этом стараясь избегать слишком большого количества технических нюансов, не связанных с темой CORS.
Как и зачем тестировать голосовых и чат-ботов?
Привет, Хабр! Меня зовут Оля, и я работаю QA-инженером в команде лингвистов Just AI. Для лингвистов-разработчиков каждый чат-бот — это отдельный проект со своими фичами, иногда с собственным характером и всегда — с особым подходом к тестированию. В тестировании ботов, помимо проектной специфики (a.k.a. конкретные требования и «хотелки» заказчика), которую обобщить едва ли возможно, есть еще и неочевидные вещи, связанные со спецификой самого типа бота. В этом материале я постаралась аккумулировать наш опыт запуска голосовых и текстовых ботов в продакшен (десятков ботов!) и собрать рекомендации о том, как их тестировать.
JavaScript: замена фона видео и реализация интересных эффектов на основе координат лица в реальном времени
Привет, друзья!
Я продолжаю изучать MediaPipe — библиотеку с открытым исходным кодом от Google, предоставляющую "кроссплатформенные и кастомизируемые решения на основе машинного обучения для работы с медиа", и в этой статье хочу рассказать вам о 2 инструментах:
- Selfie Segmentation, выделяющий людей на сцене, что позволяет осуществлять замену фона на кадрах видео в процессе потоковой передачи соответствующих данных;
- Face Mesh, предоставляющий сетку лица человека, состоящую из 468 контрольных точек с координатами в трехмерном пространстве, что позволяет реализовать некоторые интересные визуальные эффекты.
Если вам это интересно, прошу под кат.
«Заряд» от Blender Studio
Новый мультфильм сделанный на "Blender"-е.
Инструменты управления тестированием
В статье рассмотрим 7 инструментов, которые помогают управлять процессом тестирования, их ключевые особенности и ситуации применения.