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

Комментарии 17

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

Это все мое личное имхо.

Читая некоторые моменты статьи, возникло ощущение что сравнивается программирование под современный Linux и Windows 98 (где действительно не было permissions)

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

У людей проблемы с процессами, архитектурой и коммуникацией в команде... А тут ещё и кроссплатформенность 💥💣

Мораль в том, что закладывать кроссплатформенность изначально проще, чем добавлять постфактум.

Вот именно! Ни когда не понимал, где тут боль?! C++/Qt, Java, C# - и никакой боли. Если был выбор сразу под Линукс писал. У автора "огромное количество вариантов" - это проблема, что странно!

А потом спрашивают, почему Electron так популярен.

Во-вторых, в Windows мало кто обращает внимание на послабления в правах доступа, так как продукт работает корректно, в Linux же ошибки в правах могут привести к некорректной работе продукта. 

Это утверждение я не понял. Какие "послабления в правах доступа", о чём вообще речь? Ну а проблемы в работе софта на Windows, возникающие из-за того, что реальные права отличаются от того, что ожидали разработчики, вещь более чем известная. Например, было немало программ, которые отказывались работать без административных прав у пользователя, потому что пытались писать туда, куда им писать не надо.

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

Тоже очень странное утверждение. Для изменения прав на Windows также в общем случае требуются повышенные права. Стандартная ситуация в любой организации - пользователи не являются администраторами на своих компьютерах и не могут сами менять на них права, как им заблагорассудится. (Разумеется, этот вопрос не впихнёшь в одно предложение).

Стандартная ситуация в любой организации - пользователи не являются администраторами на своих компьютерах

Не совсем стандартная, по крайней мере в организации, разрабатывающей софт.

Ситуация стандартная, а вы привели частный случай

К примеру, если Windows-клиента можно попросить в Event Viewer отфильтровать и отправить логи, то у Linux-клиента обычно нет даже UI для логов

А чем штатный journalctl не угодил?

Тем, что не везде systemd? Ну хотя почти везде.

https://man.freebsd.org/cgi/man.cgi?query=dialog&apropos=0&sektion=0&manpath=FreeBSD+13.2-RELEASE+and+Ports&arch=default&format=html

А если этого отличного инструмента нет в линукс, то и чёрт с ним, пишите лучше под нормальную ОС, где этот инструмент из коробки в base system

да как бы тысячи их.
Zenity - это из gtk-мира.
А у KDE'шников уже лет 20 как есть kdialog.

И да, идея того, что программы для графических диалогов имеют полную совместимость по арументам и возвратным значениям с "консольным" dialog - просто нереально крутая штука.

Только начал читать, и в первом же абзаце дезинформация...

большое количество дистрибутивов, и у каждого свой набор различных desktop environment

Ну ёлы-палы, ну :(

Я даже непойму, это неудача при формулировки мысли, или настолько глубокий уровень непонимания матчасти?

DE - везде одни и те же.
Более того все дистрибутивы, если абстрагироваться, по сути, проводя аналогию "для вендузятников" - просто разные "репаки".
ОС - одна и та же: GNU.
Ядро - одно и то же: Linux.
Софт один и тот же.

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

Ну, ещё могут немного конфиги отличаться (там где васяны-репакеры решили что-то немного преенастроить).

Ну и святое - брендирование (картиночки на заставках). Зачастую только ради своих картиночек очередной болженос и создают. Ну и ради нескучных обоев, да.

Далее:

https://habrastorage.org/r/w1560/getpro/habr/upload_files/0a2/52e/d8e/0a252ed8e0bd15bdefb217a0748f2bb7.png

Вот это вот - не всеми любимый "консольный" (CLI) интерфейс, а TUI. Любимый уже далеко не всеми.

Далее

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

99.(9)% "Linux-компонентов" (особенно того же порядка что перечисленные IE) на самом деле и есть "кросс-платформенные".
Просто нужно признать что изначально выбор за-вендор-лок-иненного продукта (который лочил на windows) был неверным и нужно было не слушать маркетологов, а выбирать изначально кроссплатформенный продукт в качестве основы :shrug:

Далее:

использовали встроенный internet explorer
Теперь им придется перейти на использование, например, curl, а заодно переписать и добавить необходимую для его работы функциональность.

Ну, как по мне, можно было сразу испльзовать curl и вместо костыляния над графическим инструментом, и выгребания из него всеми правдами и неправдами контента - сразу использовать подходящий для цели инструмент (напомню, что cURL'у лет больше, чем большинству современных "программистов").

А, и да, cURL никогда не был Linux-специфичен, и вообще писался не под него.

Далее:

и централизованно ими управлять (да, AD почти не имеет альтернатив), в ОС под Linux такой функциональности, можно сказать, вовсе нет.

Ну да, и Novel DS (с которого AD был содран почти 25 лет назад) и айбиэмовский 389ds, да и иные подобные решения такие дружно сказали "да, конечно, пошли мы нафиг".

Далее:

К примеру, вместе с драйвером под Windows поставляется специальное приложение от производителя, которое позволяет управлять дополнительными настройками продукта. В версии под Linux возможность управлять этими параметрами в принципе отсутствует. И если понадобится, например, обновить ключ для лицензии, то в Windows для этого есть менеджер ключей, окна и кнопка Update Firmware, а в Linux — скорее ничего.

Ну да, это, конечно же, "особенность Linux", а вовсе не <плохое слово> производителей. Да, ведь?

Далее:

у Linux-клиента обычно нет даже UI для логов,

  1. зачем для логов UI?

  2. dmesg? journalctl (кстати, для него guiиногда делают, но лучше бы не делали)?

  3. отфильтровать

grep?

не говоря уже об отсутствии привычных окон.

Ну, кому как :shrug:

Такие вещи обычного пользователя пугают, ведь может что-то сломаться, а как потом это чинить он даже не представляет. Это же Linux!

Зачем он тогда на него лез?

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

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий