Всем привет.

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

Кому больше нравится видео-формат, предлагаю посмотреть запись доклада:

Ну а любителем текста, добро пожаловать по кат.

О чем статья?

Свой первый код за деньги на платформе 1С я написал в далеком 2008 году и вот уже 15 лет этим и продолжаю заниматься. За это время я побывал, как мне кажется, во всех состояниях типового 1С-ника: от программиста-стажера до начальника отдела разработки. Работал «инхаус» на предприятии, долго проработал в крупном интеграторе. А сейчас занимаюсь продуктовой разработкой.

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

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

Конфигуратор жив?

Современной и прогрессивной средой разработки в настоящее время считается 1С:EDT. И когда речь заходит про удобство разработки, чаще всего упоминается именно она.

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

Я работаю в том числе и в 1С:EDT, но, признаюсь честно, моим основным и любимым инструментом в работе все еще остается конфигуратор, как, наверное, и для подавляющего большинства разработчиков 1С.

Я всегда работал и работаю с большими конфигурациями типа 1С:ERP, 1С:УХ, 1С:ERPУХ. К сожалению, для них 1С:EDT проигрывает в скорости работы конфигуратору. Кроме того, по работе мне очень часто приходится разворачивать присланные «детешники», сравнивать конфигурации, быстро что-то править и объединять. И ключевое слово здесь «быстро».

Помимо GIT мы работаем и через хранилище конфигураций 1C – я работал в командах 20+ разработчиков, хранилище используем через сервер хранилища конфигураций, разработка идет плотная, каких-то особых проблем не наблюдаем.

Поэтому далее будет грустная статья (надеюсь, что нет) от старовера 1С-ника. Если кого-то разочаровал, прошу прощения.

Расширение конфигуратора 1С

Когда речь заходит про удобную работу в конфигураторе, часто вспоминают 2 проекта:

Первый из них – это Снегопат. Когда-то давно я пользовался им, покупал подписку. Но по ряду причин перестал. Во-первых, работая в интеграторе я 90% времени программировал на серверах клиентов. Там бывает проблематично вообще установить что-то, что не прошло проверку службой безопасности. Также непонятно, как в этом случае соблюдается условие лицензионного соглашения по использованию.

Кроме того, не оперативно осуществлялась поддержка версий платформы и, если ничего не изменилось, до сих пор не поддерживается 64-разрядная платформа. Ну а в 32-х разрядном конфигураторе сейчас уже вообще в больших конфигурациях не поразрабатываешь. Складывается ощущение, что проект скорее мертв, чем жив. Его сейчас даже купить уже нельзя. А жаль, инструмент на самом деле был очень удобный.

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

Но если у вас есть свое стабильное рабочее место, обратите внимание на эти расширения конфигуратора. TurboConf, кстати, работает и в 1С:EDT. У обоих продуктов есть триальные версии для ознакомления.

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

Запуск конфигуратора

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

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

/N"ОняновВВ" /P"Pass" /ConfigurationRepositoryF"tcp://server/repository" /ConfigurationRepositoryN"ОняновВВ" /ConfigurationRepositoryP"Pass" /TestManager

Можно добавить еще что-то, к примеру флаг «TestManager», если вы занимаетесь автоматизированным тестированием. И все, забудем навсегда об этих назойливых окнах. Сохраним список баз и подключим его при входе.

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

Настройка параметров конфигуратора

Итак, конфигуратор запустился. Сразу же переходим на закладу «Сервис» – «Параметры».

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

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

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

Многие разработчики пользуются отображением пробелов и табуляций. Тут уже по желанию, конечно. Я пользуюсь. Единственное, я меняю символ табуляции с «ёлочек» на символ «|».

Ну и чтобы не сильно напрягать глаза, ведь работаешь с текстом весь день, я ставлю бОльший шрифт текстов – обычно меняю на 12.

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

Вот несколько примеров взятых из соответствующих статей.

Кто-то даже пытается использовать темные темы.

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

Многие разработчики используют известную в мире разработки цветовую схему «Solarized», она и вправду очень приятная для глаз. Попробуйте, вот она:

Но самые главные настрой цветов почему-то запрятаны и отключены.

Если установить цвета для «Текущего идентификатора» и «Выбранного идентификатора», например я ставлю серый и оранжевый:

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

Затем идем в «Прочее» и устанавливаем для этих конструкций серый цвет.

Сравните стандартный вариант и доработанный. По моему, второй намного приятнее и специальные символы совсем не мешают читать и писать основной код.

Кроме того, на данной вкладке в поле «Автозамена» я ставлю «Включить». Как это используется покажу чуть позже. А также ставлю шрифт модулей побольше, также 12. С десяткой за день уж сильно глаза устают.

Здесь же переходим на вкладку «Группировка».

Наверняка вы знаете, что циклы и условия тоже можно группировать. И почему-то это тоже по умолчанию отключено. Ставим нужные флаги.

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

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

Вот примерно так это сразу выглядит.

Я этим давно пользуюсь, мне кажется, что так удобнее.

Переходим на закладку «Запуск 1С:Предприятие».

Не все знают, что если в параметрах запуска прописать «РежимОтладки», то там где должны запускаться фоновые задания, они запускаться не будут, а код будет выполняться в том же сеансе.

Это невероятно полезно при отладке, т. к. отладка фоновых заданий – то еще веселое мероприятие. А оказывается, что прописав здесь вот такое заклинание, отладка фоновых превращается… в обычную отладку. Ставлю сразу и навсегда.

Работает данный ключ только для фоновых заданий запущенных через подсистему "Длительные операции" БСП.

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

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

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

Шаблоны текста

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

Во первых, вызываются шаблоны по не самой удобной комбинации Ctrl+Q. Но ладно, это мы победили поставив в параметрах автозамены значение включить. Теперь шаблоны вызываются сами автоматически после нажатия пробела.

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

В общем, шаблоны больше бесят, чем помогают.

Я предлагаю в настройке шаблонов отключить совсем все стандартные шаблоны и добавить свои, аналогичные стандартным, но на свой вкус и цвет.

Это может работать, например как-то так.

Горячие клавиши

Следующая, опять таки, всем известная и очевидная вещь – горячие клавиши.

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

Первое время возможно будет неудобно, но со-временем вы выучите все основные комбинации, и работа станет сильно комфортнее.

В меню есть не все комбинации клавиш, все описаны в справке в соответствующем разделе.

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

Ну и кроме стандартных для редактора текста комбинаций, про которые тоже не все знают или знают, но не используют, есть и некоторые уникальные, типа Ctrl+«-»Ctrl+Alt+P и т. д.

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

Слепой метод печати

Ничто так не упрощает ввод текста и не экономит время, как метод слепой печати.

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

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

Мультибуфер

Еще один крутой инструмент, который сильно помогает в работе – это мультибуфер. Когда-то я пользовался внешними программами для мультибуфера, их много разных. Но когда данная функция появилась в Windows 10, перешел на нее. Вполне себе удобно.

Называется функция «Журнал буфера обмена», включается в настройках.

Либо при первом нажатии на комбинацию Win+V. И теперь при нажатии той же комбинации Win+V, появляется окошко, где перечислены 25 последних сохраненных в буфер значений.

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

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

Использование внешних обработок

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

Но ведь решается это довольно просто. Практически любую разработку чего-то более-менее серьезного я делаю во внешних обработках.

Достаточно в коде в нужном месте сделать небольшую вставку. Перед этим в редактируемом модуле нажимаем Ctrl+A, Ctrl+C, вставляем весь текст текущего модуля в модуль обработки «ОбработкаДляРазработки.epf» и все, дальше спокойно разрабатываете во внешней обработке. Причем тестируете также все в интерфейсе, но оно сразу же работает с учетом внесенных изменений. Метод подходит для общих модулей, моделей всех объектов, да чего угодно.

Функция РассчитатьПоЗначениямИзмененныхПоказателей(ПараметрыРасчета) Экспорт
	
	//++ Вызов внешней обработки
	Обработка = ВнешниеОбработки.Создать("D:\Temp\ОбработкаДляРазработки.epf");
	Возврат Обработка.РассчитатьПоЗначениямИзмененныхПоказателей(ПараметрыРасчета);
	//--
	
	//...
	
КонецФункции

Даже формы объектов можно разрабатывать во внешних обработках. Тут кода правда чуть-чуть побольше.

&НаКлиенте
Процедура ОткрытьОбраоботку(Команда)
	
	ПараметрыОткрытия = Новый Структура;
	ОписаниеОповещения = Новый ОписаниеОповещения("ПослеПомещенияФайла", ЭтаФорма, ПараметрыОткрытия);
	НачатьПомещениеФайлаНаСервер(ОписаниеОповещения,,,,"D:\Temp\ОбработкаДляРазработки.epf");
	
КонецПроцедуры
	
&НаКлиенте
Процедура ПослеПомещенияФайла(ОписаниеПомещенногоФайла, ПараметрыОткрытия) Экспорт
	
	ИмяОбработки = ПолучитьИмяВнешнейОбработки(ОписаниеПомещенногоФайла.Адрес);
	ОткрытьФорму("ВнешняяОбработка." + ИмяОбработки + ".Форма", ПараметрыОткрытия);
	
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьИмяВнешнейОбработки(Адрес)
	
	Возврат ВнешниеОбработки.Подключить(Адрес);
	
КонецФункции

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

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

Внешние инструменты

Однажды в одном из 1С-ных каналов был опрос среди разработчиков, кто какую консоль запросов использует. И я был очень удивлен увидев, что почти 40% разработчиков используют типовую консоль с диска ИТС. Ведь есть и поудобнее инструменты. Кроме того, помимо консоли запросов есть еще и консоль СКД, обозреватель и редактор объектов, консоль кода и т. д.

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

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

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

На Инфостарте также есть доработанные версии с раскраской запросов и кода.

Но уже года два как я плотно перешел на Инфостарт Тулкит. Это набор очень полезных инструментов в одном расширении. Здесь и консоль запросов, СКД, кода, редактор объектов, анализ прав и т. д. Все в одном месте, мне нравится. Это как набор ключей для автомеханика. Или как стиральная машина автомат – быстро привыкаешь, ее не замечаешь, но без нее уже никак. У Инфостарт Тулкит один минус – инструмент сильно платный, но, мне кажется, что своих денег стоит.

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

Вот список интересных на мой взгляд инструментов:

Скриптовые движки

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

Даже в нашем первом примере с запуском конфигуратора – можно пойти дальше и написать скрипт, который запустит конфигуратор, обновит конфигурацию из хранилища, обновит конфигурацию базы данных, запустит предприятие сразу в режиме отладки. И, например, поставить это все в Планировщик заданий Windows где-нибудь на 8 утра. Пришел на работу, а тебя уже ждет открытый обновленный конфигуратор. Можно и дальше продолжить мечтания об автоматизации каких-то рутинных действий, но в этом случае перед разработчиком 1С встает вопрос: а на чем делать всю эту оптимизацию? И у нас есть 2 скриптовых движка: это OneScript и 1С:Исполнитель.

OneScript замечателен тем, что его синтаксис почти полностью совпадает с синтаксисом платформы 1С:Предприятие 8. Он с такой парадигмой и создавался. Для него и на нем написано множество библиотек и даже готовых инструментов, есть активная поддержка сообщества. Я давно и плотно на нем «сижу».

Ну а 1С:Исполнитель использует язык разработки новой платформы от фирмы 1С – 1С:Элемент. Я, если честно, его не пробовал. Но возможно стоит, чтобы сразу приобщиться к будущим технологиями от фирмы 1С.

Несомненно, путь в эти движки не будет легким. Это надо сразу понимать. Как и с другими вещами о которых я здесь пишу, потребуется некоторое усилие и время, чтобы преодолеть первоначальный порог входа: разобраться в структуре, окружении, написать первые скрипты. Но если перед вами стоят реальные задачи автоматизации, то бросайте вы эти батники. Начните свой путь в один из этих инструментов. Уверен путь будет настолько же сложный, насколько и увлекательный.

Проверка кода

Помимо непосредственного написания кода, есть помощники, которые помогают писать еще и по возможности хороший код.

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

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

Для этого есть специальная конфигурация 1С:АПК от фирмы 1С. Очень советую вам использовать АПК в своей работе. Благодаря ей вы довольно быстро освоите основные стандарты разработки, соберете свою коллекцию шаблонов под эти стандарты, избежите неизбежных опечаток, научитесь оформлять свой код как в типовых решениях. Может не все правила из большого набора типовой поставки АПК вам подойдут, но тут можно договориться с командой и какие-то правила отключить или наоборот, добавить свои. Логика проверки здесь пишется на том же языке платформы 1С, это удобно. Есть плагин АПК-2 и для 1С:EDT.

Ну и стоит сказать, что для решения этой же задачи уже есть несколько плагинов для проверки 1С-ного кода на платформе SonarQube. Можно найти несколько публикаций на эту тему. Правда порог входа, как мне кажется, здесь уже повыше. А новые правила пишутся на языке Java.

Эти два инструмента - плагины для SonarQube и 1С:АПК, не заменяют друг друга, а скорее дополняют, т. к. для 1С-ного сонара имеющиеся наборы правил несколько отличаются от АПК-шных.

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

Физическая культура

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

Наша профессия вроде как не считается вредной (всего 2-ой класс), однако все мы знаем, к чему приводит долгое сидение за компьютером.

Это и проблемы с сердечно-сосудистой системой, со зрением, боли в спине и суставах (те же колени), лишний вес. Там же плохое подавленное настроение и проблемы со сном. Да вы и так все это знаете.

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

Что делать – известно. Все мы слышали про рекомендации делать перерывы в работе и зарядку для глаз. Есть специальные программы-напоминалки и все такое. Но когда я погружен в работу, мне все это только мешает и раздражает. Сколько не пробовал – ничего не прижилось.

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

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

Ну и раз уж мы заговорили про сон.

Сон

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

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

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

Какими бы крутыми инструментами вы не запаслись, какой бы удобной не была ваша IDE, если вы пришли на работу не выспавшимся зомби, рабочий день считай пропал. О какой-то эффективности или продуктивности тут говорить вообще не приходится.

Если вы хотите быть хорошим разработчиком, а вдобавок еще терпеливым супругом, рассудительным родителем и иметь отличное здоровье, очень призываю всех вас обратить самое пристальное внимание на вопросы сна.

Возможно вот эта литература сможет вам помочь.

  • Мэттью Уолкер – «Зачем мы спим. Новая наука о сне и сновидениях»

  • Шон Стивенсон – «Здоровый сон. 21 шаг на пути к хорошему самочувствию»

  • Андрей Курпатов – «10 рецептов хорошего сна»

Состояние потока

Ну и наконец, переходим к TOП 1 моего списка.

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

Уже позже я узнал, что данный феномен известен и изучен. Называется он «Состояние потока». Этот термин ввел американский психолог Михай Чиксентмихайи еще в далеком 1975 году. Самая известная книга на эту тему у него же так и называется – «Поток».

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

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

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

Почитайте о состоянии потока у данного или других авторов, есть несколько книг на эту тему.

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

  1. Быстрый запуск конфигуратора

  2. Настроенная под меня среда разработки

  3. Мои любимые шаблоны текста

  4. Горячие клавиши

  5. Слепой метод печати

  6. Мультибуфер

  7. Разработка во внешних обработках без лишних ненужных ожиданий и отвлечений

  8. Прочие удобные внешние инструменты

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

  10. Красивый код, который не стыдно показать и легко поддерживать

  11. Бодрящая физнагрузка

  12. Столь необходимый нам всем здоровый сон

  13. И то волшебное чувство счастья, творчества и продуктивности, которое я ощущаю находясь в состоянии потока

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

А у меня все. Спасибо тем, кто дочитал до конца.

Комментарии (6)


  1. Jeshua
    11.01.2024 07:54

    Спасибо, хорошая статья, чувствуется комплексный подход. За один раз не осилил, тут "с карандашом" надо читать)


  1. CrushBy
    11.01.2024 07:54
    +2

    Я всегда работал и работаю с большими конфигурациями типа 1С:ERP, 1С:УХ, 1С:ERPУХ. К сожалению, для них 1С:EDT проигрывает в скорости работы конфигуратору.

    Да, тут 1С конечно ошиблись выбрав Eclipse в качестве основы для IDE. У него хоть лицензия и получше, но он все-таки достаточно тормознутый. Лучше бы делали плагин к IntelliJ IDEA, как сделали в lsFusion.


  1. EuLeEr
    11.01.2024 07:54

    @Tavalik Спасибо за статью, очень мило !
    Совет: статью необходимо подредактировать - есть повторяющиеся блоки текста , поищите: Переходим на закладку «Запуск 1С:Предприятие».


    1. Tavalik Автор
      11.01.2024 07:54

      Странно, вроде бы я это уже исправлял. Спасибо, удалил лишний блок.


  1. Tavalik Автор
    11.01.2024 07:54

    Спасибо, исправил.


  1. vis_inet
    11.01.2024 07:54

    @Tavalik Огромное спасибо, очень интересная получилась статья!