Pull to refresh
5
0
Михаил @Alhart

Инженер-конструктор, руководитель проектов.

Send message

Писать код для компьютеров сложно, ещё сложнее — писать код для людей

Level of difficultyMedium
Reading time7 min
Views12K

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

А теперь немного усложним задачу. Будем писать код для людей!

Объясню, что я имею в виду: я говорю о коде, с которым смогут взаимодействовать другие люди. В частности, я имею в виду искусство создания удобных фреймворков, библиотек, API, SDK, DSL, встроенных DSL или даже языков программирования.

Писать такой код гораздо сложнее, потому что ты не только говоришь компьютеру, что делать, но и вступаешь в борьбу с ментальной моделью твоего кода в глазах другого пользователя. Это в равной степени computer science и психология мышления. Как сделать так, чтобы этот человек понял твой код?

Ричард Фейнман как-то сказал: «Представьте, насколько сложнее была бы физика, если бы электроны имели чувства». Он говорил это в другом контексте, но мне кажется, это частично описывает и программирование для людей. У человека, интерпретирующего твой код, есть чувства!

Давайте поговорим о том, как упростить ему задачу.
Читать дальше →
Total votes 38: ↑35 and ↓3+52
Comments6

BPMN 2.0 универсальный подход при построении диаграмм

Level of difficultyEasy
Reading time6 min
Views8.3K

Я написал этот гайд для использования аналитиками в компании (мы интегратор решений 1С в медицине), как настольная шпаргалка и некий базовый «стандарт унификации» формируемых диаграмм данного типа.

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

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

Читать далее
Total votes 15: ↑13 and ↓2+13
Comments16

Как простой Python-скрипт с использованием ИИ может оптимизировать ваш рабочий процесс

Level of difficultyEasy
Reading time6 min
Views21K

Программисты не понаслышке знают, как важно периодически давать отдых уставшим запястьям. И в этом случае возможность диктовки текста – будь то во время длительных сессий программирования или в стремлении к более эргономичной организации работы – может стать настоящим спасением. В данном туториале я вместе с вами подробно рассмотрю процесс создания современного инструмента для транскрибации речи в текст на языке Python, отличающегося высокой скоростью и точностью благодаря использованию ИИ, а именно API Whisper от Groq.

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

Приятного прочтения!

Читать далее
Total votes 26: ↑25 and ↓1+26
Comments9

Истории из жизни CIO. Часть 1. «Как айтишники «обувают» промышленников»

Level of difficultyMedium
Reading time8 min
Views5.3K

Итак, давайте знакомиться, меня зовут Виктор и я 10+ лет занимаю позиции CIO в различных крупных холдингах, включая производственные и машиностроительные предприятия. Я решил начать написать цикл статей о том, какие схемы обмана, включая нарушение действующего законодательства, используются интеграторами и вендорами, с целью незаконного обогащения. Зачем это может быть полезно общественности? Не знаю, разве что для понимания откуда у представителей бизнеса имеется отторжение и неприязнь ко всему сообществу IT.

Читать далее
Total votes 13: ↑11 and ↓2+12
Comments13

Чиним замедление YouTube на уровне роутера

Level of difficultyMedium
Reading time6 min
Views637K

Всех категорический приветствую. Буквально первого августа, прямо в ночь, стал у меня жутко лагать YouTube. Естественно, мне это сильно не понравилось. Ну, что же, давайте разбираться, почему и как это исправить в условиях моей личной сети.

Что случилось?

Хорошо описано произошедшее здесь, на Хабре. Если совсем кратко, своими словами - во время установки SSL соединения в открытом виде домен передается к которому мы подключаемся(так называемое SNI). И если это googlevideo.com то начинают твориться "интересные вещи". Можно проверить это локально коммандами из статьи.

$ curl https://speedtest.selectel.ru/100MB -o/dev/null

Читать далее
Total votes 360: ↑357 and ↓3+412
Comments1053

5 шагов к оформлению интеллектуальной собственности в IT-стартапе для привлечения инвестиций

Reading time16 min
Views7.8K

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

Проблема российских стартапов в том, что в головах их участников укоренили мысль: "Защита интеллектуалки и ее последующая монетизация возможна только с помощью патента", – это вызывает new big aim получение патента, чтобы опираться на него при получении инвестиций и выходить на рынок под защитой.
На деле способ охраны (авторское право, патент, товарный знак, ноу-хау) – это всего лишь способы для защиты технологии, а не цель.

В статье даны пошаговые инструкции, как стартапу правильно проработать свой продукт и защитить права на него в сжатые сроки (до недели) и без глобальных трат, чтобы повысить стоимость проекта на 30%, выходить на питчинги с доказательствами правообладания на продукт и без боязни стать донором идей на рынке!

Читать далее
Total votes 4: ↑2 and ↓2+2
Comments5

Графы в рекомендательных системах [часть 1]

Level of difficultyEasy
Reading time8 min
Views4.7K

Привет, ХАБР! Недавно я писал научную статью с AIRI по графовым рекомендательным системам. Это был мой первый практический опыт работы с этой технологией, поэтому пришлось углубиться в исследования и изучение доступных материалов. Я решил, что пока я разбираюсь в этой теме, было бы полезно поделиться своими находками с вами.

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

