Как стать автором
Обновить

Разработка

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Разработка веб приложений на С++

C *C++ *Nginx *Разработка под Linux *
В этой статье я бы хотел рассказать про создание веб приложений на С/С++ с использованием стека Nginx+fastcgi. Если быть более точным, то статья больше относится к сайтам, то есть к отдаче контента. Есть достаточно старая, но хорошая статья habr.com/ru/post/154187 С тех пор прошло много времени, да и вышли новые стандарты С++. Я хочу в этой статье описать некоторое логическое продолжение, так как думаю, что тема будет многим интересна.
Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 225
Комментарии 0

Новости

[Окончание] Новогодний детектив: странный хайзенбаг в «питоньих» часах

Ненормальное программирование *Python *Программирование **nix *Виртуализация *


Здесь лежит окончание "расследования" Новогодний детектив: странный хайзенбаг в «питоньих» часах.
Изначально хотел просто обновить статью и написать соответствующий комментарий, но понял что апдейт выходит чуть не длиннее самой статьи.


Напомню краткое содержание предыдущей части: python, как впрочем и всё на нем написанное, временами прыгает в будущее, а конкретно в 2023-й год в локальной временной зоне, и по некоторым данным в 2024-й в UTC/GMT (но это не точно) и побыв там некоторое время возвращается обратно в настоящее.
Во время прыжка оно ведет себя довольно стабильно (т.е. считает нано-, микро- и миллисекунды, а то и секунды, как будто время идет как ни в чём не бывало) в 2023-м т.е. локально, при том что в результате повторных прыжков время вновь продолжается как будто по возвращению оно (время) течет в какой-то параллельной вселенной. Однако странное его "отражение" в UTC/GMT, ну то что как будто бы в 2024-м, выглядит менее стабильно, ибо для него наблюдается странные дрейфы дополнительно к смещению прыжка.
Хотя куда уж страннее.

Читать дальше →
Всего голосов 2: ↑1 и ↓1 0
Просмотры 359
Комментарии 2

Безопасность учетной записи Steam | Что это, как и почему

Информационная безопасность *Игры и игровые консоли

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

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

Заинтересовавшихся приглашаю к чтению ➜
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 850
Комментарии 7

Gitlab CI «Smart» Pipeline: родители и дети

Git *DevOps *
Recovery mode

За более 3х летний срок существования продукта у нас собралось более чем 20 репозиториев со spark проектами. Процесс CICD был реализован на Jenkins. С определенного момента у GitLab CI появилась возможность создавать собственные CICD. Но долгое время я совершенно не воспринимал всерьез этот инструмент. Так как мне нравилось, что в Jenkins можно взять и дописать то чего тебе не хватает на Groovy. Настройка WebUI предоставляет широкие возможности для организации параметризованных сборок. Поначалу функционал GitlabCI я воспринимал это как жалкое подобие Jenkins: чтобы реализовать ну что-то очень очевидное и простое, я уже молчу про параметризованную сборку.

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 1K
Комментарии 5

Логистика и цепи поставок в жанре магического реализма

Big Data *Исследования и прогнозы в IT Развитие стартапа Искусственный интеллект Интернет вещей

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

При этом доставка последней мили – это хоть и важный, дорогой и любимый инвесторами и стартапами, но всё же почти финальный этап в процессе движения товаров по цепи поставок.

После неё следует разве что что возврат товара, если не подошло, а также иногда утилизация уже использованных товаров (в последние годы логистика утилизации стала очень востребованной в условиях захвативших прогрессивное сообщество ESG-настроений).

А до последней мили – сложный процесс управления движением потоками материалов и товаров, финансов и информации по сложным цепям поставок.

Поэтому в этой статье расскажу о том, почему меня в целом вдохновляет управление цепями поставок и логистика в части использования location intelligence и AI и цифровизации в целом, почему «цифровой дарвинизм» особенно беспощаден именно этой отрасли и зачем именно в логистике мы делаем пилот.

Читать далее
Рейтинг 0
Просмотры 512
Комментарии 1

Symfony Panther: зверь в мире тестирования

Блог компании OTUS PHP *Программирование *Symfony *
Перевод

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

Читать далее
Всего голосов 6: ↑2 и ↓4 -2
Просмотры 510
Комментарии 0

Автоматизация обработки клиентских обращений

Блог компании Accenture Машинное обучение *Natural Language Processing *

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

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 545
Комментарии 3

Подводные камни бенчмаркинга в .NET: фрагмент книги Андрея Акиньшина

Блог компании JUG Ru Group Высокая производительность *.NET *C# *

Андрей Акиньшин @DreamWalker хорошо известен в .NET-сообществе: он мейнтейнер BenchmarkDotNet и perfolizer, член программного комитета нашей конференции DotNext, автор книги Pro .NET Benchmarking о том, как правильно бенчмаркать.

А теперь эта книга есть и на русском языке — ее перевод подготовило издательство «Питер». Сделаем важную оговорку: переводил не сам Андрей, так что русскоязычная терминология может отличаться от той, которую выбрал бы он, и «каноническим авторским вариантом» по-прежнему остаётся англоязычный. Но наверняка для многих важна сама возможность прочитать это на родном языке, поэтому с любезного разрешения Андрея и издательства мы публикуем на Хабре фрагмент перевода.

В книге много сказано о бенчмаркинге в целом, поэтому она может быть полезна для самых разных разработчиков, но мы приведём фрагмент о том, что специфично для .NET.

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 1.2K
Комментарии 0

Отслеживание жизненного цикла учетных записей Active Directory — анонс вебинара

Блог компании Gals Software Информационная безопасность *IT-инфраструктура *Microsoft SQL Server *Microsoft Azure


Жизненный цикл пользователя — это создание (provisioning), управление (managing) и отключение (de-provisioning) пользователя. На каждом из этих этапов пользователю присваиваются или отключаются специфические атрибуты: членство в группах, почтовый ящик, доступ к файловому хранилищу и т.д.

Приглашаем на вебинар, на котором познакомим вас с решением Quest Enterprise Reporter. Это инструмент управления жизненным циклом пользователей и формирования отчётов безопасности для окружения Microsoft: Active Directory/Azure AD, Exchange/Exchange Online, Office 365, Windows Servers, OneDrive for Business, SQL Server, инфраструктура Azure (ВМ, диски, группы сетевой безопасности и остальное). Enterprise Reporter включает несколько сотен предустановленных отчётов для перечисленной инфраструктуры, позволяет выполнять управляющие действия над правами доступа (добавить пользователя в группу, отменить доступ к директории и т.п.) прямым переходом из отчёта и формирования собственных отчётов на основе имеющихся в инфраструктуре данных.

Вебинар состоится 20 января в 11:30 по московскому времени. Регистрация.

Под катом примеры отчетов и скриншоты интерфейса Enterprise Reporter.
Читать дальше →
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 483
Комментарии 0

Эволюция бесконечной случайной конфигурации в игре «Жизнь»

Математика *Научно-популярное Логические игры

Эту вещь я хотел сделать с детства, но тяжело такое имплементировать, когда у тебя что на ЕС-1022, что на СМ-4 не хватает памяти. Сейчас такие вещи делаются играючи.

Итак, засеем бесконечное поле в игре "Жизнь" клеточками с вероятностью p от 0 до 1. Какова будет плотность популяции клеток после N ходов?

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

Читать далее
Всего голосов 32: ↑32 и ↓0 +32
Просмотры 4.2K
Комментарии 13

Row level security и security labels с Hasura

Информационная безопасность *Анализ и проектирование систем *Проектирование и рефакторинг *
Из песочницы

Любая система так или иначе должна быть защищена. Доступы пользователей должны контроллироваться. Каждый использует готовые или придумывает свои решения для обеспечения авторизации. Можно комбинировать эти подходы, особенно сегодня, когда обилие технологий, подходов и требований к системе зашкаливает. Что ж, хочу представить Вашему вниманию историю о том, как мы внедряли подход Security Labels в Hasura для обеспечения модели доступа Row Level Security.

Читать далее
Рейтинг 0
Просмотры 205
Комментарии 0

C#: разбираем бинари

Блог компании OTUS Программирование *C# *

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

Читать далее
Всего голосов 7: ↑3 и ↓4 -1
Просмотры 2.5K
Комментарии 7

Настройка LEMP сервера для простых проектов. Инструкция для самых маленьких. Часть третья

Блог компании Nixys PHP *Nginx *Apache *

Приветствую читателей! В рамках текущей серии статей я рассказываю о том, как настроить сервер для простых проектов. Имеется ввиду сервер для работы нескольих сайтов, с небольшой нагрузкой под наиболее популярной CMS такой например как Bitrix. Основная цель статьи указать на ошибки допускаемых младшими специалистами при выполнении подобной настройки. Также указать на какие то вещи, которые сделают troubleshooting простым и удобным.

Это не совсем стэк LEMP, так как здесь используется Apache2, но вы можете использовать PHP-FPM вместо этого, если разработчик не против внедрения такого решения.

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

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

Предыдущие части статей доступны по следующим ссылкам:

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Просмотры 1K
Комментарии 9

QA, из команды в тимлиды — как выжить между двух огней

Блог компании Альфа-Банк Тестирование мобильных приложений *Управление разработкой *Управление персоналом *Карьера в IT-индустрии

Меня зовут Катя, я недавно стала QA-лидом в Альфа-Банке, до этого работала в команде. В этом посте я расскажу, как у меня происходил переход из командного тестировщика в позицию QA-лида. Возможно, моя история окажется полезной для тех, кто переходит из статуса "часть команды" в статус лида и пытается понять, что вообще случилось и как дальше жить.

Сейчас я занимаюсь Альфа-Мобайлом, нашим мобильным приложением для физических лиц. Работа в команде состояла из обычного взаимодействия с нашими IOS- и Android-разработчиками, с аналитиком, с бэкенд-разработчиком и с product owner’ом. В моей командной работе были обычные спринты, обычная приемка, обычное написание автотестов к различным компонентам архитектуры, конечно же, дедлайны и еженедельный всеобщий Мобайловский регресс. Помимо работы в команде, есть еще наставничество.

Архитектура довольно нетипичная: помимо обычного front’a и back’a есть еще и middle, и не каждый въезжает сразу, на это тратится много времени. На тот момент, когда со мной поговорил мой руководитель и рассказал, что пора переходить в лиды, у меня было два начинающих падавана. В общем, состоялся разговор о том, что пора расти, пора уже переходить дальше, я ответила, что хоть и очень загружена, но готова. 

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 1.4K
Комментарии 0

Android NDK компиляция OpenCPN

Программирование *Eclipse *C++ *Разработка под Android *Транспорт
Tutorial

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

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 801
Комментарии 0

Меши с Python & Blender: двумерная сетка

Open source *Работа с 3D-графикой *
Перевод
Tutorial

Привет! Понадобилось процедурно генерировать сложную 3D модель, и пока я копал, как это делается, нашёл несколько статей от Diego Gangl, cg артиста и разработчика Блендера. Они славные для новичка, понимающего в моделировании, но не умеющего (почти) в код. Это перевод одной из них. Неточности и ошибки автора я поместил под спойлеры.

В этом туториале Диего покажет, как создать скрипт, рисующий двумерную сетку: отличный способ понять, как python взаимодействует с Блендером.

Начнём?
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 1.1K
Комментарии 3

Как бизнес-аналитики из Петербурга пересмотрели подход к найму кандидатов и что из этого вышло

Блог компании EPAM Анализ и проектирование систем *

В августе бизнес-аналитики из Санкт-Петербурга стартовали новый проект, который получил рабочее название «Проект Z». Они расширили возможности входа в бизнес-анализ для тех, у кого нет опыта работы, и придумали новую систему обучения. Уже сейчас можно говорить о том, что этот проект принес результаты – первые его участники уже приступили к работе в EPAM.

Как родилась идея, с какими трудностями столкнулись в процессе реализации, как происходит отбор кандидатов и строится работа с ними? Обо всем этом рассказали менеджеры и драйверы проекта Юрий Медынский и Леонид Юденков.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 898
Комментарии 3

SQL HowTo: считаем «уников» на интервале

Блог компании Тензор PostgreSQL *SQL *Администрирование баз данных *CRM-системы *

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

Искать в большом количестве фактов «уники» — всегда сложно и долго, если их достаточно много. Если интервалы фиксированы (календарные месяц/квартал/год), можно материализовывать такие агрегаты заранее. А если интервал — произвольный, как тогда эффективно найти ответ?

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 1.6K
Комментарии 8

Карманная консоль Null 2 RetroPie на базе Raspberry Pi Zero 2

Блог компании RUVDS.com Производство и разработка электроники *Старое железо DIY или Сделай сам Игры и игровые консоли
Перевод
Tutorial

Этот проект будет интересен любителям ретро игр и просто тем, кто захочет вспомнить былые дни, а может и собрать собственную карманную консоль. Здесь мы подробно разберем этот процесс для комплекта Null2, попутно решив ряд проблем совместимости и обсудив технические вариации сборки.
Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Просмотры 3.1K
Комментарии 4

Как мы тестируем Rest API в SM 2.0 с помощью Postman: сценарии, запросы, переменные окружения и немного автотестов

Блог компании Sportmaster Lab Тестирование IT-систем *JavaScript *Тестирование веб-сервисов *


Всем привет! Сегодня я расскажу о том, как мы тестируем Rest API в SM 2.0 с помощью инструмента Postman.



И сделаю это на примере реальной задачи — посмотрим сценарий пользователя (как оформляется заказ у нас на сайте), посмотрим, как это работает все изнутри, пару слов скажу о REST-запросах, расскажу про Postman. Далее мы перейдём в сам инструмент, посмотрим окружение, интерфейс, далее разберём исходные данные и приступим к решению самой задачи, и в конце немного расскажу про автотесты.
Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 1.3K
Комментарии 4