О неадекватном софте
Apr. 13th, 2014 01:55 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Напомнили тут про одно выстраданное годами мучений правило: если заказчик просит интегрироваться с или обслуживать "неадекватный" софт - такой заказчик автоматом должен посылаться в херЪ, а если начальство наседает - должно посылаться и оно.
Критерии неадекватности софта в данном случае - это:
1) отсутствие нормальной документации
2) закрытость исходников
3) использование бредовых языков
4) наличие внутри софта самодельных БД, самодельных оболочек над БД, самодельных скриптовых языков или языков запросов.
5) отличие поведения UI софта от общепринятого (например, для копирования в клипбоард не работает Ctrl-Insert, а только Ctrl-C, размер полей ввода не стандартный, используется не-системные шрифты и не-системные темы)
6) невозможность запустить софт без UI (например, запускается только от пользователя, или хуже того - только от админа), невозможность выполнить команды молча из командной строки.
7) привязка софта к не-техническим вещам - оккультные математические алгоритмы, неизвестные широкой публике и отсутствующие в опен-сорсных реализациях, "патентованные технологии", привязка к недоступным или дорогим данным (какие-нибудь сука словари для распознавания речи или там гигабайтные массивы спутниковых данных ДСЗ )
8) Придурочные внешние API или их полное отсутствие - например, "обмен данными делается через dbf-файлы в кодировке 866 в папке D:\JABA\DBF\ и только по нажатию пользователем кнопки "Принять данные"". Сюда же - разного рода гнилые C++ API в виде *.lib/*.h или там ActiveX
Критерии неадекватности софта в данном случае - это:
1) отсутствие нормальной документации
2) закрытость исходников
3) использование бредовых языков
4) наличие внутри софта самодельных БД, самодельных оболочек над БД, самодельных скриптовых языков или языков запросов.
5) отличие поведения UI софта от общепринятого (например, для копирования в клипбоард не работает Ctrl-Insert, а только Ctrl-C, размер полей ввода не стандартный, используется не-системные шрифты и не-системные темы)
6) невозможность запустить софт без UI (например, запускается только от пользователя, или хуже того - только от админа), невозможность выполнить команды молча из командной строки.
7) привязка софта к не-техническим вещам - оккультные математические алгоритмы, неизвестные широкой публике и отсутствующие в опен-сорсных реализациях, "патентованные технологии", привязка к недоступным или дорогим данным (какие-нибудь сука словари для распознавания речи или там гигабайтные массивы спутниковых данных ДСЗ )
8) Придурочные внешние API или их полное отсутствие - например, "обмен данными делается через dbf-файлы в кодировке 866 в папке D:\JABA\DBF\ и только по нажатию пользователем кнопки "Принять данные"". Сюда же - разного рода гнилые C++ API в виде *.lib/*.h или там ActiveX
no subject
Date: 2014-04-13 10:58 am (UTC)plz elaborate
no subject
Date: 2014-04-13 11:02 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 11:00 am (UTC)no subject
Date: 2014-04-13 11:02 am (UTC)no subject
Date: 2014-04-13 11:03 am (UTC)1. через задницу спроектирован
2. через задницу написан
no subject
Date: 2014-04-13 11:06 am (UTC)Перестаньте посылать нахер, найдите во всей этой черни позитивные моменты.
- Вы никуда не денетесь.
- Не вы диктуете условия а заказчик который платит деньги
- Даже если вы Дартаньян, вокруг вас другие представители сесксуальных меньшинств с которыми как то надо пересекаться по жизни.
Мир розовых пони с REST API документацией и разработчиками с которыми вы можете обсудить вывод типов существует
в другой вселенной :)
Это не значит что не нужно стараться сделать мир лучше. Просто не надо страдать черезмерным Префекционизмом.
no subject
Date: 2014-04-13 11:14 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 11:14 am (UTC)Если браться за уебищный софт - это потеря времени, нервов и ресурсов (ну если не брать 10х денег сразу и потом год отдыхать, поебывая таек и контрибутя в опенсорс).
И да, заказчик диктует хуй и нихуя, обычно, потому что они бабла жмотят за свои хотелки.
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 11:48 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 11:49 am (UTC)Заблуждение
(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 01:54 pm (UTC)Короче, вывод из всего этого: посылайте нахер заказчиков. Если они не посылаются и менеджеры встают на их сторону, посылайте нахер менеджеров.
И будет вам счастье. (Насчёт денег - не уверен)
(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 11:47 am (UTC)Очень тонко подмечено
no subject
Date: 2014-04-13 12:39 pm (UTC)no subject
Date: 2014-04-13 12:50 pm (UTC)no subject
Date: 2014-04-13 01:00 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 01:32 pm (UTC)3) использование бредовых языков
Clarion for Windows
То есть клиент-банк БеларусьБанка(для небелорусов - это самый крупный банк страны) отбрасываем и живем дальще в розовом мире.
А разные фортраны-кларионы-клипперы-1С-абапы-бейсики-перлы-пхп - это корявая ad-hoc бредятина.
Я не вижу действительно веских причин НЕ использовать 1С в бухгалтерском учете в организации - это либо очень большая организация, когда 1С реально захлебывается в этих данных, либо это филиал иностранной компании, куда все спускается сверху. И то, по поводу последнего я бы подумал - налоги и документацию вести то здесь.
Зато с 1С хотя бы более менее понятно, с чем будешь иметь дело, в отличие от творчества доморощенного гения.
7) привязка софта к не-техническим вещам - оккультные математические алгоритмы,
Вообще-то нормальная бизнес-логика это обычно
коммерческая тайнаи есть оккультные алгоритмы, неизвестные широкой публике.Любой софт нуждается в запуске из командной строки. Как ты в нем бизнес-логику тестировать то будешь, если для тестов надо кликать по кнопкам мышью в корявых окнах, еще не дай бог, эти окна рендерятся какими-нибудь самодельными способами, а не системными компонентами.
Для юнит-тесты и интеграционных тестов жизненно необходима командная строка?
no subject
Date: 2014-04-13 02:20 pm (UTC)3) использование бредовых языков
Clarion for Windows
То есть клиент-банк БеларусьБанка(для небелорусов - это самый крупный банк страны) отбрасываем и живем дальще в розовом мире.
Между прочим а кто собственно мешает послать лесом майкрософт, кларион и клиент-банк беларусь банка и дрочить на какой-нибудь эрланг (или что там сейчас считается няшным и модным)? А кларионом пусть обмазываются те, кого на эрланг не взяли.
(no subject)
From:no subject
Date: 2014-04-13 02:50 pm (UTC)Пардоньте. Все C++ API - гнилые? :) Бо других же не бывает.
no subject
Date: 2014-04-13 08:53 pm (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 02:56 pm (UTC)А что не так с *.hpp API для C++?
no subject
Date: 2014-04-13 07:24 pm (UTC)Лучше бы сразу в виде нормального C API делали.
(no subject)
From:(no subject)
From:no subject
Date: 2014-04-13 09:16 pm (UTC)А вообще -- подавляющему большынству программистов это вполне посильная общественно-полезная задача, в общем, в самый раз.
no subject
Date: 2014-04-13 09:51 pm (UTC)Немного непонятно, что такое нормальная документация?
no subject
Date: 2014-04-14 03:20 am (UTC)no subject
Date: 2014-04-14 04:24 am (UTC)Ну то есть, за деньги то работать можно, но испорченные нервы потом сильно дороже обойдутся.
И тут еще вопрос - можно ли SDK обернуть в нормальный API - иногда бывает просто неудобные API, а бывают вообще негодные к использованию.