01.10.09 17:28 lwilis

Пятиминутка ненависти!Раньше работало

Негодую в ответ на такие заявления:
  • в прошлой версии работало.
  • на другом дистрибутиве работало
  • на старой системе работало

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

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

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

Всем спасибо )



sdvn 01.10.09 17:47 # +3
Да, так лучше. Но не стоит забывать, что клиент по определению тупой, пока не доказал обратное. И этого тупого клиента абсолютно не волнует, что программа стала работать по-другому, для него она - черный ящик, главное чтобы она работала. И если после обновления она вдруг перестает работать, то виноват разработчик. И это верно. Не хотите, чтобы вашу тех. поддержку "насиловали" недовольные клиенты - пишите обратно-совместимый софт. Чтобы новая версия программы понимала старые конфиги. Чтобы выдавала внятные сообщения об ошибках. + Много-много пунктов. Да, это займет уйму времени и сил, но зато это снимет такую гору проблем.
lwilis 01.10.09 18:04 # +1
Все правильно говоришь, только для случая платной подписки на поддержку (контракт на сам софт и т.д.) Я в посте не акцентировал, но имел в виду случай, когда софт используется пользователем полностью безвозмездно. В этом случае автор софта ничем не обязан пользователю
sdvn 01.10.09 18:19 # +1
Ну, а если посмотреть с точки зрения свободного (не обязательно открытого) софта, то тех. поддержка в данном случае является сам автор и сообщество, появившееся вокруг данного продукта (форумы, коммьюнити и пр). Если не хочешь тучи вопросов со стороны пользователей, то см. мои советы выше. :-D
lwilis 01.10.09 19:26 # +0
И снова согласен. Именно поэтому пост находится в блоге "пятиминутка ненависти", а не в каких-нибудь официозах :)

Но выходит замкнутый круг: хочешь, чтоб все было "хорошо" - пиши совместимо; но если поменялась концепция (автор понял, что предыдущая была нехороша) - придется тянуть балласт - пользователю же хуже в итоге. Выход из положения есть.
Опенсорсные проекты воспринимать в большей степени как исследовательские, поэтому здесь вообще о пользователе можно не беспокоиться. Их используют энтузиасты на свой страх и риск.
Другое дело продакшн на основе опенсорса. Там уж что встало на рельсы, тому и ехать.
sdvn 02.10.09 00:07 # +0
Балласт? Мы про конфиги или про логику работы программы? Если про конфиги, то всегда можно игнорировать то, что не вписывается в новую схему.
ibnteo 01.10.09 18:03 # +1
С другой стороны плохо, что разработчик не учитывает что новая версия будет запускаться со старыми конфигами. И получаем зачастую неработающую программу после обновления. Если новая версия не совместима со старыми конфигами, то сделай их в другом месте, и сделай импорт конфига из старой версии в новую.

ИМХО хуже ситуация когда тебе говорят, на вопрос почему не работает, что у них всё работает, без попытки решить проблему пользователя. Ведь можно сказать пользователю - попробуйте удалить конфиги, возможно дело именно в них, и решить проблему, вместо нагнетания ненависти с обеих сторон.
lwilis 01.10.09 18:09 # +0
промахнулся. ответ тут
lwilis 01.10.09 18:08 # +0
импорт или конвертер для конфигов зачастую делаются, да вот только это ж надо в release notes или changelog глянуть, чтоб узнать как и что.
в остальном выше ответил

sdvn 01.10.09 18:13 # +0
На мой взгляд импорт и конвертация конфигов должна быть автоматической. Ибо как разработчик говорю - пользователь тупой.
lwilis 01.10.09 19:32 # +1
процитирую cppmm
если я такой красивый, взял, из сырцов собрал новую версию, не почитав changelog, а она со старым конфигом работать не хочет. Тут понятно - ССЗБ
лучше и не скажешь. В остальном да - автоматическая конвертация рулит.
cppmm 01.10.09 18:15 # +3
А вот тут, пожалуй, отчасти не соглашусь. Оно понятно, если я такой красивый, взял, из сырцов собрал новую версию, не почитав changelog, а она со старым конфигом работать не хочет. Тут понятно - ССЗБ. Но опять же, если об этих изменениях не было написано в changelog'е, то это уже неправильно и разработчика надо пнуть.
Другое дело, дистрибутивное обновление. Здесь ничего не должно ломаться от версии к версии. Берём, например, gentoo. Запускаем обновление, после обновления нам настоятельно рекомендуют запустить etc-update. Там, где это нужно, конфиги обновляются. Там, где это невозможно, мне об этом сообщается. Та же схема в Debian. Или конфиги меняются автоматом, или меня предупреждают о том, что надо изменить руками. И тут дело не только в конфигах. Когда я обновлялся с Debian 3 Sarge до Debian 4 Etch, меня предупредили, что иксы работают теперь несколько иначе. Шрифты лежат в другом месте, настройки изменились. После обновления я вполне спокойно наблюдал падение иксов, и вполне спокойно их перенастроил.
А вот за молчаливое обновление и потерю работоспособности надо бить больно. Не бывает в Linux так, чтобы что-то сломалось само. Оно или работает, или говорит, что не так. Это одна из особенностей, из-за которых я люблю Linux. Поэтому молчаливое обновление и последующие за ним глюки - это нонсенс. И именно поэтому на большинстве серверов в мире стоит Linux, а не Windows. Ни один нормальный админ никогда не поставит на боевой сервак систему, которая после обновления перестанет работать.
Я понимаю, что должен говорить огромное спасибо разработчикам, за проделанную работу. Я понимаю, что сам я помогаю им максимум багрепортами. Но если я вижу, что разработчик не в силах довести проект до ума(а умение провести безболезненное обновление сюда тоже входит) или хотя бы внятно объяснить причину невозоможности сделать это, то я отказываюсь от этого проекта.
Goury 28.02.10 20:17 # +0
в убунте 9.04 устанавливалка софта работала, а в 9.10 - перестала
виноваты разработчики, ибо старую рабочую выкинули и поставили вместо неё новую кривую

хотя да, поставить обратно рабочую - никаких проблем
Посты Комментарии
Последние посты
Посты Комментарии
Последние комментарии
Посты Комментарии
Изменения
Посты Комментарии Изменения Черновики Избранное
Черновики (все)
Посты Комментарии Изменения Черновики Избранное
Избранное (всё)
Посты Комментарии Изменения Черновики Избранное
Лучшие блоги (все 127)
Элита (все 2421 из 196 городов)

Новенькие: Teapot, Kuresu, retimer, shybovycha, c0ma
welinux.ru