Хороший, плохой, злой 1С-ник

14.01.20

Функциональные - Управление персоналом (HRM)

В этой статье хотелось бы поднять проблему отношения к программистам 1С. Нечасто люди могут отличить хорошего программиста от плохого. Для людей важно исполнение их хотелок в кратчайшие сроки. Но является ли это показателем качества? Как отличить хорошего от плохого программиста? А еще есть отдельная каста - злые. Это вообще как? Давайте немного подробнее разберемся в этих вопросах

Исходная задача

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

Итак заказчик ставит задачу: Добавить галочку "Согласовано" в документ поступление товаров.

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

Акт 1

Программист №1: Добавляет реквизит в документ и выносит эту галочку на форму. Тратит на это 30 мин.

Программист №2: Создает документ "Согласование" + табличную часть "Товары", делает регистр накоплений "Согласование" и описывает логику заполнения табличной части. Тратит на это 10 часов.

Заказчик: Думает, что №1 - очень хороший и очень быстрый и готов ему уже сейчас платить в 2-3 раза больше, чем №2. А этот долгий №2 еще и денег просит больше.

Акт №2 

Бухгалтерия закрывает период редактирования.

Программист №1: Находит тот код, который запрещает изменять документы в закрытом периоде, и переделает его так, чтобы можно было согласовать. Тут придется ему повозиться. Задача-то нетривиальная. И потратит 4 часа.

Программист №2: Ничего не делает

Заказчик: Думает, что №1 работает и хочет ему помочь, а №2 не желает помогать.

Акт №3

Проблема: Двое согласующих не хотят признавать, что это они согласовали, и валят друг на друга.

Программист №1: Добавляет реквизит "Согласовал" с типом "Справочник.Пользователи", который заполняется в его хитром алгоритме обхода закрытого периода. Тратит еще 1 час.

Программист №2: Еще а первом акте добавил реквизит "Ответственный" в свой документ и опять ничего не делает.

Заказчик: Думает, что №1 делает как удобно заказчику. Все просто и понятно и даже в списке документов можно видеть, согласовано или нет. А №2 сделал какого-то монстра и озадачивает понапрасну людей создавать еще документов.

Акт №4

Заказчик говорит: Хочу, чтобы люди, которые согласовывают, видели новые документы, которые им надо согласовать.

Программист №1: Делает обработку, форма которой раз в n секунд делает запрос по документам, у которых нет галки. Ну или ко всем документам, а потом в цикле сравнивает ТекущийПользователь и Согласовал. И обработка эта открывается ПриНачалеРаботыСистемы. Тратит на это 3 часа.

Программист №2: Делает отчет, который показывает остатки регистра накоплений из первого акта. Тратит на это 30 мин.

Заказчик: Думает, что №2 совсем не понимает, что нужно делать. А №1 молодец. Все просто и понятно.

Акт №5. Заключительный 

Проблема: Часть товаров может быть согласована, а часть нет.

Программист №1: Переносит реквизиты "Согласовано" и "Согласовал" в табличную часть, в списке документов обрабатывает событие "ПриВыводеСтроки", чтобы определить согласован документ целиком или нет, переделывает алгоритм обхода даты запрета, переделывает обработку, которая открывается "ПриНачалеРаботыСистемы". Тратит на это 6 часов.

Программист №2: Ничего не делает, потому что все готово было в первом акте.

Заказчик: Начинает понимать, что №2 все предусмотрел заранее. Но реальную работу он видит у №1. Поэтому со счетом 4:1 побеждает №1

Итого

Программист №1 тратит 14,5 часов.

Программист №2 тратит 10,5 часов

Заказчик получает, казалось бы, одинаковый результат, но с №1 ему работать выгоднее, т.к. он делает "красивее" и ставка у него ниже. И заказчик еще не знает, что доработки №1 будут добавлять 15 мин. к каждому следующему обновлению конфигурации. Заказчик еще не знает, что эти доработки приведут к серьезным проблемам производительности в будущем и к блокировкам, с которыми не сможет разобраться программист №1 и опять напишет кучу подобного. И вот после всей этой кучи доработанного заказчик начнет получать ответы от программиста №1 по типу "Мы не можем вести учет в разрезе двух складов, а если доработаем - вся компания может встать, т.к. предусмотреть все места, где написано

Если Склад.Наименование = "Склад №1" Тогда
....

НЕВОЗМОЖНО!"

Вот и получается, что в глазах заказчика программист №1 - хороший, а программист №2 - плохой, а по факту получается совсем иначе.

Технический долг

Это еще один интересный момент, который не видят заказчики/работодатели.

Если коротко - технический долг это непродуманное решение, которое может приводить к негативным последствиям (как в примере выше - галочка "Согласовано")

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

Представим ситуацию: Работало 2 программиста с низкой квалификацией, но им досталась типовая конфигурация, которую они дорабатывали на протяжении нескольких лет.

Потом на их место пришли программисты с высокой квалификацией и з/п им нужна в 2 раза больше.

50% своего времени напрямую или косвенно новые специалисты тратят на закрытие технического долга.

И тут работодатель опять попадает в эту ситуацию: Плачу больше, делают дольше.

Может получиться еще одно интересное развитие событий: с этими двумя расстанутся и возьмут опять с меньшими зарплатными ожиданиями и более низкой квалификации. Технического долга будет естественно меньше, да и не факт, что он их будет волновать. Сказали галочку - вот вам галочка. И руководство опять радо - опять видно работу программистов. А то, что в штате через несколько лет уже 10 плохих программистов, а не 2 хороших, работодателя не особо тревожит. Ведь люди работают, ставят галочки в отчетах. Все хорошо.

Злой программист

Какой он? Хороший или плохой? На самом деле он может быть как хорошим, так и плохим.

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

Увидел такой код:

Если ТекущаяДата() > Дата("20200101") Тогда
.....

 Поменял на Дата("20210101") и знает, что в следующем году он будет востребован.

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

Но писать хороший код они не хотят, потому что боятся падения своей ценности.

Конечно его можно заменить на хорошего программиста, но процесс этот долгий и проще оставить как есть.

Выводы

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

И даже то, что он делает долго и стоит дорого - не означает, что он хороший.

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

Как максимально точно определить, кто перед Вами на собеседовании? Попробуйте составить задачу из нескольких актов (как я описал выше) и обсудите с кандидатом каждый акт отдельно, не говоря ему о том, что впереди еще задачи. Будет ли он задавать вопросы или тупо делать - вот что важно! Хотя и это не панацея.

Хороший программист 1с-ник плохой

См. также

Типовые Управление персоналом (HRM) Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет Управленческий учет Платные (руб)

1С:Зарплата и управление персоналом 8 – программа для полной автоматизация учета и управления сотрудниками на предприятии. Базовая, КОРП и ПРОФ версии. Возвращаем до 25% бонусами! Заказывайте 1С:ЗУП в Инфостарте!

9100 руб.

17.02.2016    163806    525    6    

394

Управление персоналом (HRM) Бухгалтер Платформа 1С v8.3 1С:Зарплата и кадры бюджетного учреждения 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Набор актуальных на 2024 год форм бланков для ведения миграционного учёта по иностранным работникам в «1С:Зарплата и Управление Персоналом 8», «1С:Бухгалтерия 8», «1С:ERP 8», «1С:КА 8» и других конфигураций 1С.

116820 руб.

06.02.2012    126597    75    87    

140

Управление персоналом (HRM) Бухгалтер Пользователь Платформа 1С v8.3 Россия Бухгалтерский учет Управленческий учет Платные (руб)

1С-КАМИН: Зарплата. Решение предназначено для автоматизации расчета и начисления зарплаты, а также для ведения кадрового учета на предприятиях и в организациях любых форм собственности, кроме бюджетных учреждений. Продукт "1С-КАМИН: Зарплата для бюджетных учреждений. Версия 5.5" предназначен для автоматизации расчета и начисления заработной платы, а также для ведения кадрового учета в государственных и муниципальных организациях, в том числе в учреждениях образования, здравоохранения, а также в учреждениях, относящихся к вооруженным силам Российской Федерации, к органам МВД и МЧС.

4000 руб.

17.02.2016    40434    5    0    

5

Управление персоналом (HRM) Пользователь Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Абонемент ($m)

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

1 стартмани

16.07.2024    417    1    svbel85    0    

0

Управление персоналом (HRM) Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье мы рассмотрим сроки по выполнению адаптации, опрос по адаптации и ответственных за адаптацию в программе 1С: Персонал.

12.07.2024    771    Koder_Line    0    

1

Управление персоналом (HRM) Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Бесплатно (free)

В данной статье мы рассмотрим создание и оформление оргструктуры компании и штатное расписание в программе 1С: Персонал.

24.06.2024    947    Koder_Line    3    

0

Управление персоналом (HRM) Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Бесплатно (free)

В данной статье будет описано то, как именно вести организационную структуру предприятия внутри подсистемы «1С: Предприятие Персонал». Будет рассказано о том, какие разделы важны и для чего используются при оформлении и контроле оргструктуры компании внутри системы 1С.

19.06.2024    896    Koder_Line    0    

1

Управление персоналом (HRM) Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье будет описано то, как внутри системы «1С:Предприятие Персонал» можно проводить анкетирование и опросы сотрудников. А именно, будут разобраны все этапы: как готовить вопросы к таким тестированиям, как создавать и редактировать сами анкеты и передавать их опрашиваемым, а также то, как происходит анализ результатов и само тестирование.

23.04.2024    1141    Koder_Line    0    

1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user623969_dusa 14.01.20 09:37 Сейчас в теме
кто плохой то программист 1 или 2 что за неуважение к читателям - плохой автор
5. opx 694 14.01.20 09:53 Сейчас в теме
(1) В том-то и суть статьи. Для одних плохой, для других хороший. Но хорошо делает свою работу №2 по моему мнению
TreeDogNight; isaenkovspb; Sedaiko; +3 Ответить
14. DenisCh 14.01.20 10:18 Сейчас в теме
(5)
Но хорошо делает свою работу №2 по моему мнению

Premature optimisation is a root os a devil
zazaka; EliasShy; Andreeei; wowik; Summer_13; YanTsys; brr; +7 Ответить
67. mongolv 14.01.20 20:46 Сейчас в теме
Интересно, а мнение заказчика ни первого ни второго программиста не заинтересовало?)) Программист 3 раскрывает возможные последствия любого изменения конфигурации. Нельзя решать за заказчика.. Эволюцию секты френчей наблюдаю не первый десяток лет и не удивлюсь что в будущем будут называть "запрещенная в РФ секта 1С-ников"))) Почему большинство пытаются решить за заказчика? Надо вносить или нет изменения в конфигурацию? нужно обновление или нет? 1С-ка последнее время вообще на себя берет ответственность ведения учета.. не помощь, а именно указание как вести. Это так.. крик души: на конфигурации 1С Бухгалтерия 7.7 пользователь мог овладеть нюансами за месяц, максимум 2 с полного нуля, включая корректировки, расчет налогов и т.д. На платформе 8.3 я сегодня не знаю ни единого буха, кто бы мог работать без сертифицированного спеца как минимум, но лучше иметь под рукой программиста который читает код на наличие изменений и принципов расчета.
Как уже писал - крик души.
user_2010; TreeDogNight; VladC#; Rain88; UnderCIL; MaxTolya; +6 Ответить
69. opx 694 14.01.20 20:55 Сейчас в теме
(67) По моим ощущениям чем дальше идёт 1с, тем меньше нужны программисты и тем больше нужны консультанты. И это прекрасно! Наконец-то программисты будут спать по ночам и проводить свободное время с семьёй!
Тоже крик души ))
CheBurator; yaguarrr; mongolv; +3 Ответить
79. mongolv 15.01.20 10:23 Сейчас в теме
(69) Проблема в том, если размышлять глобально, что консультанты, в силу их профиля, не учитывают некоторые нюансы, что накапливается и потом заказчик начинает искать программиста.. Но проблема в том, что программист не умеет замораживать хотелки и перепрофилируется.. вот тут и будет смерть1-ски. В 2000 году программистов (кодить мог любой студент) было, предположим 100 человек, после 2008 (примерно, с массовым вводом 8.1) и изменением условий партнерки, их осталось 50, после ужесточения клиент-сервера (связано с невооброзимыми тормозами в программе, примерно в 2011 клиент на выставке взял брендовое железо.. бухгалтерия на нем тупила!) Осталось 25%. Скорость сравнима с 77? только при обработке больших объемов! для одного-трех пользователей 77 остается наиболее приемлемая по скорости и простоте... А это раб.места, низкая себестоимость и т.д.

Как там в Гарри Поттере? не надо поощрять прогресс ради прогресса))
107. BraunAlex 136 16.01.20 20:16 Сейчас в теме
(69)
По моим ощущениям чем дальше идёт 1с, тем меньше нужны программисты и тем больше нужны консультанты. И это прекрасно! Наконец-то программисты будут спать по ночам и проводить свободное время с семьёй!
Тоже крик души ))


Наше законодательство не оставит прогеров без работы. Ни первых, ни вторых
108. acanta 16.01.20 20:21 Сейчас в теме
(107) Это смотря что вы понимаете под словами остаться без работы.
145. user_2010 952 30.07.20 11:04 Сейчас в теме
(107) да и 1с не оставит без работы программистов - ведь 1с - это конструктор, который надо доработать по месту напильником :)
133. wolfsoft 2421 20.01.20 09:50 Сейчас в теме
(5) Молодо - зелено (с)

А теперь представьте ситуацию (90% вероятности), что кроме Акта №1 никаких других актов не было и не будет.

Итого.

Программист №1 потратил 30 минут. Всё удобно пользователям и работает.

Программист №2 потратил 10 часов 30 минут, сделал "монстра", из-за которого пользователям приходится тратить лишнее время, которое за годы выльется в приличные потери.

Ну и кто из них Дед Мороз? (с) :)
maksa2005; KRJ; Alien_job; Ashandy; Lusik; Award; user717947; +7 Ответить
143. SinChao 03.02.20 10:08 Сейчас в теме
(133)

Поддерживаю...

Начинать нужно с минимума.

Работаю с 1С 20 лет...
Работал в крупном франчайзи с должности внедренца до должности руководителя отдела (20 чел.)...

Ну и конечно же - общение с клиентом...
144. Alien_job 190 08.05.20 16:54 Сейчас в теме
(133) Дополню, что и галочка будет никому не нужна через неделю
2. VmvLer 14.01.20 09:40 Сейчас в теме
Программист 1 - сотрудник франча
Программист 2 - фикси

давайте раскроем все тайны
NeLenin; maksa2005; sogesti; by_1Cnik; _MavR_; yusupoff; Sergey_Borisovi4; hillsnake; zqzq; isaenkovspb; A1WEB; zuxelzz; leonidol; IllayDevel; Il; User_south; mrChOP93; +17 4 Ответить
7. opx 694 14.01.20 09:54 Сейчас в теме
(2) Может и такой расклад быть, но фикси или франч тоже не показатель
56. v3rter 14.01.20 15:56 Сейчас в теме
(2) Бывает и наоборот - админ подрабатывает программистом 1 и кодит (как умеет) мелкие срочняки, а сложные серьезные вещи отдает на откуп программистам №2 из франчайзи.
3. mar82 14.01.20 09:43 Сейчас в теме
имхо, статья достаточно бредовая.
Вероятность, что так все будет усложняться, довольно низкая.
Опять же "золотой" программист №2 в 95% случаев просто развел клиента на деньги за лишние 9,5 часов.
Award; tosky23; Andreeei; wowik; diamond_nsk; Gureev; mongolv; +7 2 Ответить
4. Hans 3 14.01.20 09:44 Сейчас в теме
У программиста 2 остается проблема с закрытием регистра. Первому программисту ничего делать не надо. Второму программисту что бы посмотреть что у него по документу согласовано, а что нет - надо запускать какой то отчет. Первому программисту ничего делать не надо, оно и так видно. То что второй программист сделал согласование отдельным документом - это а ля корректировка заказов в УТ 10.3, механизм малоудобный для пользователя.
KRJ; Award; zqzq; Andreeei; MaxTolya; yaguarrr; Gureev; mongolv; acanta; +9 2 Ответить
106. MaxTolya 17 16.01.20 17:02 Сейчас в теме
(4) Вот именно. Ситуация упрощена - одно дело ИП с одним складом и двумя кладовщиками и локальной базой, другое - большой холдинг или пусть мелкое, но производство. Иногда первый путь (неправильный) более приемлем, чем второй (правильный). Должен быть разумный компромисс и планирование на шаг вперед.
112. John_Galt 16.01.20 22:49 Сейчас в теме
(4) ИМХО. Смотря для каких пользователей. Корректировка в 10.3 намного более удобный механизм. Видно кто и что поменял, в большинстве случаев ещё и с комментариями (опять же зависит от пользователя). А сейчас разобраться "почему так" теперь выглядит заказ - целая история. Жизнь упростили только "деревянным" пользователям, всем остальным стало только хуже. ИМХО.
6. spectre1978 61 14.01.20 09:54 Сейчас в теме
На самом деле это достаточно серьезная проблема и для специалиста. Начинающие специалисты, которые пытаются работать по методике программиста №2, часто попадают в глупую ситуацию: пытаются задавать вопросы, что-то для себя выяснять, а им говорят - да че ты нам голову паришь, сделай галку и все, делов-то на полчаса. Соответственно таким образом люди, даже вполне себе фикси, со временем демотивируются работать правильно и эволюционируют из типа 2 в тип 1 или в тип 3, потому что так работать проще - меньше конфликтов в коллективе.
NeLenin; TreeDogNight; Lusik; by_1Cnik; DrAku1a; tosky23; Rain88; klinval; igee12; Drivingblind; Andreeei; leonidol; AlexandrN; IcyRider; FesenkoA; fancy; mongolv; Nenaviju1C; botokash; abadonna83; mrChOP93; opx; +22 Ответить
8. acanta 14.01.20 09:55 Сейчас в теме
Программист 1 и 2 одно и тоже лицо. Во втором случае это тот же клиент франчайзи спустя 10 лет совместной работы и 5 внедрений.
9. EliasShy 48 14.01.20 10:00 Сейчас в теме
Первый программист дал решение бизнесу за максимально короткий срок времени - бизнес начал получать деньги с этого решения.
Второй программист - инвестировал в будущее компании.

С учетом наших реалий и модели малого и среднего бизнеса - первый программист предпочтительнее.
Для корп структур - второй.
Kuzmin_A; Octopus; by_1Cnik; tosky23; igee12; manu; Andreeei; MaxTolya; wowik; ermek6; Gureev; t278; v3rter; +13 Ответить
10. Ганс 14.01.20 10:02 Сейчас в теме
Помнится давно, приходил ко мне на собеседование молодой человек, посадил его решать задачку, довольно не сложную, на задачу отводился час(уже не помню что там было, вроде как всегда, сделать пару документов поступление/продажа и отчётик к ним), задачу он сделать не успел, смотрел его что он там понаделал, насоздавал кучу справочников, единицы измерения, валюты, адреса, интерфейсы, да всё это правильно и пригодилось бы в дальнейшем(а возможно и нет), но по факту задачу до конца в отведённый срок он так и не сделал, так какой он? Хороший или плохой? он думает наперёд, надумывает вещи про которые в задаче нет ни слова, усложняя процесс, но нужно ли это заказчику?!
user717534; TreeDogNight; by_1Cnik; igee12; Drivingblind; Andreeei; wowik; Gureev; gubanoff; YanTsys; +10 Ответить
11. Hans 3 14.01.20 10:07 Сейчас в теме
(10) Ты чо мой ник взял?
hartman620; TreeDogNight; by_1Cnik; igee12; wowik; e9953; nvv1970; trickster; +8 Ответить
77. akadaemon 15.01.20 09:08 Сейчас в теме
(10), видимо этот программист не знаком с MVP
12. sulig 66 14.01.20 10:12 Сейчас в теме
По мне так оба программиста хреновые
Зачем было менять типовой объект, если этого можно избежать?
wowik; vladimirmatancev; Abris9; acanta; +4 Ответить
13. Hans 3 14.01.20 10:13 Сейчас в теме
(12) второй прог не меняет типовой объект.
igee12; MaxTolya; OksanaSub; FesenkoA; +4 Ответить
15. sulig 66 14.01.20 10:25 Сейчас в теме
(13) Согласен, был не прав.
Но создавать новый документ "Согласование", все же не самое изящное решение.
Подобные доработки превращают конфигурацию в франкенштейна, один программист прикрутил одно другой другое
у каждого свое видение свои амбиции
vladimirmatancev; t278; +2 Ответить
61. seevkik 8 14.01.20 17:07 Сейчас в теме
(13) только если конфа старая, сейчас для почти любого действия нужно что-то где-нибудь писать
Ну и вообще, статья бред, нужно было включить галку в настройках
ixijixi; igee12; +2 Ответить
16. el-gamberro 57 14.01.20 10:30 Сейчас в теме
Очень странный текст. В реальной жизни проводятся регулярные совещания и обсуждения программистов (или проектировщиков в более идеальном случае) с руководителями компании, начальников отделов. Как и чего делать, кто чего хочет. Очень многие классные вещи рождаются только через годы таких совещаний и обсуждений.
EleC0N9!; bocharovki; +2 Ответить
17. acanta 14.01.20 10:33 Сейчас в теме
(16) во франчайзи? С фрилансером по удаленке?
19. sulig 66 14.01.20 10:44 Сейчас в теме
(16)
В реальной жизни много с чем можно столкнуться. И учетом проделанной работы в строках кода и с призывом "даешь каждой организации свою базу" и с заболеваниями типа "бухгалтерия головного мозга"
Shevon; acanta; +2 Ответить
18. JIEX@ 104 14.01.20 10:38 Сейчас в теме
Просто в руководстве компании должны ставить задачи люди знакомые с предметной областью и имеющие знания о разработке, а еще лучше, которые могу оценить результат работы программиста.
20. user623969_dusa 14.01.20 10:52 Сейчас в теме
(18) если бы у бабушки был то она бы была дедушкой.. если бы в компании были люди знакомые с разработкой то зачем им программист.. типичная ситуация найма специалиста для выполнения работы, которую не пойми как делать главное, чтобы работало.. в нормальных компаниях программиста проверяют тестировщики но того как написан код никто не узнает, запроверяются
spectre1978; +1 Ответить
31. JIEX@ 104 14.01.20 13:06 Сейчас в теме
(20)Типичная отмазка - если бы у бабушки. Руководитель ставит задачу, а когда он не понимает о чем говорит, это плохо
33. acanta 14.01.20 13:11 Сейчас в теме
(31) руководитель считает что прыгать через 2 ступеньки на лестнице это плохо.
Строитель заказал лестницу с одной очень высокой ступенькой в конце и одной очень маленькой вначале. Поэтому когда Джокер танцует человек идет по лестнице, он либо должен смотреть под ноги либо считать ступеньки.
34. JIEX@ 104 14.01.20 13:19 Сейчас в теме
(33)Вы несет ахинею и проводите некорректные аналогии. В любой нормальной команде есть тимлид ака руководитель, который может определить программиста №1. Аминь.
113. Bassgood 1449 17.01.20 00:22 Сейчас в теме
(34) А если контора из 2-3 человек, там тоже тимлид обязателен или это уже ненормально? :)
TreeDogNight; +1 Ответить
21. Shevon 1 14.01.20 11:38 Сейчас в теме
Хорошая статья!
Только те, кто не сталкивался с результатами работы одного, а лучше нескольких "Программист №1", врядли это поймут..
23. acanta 14.01.20 11:41 Сейчас в теме
(21) программиста 2 никто даже не вспомнит.
22. muskul 14.01.20 11:38 Сейчас в теме
Да да, всем хорош программист номер 2 который умный, продуманный, думает на перед.
Как выше сказали все это рождает механизмы мало пригодные в реальной жизни. В стиле закрытия заказов отдельным документом или продажу подарочного сертификата. Или вот недавний пример. Номера ГТД испокон веков они были в карточке, пользователи их меняли, вывести в печ.форму особых проблем нет, против родного партионного монстра, и потом бац, убирают эти реквизиты с карточки.
А уж про то как второй тип переименовывают Поступление в Приобритение можно легенды складывать
qwinter; Andreeei; Ганс; trickster; +4 Ответить
24. VmvLer 14.01.20 12:01 Сейчас в теме
Пора раскрыть тему программиста 3 - злого.

думаю, он регулярно поколачивает и 1 и 2, а при разговоре с клиентами забрасывает ноги на стол или на плечи.
zqzq; acanta; +2 Ответить
25. capitan 2507 14.01.20 12:09 Сейчас в теме
Вспоминается...
Быстрее всех эволюционируют сантехники. Каждый приходящий сантехник на порядок умнее предыдущего.
Всегда звучит фраза: "Что за тупица вам это делал?!"


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

Программисты в этом плане ничуть не отличаются от Родиона Раскольникова или Сонечки Мармеладовой
Не поймите меня правильно
oboykova; wowik; _OLEG; vladimirmatancev; acanta; +5 Ответить
26. awk 744 14.01.20 12:10 Сейчас в теме
Что-то очень напоминает очередное нытье: "Я такой хороший, а она любит не меня, а Лешу"....
qwinter; _OLEG; gybson; vladimirmatancev; +4 Ответить
29. opx 694 14.01.20 12:21 Сейчас в теме
(26) Неплохая аллегория, но больше тут подходит что-то типа: "Вышла замуж за наркомана и неудачника, а теперь жалуется"
27. json 3349 14.01.20 12:16 Сейчас в теме
А почему программист 2 знал, что потребуется табличная часть для согласования товаров, а программист 1 - нет?
Ладно про дату запрета он мог догадаться, но про товары могло потребоваться, а могло и нет.
igee12; bocharovki; +2 Ответить
28. opx 694 14.01.20 12:18 Сейчас в теме
(27)
Конечно же, перед выполнением задачи все надо обсуждать и говорить заказчику, какие есть подводные камни и хочет ли он их избежать, но я специально пропускаю это, чтобы контраст был более очевиден
35. json 3349 14.01.20 13:24 Сейчас в теме
(28) непонятно какой вывод нужно сделать из этой цитаты?

Если, предположим, что я делаю вывод, что Программист 2 хорошо поговорил и расспросил заказчика, и выяснил у него все нюансы заранее, то КАК заказчик может быть недоволен? Ведь он в этом случае тоже понимает что схема сложная и данная доработка решает его задачи.
Недовольство заказчика в этом случае НЕПОНЯТНО
36. opx 694 14.01.20 13:27 Сейчас в теме
(35) Не было разговоров. Просто взял и сделал. И да. Это все потребовалось. Так пойдет?
39. json 3349 14.01.20 13:29 Сейчас в теме
(36) а тогда к чему приведена цитата в посте 28 ?
40. json 3349 14.01.20 13:32 Сейчас в теме
(36) получается что твой пост 28 противоречит твоему же посту 36.
_OLEG; YanTsys; +2 Ответить
94. opx 694 15.01.20 19:47 Сейчас в теме
(40) Хотел небольшую интригу. В 89 и 92 сообщении надеюсь ответил на Ваши вопросы
37. acanta 14.01.20 13:28 Сейчас в теме
(35) заказчик никогда не может быть доволен. Если он доволен значит он уже нашел программиста 4.
30. acanta 14.01.20 12:39 Сейчас в теме
(27) при сумме накладной от 100 тыщ и количестве строк в среднем 1.3 это странно.
99. Азверин 3 16.01.20 08:21 Сейчас в теме
(27) я с опытом уже частенько предугадываю такие вещи, как частичное согласование товаров.
беру за основу принцип, что надо "переспать с задачей".
всё взвесил и вперёд.
32. pm74 203 14.01.20 13:06 Сейчас в теме
очередной холиварчик подъехал
38. KapasMordorov 428 14.01.20 13:29 Сейчас в теме
Ерунда какая-то.
Программист №2, как обычно, роли не сделал для добавленных документа и регистра.
Поэтому должен быть еще и третий.
NeLenin; zqzq; Kolobash; ktb; zuxelzz; _OLEG; Anchoret; Hans; vladimirmatancev; YanTsys; Ганс; v3rter; acanta; +13 Ответить
41. TODD22 19 14.01.20 13:40 Сейчас в теме
Автор наверное хотел сказать что он Дартаньян, а все кто до него были рукожопы, обычное дело для 1сника поливать говном коллег работавших до тебя. Кто то придёт на смену автору и то же будет говорить что наняли какого то бездаря.
Даже видя откровенный трэш в коде никогда не говорю что до меня работал "рукожоп". Можно всегда сказать "он здесь немного ошибся, сейчас попробую поправить".
TreeDogNight; 1C-Nic; DrAku1a; zqzq; 1c_support_eip; manu; _OLEG; leonidol; Азверин; IcyRider; Hans; user1274438; vladimirmatancev; embarcadero; YanTsys; +15 1 Ответить
42. opx 694 14.01.20 14:25 Сейчас в теме
(41) где Вы увидели слова, которые говорят к какому из программистов я отношусь?
А где слова "рукожоп"?
43. Liogon 8 14.01.20 14:26 Сейчас в теме
Автор этап обсуждения задачи опускает совершенно зря. Хорошему программисту важен контекст. В зависимости от этого он пойдёт по пути одного из программистов. Сам стараюсь делать задел на будущее, но только если от заказчика получен явный сигнал, что развитие системы пойдёт именно в том русле. Проблема в том, что заказчик редко сам до конца понимает чего именно он хочет. Или знает, но спустя месяц ситуация меняется и хорошо продуманная стабильная архитектура перестаёт удовлетворять требованиям. И тогда приходится делать НеважноКакойКостыльЛишьБыРаботалещёВчера. В такой ситуации хороший код написать на порядки труднее. Является плохим программист, который дал бизнесу нужный инструмент за максимально короткий срок, но при этом породил ужасный код?
NeLenin; _Lilka; embarcadero; VladimirMelnychenko; +4 Ответить
45. opx 694 14.01.20 14:32 Сейчас в теме
(43) Ужасный код = технический долг. Кто-то его будет закрывать и материться.
48. Liogon 8 14.01.20 14:44 Сейчас в теме
(45) Да будет.
Но это только когда заказчика перестанет устраивать работа этого ужасного кода. Когда это случится и случится ли вообще вопрос на самом деле открытый. Ни в коем случае не призываю говнокодить. Но не надо забывать, что:

Работающий Инстурмент <> Хороший Код.

Платят, как правило, за первое, но коллеги оценивают по второму. Что хуже сам себя оцениваешь по второму.
50. opx 694 14.01.20 14:58 Сейчас в теме
(48) Про то и статья. Видят работу первых, платят за нее. Потом не видят работу вторых. Хотя работа вторых несет меньше издержек в будущем
51. Liogon 8 14.01.20 15:10 Сейчас в теме
(50) Проблема будущего в том, что оно неопределено. Посчитать будущие издержки достаточно тяжело. Они могут оказаться и нулевыми, если от фичи будет решено отказаться или большими если решат её развивать. Какое будет принято решение в будущем на момент начала разработки достоверно неизвестно. Есть вероятности скорее да и скорее нет. И в случае скорее нет для бизнеса вариант первого программиста более выгоден. А кто платит тот и заказывает музыку.
52. opx 694 14.01.20 15:15 Сейчас в теме
(51) Вы просто не встречали еще баз, в которых плохо все, но отказаться от нее нельзя. А еще руководству надо объяснять почему до тебя все решалось за день-два, а ты говоришь, что тебе нужен месяц или день-два и будет еще больше блокировок транзакций
_MavR_; zuxelzz; AlexandrN; +3 1 Ответить
54. VmvLer 14.01.20 15:41 Сейчас в теме
(52) да тут одна школота сидит все что они встречали... это рассвет когда мамка собирает ранец.

В ступать в диступ с руководством а ля "да тут до меня такого навояли" - это в глазах руководства "гнать порожняк".

Или вы спокойно и тихо исправляете ситуацию к лучшему или выход там >...

Минута руководителя стоит очень дорого и если он будет вынужден слушать
нытье "гения 1С", то терпение будет не долгим.
dodlez77; Hans; _Lilka; abadonna83; Liogon; +5 Ответить
44. profiprog1c 250 14.01.20 14:29 Сейчас в теме
Статья очень мутная. Из статьи понятно, что автор и есть программист №2. Но при этом статью автор пытается изложить так, как будто он весь такой "хороший и правильный", а программист №1 такой себе неумеха. Правда в том, что каждый будет хвалить свою работу. Если бы эту статью писал программист №1 оказалось бы что программист №2 так себе. Потому тут важна коммуникация с заказчиком, ведь он платит деньги за результат, а не за какие-то предвидения и прочую лабуду, которую считает "важной" программист №2.
47. opx 694 14.01.20 14:43 Сейчас в теме
(44) Программист №2 обновляет нетиповые конфигурации, занимается оптимизацией 1С, знает что такое конфликт блокировок транзакций и как с ними бороться.
Вот исходя из этого и принимает решения как писать, а как нет.
А программист №1 знает как угодить прям сейчас и не думает о том, что будет с базой завтра. Он работает - получает денежки - прощайте.
53. profiprog1c 250 14.01.20 15:40 Сейчас в теме
(47) Заказчику наплевать на блокировки, типовая или нетиповая конфигурация, заказчику важен результат. Вы можете писать красивый код, радоваться этому, только никому кроме вас эта "красивость" не нужна. Более того, глядя на коды современных типовых конфигураций давно видно, что от красивости ушли к запутанности и сложности даже разработчики типовых конфигураций. А все потому, что пишут они "красивый" код. Поэтому еще раз, умейте общаться с заказчиком, вы должны услышать что он хочет получить за свои деньги, которые платит. Так работает бизнес.
Award; amd1986; pm74; +3 Ответить
55. opx 694 14.01.20 15:48 Сейчас в теме
(53) Прям так и плевать на блокировки? Интересный подход. Т.е. менеджеры воют и носятся по офису от того, что не могут продать, а руководству плевать.
57. profiprog1c 250 14.01.20 16:09 Сейчас в теме
(55) Где в вашем первоначальном рассказе есть менеджеры? Где в вашей статье есть что-то о блокировках. Если вам просто хочется языком почесать, тогда пишите про сферических коней в вакууме сферических менеджеров в вакууме, которые где-то бегают
58. opx 694 14.01.20 16:15 Сейчас в теме
(57) Ну так Вы говорите, что руководству плевать, а я думаю иначе.
1. Первоначальный рассказ о подходах к программированию.
2. Вы говорите - неважно какой подход - руководству плевать
3. Я говорю - важно, потому что... И обосновываю свою позицию.
Вы следите за ходом дискуссии?
59. profiprog1c 250 14.01.20 16:19 Сейчас в теме
(58) Да, об этом я и пишу, что руководству плевать. Например, в вашем рассказе именно программист №1 делает все верно. Он делает ровно то, что у него заказывают. Кроме того, менеджеры бегают по офису только у криворуких программистов. Из вашего рассказа также становится очевидно, что криворуким является программист №2. Думаю ответил на все ваши вопросы)
134. user604727 20.01.20 10:08 Сейчас в теме
(55) Один премьер-министр говорит: надо принять горькую пилюлю в виде повышения пенсионного возраста. Да, 80% из вас до него не доживет, но есть шанс, что финансовая система стабилизируется и ваши дети, а может внуки смогут получать достойную пенсию. Но не факт. Второй говорит - отменить на фиг эту антинародную реформу, а деньги взять за счет продажи ресурсов, отобрав часть сверхприбыли у олигархов. Какой премьер хороший, какой плохой или злой?
115. bugagashenka 203 17.01.20 06:16 Сейчас в теме
(47) можно поинтересоваться, в какой момент должны появиться конфликты блокировок?
А у второго программиста архитектура как то не очень. ДЛя чего создавать дубли таблиц? Для того, чтобы программист мог в запросе написать ИЗ РегистрНакопления.Скгласования.Остатки(&,&...) ?
А еще ему надо придумать, чем закрывать тогда этот регистр. Если тем же документом согласование, то зачем вообще регистр?
И кстати, у второго программиста удастся протолкнуть идею с документом только в том случае, если в компании не разведено бюрократии, и то, там давно внедрен документооборот. В противном случае второй программист просто будет на каждый документ красть минут по 10 времени другого специалиста. Я не говорю, что у первого программиста идеальный механизм, но на первом этапе задача стояла именно про согласование документа. И, если бизнес не успевает отверять доки в разрешенный период, значит надо а) помочь ему ускорить это б) предложить изменения в бизнес-процессе.
118. opx 694 17.01.20 08:29 Сейчас в теме
(115) Блокировки - имелось в виду не как последствия конкретно этой задачи, а как последствия такого подхода. Лично я сталкивался с таким подходом в двух компаниях и в обоих боролся с блокировками, которые являлись прямым следствием подхода программиста №1.
Дублей нет. Приход делаем поступлением, расход согласованием. Остаток - то, что не согласовано. Кстати да. Программист №1 любит работать с таблицами документов в запросе. Конечно он слышал про остатки, но заказчик же не просит регистр - значит надо без регистра все делать ))
Красть 10 минут не придется. Тут вариантов много, но все сводятся к тому, что заполнять надо остатками.
119. acanta 17.01.20 08:37 Сейчас в теме
Программист 1 любит работать с таблицами документов в запросе потому что в справке к 1с не прочитал как выполнить добавление еще одного регистра без перепроведения всей базы за н-цать лет.
Программист 2 обычно пишет в коде что с 3 марта 11 часов 34 минут и 47 секунд появляется регистр и все что до него берет по таблицам документов, а после по регистру.
123. bugagashenka 203 17.01.20 10:18 Сейчас в теме
(119) Чем работа с таблицами документа принципиально отличается от работы с таблицами регистра?

(119)
Программист 2 обычно пишет в коде что с 3 марта 11 часов 34 минут и 47 секунд появляется регистр и все что до него берет по таблицам документов, а после по регистру.

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

В данном случае ТС описал два подхода, первый быстрый и, в принципе правильный с точки зрения спринтов - быстро сделать и внедрить, допиливать после.
Второй программист делает с учетом избыточности, а вдруг пригодится. Но все могло закончится на галке. И бизнес получил в работу механизм уже вчера и начал получать прибыль, а во втором варианте эдакий зануда гундит, что надо правильно все, по канонам, с регистрами обязательно, чтоб раздуть базу.
Приведу пример. Пусть таблица табличной части прирастает по 10Гб в месяц. Программист номер два говорит, что теперь 7 из них будут кочевать в новый документ, и эти же 7 Гб еще и в регистр и столько же в таблицу итогов, пока они не рассчитаются. Верно посчитал? В итоге прирост базы на одной мелочевке составил 10Гб документ + 21Гб против 10Гб. В три раза раздул. Может я ошибаюсь? Вроде нет, каждую строку документа надо перенести в док согласование, в регистр и рассчитать остатки.
122. bugagashenka 203 17.01.20 10:07 Сейчас в теме
(118) можно про подобный подход пояснить, чем галка в документе вызывает дополнительную блокировку?
Дубли есть. Смотрите:
Док ПостаплениеТЧ
Номенклтаура...
ТЧ ДокСогласование
Номенклатура Согласован Ответственный Количество(?)
ТЧ РНСОгласование
Номенклатура Согласован Ответственный Количество(?)

Вам не кажется, что колонки одинаковые?

И в принципе, бизнес-процесс очень кривой, что за согласование построчно?

Чем работа с таблицами документа принципиально отличается от работы с таблицами регистра? Ну, если не имеется ввиду сдача на специалиста по платформе.

И что делать, если строку документа никто не согласует? Ее надо удалить? Почему тогда весь документ нельзя таким образом согласовать, а не городить?
Или что делать, если из 10 штук согласовали только 8. Тогда что? И почему согласуется поступление, а не заказ? А если для бухгалтерии, то логичнее было бы сделать ТЧ расхождений. Если для ордерной схемы документ ордер.
124. qwinter 683 17.01.20 11:22 Сейчас в теме
(122) Смотря как сделать галку)

И что делать, если строку документа никто не согласует? Ее надо удалить?
Галка "отменено" есть практически во всех документах сейчас)
127. bugagashenka 203 17.01.20 11:50 Сейчас в теме
(124) не, я не спорю, что это правильный подход, тем более, что в типовых делается так же.
Просто ТС предлагает вместо такого простого и прозрачного механизма использовать еще один документ с регистром, который полностью повторит этот документ. И даже какие то блокировки указал, которые хоть убей, но не могу придумать, какие будут при этом.
128. qwinter 683 17.01.20 12:40 Сейчас в теме
(127) отдельный документ это конечно маразм))) Описал свое видение в (126)
46. VmvLer 14.01.20 14:38 Сейчас в теме
Когда тема себя исчерпала - начинают буцать автора, забава так се.

уже рябит от ваших три, два, расов!
49. bazafaka 14.01.20 14:55 Сейчас в теме
Не вижу никакой проблемы если сначала оценить скиллы лпра со стороны Заказчика. Если хочет галочки - делать галочки. Если хочет поставить процесс правильно - помогать ставить процесс правильно. Со вторыми, которые понимают причинно следственные связи между своими хотелками и их последствиями, можно работать долго. С первыми надо вовремя сделать ноги)
acanta; opx; Liogon; +3 Ответить
60. VmvLer 14.01.20 16:59 Сейчас в теме
через пару лет все будет ровно - кодить станут автокубы, т.е. самообучающиеся алгоритмы на ку-битных ЯП.

так что, ваша болтовня просто белый шум криоданных в исполнении млекопитающих.
63. mkalimulin 1230 14.01.20 18:30 Сейчас в теме
(60) Алгоритм не может создать алгоритм.
62. mkalimulin 1230 14.01.20 18:29 Сейчас в теме
Доведем ваши рассуждения до логического завершения.
Идеальный программист - это тот, кто появляется один раз, сразу все делает и больше вы его никогда не видите и дополнительных денег не платите.
(Безупречный программист - не появляется вовсе.)
Беда только в том, что так мы экономику не поднимем, а только опустим )))
64. opx 694 14.01.20 18:42 Сейчас в теме
(62) Странно, что такой вывод у вас получился. Тут вообще все комментаторы довели до логического завершения и у всех разные мысли.
Одни поняли, что я Дартаньян, другие - что я их обманул, третьи - что можно кодить как хочешь, если умеешь быстро бегать ))

А я хотел вот что донести:
Бывают разные подходы к решению задач. И если заказчик считает что кто-то сделал хорошо - просто прошло слишком мало времени для качественной оценки.
А если считает, что кто-то делает плохо и/или медленно - может стоит ещё раз подумать.
65. rusmil 262 14.01.20 18:42 Сейчас в теме
Как то был я в роли умного Программиста 2 и заказчик мне сказал: "Я эти дополнительные фишки не заказывал и оплачивать их не буду".
Donpager; Ганс; karpik666; +3 Ответить
66. opx 694 14.01.20 18:44 Сейчас в теме
(65) Некоторые программисты могут писать код до тех пор пока его не отберёт заказчик ))
user1293011; acanta; +2 Ответить
111. check2 379 16.01.20 22:18 Сейчас в теме
(65) А что ж Вы его не предупредили то? Надо было согласовать фичи... А так он прав, Вы сделали работу, которую он не просил, но заметьте, что он не потребовал её убрать, с его стороны было бы честным сказать убирайте всю отсебятину. А он за глаза скажет Вам спасибо! :)
68. genayo 14.01.20 20:54 Сейчас в теме
С точки зрения бизнеса, правильно - максимально быстро выкатить работающее решение, а потом неспешно доводить его до ума. Но тут возникают различные нюансы...
70. opx 694 14.01.20 21:01 Сейчас в теме
90. genayo 15.01.20 19:34 Сейчас в теме
(70) Тут как - каждый додумывает в меру своего жизненного опыта...
116. bugagashenka 203 17.01.20 06:22 Сейчас в теме
(70)в современных реалиях выигрывает тот, кто быстро выкатит покупателю лучший сервис за меньшие деньги. И поэтому сама 1С выкатывает каждый месяц по платформе, закрывая тысячу багов. Правда и новых подсаживая.
Но факт остается фактом, на примере 1С можно проследить, как 1С сожрала всех конкурентов на рынке СНГ, SAP, Ax, Парус, Галактика остались не у дел и не могут похвастаться таким ростом. А тем временем с момента моего старта в профессии(2013 8.2.14) до текущего времени изменений в платформе столько, что это два абсолютно разных по возможностям продукта.
117. acanta 17.01.20 07:02 Сейчас в теме
парус и галактика оставили бы без работы наших законодателей, а они очень любят свою работу.
Больше чем программисты 1с любят дорабатывать бп и зуп.
71. acanta 14.01.20 23:33 Сейчас в теме
Это грустная история о первой и второй линии тех.поддержки со счастливым концом.
72. AlexanderP 42 15.01.20 00:29 Сейчас в теме
Прочитал я статью и не понял, кому она адресована. Начинающим разработчикам, чтобы они встали на путь истинный? Потому что заказчик большую часть не поймет, а специалист с опытом вряд ли что-то почерпнет.
Примеры с элементами "притянутости", в целом - попытка затронуть очень обширный дискуссионный вопрос.
Так что за суть минус, за создание темы с бурным обсуждением - плюс
73. hardstep 15.01.20 01:31 Сейчас в теме
автор не посчитал разницу трудозатрат на освоение и пользование решениями от первого и второго программера. судя по описанию, решение первого более юзер-френдли и начальник-френдли. автоматизация ради автоматизации.
как и этот сайт на мобиле с полем камента посреди большой вертикальной прокруткой, да и еще с лагами.
и даже, если принять на веру, что решение второго лучше со всех сторон, то эту статью прочтут программеры , которые хотят быть "хорошими", но их , как непризнанных гениев не понимают. они отсылают главбуха(или иного принимающего решение) прочесть какую-то статью на инфостарте. ха) да после такого эти лучшие и придут писать не код, а подобные крики души, что опять "не оценили очевидную крутость решение"
Оставьте свое сообщение