Где грань между гибкостью кода и скоростью разработки?

Lightning

Трудоголик
Alexandre
Это понятно.
Не понятно к чему написан твой пост и как он связан с процитированным тобой высказыванием из моего поста. Как трое студентов могут соревноваться с командой проффи? И какое отношение это имеет к гибкости кода и скорости разработки? И какое отношение это имеет к тому, что я писал выше? Это не опровергает, не подтверждает и не уточняет то, что я писал. Зачем тогда цитата?
 

Mandor

Новичок
Не всегда можно просто сесть и выдать код в 2 раза быстрее, но в 2 раза менее качественно. По мне так говнокод писать сложнее, чем код нормальный, потому что это морально напрягает. Но другое дело если ты только в будущем понимаешь что писал говнокод.
Согласен с тем, что не нужно тратить лишнее время на разные "навороты", но тратить время на то, чтобы выдать такой код, за который будет банально не стыдно нужно обязательно.
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
пожалуй, соглашусь
 

weregod

unserializer
Mandor
> По мне так говнокод писать сложнее, чем код нормальный, потому что это морально напрягает.
тех, кто разницы не чувствует, не напрягает
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
Факты и заблуждения профессионального программирования
Прочел, спасибо, книжка довольно полезная, несмотря на то, что скучновато написана, и автор странноват (постоянно цитирует сам себя, и ссылается на себя как на источник информации).

Теперь смотрю на программирование немного другими глазами.
 

john.brown

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

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

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

Из всего сказанного я не вижу ни одного случая, когда говнокод был бы оправдан. Рано или поздно по любому получиш своим говнокодом по лбу.. или кто то другой получит.
 

nirex

Новичок
грань определяется только:
сроками
стоимостью
и общими понятиями разработчиков

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

grigori

( ͡° ͜ʖ ͡°)
Команда форума
varan
Спасибо за интересный вопрос, который можно обсудить на мастерклассе.
Тема актуальна как-раз для мелкого аутсорса.
Сейчас выскажу свои мысли по цитатам участников.

-~{}~ 15.09.09 03:40:

>в будущем время на доработку нового функционала уменьшится
Не доработка, а багфиксинг и поддержка. У индусов принцип "багфиксинг - это бизнес", а я даю гарантию багфиксинга и зарабатываю на поддержке. Цена дополнений зависит от привязанности клиента ко мне. Каждому свое.

>Время на доработку в будущем дешевле времени на доработку сейчас
Безусловно.

>рассматривать каждый конкретный проект отдельно
Нет. Отладить единую базу паттернов, подход и методику. Растиражировать на сотрудников. Каждый сходу поймет код другого. Будет и быстрая топорная разработка на высоком уровне, и дешевая поддержка.

-~{}~ 15.09.09 03:48:

>вдесятером будет легче разгребать
добавление программистов в команду лишь замедляет процесс (С) "законы Мерфи"

>что там будет, в этом будущем, может ...
другие проекты, половина которых "пишется" по F5
разделяй проекты-инвестиции и проекты-прибыль

>мы пишем, а это оказалось не актуально для рынка
да у нас программер уже маркетологом заделался! кто ж тебе доктор :)

-~{}~ 15.09.09 04:04:

>противно дорабатывать говнокод
ты знаешь другие пути профессионального роста? поделись :)

>прошу быть позитивными
прости, но гламурные кисы в другом месте

>взгляд бизнесмена - параметр "качество" неощутим. Вот "срок" - совсем другое дело
Каждому свое. 99% делятся на "потом" и "срочно". А есть те, кто платит за качество и ждет, когда надо.
anyway, быстро и качественно делать можно.

>Кто-нибудь замерял?
Конечно. От 6 до 24 месяцев, чем масштабнее - тем больше срок окупаемости. Хотите продавать сайты за 5 тысяч долл, меняя дизайн - вложите год работы.

-~{}~ 15.09.09 04:09:

>зарабатывать еще, как можно быстрее, чтобы можно было вкладывать....
это пирамида, а настоящий бизнес живет иначе, лень спорить с чушью

-~{}~ 15.09.09 04:18:

>как будто мы его (говнокод) специально пишем
вы хотите не писать правильно, а доказать, что вы правы
естесно, говнокод и ссзб

+ нужен тот, кто покажет, как надо, и объяснит, почему "за 8 из 10 способов даст по башке" (С)Баш
но его надо об этом попросить, сказать "спасибо" и помочь на тебе заработать :)

-~{}~ 15.09.09 04:30:

Для меня золотое правило "срок-цена-качество" превратилось в "срок-цена-research".

Итог.
Качество определяется не сроком, не стоимостью, а вложениями душевных сил в отработку технологии и ее соблюдением.
Часто вложения окупаются, но ROI - величина непостоянная, и поддержание требует постоянных усилий.
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
grigori
Да ладно, не напрягайся ты так :)
Я понял, что во многом не прав, когда прочитал комент Mandor-a:
Не всегда можно просто сесть и выдать код в 2 раза быстрее, но в 2 раза менее качественно
Исходя из этого все остальные мои рассуждения херятся на корню.
Да я в общем-то уже и не пишу говнокод последние лет 5.

Кстати, я конечно понимаю, что "лень спорить с чушью", но всё-таки, а как живет настоящий бизнес
 

nalim

Новичок
Истина где-то посередине.
Даже если время сильно ограничено можно 5мин подумать и разбить функционал хотя бы на пару классов.
И бд хотябы чуть чуть абстрагировать через пару методов доступа.

Из кубиков проще строить чем монолит крамсать.

И коменты для PHP дока набросать. Сделать аккуратный нейминг.
Вобщем нужно соблюсти минимум, это скрасит потом ужосы любого рефакторинга =)
Я теперь даже в мелких поделках соблюдаю это правило.
Наверное дествительно с опытом сам начинаешь интуитивно избегать совсем дубово-немасштабируемых решений.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
varan
не напрягаться я не могу - и тема близкая, и к МК готовлюсь :)
 

Xeon303

Новичок
Можно писать говнокод - только после таких "проектов" лучше сразу увольняться, не забыв при этом замести вообще какие-либо следы. Разгребать-то это уже не вам придется, да?

К сожалению, пришлось уже парочку таких сайтов переписать с нуля. Как обычно весь HTML шел вперемежку с кодом... Все страницы на сайте обрабатывал один единственный скрипт "index.php", которому передавались GET-параметры... ужас, одним словом.

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

А все довески и красивости оставить на потом - собственно это и будет рефакторингом.
 

Adelf

Administrator
Команда форума
Все страницы на сайте обрабатывал один единственный скрипт "index.php", которому передавались GET-параметры... ужас, одним словом.
Что в этом плохого? У меня все сайты такие. (mod_rewrite тоже ЧПУ превращает в GET-параметры)
 

atv

Новичок
Все страницы на сайте обрабатывал один единственный скрипт "index.php", которому передавались GET-параметры... ужас, одним словом.
Во всём непонятном кроется ГОВНОКОД :D
 

Xeon303

Новичок
atv
FractalizeR
Adelf
там не просто запросы обрабатывались... и не просто ЧПУ там был. Там вообще вся логика была вперемежку с HTML.

Этот скрипт обрабатывал и каталог продукции, и новости, и статичные странички и т.д.
 

findnext

Новичок
И в symfony так Там тоже один index.php, на который запросы передаются.
и у меня так. И систему можно раздувать до бесконечности и код читабельный. Не вижу проблемы в том что всё запросы переадресовываются на index.php, а потом идёт уже разбор. Всё дело в том, как писать архитектуру.
 

Xeon303

Новичок
findnext
я как бы тоже не против... Только вот именно, что архитектура там напрочь отсутствовала.
 
Сверху