📖 Идем разбираться!
Total votes 10: ↑10 and ↓0+10
Comments3

Как сделать дашборд в FineBI за 15 минут? Инструкция по созданию визуализаций

Reading time4 min
Views4.2K

FineBI – флагманская self-service платформа для бизнес-аналитики от китайского разработчика FanRuan, которая предлагает функциональность, удобство использования, широкие возможности масштабирования и легкую интеграцию с различными источниками данных.

Рассказываем, как создать простой дашборд в BI-платформе FineBI.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Как подружить Python и САПР «SolidWorks». Часть 1 – Знакомство

Level of difficultyMedium
Reading time4 min
Views6.1K

Всем привет!

Решил немного отойти от своей любимой темы нейронных сетей и написать небольшой скрипт на Python для работы с конструкторской документацией в САПР «SolidWorks». Так как изначально у меня инженерное образование, то мне периодически приходится заниматься конструкторской деятельностью и, по своему опыту, я знаю, как много иногда приходится тратить времени для оформления чертежей и сохранения их в формате pdf или dwg (особенно, если мы говорим о большом количестве деталей сборок). И тут я подумал, почему не упростить жизнь себе и своим коллегам-конструкторам и не подружить Python и SolidWorks.

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

Работа будет состоять из двух основных частей (соответственно и статей будет две):

Часть 1 – Создание общей базы для работы с SolidWorks, написание простого графического интерфейса на tkinter, реализация возможности сохранения чертежей в форматах pdf и dwg.

Часть 2 – Реализация возможности автоматизированного заполнения полей таблицы чертежей из единого excel файла, и самая интересная фича этого проекта: автоматическое создание чертежей деталей из 3D-моделей (для начала реализация простых деталей из листового металла).

По итогу «завернём» программу в один .exe файл для возможности использовать на любых машинах.

Читать далее
Total votes 13: ↑13 and ↓0+15
Comments9

200 таблиц в одном дашборде: как мы создаём проект визуализации данных медицинской статистики

Level of difficultyEasy
Reading time9 min
Views9.9K

Хабровчане, приветствую! Меня зовут Андрей Иванов, я системный аналитик в сфере медицины и здравоохранения. До 2005 года работал врачом, потом руководил медицинским информационно-аналитическим центром. Спустя время возникла настоятельная потребность научиться делать самостоятельно то, чем прежде приходилось руководить, — так я поступил на курс «Системный аналитик» в Практикуме.

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

Читать далее
Total votes 17: ↑16 and ↓1+20
Comments11

Как правильно визуализировать данные, чтобы принимать эффективные решения?

Reading time10 min
Views14K

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

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

Читать далее
Total votes 16: ↑15 and ↓1+14
Comments6

Если процесс нельзя роботизировать, то он кривой

Reading time7 min
Views8.3K
image

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

Почему так? Ну например, уйдёт на больничный единственный человек, который знает, как что-то делать. И всё. Если знания хранятся не только в его голове, это не проблема. То есть должна быть инструкция или что-то похожее — а это значит, что можно роботизировать по такому артефакту.

Если вам тревожно уходить в отпуск — это тоже оно. Это ваши знания куда-то не переложены.

Если вашу работу можно было бы роботизировать (хотя бы в теории), то пускай с качеством ниже, но она выполнялась бы.

Ещё два признака: мелкое изменение приводит к резкому увеличению трудоёмкости — и никто точно не знает, кто и в какой конкретно момент принимает решение.

Попробуйте проверить процесс на роботизируемость:

  • Все данные должны быть в электронном виде.
  • На входе в процесс каждый раз один и тот же набор данных без творческих дополнений. На выходе тоже всегда одинаковый вывод — без творческих решений.
  • Есть чёткий набор действий, которые можно описать алгоритмом.
  • Процесс легко поддерживается, то есть не меняется каждый день.

Сразу скажу, компаний без кривых процессов в принципе не бывает, как и компаний без техдолга.

Это примерно одно и то же. И подход один и тот же — надо вовремя что-то с этим делать. Лучше раньше.

Самые частые ситуации в моей практике, когда надо отлаживать такие процессы, — это потому что исторически сложилось, потому что лучше жить в хаосе, чем разбираться, потому что кто-то хочет стать незаменимым. Один большой набор крайне кривых процессов я разбирала после слияния-поглощения компаний, когда одинаковые вещи делались по-разному.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments19

Как оплатить VPN из России рублями

Reading time2 min
Views35K

С прошлого года пользователи VPN в России оказались перед дилеммой: западные VPN-сервисы больше не принимают российские карты, а российские VPN-сервисы бесполезны для тех, кто хочет без ограничений пользоваться запрещёнными социальными сетями и читать запрещённые сайты. Впрочем, слава людской предприимчивости — спрос родил предложение. В случае Xeovo VPN, являющегося финской компанией, сейчас есть два способа оплатить его из России без особого труда: криптовалютой на сайте xeovo.com или рублями через VPNay.io.

Гид по оплате криптой мы сделали в посте «Как оплатить VPN криптовалютой», но если же нужен просто VPN, то проще воспользоваться партнёрским сервисом VPNPay, который принимает СБП, карты МИР, старые Визы и Мастеркарды, Qiwi и Юмани.

Читать далее
Total votes 24: ↑15 and ↓9+12
Comments15

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Views288K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее
Total votes 273: ↑272 and ↓1+323
Comments351

Как мы создавали и внедряли свою матрицу компетенций

Reading time7 min
Views24K

Привет, Хабр!

Сегодня поговорим про матрицы компетенций и, как мы их внедряли в «Рексофт». Мы уже рассказывали про матрицу Android-программиста, и как мы вводили кросс-интервью при повышении грейда, а сегодня я расскажу, о том, как все начиналось и куда мы пришли. Итак, поехали!

Читать далее
Total votes 20: ↑13 and ↓7+6
Comments20

Приходите к нам на завод, у нас тяжело

Reading time10 min
Views139K
Короче, ИТ на заводе — это вам не романтика, особенно в нашем цифровом направлении.

Между «давайте этим займёмся» и «о, смотрите, какая гламурная ML-модель» лежит очень много того, про что не рассказывают. Сейчас расскажу.

Вначале у нас была банда энтузиастов из разных подразделений: несколько человек из ИТ, АСУТП, технологи со знанием статистики — чтобы смотреть с разных углов и видеть всё в целом, насколько это возможно. Начали с оценки перспектив. Они были необъятные — наше производство размером с небольшой город. Стали формироваться подразделения и направления: кто-то пошёл собирать роботов, кто-то в видеоаналитику, кто-то в лайтовый анализ данных, кто-то в самый хардкор — в дата-сатанизм. Работы у нас всегда больше, чем рук.

И на каждой из этих дорожек нас поджидали свои чудеса и сюрпризы.

Вот, к примеру, видеоаналитика:

  • Мы поняли, что ML в 50% задач не нужны. Нужна, например, камера, которая по цвету определяет, где есть железка, и смотрит её геометрию в реальности. Всё. Или другая камера, которая следит, чтобы в нужной зоне ничего не шевелилось.
  • Всё это прекрасно до первого солнечного зайчика. ML отлично показывают себя там, где вам лень строить крышу или ставить прожектор над конвейером.
  • У нас была идея, что мы можем сами в нейросети. Чуть не написали свой сервис для распознавания номеров вагонов. Казалось, делов-то на 20 минут, а у подрядчика это стоит 25 копеек за фото. Сделали свой, сферические вагоны в вакууме он определял хорошо. Потом приехало вот это:

image

А потом внезапно пошёл дождь. Знаете что? Вагоны под дождём становятся мокрыми. Это было неожиданно. Ещё они бывают после снега, битые, немытые, обновлённые криворукими малярами и ПРОЧИЕ. И в солнечных зайчиках тоже.

Мы накалывались на получении данных (кто сказал, что прошивка станка без костылей?), на роботизации, инфраструктуре, связи, на всём. Мы облазили весь завод, испачкались в солидоле, мазуте и масле. Но стали делать то, что должны, — оптимизировать мир.
Читать дальше →
Total votes 228: ↑224 and ↓4+268
Comments278

Как запатентовать изобретение и заработать на этом

Level of difficultyEasy
Reading time7 min
Views5.2K

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

1.      Создать гениальную разработку

2.      ?

3.      Profit!

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

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

Прямое лазерное выращивание: процесс

Reading time10 min
Views12K

Прямое лазерное выращивание из титанового сплава

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

Читать далее
Total votes 27: ↑27 and ↓0+27
Comments22

Учебная фабрика ИТМО ― от набора станков к умному производству

Reading time9 min
Views2.7K

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

Своеобразным символом и материализованной целью проекта стал макет учебного производства, представленный компанией АСКОН на выставке Иннопром 2023.

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments1

Управление Яндекс.Станцией и другими колонками с Алисой из Home Assistant

Reading time4 min
Views117K

Мы привыкли называть умными устройства, которыми можем управлять, не вставая с дивана. Включить лампочку, вентилятор, кофеварку или стиральную машину.


Колонки с Яндекс Алисой хоть и называются умными, но вы не можете изменить громкость не находясь рядом с колонкой (орать через всю комнату не считается). Вы не можете перемотать песню из мобильного приложения Яндекса. Или остановить сказку, запущенную на колонке в детской, из своей кровати в спальне.


В январе 2020 кто-то обнаружил, что Яндекс.Станция поддерживает некий локальный протокол. На GitHub начали появляться проекты по управлению Яндекс.Станцией. Мне хватило пару часов, чтоб разобраться и выпустить первую версию компонента для Home Assistant. Это достаточно популярная система домашней автоматизации, написанная на языке Python.


На сегодняшний день компонент поддерживает управление всеми колонками с Яндекс Алисой и при желании может выглядеть так:


Читать дальше →
Total votes 17: ↑16 and ↓1+22
Comments42

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity

Specialization

Specialist
Lead
Python
SQL
SolidWorks
Kompas 3D
English
Design
CAD
Research work