я все понимаю, но опять же, если у вас эта нагрузка есть. Я работал в проекте в основе которого лежала оч неплохая идея, достаточно интересная, подобного в России не было. Но за время работы сменилось 3 тимлида, и каждый говорил что написано все очень плохо. В итоге мы переписывали 3 раза с нуля, ушло много времени и денег. За это время появилось оч много проектов с таким же функционалом, и наш затерялся в этой куче, 5-10к посетителей, половина с рекламы. Код в итоге получился более-менее, но кому он теперь нужен. Проект в который вбухали миллионы, теперь на свалке, не отбив даже половины.
Архитектура вообще дело сложное. Особенно когда проект начинается без видения каким он в итоге должен стать, тут ничего не поможет. Перерабатывая потом его, намного легче создать более удобную архитектуру, потому что вы уже знаете каким он должен быть и какие задачи решать. Но опять же не факт что это у вас получится.
Ну уж на нагрузку он никак не влияет, даже наоборот. Даже наоборот в красивом коде больше абстракций, которые создают дополнительную нагрузки при исполнении кода. Ну а клиентов на начальном периоде у вас вряд ли будет много. Если только вы не уже не супер известная компания, но это совсем другой случай :)
Многие проекты начинаются командой из 1-4 человек, а менеджеры появляются когда проект уже чего то добился. Конечно крупные компании не будут писать говнокод, и будут у них менеджеры, аналитики и т.д. но это не спасает от того что проект полностью провалится, взять хотя бы гугл+, есть у меня подозрения что написан он добротно, но кому теперь это надо?
Возьмем для примера что то типа фейсбука, У него допустим нет возможности выкладывать видео, а на сайте бабушкины-тапочки.ком есть. Но никто не будет уходить с фейсбука и-за этого, все будут ждать функционал. Потому что на фейсбуке у тебя 500 друзей, а на тапочках ни одного, с кем тебе там делиться видео, если там никого нет?
Сколько фейсбуков появилось одновременно с текущим и сколько появилось после? Самое важное тут не качество кода, а время. Кто первый, то и съест основную часть пирога. А когда ты на коне можно озадачиться рефакторингом с целью уменьшения времени на внедрении нового функционала.
Это технические детали на которые конечному потребителю плевать. Им плевать сложно вам добавлять функционал или нет, тратите вы на это 10 минут или 10 дней. Им важен результат. Вот вы пользуетесь Windows, Linux, mysql, mssql и т.д., и вы лазили у них в исходный код и это для вас стало решающим использовать их или нет? Сомневаюсь.
По мне так в битриксе лютый говнокод, но это не мешает быть ему успешным продуктом, и привлекать кучу программистов. И успешный проектов на нем реализована куча.
Обратил, работать над продуктом который пользуется популярностью намного приятнее чем над «мертвым» продуктом. Это мотивирует, когда ты реализовал какую то фичу и люди начинают этим пользоваться. А если ты написал мега красивый по коду модуль и никто этим не пользуется, нафиг оно надо?
Насчет говнокода, мне например нравиться рефакторить старые проекты, делать код читабельные, удобнее в использовании. Но это имеет смывсл только тогда когда продукт пользуется спросом.
Запомните, что самое важное в программном проекте, который пишут настоящие программисты — это красота и стройность программного кода! Именно он привлекает к себе людей, мотивирует их вкладывать на свое развитие время и энергию.
Самое главное в программном проекте это его функциональность, удобство использования для конечного потребителя. Но никак не стройность программного кода. Больше скажу всем, кроме программистов, наплевать как он там построен внутри, на чем написал, протестирован ли. Если же он непонятный, или неудобный в использовании, или просто несет никому ненужный функционал, как бы красиво он написан не был, он отправится в мусорную корзину, и никто ничего в него вкладывать не будет.
Ну вы меня поняли…
Насчет говнокода, мне например нравиться рефакторить старые проекты, делать код читабельные, удобнее в использовании. Но это имеет смывсл только тогда когда продукт пользуется спросом.
Самое главное в программном проекте это его функциональность, удобство использования для конечного потребителя. Но никак не стройность программного кода. Больше скажу всем, кроме программистов, наплевать как он там построен внутри, на чем написал, протестирован ли. Если же он непонятный, или неудобный в использовании, или просто несет никому ненужный функционал, как бы красиво он написан не был, он отправится в мусорную корзину, и никто ничего в него вкладывать не будет.