О пользе классического образования

0. AnatolPopov 120 28.01.21 17:00 Сейчас в теме
Что является источником знаний для программиста 1С? На что он опирается, решая задачу? Что подразумевается под профессионализмом при программировании в 1С?

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. NorraSaltolinen 28.01.21 19:18 Сейчас в теме
"в устройстве автомобиля нет ничего нового. я читал об этом в учебниках физики еще в 7 классе. а колесо так вообще придумали неизвестно когда. Подумаешь, я пдд не читал, зачем? Сориентируюсь, разберусь по ходу. Да и без прав можно ездить, при желании"
Terve!R; bulpi; +2 Ответить
3. AnatolPopov 120 29.01.21 01:04 Сейчас в теме
(1) Вы будете смеяться, но именно такой логикой руководствуются программисты, перешедшие от школьного учебника информатики к курсу 1С для начинающих. Они точно так же не подозревают о существовании быстрой сортировки или хэш-функций, как описанный вами водитель - о блокировке дифференциала, например.
15. vakham 15 01.02.21 15:42 Сейчас в теме
(3) До сих пор не знаю быстрой сортировки и вообще забыл математику класса>7.

Но... Например, однажды отвалилась у моей Калинки задняя передача.
"Когда вы приезжаете в автосервис, вы пишете ТЗ?" (с) где-то на infostart-е было
Загуглил, но решил, что пусть починять профессионалы сертифицированные. Мне выкатили ценник в 1,5 рубля за работу+запчаси.
- Да вы ухуели! Да там два провода наверняка отвалились!
- Как хотите.
Я тут же у автосервиса вставил скрепку кудать надоть, и спокойно доехал до работы, где припаял 2 провода.
Такая же херь с любой задачей по 1С. Обращаешься к франчам, обвешанным сертификатами - посылают к "специалисту, поддерживающему систему".

p.s. Специалист подобен флюсу: полнота его односторонняя. (с) хер с горы какой-то
з.ю. Истина в том, что специалистов не существует. (с)братья сёстры Вачовски
8. AnatolPopov 120 30.01.21 04:37 Сейчас в теме
(1) Нашел удачную аналогию в мире автомобилей тому, что можно не знать элементарных вещей, пока они не понадобятся.
Вот, например, я ни разу не ездил по платным дорогам. И вроде как не собираюсь в ближайшее время. Поэтому я понятия не имею, как платить за проезд. И нет у меня... э-э-э... такой штучки... с длинным названием. Чтоб сама деньги отдавала. И что? Моё водительское мастерство от этого упало ниже плинтуса?
Нет, просто когда понадобится проехать по платной дороге, я выясню, как это делается. И, возможно, штучкой обзаведусь. Заодно название выучу. Как миллионы водителей до меня. А пока мне достаточно знать, что где-то в природе что-то такое существует.
2. par_62 28.01.21 19:37 Сейчас в теме
Согласен. Но как и в любой деятельности, есть просто исполнители,есть думающие , а есть гении. Не всем дано вкусить от древа познания.
По моему самое противное в деятельности программистов 1с - непонимание того что происходит за кулисами кода 1с. А разработчики платформы не всегда внятно объясняют в документации именно эти вопросы.
Здесь приведено сравнение с автомобилем, ну так это не так. Можно не обслуживать колесо месяц или год, но именно в дороге через пару лет оно сломается. А можно вовремя смазать деталь и не забивать болт молотком.
AnatolPopov; +1 Ответить
4. AnatolPopov 120 29.01.21 01:18 Сейчас в теме
(2) Я бы уточнил: непонимание того что происходит за кулисами самой фирмы 1С. Меня не покидает ощущение, что разные команды разработчиков не только не общаются между собой, но и по-разному представляют, что и как надо делать. Начиная с того, что в самой платформе к разным типам файлов применяется совершенно разный подход, и заканчивая тем, что в типовой конфигурации разработчики забивают на БСП и тут же реализуют собственный вариант.
igee12; vakham; bulpi; serega_sw; +4 Ответить
5. par_62 29.01.21 05:51 Сейчас в теме
6. serega_sw 29.01.21 08:06 Сейчас в теме
(4) Просто кто-то забил на документирование БСП. Так же как любая типовая имеет много своих плюшек которые тоже кто-то забыл документировать.
Сколько сейчас людей умеет копаться в чужом коде? Проще забить, включить эффект сантехника и изобрести велосипед.

Разработчикам 1С спасибо за это. 1С - программисты никогда не останутся без работы. Это как похоронное бюро.
Да и на любую типовую конфигурацию, найдется пользователь который не понимая как работает конфигурация, скажет нам нужен программист, потому как 1С неправильно цифры считает и непонятный отчет выдает, да и лень вообще разбираться с 1С, пусть в этом разберется программист. И тут появится программист который сам не знает как работает 1С и начнет ломать типовую конфигурацию, а про использование расширений "ай, зачем, они не предназначены в данной ситуации решить проблему".
igee12; AnatolPopov; +2 Ответить
7. dima8838 29.01.21 08:43 Сейчас в теме
Никогда и никому классическое образование не было во вред. Человек, умеющий думать логически, умеющий составлять грамотные алгоритмы на любую поставленную задачу всегда легко ее решит на любом языке программирования и в любой среде. Программист автоматизирует алгоритм, и прежде всего для программиста важен навык составления этого алгоритма, а уже средства автоматизации легко найти в разных источниках. Как раз этому и учили в классических вузах лет 15-20 назад (когда учился я). К сожалению сейчас среди молодежи все чаще встречается обратное, в самоучителях и на курсах они узнают средства автоматизации, а с алгоритмизацией у них туго. И это удручает, потому что для меня такие сотрудники не представляют большой ценности, т.к. не самостоятельны и нуждаются в постоянном контроле.
user717947; user1292928; AnatolPopov; +3 Ответить
9. bulpi 209 30.01.21 13:13 Сейчас в теме
Господа,
в нашей деятельности с 1с главное - совсем не то, о чем пишет автор.
Можно не знать ничего про реляционную алгебру..
Основные трудности и ценности :
1)Понять, чего собственно хочет заказчик
2)На основании этого разобраться, чего на самом деле ему надо (это не то же самое, что в п.1)
А уж спроектировать все это , как разобрался - вообще не проблема, а удовольствие.
vakham; AnatolPopov; +2 Ответить
10. AnatolPopov 120 30.01.21 14:28 Сейчас в теме
(9) Добавлю п. 3: убедить заказчика, что он хотел именно п. 2 ;)
e9953; vakham; bulpi; +3 Ответить
11. user1534961 30.01.21 15:20 Сейчас в теме
(10) Желательно сначала поверить в это самому (и даже удостовериться что такое возможно), а потом уже убеждать.. В противном случае получится что вы обманываете.
Например, вам клиент не поручал написать обработку клиент-банк для всех, но вы работаете по его тех.заданию и понимаете, что будете предлагать всем своим клиентам и новым и старым, потому что такая проблема у всех, это не тайна и вы об этом знаете.
А когда вам напоминают "только маме с папой " не говори, а вы не понимаете - "Что именно не говорить маме с папой?", такое тоже бывает, следует уточнять детально..
12. capitan 2338 30.01.21 18:29 Сейчас в теме
Вспоминается...
Плюнь в глаза тому, кто скажет, что может объять необъятное.
Козьма Прутков
Можно не знать реляционную алгебру и традиционную геометрию и быть очень хорошим программистом не только 1С
Есть люди которые на ассемблере ваяют код для навигации Протонов, есть люди которые пишут отчетность МСФО.
Их знания могут не пересекаться.
А вот опыт, его не пропьешь
Terve!R; bulpi; AnatolPopov; +3 Ответить
13. AnatolPopov 120 30.01.21 19:26 Сейчас в теме
(12) Мой опыт говорит, что можно быть хорошим программистом без хорошего знания предметной области, если работаешь в связке с экспертом в этой области. В 1С такой человек обычно называется консультантом.
То есть тот, кто может внятно изложить понятия из предметной области на языке "это такие данные, между ними такие взаимосвязи, и с ними надо сделать то-то". А как только задача изложена в терминах обработки данных, программисту по барабану, про что там, собственно. Зато становится важно, понимает ли он, как устроены данные.
Неприятность в том, что в 1С принято считать, что программист как раз и будет консультантом по бухучёту, трудовому и налоговому праву.
Terve!R; igee12; Vitaly1C8; vakham; +4 Ответить
14. AnatolPopov 120 31.01.21 09:26 Сейчас в теме
(12) Кстати, насчёт реляционной алгебры. Конечно, некоторое представление о ней помогает разложить мысли по полочкам. Но ещё лучше просветляет разум знание, почему она не применяется на практике ;)
И вот тут действительно вспоминаешь классика ;) "Э! – сказали мы с Петром Ивановичем" ;)
16. dodlez77 03.02.21 11:13 Сейчас в теме
Хм... Не совсем понял в чем смысл статьи и возможно сейчас будет не в тему.
НО если взглянуть на это все иначе получается, что 1С программисту на столько глубокими знаниями можно и не обладать для того чтоб быть эффективным. Еще и для этого существует платформа 1С. Всем известно, что программисты сейчас в дефиците и далеко не каждый кто получил образования по ИТ идет в него работать. Менеджером, например, проще и интеллектуально менее энергозатратно, а профит зачастую больше.
В связи с этим вспоминается история про то как американцы решили вопрос нехватки пилотов вертолета во время войны во Вьетнаме. Они просто переопределили требования к пилотам упростив их, стали использовать минимум теории и упор сделали непосредственно на обучении пилотированию. Тем самым сократили сроки подготовки с 3 лет до 6 месяцев. Таким образом получили большое количество пилотов которые не плохо летали в боевых условиях, но как это все летает пилот объяснить не мог.
Таким образом платформа 1С решает проблему низкой квалификации. Чтобы успешно решать задачи не обязательно иметь большой объем знаний, нужно просто уметь пользоваться возможностями платформы.
Единственно с чем согласен так это с тем, что наличие фундаментальных знаний позволяет быстро и эффективно решать задачи любой сложности и нетривиальности, а именно это заказчик и ждет от программиста.
17. AnatolPopov 120 03.02.21 11:48 Сейчас в теме
(16) Заказчик обычно ждёт от программиста, чтобы тот исправил косяки разработчиков платформы и типовых конфигураций, благо этого добра хватает.
Вообще-то, тут многое зависит от размеров ИТ-подразделения. Если это один чудо-программист, от него вечно ждут чудес, по возможности бесплатно. И ответов на все вопросы. Если нормальный такой отдел, там и масштабы другие, и специализация есть. Там уже могут быть программисты 1С, которые не разбираются в бухучёте, кадрах, налогах, при этом постоянно заняты работой.
20. dodlez77 03.02.21 13:04 Сейчас в теме
(17)
Заказчик обычно ждёт от программиста, чтобы тот исправил косяки разработчиков платформы и типовых конфигураций,


Заказчик обычно об этом не в курсе и более того вникать в это он не хочет. Он ждет, что все будет работать в соответствии с его представлениями о том как "правильно".
У меня большое ИТ подразделение и специализация есть, но программистов не разбирающихся в какой то из предметных областей нет. Вообще в мире 1С "манкикодеров" не встречал, платформа то предназначена для создания бизнес-приложений. Нужно понимать, что тебе пытается невнятно объяснить бухгалтер, например.
AnatolPopov; +1 Ответить
18. AnatolPopov 120 03.02.21 11:59 Сейчас в теме
(16) Кстати,
Всем известно, что программисты сейчас в дефиците

В нашем городе об этом ничего не слышали.
19. dodlez77 03.02.21 12:47 Сейчас в теме
(18) Странно, последние 6 месяцев занимался подбором как джунов так и мидлов. Очередь из джунов была, но отобрались единицы. А вот очереди из мидлов не удалось увидеть, хотя ЗП мы предлагаем выше рынка.
21. AnatolPopov 120 03.02.21 14:40 Сейчас в теме
(19) Наверно, все мидлы переехали в наш город ;) Действительно, что им в Перми делать? ;)
22. gaglo 03.02.21 20:16 Сейчас в теме
(19) ... осталось переопределить требования к мидлам...
23. stavrpl 04.02.21 09:46 Сейчас в теме
"Во всяком случае, с багажом книг, прочитанных в начале 90-х, я берусь за 1С в ее современном виде и особо не комплексую."
Вот эта фраза выдает автора с головой. Он пока еще не понял, куда попал. Если он смог написать запрос и выборку в цикле, получив нужный результат - это еще ничего не значит.
А вот для того, чтобы этот запрос нормально отработал на базе в 1ТБ размером, в которой работают 500 пользователей, нужно опуститься в документацию на 1С и СУБД максимум 5 летней давности.
Для того, чтобы ответить на вопрос, почему закрытие на таком базе встало колом и померло по таймауту, нужно посмотреть свежие материалы конференции разработчиков. Там опять техжурнал меняли.
Вообще, не представляю как можно стать экспертом в разработке 1С, не участвуя в крупных проектах, в них всплывают все тонкости 1С.
А вот классические алгоритмы(Вирт, Дональд Кнут, Бьёрн Страуструп..) как раз редко пригождаются, за 15 лет стажа 1С мне лично ни разу. Ну иногда видел в типовых решениях, но это как раз и не вызывало проблем.
Отвечу автору: откуда берут знания 1Сники. По степени убывания полезности: типовые конфигурации, профессиональные форумы(прежде всего от 1С), новая профессиональная литература.
Это очень инструментальноориентированная область, как именно работает хешфункция здесь знать как раз необязательно. Но очень полезно знать, что у СУБД есть 3 способа исполнения левого соединения, часть как раз через хеш, выбор способа зависит от количества строк, нам нужно помочь СУБД с ним не промазать и т.д. и т.п.
AnatolPopov; +1 Ответить
24. AnatolPopov 120 04.02.21 10:23 Сейчас в теме
(23) Замечательный ответ!
Разумеется, классические алгоритмы в 1С загорожены от программиста, и непосредственно он с ними дела не имеет. Но знать классику очень полезно в том смысле, что с таким знанием, глядя на объекты конфигурации, как будто видишь их насквозь.
25. AnatolPopov 120 04.02.21 10:30 Сейчас в теме
(23) И насчёт
"запрос нормально отработал на базе в 1ТБ размером, в которой работают 500 пользователей"
Согласен, пока до таких проблем не доберёшься, совершенно непонятно, нафига придумано столько странных опций, команд, ещё бог знает чего.
26. stavrpl 04.02.21 10:59 Сейчас в теме
Обучать человека, знающего классические алгоритмы, безусловно проще. Просто хотелось предостеречь от слишком упрощенного подхода к разработке на платформе 1С.
Код на встроенном языке в клиентском контексте - это верхушка айсберга, от него работа системы 1С зависит процентов на 10. Все ответы "почему все так" скрыты в подводной части на уровне СУБД.
Например, невозможно понять, зачем 1С нужны управляемые блокировки, не понимая что такое уровень изоляции транзакции СУБД.

Безусловно, в реализации СУБД тоже есть классические алгоритмы и высшая математика(один оптимизатор запросов чего стоит!), но это детали кода элементов СУБД, мы не собираемся его переписывать. Поэтому разработчику все же разумнее делать упор на свежую профильную техническую документацию.

Как понять, что код написан хорошо: 1) при увеличении размера базы в 100 раз от актуален 2) при увеличении кол-ва пользователей в 10 раз он актуален 3) при развитии функционала кода не нужно его писать с нуля 4) его может понять с первого прочтения опытный разработчик
Кнут в этом Вам мало поможет, тут Гилева со товарищи надо почитать)
dodlez77; AnatolPopov; +2 Ответить
27. AnatolPopov 120 04.02.21 11:19 Сейчас в теме
(26) Добавлю свои пять копеек. На предыдущей работе хорошим кодом считался такой, который не придется переписывать после обновления типовой конфигурации. Разумеется, речь идет о расширениях. Хотя большие базы с сотнями пользователей там тоже были, но проблемы масштабирования там как-то никого не беспокоили. Видимо, они решались в рамках типовых конфигураций.
Оставьте свое сообщение
Вакансии
Функциональный архитектор
Москва
зарплата от 200 000 руб. до 300 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб.
Полный день

Ведущий программист 1С (удаленно)
Пермь
зарплата от 150 000 руб.
Полный день

Программист 1С
Домодедово
зарплата от 150 000 руб. до 180 000 руб.
Полный день

Консультант 1С
Москва
зарплата от 80 000 руб. до 150 000 руб.
Полный день