Pull to refresh

Comments 25

Думаю, пост бы значительно выиграл без постоянного упоминания Postgres Professional и её сотрудников. Один раз в начале или в конце и было бы достаточно, а в целом обойтись обезличенным "сторонники отнесения MySQL CE к проприетарным продуктам (далее — оппоненті) часто приводят аргумент такой-то" или чем-то вроде этого.

Честно скажу, не понимаю почему дискуссия по спорным вопросам выплёскивается в виде таких публичных статей на хабр с переходом на личности. Я, например, никогда не говорил, что MySQL – «проприетарщина» (вообще не употребляю этого слова), но действительно считаю что «степень свободности» проекта MySQL гораздо меньше, чем в PostgreSQL (что, иногда кстати, в идёт в ущерб последнему, тоже этого не отрицаю). При этом у меня нет какой-то 100% уверенности в своей позиции, и я готов на эту тему дискутировать. Но когда я пытался на хабре это обсудить с тобой, в комментариях к одному из твоих прошлый постов, то довольно быстро столкнулся с FUD'ом и переходом на личности уже с твоей стороны. Что касается Олега, то у него своё понимание «проприетарщины», и он его придерживается. В любом случае, вряд ли можно монополизировать понимание этого слова и заставить всех трактовать его также, как и ты.
Вопрос то у меня в следующем. Не являются ли такие статьи, как эта, проявлением агрессивного евангелизма, с которым они номинально призваны бороться?
Уважаемый Александр!

Как я сообщил в самом начале статьи, она по сути является публичной реакцией на публичные высказывания публичных фигур (которыми вы с Олегом несомненно являетесь). Я также старался сфокусироваться на сути высказываний, а не на личностях. Это не всегда просто, и если я где-то допустил ненамеренный переход на личности, пожалуйста, дай мне знать!

Мне действительно было трудно понять твою точку зрения, потому что в явном виде ты её нигде не высказывал. Если бы ты в комментариях на Facebook написал: «Я не считаю MySQL проприетарным ПО, но считаю *процесс разработки* PostgreSQL более открытым», у меня вообще бы никаких вопросов не возникало. Но это же совсем не то, что ты написал, правильно? Тем не менее, спасибо, что разъяснил позицию. Для этого, в том числе, и статья.

Нет, конечно, я не пытаюсь монополизировать термины. Я несколько раз повторил, что ты и Олег можете использовать любые определения, которые вам нравятся.

Отвечаю на твой вопрос: нет, на мой взгляд, не являются.
Я также старался сфокусироваться на сути высказываний, а не на личностях. Это не всегда просто, и если я где-то допустил ненамеренный переход на личности, пожалуйста, дай мне знать!

На мой взгляд, вырванные из контекста дискуссии скриншоты комментариев – это не самая лучшая идея (а в данном случае читатель не может увидеть контекст даже при желании). Попробуй отразить эту ситуацию зеркально на себя. Из твоих комментариев можно запросто надёргать подборку, которая дискредитирует и твою точку зрения, и тебя лично.
Я не хочу тебя обвинять в том, что ты эти комментарии злонамеренно выбирал против меня или Олега. Но хочу обратить внимание на сомнительность самой такой практики.

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

Я не высказывал точку зрения, потому что её не было. Она и сейчас не сформирована полностью, потому что пока я не располагаю достаточной фактической информацией.

Если бы ты в комментариях на Facebook написал: «Я не считаю MySQL проприетарным ПО, но считаю *процесс разработки* PostgreSQL более открытым», у меня вообще бы никаких вопросов не возникало.

Так я бы не написал. Если нужна моя позиция *на текущий момент*, то её можно сформулировать следующим образом: «Я не называю никакое ПО, распространяемое под свободной лицензией проприетарным, потому что не считаю себя в этом вопросе достаточно компетентным. Но при этом считаю PostgreSQL *в целом как проект* более открытым, чем MySQL.»

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

У меня никогда не было ЖЖ, и я не знаю, какие там были срачи. Но смысл статьи я попытался подробно объяснить в самом начале и в выводах в конце.
Столкнулись с двойным лицензированием на Mule. Это чистый ад и трэш. В один прекрасный момент mulesoft говорит: «а с версии такой-то, этот коннектор становится проприетарным». Усе.
Так что теперь, когда я слышу про двойное лицензирование, то жду подвоха.
Это не двойное лицензирование, а смена лицензии со свободной на проприетарную.
Нет, почему-же? Как раз таки Mule остается открытым в комьюнити эдишн.
Так же, старый вариант коннектора все еще открыт.

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

Ну и важнейшим моментом тут является именно мотивация. Понятно, что владелец заинтересован в том, чтобы пользователи переходили с бесплатной на платную версию.
И полный контроль над кодом дает ему в руки хороший рычаг для стимуляции пользователей двигаться в этом направлении. У мulesoft это напоминает выкручивание рук.
Я понятия не имею, что это за Mule такой и что у него за коннектор. Но если старый вариант коннектора ещё открыт, а новый уже нет — это не двойное лицензирование, это тупо смена лицензии.
Дело не в том, как это назвать. Дело в том, что имеется две лицензии на продукт и один полноправный владелец заинтересованный в том, чтобы клиенты платили.
Я ничего не знаю про Mule, но могу рассказать про MySQL. Во-первых, за 8 лет существования MySQL Enterprise не было ни единого случая, когда бы бесплатную фичу перевели в платную версию. Просто некоторые фичи изначально появляются в MySQL Enterprise. Во-вторых, почти для всех «платных» фич есть бесплатные альтернативы от MariaDB и Percona (примеры: PAM authentication, thread pool, XtraBackup)
Совершенно удивительная статья — огромное количество слов, но нигде не сказано про проблему лицензии клиента БД.
Почему она важна? Потому что, по тому же процитированному автором статьи:

> свобода номер 0: возможность запускать программу с любой целью

для СУБД (как и любого сетевого сервера) это означает, что она может использоваться клиентскими программами любой лицензии — аналогично тому, как программа под GPL может использоваться под управлением сколь угодно проприетарного комплекта софта, взаимодействуя с последним через штатные каналы связи, через файлы и т.д.

Но СУБД имеют свой протокол. Для MySQL лицензия утверждает совместимость GPL-версии штатного клиента только с явным и закрытым (нерасширяемым) списком FOSS-лицензий. (Список, кстати, странный — в нём нет даже GPLv2.) Коммерческий продукт обязан брать коммерческую лицензию или использовать отдельный процесс-переходник (по сути, последний вариант — хак для лицензии). (Разумеется, есть альтернативные клиентские библиотеки. Но это таки другой продукт.)

Этого для меня, как и, думаю, для большинства потенциальных разработчиков программ — клиентов БД, достаточно, чтобы считать MySQL несвободным: его свобода ограничивает чужую свободу в тех местах, где штатно предполагается отсутствие ограничительных рамок на чужие лицензии.

И вот тут PQ отличается — лицензия клиента по сути тождественна BSD или MIT и не ограничивает лицензирование того, кто использует штатную реализацию клиента.

Не хочу тут раздувать новый спор про уже известные проблемы, потому что они уже обсуждены, кажется, чуть менее чем всеми, за последние 10-15 лет: это темы GPLv3 vs. GPLv2, тема свободы разработчиков против свободы пользователей и частный случай GPL vs. BSD в вопросах построения не-FOSS продуктов на базе FOSS. Ищущий да обрящет. Мой посыл был в том, что статья подобного рода, как тут, без упоминания той тематики, что я назвал — бессмысленна и вводит в заблуждение. Спасибо за внимание.
Ну наконец-то дельный комментарий, спасибо! В статье действительно много слов, и я своей целью ставил рассмотреть конкретные аргументы, которые набрасывает Postgres Professional. Иначе статья была бы настолько большой, что её бы вообще никто не прочитал, т.к. attention span у современного читателя довольно низкий.

Начнём с того факта, что «свобода номер 0» соблюдена, вы можете запускать программу (MySQL) с любой целью.

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

Для того, чтобы убрать эту проблему для свободного ПО, Oracle как правообладатель предлагает исключения из GPLv2. Именно по этой причине самой GPLv2 в списке нет — её совместимость вытекает из лицензии на MySQL.

Какие проблемы это представляет для мира проприетарного ПО? Если вы используете проприетарное приложение, слинкованное с libmysqlclient, вы ничего не нарушаете. Что устраняет проблему для подавляющего количества веб- и интернет пользователей, где MySQL лидирует. Пример: сайт с MySQL и проприетарным приложением, которое использует MySQL с помощью libmysqlclient. Естественно, само приложение никуда за пределы компании-разработчика как правило не распространяется. И в этом случае никакие лицензии не нарушаются. Именно поэтому все использующие MySQL интернет-гиганты (где уж точно много внутреннего проприетарного ПО, работающего в связке с MySQL) никаких проблем с лицензией GPLv2 не имеют.

Проблема есть только у разработчиков проприетарного ПО, которые хотят не только запускать своё приложение у себя, но и распространять его. Сколько таких компаний от общего количества пользователей MySQL? Думаю, что единицы процентов. Тем не менее, и у них есть варианты:

— купить лицензию на MySQL Enterprise. На мой взгляд, это вполне честный вариант: зарабатываете на распространении проприетарного ПО — покупайте проприетарную лицензию.
— использовать клиентскую библиотеку от MariaDB, которая совместима как с MySQL, так и с MariaDB, и при этом лицензирована под LGPL, что устраняет все перечисленные вами проблемы.

То есть, варианты есть в любом случае, для любого класса ПО. Есть ли какие-то случаи, которые они не покрывают?
В статье действительно много слов, и я своей целью ставил рассмотреть конкретные аргументы, которые набрасывает Postgres Professional. Иначе статья была бы настолько большой, что её бы вообще никто не прочитал, т.к. attention span у современного читателя довольно низкий.

Напротив, я думаю, если бы ты написал хороший пост, а не агитку, его успех был бы намного больше. Можно будет проверить. Боюсь, что не смотря на моё нежелание, в конце концов придётся мне самому придётся разобраться в теме и написать объективный и нейтральный пост на данную тему.
Успех поста — вещь вообще никак не связанная с его качеством. Если бы я гнался за успехом, я бы клепал посты «чем PostgreSQL лучше, чем MySQL» и с успехом было бы всё хорошо.

Я написал хороший и качественный пост на сложную тему. А сложная она исключительно потому что, что врать легко, а опровергать враньё сложно. На этом основана любая пропаганда. Сказать «MySQL проприетарщина» просто, а чтобы объяснить в подробностях, почему это враньё, нужно много слов.

Если по сути поста сказать нечего, попробуй просто промолчать, например.
Успех поста — вещь вообще никак не связанная с его качеством.

Ну, не знаю. На мой взгляд качество поста – один из факторов, влияющих на его успех. Не единственный, конечно.

Я написал хороший и качественный пост на сложную тему.

Это непреложная истина, а все кто думают по-другому – непременно врут и ведут пропаганду? :)

А сложная она исключительно потому что, что врать легко, а опровергать враньё сложно.

Вот этого я не понимаю. Почему те, кто думаю по-другому, непременно врут, а ты непременно говоришь одну лишь правду и только опровергаешь враньё?
У тебя в твоей серии постов «Памятка евангелиста» довольно много спорных и, я бы даже сказал, жульнических и манипуляторских аргументов. Зачастую приписываешь оппоненту (реальному или виртуальному) то, чего он не говорил, а потом выставляешь его дураком. Реально спорные и дискуссионные вопросы при этом обходятся стороной.

А сложная она исключительно потому что, что врать легко, а опровергать враньё сложно. На этом основана любая пропаганда.

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

Если по сути поста сказать нечего, попробуй просто промолчать, например.

Честно скажу, что по итогам твоей серии статей «памятка евангелисту» стала вырисовываться идея статьи «разоблачаем разоблачителя». Смущает то, что это будет ещё большим разжиганием срача. И ещё какой-то подсознательный страх есть, когда видишь советские плакаты, безапелляционные суждения, а также посыпание альтернативных мнений словами «враньё» и «пропаганда» :)
Ваша постгрес-профессиональная проблема заключается в абсолютно непрофессиональном подходе к дискусси с конкурентами. За все годы существования компании я не видел ни единого хоть сколько-нибудь объективного, основанного на фактах высказывания о MySQL. Если у тебя есть примеры таких высказываний — я жду их здесь.

Вы привыкли, что о MySQL можно говорить всё что угодно, не удосужившись подучить матчасть (которую вы не знаете по собственному признанию), хотя бы попытаться что-то выяснить или хотя бы дочитать документ до конца. Зачем, если возражать никто не будет? Для Oracle вы слишком мелкие, чтобы вас замечать. Перкона далеко и её местная возня не очень интересует. «Аля-улю, болтай что хочешь!» — вот ваше отношение к MySQL.

Когда же вам начинают аргументированно возражать, вас начинает корёжить. «Боюсь, что мне придётся написать объективную статью». Да милый ты мой, напиши. Хоть что-то будет объективного с вашей стороны за долгие годы. Но боюсь, что выйдет такая же пропаганда как обычно.
Я рад, что ты выговорился. Серьёзно.

Ваша постгрес-профессиональная проблема заключается в абсолютно непрофессиональном подходе к дискусси с конкурентами.

Конкретно кто? Олег? Я мало вообще говорил про MySQL, дискуссии с тобой – редкое исключение. У нас в компании многим нравится MySQL. Во внутренних дискуссиях, сотрудники часто указывают на недостатки PostgreSQL и достоинства MySQL. Если во внешних дискуссиях кто-то кого-то обидел, то дай знать. Мы не можем это сами полностью контролировать, но и никому ничего не навязываем. По вопросам «проприетарности», «свободного ПО», «открытого ПО», и высказываниям на этот счёт Олега я буду разбираться. Не обещаю что это будет быстро. Но как только у меня будет законченное мнение, я его изложу.

Вообще, усиленная критика MySQL со стороны сообщества PostgreSQL – я думаю, вещь, естественная и закономерная. Дело в том, что MySQL – это действительно самая популярная в мире Open Source СУБД. И люди, которые пробовали работать с Open Source СУБД (использовать, разрабатывать и т.д.), начинали именно с MySQL. И только если их MySQL чем-то не устраивал, то они начинали знакомиться PostgreSQL (не скажу, что происходит всегда, но знаю лично много примеров). Поэтому сообщество PostgreSQL естественным образом (не потому что кто-то злые козьни строит), прошло селекцию нелюбви к MySQL, и потом активно критикует. Но в том есть своеобразная плата за популярность.

Но, по своему опыту, могу сказать, что поток критики не всегда направлен в сторону от PostgreSQL к MySQL. Довольно часто сталкивался с мнением, что PostgreSQL не нужен, потому что уже есть MySQL и он популярен; и на PostgreSQL не нужно тратить ни времени, ни сил. Аргументы при этом приводились разные, многие в духе тех, которые ты разоблачаешь. Но опыт, он у каждого свой. Бывает, что кто-то кого-то в детстве покусал. Но со временем это проходит.

P.S. Не в то место дискуссии отправил коммент. Цитата позволяет однозначно определить, что я отвечал вот на это.
Вот это уже слова «не мальчика, но мужа». Уважаю, без всякого сарказма!

Я прекрасно понимаю, что в Postgres Professional есть (или были, но уже ушли) сотрудники вполне адекватных взглядов на мир, без излишней идеологической/религиозной ангажированности. Но работать нужно не только с Олегом, есть некоторый общий настрой, который определяется руководством, а скорее всего и бизнесом. Чтобы не быть голословным, я просмотрел вот это интервью с Иваном Панченко и некоторые моменты привели меня в полный восторг. Особенно то, как ловко был обойдён вопрос популярности СУБД ;)

Поэтому нет, я не «выговорился» и мне ещё много есть чего сказать. Считаю (ничего не монополизируя), что я делаю неблагодарную, но нужную работу. Когда бы ты ещё решил разбираться по поводу высказываний Олега, если б не эта статья?

Я всегда и везде подчёркиваю, что PostgreSQL — замечательная СУБД с кучей интересных возможностей, но и с собственными недостатками. Желание со стороны PostgreSQL сообщества спустить всех собак на MySQL, старательно заметая собственные недостатки под ковёр — вот с чем я борюсь по мере своих скромных возможностей. И Postgres Professional задаёт здесь локальный тренд как ни крути, в том числе и ты своими комментариями.

Желание разобраться и сформировать собственное мнение — это прекрасно. Но хорошо бы это делать до того, как что-то высказывать, а не после. Я, по крайней мере, поступаю именно так. Ошибаюсь ли я в чём-то из того, что говорю? Да наверняка, как и все мы, и это нормально. Ненормально сначала говорить, а потом разбираться.
Вот это уже слова «не мальчика, но мужа». Уважаю, без всякого сарказма!

Спасибо, я тебя тоже очень уважаю. Но ответить тем же на «не мальчика, но мужа», пока не могу (хотя надежды не оставляю). В твоих постах и комментариях на тему «PostgreSQL vs. MySQL» всё время сквозит какая-то обида. Если бы ты её преодолел, то дело продвижения MySQL только выиграло бы, ИМХО.

Интервью с Иваном Панченко я посмотрю, не думал, что вообще в нём что-то говорится о MySQL. Честно говоря, никогда не видел желания «спустить собак» на MySQL. Я бы сказал, что скорее MySQL вообще не брался в расчёт, а сравнение шло с коммерческими СУБД и NoSQL.

И Postgres Professional задаёт здесь локальный тренд как ни крути, в том числе и ты своими комментариями.

Да, задаёт. Но не вижу, где я своими комментариями задаю неправильный тренд, в том числе в тех комментариях, которые ты привёл в данной статье. Надо при этом учесть, что ты вырвал их из контекста. А эти комментарии делались под твоим провокационным постом в группе «PostgreSQL в России», что оправдывает их ироничный тон.
Да нет конечно, весь контекст беседы, откуда были взяты комментарии я очень аккуратно сохранил. Просто Facebook не позволяет делать ссылки на конкретные ветки комментариев или сами комментарии, поэтому пришлось делать скриншоты.

Но я не вижу смысла эту унылую беседу продолжать. Я чувствую, что тебе важно оставить последнее слово за собой. Поэтому ответь что-нибудь назидательное на этот комментарий, и замнём тему.
Да. Кстати, сообщество FreeBSD — ближайший конкурент сообществу PostgreSQL по степени упоротости. Но постгрес сообщество лидирует с большим отрывом.
Sign up to leave a comment.

Articles