Хабр — ума палата



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

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

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

    А что делать, если разработчиков в компании раз-два и обчелся, либо их опыта недостаточно для экспертной оценки предлагаемого решения? Или у них просто отсутствует время или желание вникать в чужие трудности?

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

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

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

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

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

    Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

    Как вам такой вариант проработки сложных вопросов?

    • 13,8%Мне ревью ненужно4
    • 0,0%Я уже давно так делаю0
    • 37,9%Прикольно, нужно будет попробовать!11
    • 48,3%Хабр еще и не то может!14

    Комментарии 30

      +1

      Основная проблема — это как описать весь контекст проблемы (да еще и не нарушив NDA).


      Это не говоря о том, что не у всех участников дискуссии (в смысле — сотрудников компании) обязательно есть равные возможности на Хабре.

        –1
        Но вас же никто не заставляет раскрывать подробности? Да и вряд ли вы рассчитываете, что опубликовав большой объем материала, вы получите адекватный отклик.

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

        А сотрудники компании на сайте и ненужны. Тут вся прелесть в читателях НЕ сотрудниках компании.
          +3
          Но вас же никто не заставляет раскрывать подробности?

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


          на выдуманном примере, может оказаться очень кстати.

          Вот только нюансы обычно возникают в реальной жизни, а не в выдуманных примерах. А в выдуманных примерах все хорошо.


          А сотрудники компании на сайте и ненужны. Тут вся прелесть в читателях НЕ сотрудниках компании.

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

            –1
            Вот только нюансы обычно возникают в реальной жизни, а не в выдуманных примерах.
            Мне тоже нравится анекдот про нюанс.

            А если по теме, то всегда сложно соблюдать баланс и тут все зависит от автора. К тому же, никто не запрещает делать это в форме блога компании. Мало того, что будет формальный одобрямс при публикации, так еще и плюшек насыпят от отдела маркетинга.
              +2
              К тому же, никто не запрещает делать это в форме блога компании.

              Юротдел запрещает, угу.

                +1
                А если по теме, то всегда сложно соблюдать баланс и тут все зависит от автора. К тому же, никто не запрещает делать это в форме блога компании. Мало того, что будет формальный одобрямс при публикации, так еще и плюшек насыпят от отдела маркетинга.

                Вместо одобрямса (которого с большой вероятностью не будет) могут насыпать от безопасников. И не совсем плюшек.
                  0
                  Если публиковать информацию под NDA, конечно прилетит плюха, а не плюшка :-)
                  Вот только почему то вы ищете проблемы там, где их нет. Если вам запрещают публиковаться на Хабре — не пишите.
                  Просто я исхожу из предположения, что материал для обсуждения архитектуры все равно нужно готовить, а делать из него статью или презентацию для внутреннего пользования, это уже на ваше усмотрение.
                  Если можешь не писать – не пиши!


          0
          путем публичного обсуждения, можно получить замечательную обратную связь

          Главное условие получить положительный отклик:
          Чтобы правильно задать вопрос, нужно знать большую часть ответа. (Роберт Шекли. Верный вопрос.)

            0
            Конечно! Ведь идея состоит не в том, что бы задать вопрос, а в том, чтобы получить обратную связь на уже проработанное решение.
            +6
            Вы получите массу противоречивых советов. И массу не релевантной информации.
            Если у Вас цель — собрать информацию (например, о каких аспектах Вы не подумали) — это может быть эффективным.
            Если цель — получить нормальное ревью — вряд ли.
              +3
              Вы получите массу противоречивых советов

              … а по пути ещё и друг другу карму сольют.

                0
                Вы получите массу противоречивых советов.
                И что самое главное, какое бы решение и советы вы не получили в процессе обсуждения статьи, вас никто не заставляет им следовать! :-)
                0
                • Автор не мог сделать более серьёзное голосование, без "ответов с подвохом"?
                • Похоже, что автор не слышал про сайты типа https://codereview.stackexchange.com/, где сообщество более подходящее, для того, чтобы оценить не только код, но и архитектуру.
                • Как вообще автор себе представляет передачу пакета документации на крупную систему (ещё и обычно защищённую NDA) людям "где-то в Интернете" для того, чтобы они бесплатно и качественно что-то оценивали?
                  0
                  • Предложите свой вариант вопросов для голосования.
                  • Про stackexchange.com знаю и даже пользуюсь. Но там больше низкоуровневые вопросы, связанные с разработкой, да и писать сперва приходится на родном языке. Зачем еще с переводом заморачиваться?
                  • Вы видели хоть одну статью на Хабре в объеме «пакета документации»?

                    0
                    • Без кричащих заголовков "Это ненужно! У меня ошибок не бывает!". Ошибки бывают. Но это не нужно, а причины другие.
                    • "Зачем еще с переводом заморачиваться?" — наверное, чтобы увеличить размер аудитории? Аналогично: зачем с искусственными примерами заморачиваться?
                    • Именно, что если такие статьи и есть, их мало, архитектура же (с требованиями, кстати) будет из себя представлять именно пакет документов.
                      0
                      Хоть это и не заголовок, но все равно исправил на «Мне ревью ненужно».
                      С искуственными примерами можно заморочиться, что бы не раскрывать информация под NDA или для упрощения описания, чтобы уложиться в рамки одной статьи. Кстати, это ответе и на третий пункт.

                        0
                        исправил на «Мне ревью ненужно»

                        Так конечно лучше.
                        Но вообще я имел ввиду, что:


                        • Причины, из-за которых "ревью не нужно" бывают разными.
                        • Мне ревью нужно, однако я не хочу его делать именно здесь по определённым причинам.
                        • Есть три пункта "за", и всего-лишь один "против", хотя серьёзные опросы пытаются обычно делать более ли менее симметричными (чтобы предрасположенность автора к определённой группе ответов не влияла на опрашиваемого).

                        С искуственными примерами можно заморочиться

                        Что уже для многих (на что вам указали в комментариях) является одной из причин не делать ревью вне рамок компании, но это не означает, что нужно от ревью отказаться.

                          –1
                          Судя по всему, вы зациклились на том, что вам это не нужно именно здесь на Хабре, т.к. это делаете внутри компании, но я писал не про ваш вариант, что и отвечал комментаторам выше. Если вас все устраивает в рамках уже существующих процессов, вам не нужны никакие статьи на Хабре.

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

                            –1

                            В рамках компании меня тоже может не устраивать ревью, но это не значит, что если я не хочу проводить его здесь, должен быть только пункт в опросе "У меня не бывает ошибок, не нужно никакое ревью", вместо нескольких пунктов, включающих "Ревью нужно, только проводить его требуется на специализированном ресурсе".
                            И я не зациклился, а пытался вам показать, что ваш опрос не полон и не вполне отвечает требованиям для качественных опросов.
                            Но вы, похоже, с двух раз этого не поняли, так что я сомневаюсь, что и с третьего поймёте.
                            А "такие подробности" (какие?) вам не интересны потому, что статья видимо, не для того написана, чтобы обрисовать и решить проблему, а как неудачная попытка, чтобы потешить чьё-то самолюбие и насобирать "плюсов".
                            На этом разговор окончен, до свидания.

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

                              А сама статья была нужна для того, что бы поделиться данным инсайтом.
                  +1

                  Вы же наверняка в курсе известного высказывания Лао-цзы "знающий не говорит, а говорящий не знает"?

                    0
                    А еще я знаю, что «и на старуху бывает проруха», поэтому в критичных случаях лучше подстраховаться. И ни капельки не жалею habr.com/ru/post/536286
                      0

                      Именно по-этому Лао-цзы в разделе философии, а Лаплас и Ферми — в учебниках по физике. Хотя, наверное, Лао-цзы всё знал и ничего не говорил. Так и помер со своим знанием.

                      +2

                      Если вы возьмёте свою бизнес-задачу и сумеете её свести к minimal viable case (как на stackoverflow), есть значительная вероятность, что уже в процессе попытки обобщить задачу на вас обрушится шквал откровений. Очень полезно, очень сложно, и потребует невероятных усилий и концентрации.


                      У меня в черновиках в куче мест (хабр, медиум и т.д.) лежат десятками казалось бы умные и поучительные статьи, в процессе написания которых я понимал, что БЛИИИИН, ВСЁ НЕ ТАК, и статья так и оставлялась в черновиках, зато у меня появлялся большой инсайт по вопросу.


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

                        0
                        А почему вы решили, что целью является «публикация на Хабре»?
                        Цель, проверить решение, либо попытаться его найти (выбрать одно из нескольких вариантов), а статья — только способ её достижения.
                        И если в процессе подготовки материала вы уже пришли к однозначному выбору, то в публикации на Хабре уже нет большого смысла.
                          0

                          А почему вы решили, что я решил, что целью является публикация на Хабре?


                          Я говорю, что в процессе подготовки обобщённого текста (который могут другие понять) часто приходят инсайты, которые в контексте решения конкретной задачи не видишь.

                            0
                            Я сложил два абзаца «в процессе написания которых я понимал, что БЛИИИИН, ВСЁ НЕ ТАК, и статья так и оставлялась в черновиках»… и «Однако, первое, что вы получите на хабре»…
                            Если вы уже получили ответ на свою проблему, то и публиковаться ненужно. Тогда «и шаткую позицию» отстаивать не придется.
                        +2

                        Q&A сайт у хабра же есть, там это наверное более уместно.


                        Можно сделать чеклист по которому надо свои вопросы составить, для тех не очень в курсе. Это будет полезно.


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

                          0
                          Не согласен. Q&A предполагает общение вопрос-ответ, причем довольно краткий, а для анализа решения требуется дискуссия.

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

                          Мне кажется, что Хабро статья — самое оно.
                          –1
                          Где варианты «Хабру это не нужно», «Хабр для этого не нужен» и «Хабр не может знать лучше вас что там у вас внутри компании творится»?

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое