войти зарегистрироваться

Open source whois

индекс
129,31

Реальный опыт использования open source

Добрый день!

Хочу поделиться своим опытом использования опенсорса в различных проектах — от учебных до коммерческих. Кто-то обязательно обвинит меня в не профессионализме, кто-то просто скажет, что это все как-то однобоко, но тем не менее…

Студенческий проект MathWorld


Решил я как то выучить PHP. А какой лучший способ выучить новый язык программирования? Правильно, нужно написать свой проект на этой технологии. Так как я люблю математику, то проект решил посвятить mathcad, которым пользовался для расчетов в университете. За месяц-два, как говориться, «на коленке» с нуля был написал небольшой движок, который:
— был очень простым
— содержал код, за который в последствии было стыдно
— был не удобным для автоматического наполнения.

Но тем не менее, он работал и, думаю, это самое главное. После того, как посещаемость на сайте достигла отметки 50-60 хостов в сутки (согласитесь, для первого проекта студента-самоучки на бесплатном хостинге четвертого уровня — это неплохо), я решил расширить сайт. Выбор пал на PHPNuke — open source CMS.

После установки и настройки движка, переноса большей части материалов, я получил:
— глючную тормознутую систему, которая грузилась на порядок дольше моей (оговорюсь, что отключил практически все не используемые модули)
— спам в размере 10-20 коментов в день
— любая кастомизация занимала очень много времени.

В итоге, я отказался от сайта на PHPNuke и просто доделал старую систему, что позволило еще 3 года ей успешно работать.

Как говорится, дилетанты стоили Ковчег, профессионалы строили «Титаник» (с).

Коммерческий проект


Уже будучи сотрудником ИТ компании, выполнял проект для израильского Microsoft. Это был ASP.NET проект для настройки некой системы, но не в этом суть. Необходимо было реализовать модальный прогресс бар (modal update progress). Решение нашлось очень быстро на codeproject и было интегрировано в проект.

В процессе интеграции на стороне заказчика мне необходимо было отчитаться по каждой «левой» dll в проекте. Естественно, возник вопрос по поводу этого прогресс бара. Я привел ссылку на проект, где написано, что можно делать с этим кодом все, что хотим и т.д. и т.п. Результат был простой — код забраковали и заставили переделать.

Итак ситуация,
— codeperoject напрямую поддерживается Microsoft
— код был подкреплен какой-то лицензией, которая просто там должна быть, а не потому что автор кода решил кому-то создать сложности. Она позволяла делать все, что угодно с эти кодом
— вся dll состояла приблизительно из 100 строк!

Тем не менее, пришлось переделывать, потому что на практике оказалось нельзя использовать такого рода код в коммерческих проектах.

Личный проект


Возникла идея создания проекта TechPosters (в данный момент он не работает, так как возникли проблемы с хостером), который я упоминал несколько раз на хабре.

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

На codeplex результаты поиска по ключевым словам «blog engine» выдает много результатов.

BlogEngine.NET идет на первом месте и по скачиваниям и по симпатиям. После развертывания и добавления материалов через два дня обнаружил, что все теги, старательно расставленные по постам, исчезли. Соответственно исчезла удобная навигация по направлениям. После нескольких дней разбирательств проблема не была решена. Заново расставленные теги просто исчезали через некоторое время (не сразу). Сейчас я вспоминаю, что может быть были неправильно расставлены права записи, доступа или еще что-то. Но факт остается фактом — заставить работать этот движок на себя у меня не получилось.

Выбор был сделан в сторону dasBlog, который не требовал базы данных, был простым в настройке и использовании. Вся информация хранилась в XML файлах. Только потом я понял, как облажался. Движок писал все пути к файлам в виде
http://домен/путь к файлу


Т.е. перенос сайта целиком на другой хостинг (с чем я столкнулся в данный момент) — это тихий ужас. Кроме того, все логи движок хранит в файлах, бережно созданные в корне (!) сайта, т.е. когда я обнаружил после двух месяцев 200 лишних файлов в корне, я был удивлен. Но когда увидел changeLog на 100 МБ, я занервничал… Спам, неудобство в плане модерации комментариев и т.д. отношу к цветочкам.

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

Вопрос был в том, что ставить движок мне нужно было на IIS7. Так вот, проблемы начались сразу же. Движок в упор не хотел работать. 3 дня ушло на разговоры с хостерами, которые очень вежливо, но все таки в итоге послали меня далеко. Вся соль в том, что они оказались правы. Нюансы IIS7 не учтены при разработке движка, также нигде не было написано о том, чтобы не пытаться методом грубой силы заставить движок работать на IIS7. На блогах сайта было найдено много упоминаний о проблеме, но нигде не было детально описано решение проблемы. В итоге еще 2 дня на нервах, после чего пришлось отказаться от IIS7 и взять дополнительный хостинг на apache. А все потому, что не написано на сайте большими буквами о том, что не стоит ставить на IIS7 или если стоит, то как.

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

В данный момент TechPosters работает в тестовом режиме на apache.

Еще один пример


Год назад искал движок соцсети и нашел! Одна проблема — движок на китайском. Отправил тикет на локализацию на английский — пообещали в течении месяца обновить. Скоро будет год… А что вы хотели — это open source, никаких гарантий. Я бы уже и сам локализировал, но вот с китайским не сложилось…

Просто наблюдение


При установке чего-то с помощью Microsoft Web Platform Installer решил посмотреть, что еще интересного содержит данная тулза. Увидел в разделе вики ScrewTurn Wiki — викидвижок на asp.net, open source. Хм, замечательно, подумал я и полез скачивать «open source». В процессе скачивания обнаружил вкладку «Commercial», открыл и… офигел. Лицензия на Unlimited Redistribution + Lifetime Updates стоит €5,000. На stackoverflow даже вопрос поднял по поводу commercial use, из чего понял, что мне она точно не подойдет, потому что под нарушения GPL я попадаю, а €5,000 у меня нет.

Еще меня убил калькулятор стоимости проекта. Стоимость разработки вики оказывается $1,230,990. Мда…

Неужели все так плохо?


Нет, конечно. Например, мы используем redmine и он мне нравится. Много небольших проектов и примочек успешно использую каждый день, но в области «complete solution» дела обстоят плохо.

Кроме того, на codeplex я координирую несколько небольших проектов. И мне это нравится :-) Но just for fun.

Вывод


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

Спасибо за внимание.

Upd. По моему тема явно указана — «реальный опыт».

комментарии (56)

  • А разве в LiveStreet заявлена поддержка IIS?

    И вы так говорите будто среди проектов с закрытыми исходниками нет гуано.
  • НЯНЯ, Я У НИХ ПОЕЛ! ©

    *удалился за попкорном, холивару быть!*
  • Тема для холивара? opensource и software
  • >Выбор пал на PHPNuke — open source CMS
    Почему не на drupal?

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

    >А что вы хотели — это open source, никаких гарантий
    В Windows тоже никаких гарантий — читайте лицензию

    >Еще меня убил калькулятор стоимости проекта. Стоимость разработки вики оказывается $1,230,990. Мда…
    Напиши свою и раздавай бесплатно

    >А все потому, что не написано на сайте большими буквами о том, что не стоит ставить на IIS7 или если стоит, то как.

    А маленькими буквами читать не умеем?
    • раскрыть комментарий
      • PHPNuke был везде
        О, это, конечно, действительно веская причина выбрать PHPNuke. Не могут же ошибаться «миллионы мух», в самом деле.
        Для windows есть поддерка, обновления, примеры использования и т.д.
        Ну и как — много лично ваших фичереквестов было удовлетворено? Часто ли вы лично (ваши знакомые, на худой конец) обращались в техподдержку и часто ли получали от неё реальную помощь? Я не издеваюсь, мне на самом деле любопытно.
        • Мои реквесты были удовлетворены почти все. Кроме того, Microsoft рассылает кучу писем с просьбой оставить отзыв о своих продуктах, выпускает beta, ctp версии продуктов бесплатно, тем самым собирая информацию о неполадках до релиза и т.д. и т.п.

          Кроме того, всегда можно связаться с локальным представителем Microsoft и напрямую получить ответ. MVP тоже еще никто не отменял.

          По поводу мух, то причина «PHPNuke был везде» для не опытного товарища является веской. Вы можете с этим не согласиться, но никто не навязывает вам свое мнение.
          • По поводу мух, то причина «PHPNuke был везде» для не опытного товарища является веской. Вы можете с этим не согласиться, но никто не навязывает вам свое мнение.

            По сути, вся ваша «статья» и есть попытка навязать всем свое мнение xD
            • По сути, это можно сказать практически к любому топику на любом сайте.
              • Конечно. Просто вы при этом говорите «я никому ничего не навязываю» xD
          • Мои реквесты были удовлетворены почти все.
            Круто. А как скоро?
            причина «PHPNuke был везде» для не опытного товарища является веской
            Нет, я соглашусь. Но что мешало поспрашивать опытных товарищей?
            • >>Круто. А как скоро?
              Достаточно скоро.

              >>Но что мешало поспрашивать опытных товарищей?
              Почему вы уверены, что под боком были опытные товарищи? Или такой вариант вы не рассматриваете.
              • Достаточно скоро.
                Назовите, пожалуйста, конкретные сроки, и, если можете, конкретные баги/фичереквесты.
                Почему вы уверены, что под боком были опытные товарищи?
                На RSDN, Винград, xpoint не обращались? Чем не вариант?
                • >>Назовите, пожалуйста, конкретные сроки, и, если можете, конкретные баги/фичереквесты.
                  Что вам еще назвать? Я не собираюсь вас переубеждать и вам что-то доказывать. Вы можете мне поверить, а можете нет — у вас есть выбор.

                  >>На RSDN, Винград, xpoint не обращались? Чем не вариант?
                  Когда писался тот проект, под рукой была только справка в chm формате по функциям PHP. О существовании RSDN я не знал. К слову сказать, что такое Винград, xpoint я не знаю даже сейчас.
                  • Что вам еще назвать? Я не собираюсь вас переубеждать и вам что-то доказывать.
                    Ну вот, опять закончили «за упокой». Почему и зачем вы огрызаетесь?
                    Вот кого ни спроси из адептов софта от MS про техсаппорт, так все как один пытаются отделаться максимально общими фразами. «Хорошо работает», «достаточно скоро», «почти все пофиксили» — и никакой конкретики. Вам что — запрещается публично обсуждать качество техсаппорта?
                    • Я не обращаюсь в общий техсаппорт, а пишу напрямую специалистам и получаю от них ответы. Под «достаточно скоро» подразумевается время, которое меня устраивает. Для каждого это время разное. Если я отвечу полдня, кто-то обязательно скажет, а вот мне ответили там за 3.5 часа и все пойдет по кругу.

                      Думаю, основной мыслью было «у проприерарного ПО есть саппорт», у open source он, в основном, отсутствует либо является платным.
                      • Меня больше интересуют конкретные сведения о времени и характере реакции на фичереквесты, о которых вы упоминали.
                        у open source он, в основном, отсутствует либо является платным.
                        да, эти опенсорсники наглецы ещё те ;)
                      • Например у проприетарной винды бесплатный саппорт только 3 месяца после первого обращения.

                        >>>Я не обращаюсь в общий техсаппорт, а пишу напрямую специалистам

                        Тогда при чем здесь саппорт? Точно так же можно общаться и с лично знакомыми гуру по свободным программам, тогда саппорт при чем?
                      • Стоп — я же спросил вас «Как скоро были закрыты ваш фичереквесты Майкрософтом?», правильно? А вы фактически сказали, что Майкрософт-то и не в курсе о ваших хотелках (так как вы обращались с вашими проблемами к таким же пользователям, то ли купившим много софта от МС, то ли заплатившим МС; и, кстати, несмотря на то, что вы — пользователь лицензионной копии и имеете право на нормальную техподдержку), правильно?
                        Ещё вопрос — как MVP может исправить багу в коде, поставляемом Microsoft? Или речь идёт о workaroundе?
                • Я обращался в поддержку Symantec на счёт проблемы с Endpoint Protection. Решить проблему готового продукта они не смогли. О feature request тут и речи быть не может.
      • Я вот не могу понять, что мне пытаются доказать — то, что у меня опыт не правильный или что-то другое, чего я не понимаю? :-)
        • От прочтения статьи к вам пропитались недоверием. А вы говоря о чём-то безапелляционно и без конкретных примеров подкармливаете недоверие.
          • Позвольте узнать откуда недоверие? Может присутствует факт искажения фактов, заказной статьи, ник не нравится? Пока из конструктивных комментариев я прочитал лишь один о юридическом отделе, все остальное — это едкие замечания.

            >>без конкретных примеров
            ????

            Статья полностью построена на примерах — как вы могли их не заметить? Хотя тут все просто — каждый видит то, что хочет видеть.
            • Я говорил о комментариях про техподдержку.
              • По моему, здесь статья не о техподдержке.
                • Дальше продолжать смысла нет.
      • >>>В Windows тоже никаких гарантий — читайте лицензию
        >Для windows есть поддерка, обновления, примеры использования и т.д.

        А так-же шумелки и сопелки. Тем не менее — гарантий там нет. Не уходите с темы.
        • Там есть гарантия продолжения разработки за счет постоянного поступления средств на разработку. В open source GPL проектах (размерами поменьше ядра linux, mysql, apache, firefox, т.е. где нет коммерческой поддержки компаний, либо действительно большого сообщества) такой гарантии как раз и нет!
          • А вы думаете, что все проприетарные проекты жирно живут? Они тоже дохнут, закрываются, и тогда имющиеся клиенты остаются с фигой.
  • Наша контора широко пользуется Open Source софтом благо на Java его написано немало. Но перед использованием любой софтины она проверятся юристами (лицензия) и информационной безопасностью.
    • У вас правильный подход. И очень хорошо, что у вас есть люди, которые разбираются в юридических вопросах. К сожалению, не все программисты являются хорошими юристами.
  • Я в некоторой степени сам связан с опенсурс. Пишу программы, и распространяю их с исходниками. Некоторые проекты даже форкают :)
    Попадаются личности, которые пишут гневные письма, с требованиями сиюминутно исправить какие то баги, добавить фичи. Но времени на это не всегда хватает, так как основная работа с этим не связана, и все происходит на голом энтузиазме. Особенно доставляют такие юзеры, которые демонстративно начинают высказываться в комментариях о том, что автор мудак и не хочет разобраться в его проблеме или добавить фичу, нужную только одному юзеру.
    Кто то запрещает пользоваться платными аналогами??
    Open Source дает право свободно выбирать! Не нравится? Иди дальше…
    • Все верно. Главное, чтобы ваш выбор не завел вас куда-то туда, где вас расценивают как «какого-то юзера», который «что-то там пишет в комментариях».

      >>Кто то запрещает пользоваться платными аналогами??
      Когда разговор идет о платном продукте, то все кричат «зачем, есть же аналогичный open source»!.. На что им зачастую отвечают, мол, никто вас не заставляет — пользуйтесь бесплатными. Так же и тут — никто на заставляет, ставится под вопрос ценности такого open source.
      • Почему-то вот ну никто не рассматривает вариант заплатить автору.
        • Тогда теряется весь смысл open source.
          • Почему это?
            • Потому что платить за опен сорс не вижу смысла. Кроме того, какая вероятность того, что автор согласится за деньги что-то допилить?
              • А с чего вы решили, что автор на 99% откажется? Он может быть очень рад, что программой не только пользуются, но и готовы заплатить за доработку, более того, если программа интересна для дела, то можно договориться с автором о долгосрочном сотрудничестве. А если автор совсем забил болт на программу, то можете взять сорцы и развивать их как захотите сами.

                И еще пример, когда есть смысл заплатить за опенсорц. У меня на работе думают внедрить опенсорцную электронную библиотеку, но она сделана по американским стандартам библиотечного дела, потому мы, если решим брать эту систему, воспользуемся услугами фирмы, которая адаптирует и развивает программу под наши условия.
              • с каких пор опенсорс и бесплатно — синонимы?
                • Не надо кривить душой и играть терминами.
                  Люди не платят за gcc, linux, netbeans, gimp, firefox и тд.
                  А может лично вы покупаете поддержку на MySQL или все же так пользуетесь, потому что она бесплатна? Или вы за linux кому-то заплатили?

                  Когда люди слышат GPL, BSD, Apache уже предполагается возможность экономии на лицензии. Это факт.
                  • вы, кажись, понятия не имеете о чем говорите
                    • Вы ловко ушли от вопроса :)
              • > Кроме того, какая вероятность того, что автор согласится за деньги что-то допилить?

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

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

                Можно самому помочь.

                Вариантов на самом деле очень много.

                > Тогда теряется весь смысл open source.

                Выложите купленный код в общий доступ, тем самым Вы поможете проекту и поддержите идеологию open source.

                > Потому что платить за опен сорс не вижу смысла

                Так не платите, никто не заставляет. Но в таком случае — как можно чего то требовать от автора? Он Вам ничего не должен.

                Все IMHO, естественно.
          • Нет, совсем не теряется. Автор написал что то, и выложил «как есть», если вы хотите от этого продукта что то большее для себя, будьте добры оплатите автору время, потраченное на вас лично. Почему это плохо?
            • Ну кто говорит, что это плохо? Разговор о том, что нет никаких гарантий, что завтра этому автору не разонравится писать «за идею» и он просто не забьет на все. А у вас будет на руках проект с глюками либо с фичареквестами, решить которые будет либо дорого, либо сложно.
              • А какова вероятность, что это не случится с платным софтом?
                С опенсурс софтом то в этом плане проще. Если популярный проект начинает умирать, делают форк, и разработку продолжают другие люди. И в конце концов, почему бы не помочь проекту лично?!
              • А если прикроют проприетарный проект — то вообще пиши пропало, и файлы данных в проприетарном формате закрытой проги останутся ценностью для красного уголка в музее вашей фирмы.
      • Это и называется свобода выбора… Можно выбрать, использовать ли СПО, и в некоторых случаях пораскинуть мозгами, почему результат не такой какой нужен, либо использовать проприетарное программное обеспечение, при использовании которого возможно за вас будут волноваться другие.
  • Автор нажаловался на, по его мнению, плохие опенсорцные проекты. В итоге он купид какой-то проприетарный продукт, или нашел подходящий опенсорцный?
    • В посте все описано — почитайте внимательно.
  • Microsoft User Group в профиле, как бэ намекает на непредвзятость автора…
    • Я ждал, когда кто-то обратит внимание на профиль. Боюсь разочаровать — к юзер групп эта статья не относится, так как там стоит проприетарный движок коммюнити сервер — бесплатная версия. И тут хочется сказать, что движок отличный, легко настраиваемый и если есть какие то вопросы — их можно найти у них на сайте либо в фак, либо на форуме. И даже если они закроются сейчас, ничего не помешает работе этого движка далее, потому что это законченный продукт, хоть и дорогой. Все описанное в статье относится как раз к другой деятельности.
      • Дико извиняюсь за увиденное в профиле, но причём тут движок сервера? У тебя чуть более чем все статьи о Майкрософте, сам ты везде высказываешься за эту корпорацию и всячески её поддерживаешь. О какой непредвзятости может быть речь? Прочитав статью в голове рисуется красными буквами смысл статьи: «Опенсорс — гавно, проприетарщина рулит (везде проявила себя лучше там, где опенсорс „провалился“)».

        > я не понимаю, когда open source приравнивают к светлому и чистому, а проприетарное ПО — к злому и ужасному
        Насчёт этого можно долго говорить (в пользу открытого ПО конечно же), в том числе и мне (да хоть отдельный топик написать). Однако и так много сказано и объяснено. Твою же статью следовало озаглавить «Мои неудавшиеся проекты» и убрать оттуда попытки обесчестить открытое ПО. Максимум куда это можно поместить — в личный блог. А лучше так в черновиках и оставить и не повторять своих ошибок в будущем.
        • Дружище, максимум, что ты можешь сделать — это поставить минус за статью, написать гневный комментарий или ударится головой об стенку. А вот и что и куда помещать — мое личное дело, которое тебя не касается. Я пишу о том, о чем считаю нужным.

          Смысл статьи в том, что «перед тем как использовать open source, несколько раз подумайте».
  • К сожалению, мой опыт использования open source в реальных проектах говорит том же — надо 10 раз подумать и все взвесить, прежде чем ставить себя в зависимость от open source.
Только авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста.