Pull to refresh
0
0
Send message

Как мы французскому ПО ценности добавляли, но нас не оценили

Level of difficultyEasy
Reading time16 min
Views15K

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

Эта история произошла после того, как я вернулся из США в 2008 году, где благополучно потратил все свои деньги, полученные от разграбления советских заводов бандой прихатизаторов, во главе с Кахой Бендукидзе. В США я пытался запустить свой стартап, но не преуспел, но это история для мамкиных стартаперов с сайта VC. Здесь же расскажу, что было потом, поскольку это касается разработки и продвижения ПО. И бесплатно дам несколько бизнес-советов, которые за большие деньги можно получить только на курсах Тони Робинсона.

В России, как и во всем мире, в это время, кроме кризиса 2008 года, разворачивалась менее заметная, но не менее эпическая и трогательная история освобождения евреев от пленения фараоном.  Для тех, кто не читал библию, напомню, что Моисей своих евреев, отпущенных из египетского плена, водил 40 лет по пустыне, (навигаторов и Яндекс-карт тогда не было, и назад никто свалить не мог). Ведомые плевались, плакали, матюкались, ругались, но шли по пустыне за Моисеем. Тот же самый библейский сюжет разворачивался в области разработки софта, cо специалистами из французской фирмы-разработчика, той-которую-нельзя-называть, и которая проектирует боевые самолеты Рафал. В недрах этой конторы была разработана система 3D-проектирования CATIA.

Читать далее
Total votes 99: ↑89 and ↓10+94
Comments23

Совместное моделирование быстродействующих систем средствами TIA Portal и Simulink

Reading time10 min
Views4.2K

В этой работе показана детальная авторская реализация объединения сред TIA Portal и Simulink для совместного моделирования с обменом данными, работающая при любом, даже самом малом, шаге квантования (моделирования). Этот вариант позволяет также тестировать PLC контроллеры TIA Portal на частотах квантования контроллеров. Синхронизация сред осуществляется без применения таймеров реального времени. Приведен пример построения быстродействующего контура, обеспечивающего управление аналоговым неустойчивым объектом Simulink виртуальным ПЛК среды TIA Portal. Экспериментально определено, что предлагаемое объединение сред не влияет на результаты моделирования.

Состояние проблемы

Интегрированная среда разработки систем автоматизации TIA Portal содержит инструментальные средства для конфигурирования, настройки, тестирования и обслуживания систем. Мощная среда MATLAB/Simulink обеспечивает эффективное моделирование и оптимизацию сложных динамических систем. Совместное моделирование TIA Portal и Simulink повышает качество проектирования систем автоматизации и управления и сокращает сроки проектирования.

Известны примеры связи сред TIA Portal – Simulink через OPC сервер, в которых среды обмениваются пакетами данных с максимальной частотой 10 раз с секунду [1,2,3]. Это ограничение определяет максимальную частоту квантования. Для моделирования и работы быстродействующих систем, которые характеризуются широкой полосой пропускания, требуется высокая частота квантования.

Скорость непосредственной передачи/приема данных через TCP канал в десятки раз выше скорости передачи через OPC сервер. Однако, для TCP связи с контроллерами TIA Portal, которые выступают в роли TCP клиента, необходимо, чтобы модель Simulink работала в режиме сервера, а таких библиотечных средств у Simulink нет.

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

Проверка содержимого PDF-файлов средствами Python и pdfminer. Часть 1

Level of difficultyMedium
Reading time12 min
Views2.8K

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

Читать далее
Total votes 9: ↑9 and ↓0+11
Comments2

Какой графический редактор выбрать, если не умеешь рисовать?

Level of difficultyEasy
Reading time6 min
Views11K

Всем привет, меня зовут Егор. Сейчас я занимаюсь сольной разработкой игр. И так как я не являюсь профессиональным художником, для меня как никогда актуален вопрос: каким инструментом пользоваться для создания арта. Конечно, никто не отменял Asset Store и приобретение необходимых графических ассетов именно там, но не всегда можно с лёгкостью найти подходящий арт для проекта на таких площадках, и приходится создавать его самому.

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

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

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

Как американская коррупция превратила физика-ядерщика в быдло-кодера

Level of difficultyEasy
Reading time17 min
Views124K

Это история из цикла «как войти в IT», написанная старпером, ветераном броуновского движения, который помнит динозавров. Поэтому его опыт вхождения в ИТ никому не пригодится, но представляет интерес с точки зрения истории.  

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

К написанию данного текста меня подтолкнула беседа с одним из крутых разрабов из «жирной» конторы, с которым мы пересеклись на яхте в Средиземном море. Узнав, что я тоже из Бауманки, и у меня свой бизнес, он заинтересовался и выспрашивал. Как я смог начать бизнес на софте, почему не пошел в большую контору, типа Yandex, Сбер и прочие. У него тоже знакомство с софтом началось как создание собственной разработки по анализу результатов металлургических испытаний в лаборатории, но закончилось работой прогером по найму. Попивая вино на яхте где-то между Турцией и Грецией в 2023 году, он предположил, что, возможно, если бы он продолжал писать софт для металлургических исследований, то, наверное, сейчас мог плавать на своей яхте, а не арендованной, и не около Турции, а на Карибах (но это не точно). А поскольку фарш невозможно провернуть назад, я решил описать свою историю успеха, так как она забавна и поучительна.

Читать далее
Total votes 382: ↑367 and ↓15+417
Comments279

Как открыть окно, если не можешь встать с кровати? Как и для кого разрабатывают приводы для окон

Level of difficultyEasy
Reading time4 min
Views8K

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

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

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

Читать далее
Total votes 25: ↑25 and ↓0+29
Comments110

Тысяча и одна библиотека С++

Reading time65 min
Views26K

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

Столкнувшись много раз подряд с тем, что найти что-то толковое довольно непросто, я решил попробовать распутать это узел и предложить для русскоязычных читателей свой справочник классных библиотек на С++. Я исходил из этого источника. Это очень многогранный и объемный список библиотек языка С++, но, скажем так, у меня были к нему вопросы. Потому я сделал перевод, затем значительно улучшил его в плане содержания (далее объясню, как, почему и зачем). На выходе получилось около 1000 библиотек. Как в сказке). Они, конечно, не покрывают все возможные задачи и предметные области, но поверьте, они затрагивают действительно многое.

Прикоснуться к сокровищнице языка С++
Total votes 82: ↑81 and ↓1+92
Comments23

Двухкомнатная квартира с приточной вентустановкой: добавляем умный дом, но по частям

Level of difficultyEasy
Reading time7 min
Views15K

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

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

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

Читать далее
Total votes 20: ↑18 and ↓2+21
Comments26

Как я использую плагины VSCode для обработки Json-файлов в работе системным аналитиком

Level of difficultyEasy
Reading time6 min
Views8K

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

Меня зовут Юлия Васильева, и я системный аналитик в МТС Диджитал. Работаю с B2C-продуктом и анализирую много-много разных Json-файлов. В этой статье я расскажу, как облегчила себе работу с ними благодаря VSCode и почему я в восторге от этого инструмента.

Читать далее
Total votes 26: ↑24 and ↓2+28
Comments15

Реверс алгоритма поиска устройств в сети

Level of difficultyMedium
Reading time32 min
Views2.9K

При создании оконного клиента под MS-Windows для удалённого взаимодействия с LED-матрицами стояла задача сделать автоматический поиск всех табло в сети. Моей первой идеей было перебирать все существующие IP-адреса конкретной подсети, по очереди посылая на них запросы и ожидая что одно или несколько устройств отправят соответствующий ответ. Я быстро отказался от этой задумки, ведь подобный брутфорс будет сильно нагружать сеть, да и сам алгоритм не самый быстрый. Других идей по реализации на тот момент у меня не было. Мне предоставили копию другого клиента, где поиск осуществляется моментально по нажатию одноимённой кнопки, а приложение в табличном виде выводит IP и MAC-адреса с рядом другой информации об обнаруженных матрицах, если таковые нашлись. Эти данные затем могут быть использованы для подключения, конфигурации и отправки команд на найденные устройства. Не имея исходного кода, я подготовил дизассемблеры, отладчики и hex-редакторы, готовясь к глубокому анализу и разбору проприетарного алгоритма поиска, чтобы реализовать что-то подобное уже в своей программе.

Читать далее
Total votes 17: ↑17 and ↓0+23
Comments4

Обзор существующих схем теплоснабжения

Reading time7 min
Views3K

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

Какие виды систем теплоснабжения бывают?

По способу производства тепловой энергии различают следующие системы теплоснабжения:

Читать далее
Total votes 11: ↑5 and ↓6+2
Comments3

Как пересадить голову: меняем ПЛК Honeywell на WIRENBOARD PRO

Level of difficultyEasy
Reading time3 min
Views4.8K

Компания Honeywell выпускает хорошие контроллеры для автоматизации и диспетчеризации промышленных объектов и коммерческой недвижимости.

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

На помощь пришел интегратор и решил проблему. Интересно как? Ныряйте под кат.

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

jsonex – упрощаем сложные клиент-серверные диалоги

Reading time15 min
Views12K


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

  • Batch-запросы
  • Передача даты в составе сложной структуры данных
  • Обозначение кастомных типов данных
  • Проброс round-trip данных, которые сервер должен вернуть в ответе
  • Дополнение запроса и ответа метаданными
  • Обработка ошибок, пришедших в ответе

Разработчики тратят немало времени, раз за разом создавая неказистые велосипеды на серверной стороне, после чего их приходится поддерживать еще и на стороне клиента.

jsonex представляет собой попытку объединить решение упомянутых выше и многих других задач в рамках простого единого подхода, основанного на концепции вычислимых данных (callable data).
Читать дальше →
Total votes 36: ↑28 and ↓8+20
Comments47

Мои мысли о Python in Excel

Level of difficultyEasy
Reading time12 min
Views15K

22 августа 2023 года компания Microsoft выпустила предварительную версию «Python in Excel». Я разработчик xlwings и автор книги O’Reilly Python for Excel, поэтому мне, разумеется, стало интересно её потестировать. Не следует судить книгу по обложке, поэтому я решил углубиться в изучение и записать обучающий курс LinkedIn Python in Excel: Working with pandas DataFrames. Параллельно я обнаружил много багов и других проблем, после чего отправил отчёты о них в GitHub. На текущий момент они уже или были разрешены, или хотя бы подтверждены/прокомментированы, и это потрясающе. Мне остаётся лишь мечтать, чтобы столь же легко можно было бы сообщать о багах в мире Office.js и VBA.

Так что же я думаю о Python in Excel?

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

VSTO и CAB: Интеграция .NET приложения в Microsoft Word

Reading time14 min
Views14K
VSTO расшифровывается как Visual Studio Tools for Office. Эти средства позволяют довольно легко скрещивать ужа с ежом — писать .NET приложения, исполняемые CLR в среде Microsoft Office. В частности, программисты обладают возможностью создавать подключаемые модули (плагины) и «кастомизированные» шаблоны для документов почти ко всему основному семейству продуктов Microsoft Office.

В статье приведена инфраструктура Windows Forms проекта, в котором Microsoft Word воспринимается приложением в качестве шелла. В статье раскрыты несколько интересных моментов использования Composite UI Application Block, в частности подключение инфраструктуры доменной модели Word в сервисам расширения каркаса, а так же приведены некоторые факты и особенности разработки с использованием средств VSTO.
В общем, кому интересно - милости прошу
Total votes 38: ↑30 and ↓8+22
Comments13

Автоматизируем создание отчетов в Word с данными из Excel на Python

Level of difficultyEasy
Reading time7 min
Views41K

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

Читать далее
Total votes 35: ↑33 and ↓2+33
Comments55

FineReader, Tesseract и EasyOCR или нужно ли срочно менять инструмент для OCR

Reading time7 min
Views19K

По сравнению со старшими товарищами, EasyOCR очень молодой проект, но с большими амбициями. В статье приводится сравнение качества работы, удобства работы, особенности установки и производительности трёх инструментов.

Одна из популярных задач в аудиторской практике – распознавание текста с документов. Казалось бы, инструменты для решения этой задачи давно известны, всё работает и ничего больше особо и не хочется: бесплатно и руками – Tesseract, платно и легко в использовании – FineReader.

Однако, недавняя статья удивила меня качеством работы и удобством использования инструмента EasyOCR. Разберёмся, насколько всё хорошо в сравнении с самыми популярными инструментами на примере нескольких задач и сравним удобство использования каждого инструмента.

Читать далее
Total votes 6: ↑5 and ↓1+5
Comments18

Как «оптимизация» зарплат вредит бизнесу, и что делать

Level of difficultyMedium
Reading time64 min
Views34K

Оптимизация фонда оплаты труда (далее - ФОТ) в долгосрочной перспективе вредит компаниям, ухудшает их положение и усиливает кризисы.

Этот вопрос мы рассмотрим на основе проблем в Boeing и Blizzard, разбора жёсткого поведения Amazon в отношении сотрудников, с примерами лучших практик Генри Форда и General Electric, а так же ссылками на исследования, с описанием психологических аспектов и ключевых трендов. И рекомендациями: что с этим делать.

Цель данной публикации - описать ключевые аспекты и нюансы проблемы, чтобы любой мог прийти к финансистам, кадровикам или генеральному директору с ней со словами “хватит вредить бизнесу оптимизацией ФОТ!"

Оптимизировать вред оптимизации ФОТ
Total votes 90: ↑87 and ↓3+100
Comments132

Методы расчета себестоимости

Reading time16 min
Views12K
Сегодня предлагается очень много разных методов учета затрат и расчета себестоимости.

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

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


Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments5

Энциклопедия контроллеров и обучающий проект (на Хабре)

Level of difficultyEasy
Reading time7 min
Views16K


Я давно занимаюсь микроконтроллерной тематикой и делюсь своими изысканиями (частью изысканий) в блоге на Хабре. Делаю я это довольно давно и количество статей уже перевалило за сотню, и, в полном соответствии с воззрениями (старины) Гегеля, количество явно переросло в качество.

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

Настало время как-то систематизировать эту информацию, прокомментировать и поделиться своими мыслями на эту тему. А в практическом плане этот каталог (мини-энциклопедию) можно использовать для выбора DIY контроллеров для своих проектов или, учитывая опубликованные примеры кода и переводы туториалов, как обучающее пособие по их программированию.

Итак…
Читать дальше →
Total votes 60: ↑60 and ↓0+61
Comments11
1
23 ...

Information

Rating
Does not participate
Location
Белград, Белград, Сербия
Registered
Activity