Pull to refresh
  • by relevance
  • by date
  • by rating

Как я сделал свою сборку Gulp для быстрой, лёгкой и приятной вёрстки

Website development*CSS*JavaScript*HTML*Node.JS*
Sandbox

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

Читать далее
Total votes 22: ↑15 and ↓7+8
Views12K
Comments 13

Автоматизация или смерть: как управлять тысячами единиц игрового контента с помощью гугл-таблиц

Lightmap corporate blogJavaScript*Game development*Data storage*Game design*

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

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

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

Читать далее
Total votes 41: ↑39 and ↓2+37
Views10K
Comments 22

Тренды тестирования 2020-2021: правда и мифы

IT systems testing*Web services testing*DevOps*

Всем привет! Недавно я наткнулся на World Quality Report (ссылку поставил в конце, чтобы не пугать вам сразу отчетов на 50 страниц) — большой обзор трендов в тестировании 2020-2021 годов. А поскольку мы в Qameta Software сами постоянно сталкиваемся с командами тестирования, которые стараются как-то поправить свои процессы и наладить работу тестирования, я решил оценить, насколько они актуальны в России.

Обзор базируется на результатах 1750 получасовых телефонных интервью с CIO или руководителями технологических подразделений, которые посчитали качество ПО и тестирование критично важным для развития бизнеса.

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

Читать далее
Total votes 15: ↑15 and ↓0+15
Views8.4K
Comments 7

Мониторим парк ИБП. Ч.3, заключительная

Open source*System administration*Programming*Energy and batteriesDIY

Или что пригодится знать и уметь, если замена ИБП после поломки – урон профессиональной гордости.

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

Спешу поделиться с вами!
Total votes 6: ↑6 and ↓0+6
Views4.6K
Comments 9

Внутренняя автоматизация – почему мы отказались от Bonita в пользу Camunda

КРОК corporate blogSystem Analysis and Design*IT Infrastructure*Project management*

Привет! Меня зовут Мирослав, я инженер-разработчик проекта по реализации BPM-решений для внутренней автоматизации КРОК.

Наш проект не гоняет миллионы строк каждую ночь через фильтры и правила, это не сложная система, которая отвечает за кадровую информацию, бюджетирование или сведение план-факта. Наш проект автоматизирует КРОК на самом понятном пользователю языке – их у нас сейчас более 2 000 сотрудников. Если есть рутинная задача, которую можно представить в BPMN, мы ее реализуем. 

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

Теперь пользователь просто прописывает путь к папке, выбирает тип доступа (чтение/редактирование), оставляет при желании какой-нибудь увлекательный комментарий – и все, дальше все делает BPMN. 

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

Читать далее
Total votes 20: ↑20 and ↓0+20
Views4.6K
Comments 12

Автозаказ: как сделать так, чтобы нужные продукты сами попадали на полки 17 000 магазинов по всей стране

X5 Retail Group corporate blogERP-systems*Data visualizationDevelopment for e-commerce*Industrial Programming*

Автозаказ: как сделать так, чтобы нужные продукты сами попадали на полки 17 000 магазинов по всей стране

Существует задача: масштабной ритейл-сети по продаже товаров необходимо, чтобы огромное количество номенклатурных позиций доезжало в каждый из 17000 магазинов, расположенных на половине площади самой большой страны в мире, вовремя и в нужном количестве. Для решения такой задачи в X5 Group существует ряд реализованных решений, и одним из самых важных является процесс автозаказа товаров. 

Техническую поддержку этого направления в X5 Group обеспечивает команда 2-SAP Логистики.  Наша команда поддерживает решения, которые помогают бесперебойно обеспечивать полки магазинов свежими продуктами, а покупателям на территории всей России доступны к продаже десятки тысяч товарных позиций. 

Читать далее
Rating0
Views3.2K
Comments 9

Кейс: аналитика системы освещения в логистическом центре

Interfaces*SCADA*Systems engineering

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

Клиент: крупный логистический центр в Московской Области, с которым мы работаем с 2016 года. За это время мы провели уже много работ по диспетчеризации инженерных систем, вывели в единую BMS вентиляцию, котельную, энергетику, отопление, энергоучет и много чего еще. А в этом году решили добавить еще и диспетчеризацию освещения в общую систему.

Читать далее
Total votes 5: ↑4 and ↓1+3
Views1.6K
Comments 7

Помогите прочитать, что здесь написано? (OCR)

Beeline Казахстан corporate blogProgramming*Image processing*Big Data*Machine learning*


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

В 2020 году нам тоже пришлось решать проблему качественной оцифровки документов, и над этим проектом мы с коллегами работали совместно с компанией Verigram. Вот как мы проводили оцифровку документов на примере заказа клиентом SIM-карты прямо из дома.

Превращаем картинку в текст
Total votes 11: ↑11 and ↓0+11
Views2.5K
Comments 11

Автоматизация машинного обучения

Python*Programming*Machine learning*

Datascience – это не только fit-predict

Представим, что вы начали работать в компании, которая производит однообразные операции с бесконечными таблицами. Например, в крупном ретейлере или у ведущего оператора связи. Ежедневно перед вами ставят задачу выяснить, останется ли клиент с вами или хватит ли товара на полках до конца недели. Алгоритм выглядит просто. Вы берете выборку, изучаете бесконечные ряды признаков, удаляете мусор, генерируете новые признаки, собираете сводную таблицу. Подаете готовые данные в модель, настраиваете параметры и с нетерпением ждете заветных цифр итоговой метрики. Это повторяется день за днем. Затрачивая каждый день всего 60 минут на генерацию фич или подбор параметров, за месяц вы израсходуете минимум 20 часов. Это, без малого, целые сутки, за которые можно выполнить новую задачу, обучить нейросеть или прочесть несколько статей на arxiv’e.

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Views2.8K
Comments 0

Powershell настоящий язык программирования. Скрипт оптимизации рутины в техподдержке

Programming*.NET*PowerShell*Algorithms*Development for Windows*
Sandbox
Tutorial

Работая в компании IT-аутсорса в качестве руководителя 3 линии поддержки, задумался, как автоматизировать подключение сотрудников по RDP, через VPN к серверам десятков клиентов.

Таблички с адресами, паролями и прочими настройками серверов, конечно, хорошо, но поиск клиента и вбивание адресов с аккаунтами занимает довольно существенное время.

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

Задача, к тому же, осложняется тем, что у некоторых клиентов pptp, у кого-то l2tp, у некоторых несколько подсетей, туннели и т.п.

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

До написания этого скрипта-приложения программированием не занимался вообще, разве что лет 20 назад что-то пописывал на VBS в MS Excel и MS Access, поэтому не гарантирую красивость кода и принимаю критику от опытных программистов, как можно было бы сделать красивее.

В Powershell, начиная с Windows 8 и, конечно в Windows 10, появилась прекрасная возможность создавать VPN подключения командой Add-VpnConnection и указывать какие маршруты использовать с этими соединениями командой Add-VpnConnectionRoute.

На основании этих команд и создано данное приложение. Но, обо всем по порядку.

Для начала, создаем в Google Disk таблицу с именованными столбцами:
Number; Name; VPNname; ServerAddress; RemoteNetwork; VPNLogin; VPNPass; VPNType; l2tpPsk; RDPcomp; RDPuser; RDPpass; DefaultGateway; PortWinbox; WinboxLogin; WinboxPwd; Link; Inform

Читать далее
Total votes 11: ↑10 and ↓1+9
Views10K
Comments 68

Немного CI/CD магии: настраиваем доставку скриптов миграции базы данных с использованием GitLab и Liquibase

ОТР corporate blogOracle*SQL*Database Administration*DevOps*
Sandbox

Главный разработчик и архитектор проектов ГК «ОТР» Дмитрий Копытов рассказал о практичном использовании CI/CD-подхода на примере доставки скриптов миграции базы данных Oracle 19. Для решения задачи он использовал GitLab Community Edition, GitLab Runner и Liquibase. Эксперт подробно описал технические аспекты настройки связи инструментов для проектов.

Читать далее
Total votes 4: ↑4 and ↓0+4
Views3.1K
Comments 9

Управление прожекторами при помощи Arduino

Developing for Arduino*DIY
Sandbox

Здравствуйте, уважаемые хабрчане! Друг купил прожекторы, которые управляются при помощи инфракрасного пульта, и попросил автоматизировать их, чтобы каждый час была возможность выставить нужный цвет и яркость. Идея выставить настройки для аквариума, чтобы освещение переключалось автоматически каждый час, в течении 24 часов.

Для реализации проекта была выбрана плата Arduino UNO, так как есть готовые библиотеки для считывания и отправки инфракрасного сигнала. Вначале были прочитаны команды пульта, используя микросхему VS1838B (Ардуино библиотека писала, что это протокол LG и используются 28 бит). Попробовал генерировать такие же сигналы используя функцию sendLG - ничего не получилось (осциллоскопа нету, увидеть сигнал в живую возможности не было). Поэтому 8 команд (включить, выключить, ярче, темнее, белый, красный, синий, розовый) были прочитаны в режиме raw , и каждой команде соответствовал свой массив из 67 unsigned int значений. Конечно это плохое решение, потому что занимает 60% динамической памяти, но других вариантов как решить эту задачу у меня не было.

Далее была работа над меню устройства. Необходимо было дать возможность выставить текущее время, а также выбрать параметры освещения под каждый час. Был взят символьный дисплей 20х4 (использовал параллельное подключение, т.к. переходник на I2C глючил) и три кнопки, всего получилось семь окон для символьного дисплея. Для реализации меню пришлось повозится, используется Конечный автомат (Finite-state machine) с 77 состояниями.

Читать далее
Total votes 8: ↑5 and ↓3+2
Views4.7K
Comments 7

Не делайте из роботов новую бизнес-религию

RegionSoft corporate blogIT Infrastructure*CRM systems*Business ModelsSoftware

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

Читать далее
Total votes 18: ↑17 and ↓1+16
Views3.5K
Comments 7

Как автоматизировать подкаст за копейки [ч. 2/2]

Popular scienceLifehacks for geeksSound

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

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

Читать далее
Total votes 5: ↑5 and ↓0+5
Views1.1K
Comments 0

6 вещей, которые бизнес-лидеры должны знать о RPA в 2021 году

OTUS corporate blogProgramming*Software
Translation

Эта цитата от Ashwin — лишь одна из многих положительных высказываний о роботизированной автоматизации процессов (RPA), которые мы услышали в новом исследовании State of the RPA Developer 2021 — нашем втором ежегодном опросе более чем 1000 разработчиков RPA.

Эта позитивная оценка не удивляет нас. RPA продолжает демонстрировать высокие темпы роста: Gartner прогнозирует, что в 2021 году глобальный доход от реализации программного обеспечения RPA достигнет $1,89 млрд, что на 19,5% больше, чем в 2020 году.

И многие отчеты показывают, что пандемия увеличила спрос и важность RPA. Вот чем поделилась Monica Spigner на канале Information Age:

Читать далее
Total votes 5: ↑3 and ↓2+1
Views836
Comments 1

Чат-бот на службе розницы: как умный робот оптимизировал процесс обслуживания покупателей

М.Видео-Эльдорадо corporate blogPersonnel Management*Reading room


Скажите, есть ли такие магазины, в которых продавцы не отвлекаются на свои смартфоны? Хотя бы тайком? Наши ребята не просто «залипают» в смартфон, а используют его как полноценный инструмент для работы. Началась эта история в М.Видео с запуска чат-бота для повышения качества и скорости обслуживания клиентов. Идея в том, чтобы избавить покупателей от необходимости стоять в очереди на выдачу онлайн-заказа. Мы создали систему, в которой «кто первый освободился, тот и берет выдачу заказа на себя». Интеграция бота в бизнес-процессы помогла нам победить очереди, повысить эффективность… и улучшить коммуникации внутри компании. Как мы это делали и почему в итоге решили прикручивать к чат-боту нейросеть, читайте под катом.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Views2.9K
Comments 19

От (не)управляемого хаоса к автоматизированному процессу

Учи.ру corporate blogDevelopment Management*Project management*Microservices*

Меня зовут Паша Мягков, я frontend tech lead в команде монетизации Учи.ру. Несколько месяцев назад рост команды и задач привел нас к тому, что привычные рабочие процессы перестали отвечать нашим потребностям. Болезнь роста затронула прозрачность разработки, планирование и workflow. В этой статье я расскажу, как в рамках одной быстро выросшей команды нам удалось наладить процессы.

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

Читать далее
Total votes 6: ↑6 and ↓0+6
Views2K
Comments 0

Как реанимировать туризм с помощью систем распознавания

Smart Engines corporate blogMachine learning*Artificial IntelligenceTransport

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

Читать далее
Total votes 7: ↑1 and ↓6-5
Views1.2K
Comments 4

Как устроен цифровой профиль в современных HR-системах на примере нашей Human Capital Management System

TalentTech corporate blogPersonnel Management*IT career

Меня зовут Сергей Ахметов, я технический директор компании - разработчика HRTech-решений TalentTech, расскажу про систему автоматизации алгоритмов онбординга, развития, обучения и вовлеченности каждого отдельного сотрудника в компании. 

По сути, это наше выражение в коде и железе HR-процессов здорового человека в противовес тем, где большие объемы работы соседствуют с не до конца отлаженными процессами. Где линейным руководителям и сотрудникам HR не хватает времени, ресурсов, подсказок, схем. Плюс извечные вопросы: как быстро и безболезненно ввести нового сотрудника в коллектив? Когда и кому нужна переквалификация и обучение? Все ли сотрудники максимально вовлечены в процесс? Как всем этим управлять и контролировать? В общем, подробности под катом.

Читать далее
Total votes 6: ↑5 and ↓1+4
Views1.2K
Comments 0