🚲 1C:Зазеркалье о новом механизме решения СЛАУ
На Зазеркалье опубликована новая статья о механизме решения систем линейных алгебраических уравнений, которая сегодня вызвала немалые бурления 💩 среди бывалых одинэсников.
Как по мне — вполне себе логичная эволюция наработок, реализованных в составе подсистемы/методики Расширенная аналитика учета затрат (РАУЗ).
> в платформе мы использовали собственный алгоритм с дополнительной оптимизацией
Велосипед ли это и нельзя было бы использовать что-то из готового? Полагаю, что у разработчиков в 1С за все эти годы накопился достаточный опыт и через них прошло большое количество примеров данных, чтобы оптимизировать/переизобрести алгоритм расчета СЛАУ с учетом области применения. Не удивлюсь, если на алгоритм есть патент.
На Зазеркалье опубликована новая статья о механизме решения систем линейных алгебраических уравнений, которая сегодня вызвала немалые бурления 💩 среди бывалых одинэсников.
Как по мне — вполне себе логичная эволюция наработок, реализованных в составе подсистемы/методики Расширенная аналитика учета затрат (РАУЗ).
> в платформе мы использовали собственный алгоритм с дополнительной оптимизацией
Велосипед ли это и нельзя было бы использовать что-то из готового? Полагаю, что у разработчиков в 1С за все эти годы накопился достаточный опыт и через них прошло большое количество примеров данных, чтобы оптимизировать/переизобрести алгоритм расчета СЛАУ с учетом области применения. Не удивлюсь, если на алгоритм есть патент.
ИС: Дымовые тесты печатных форм для конфигураций на БСП
https://infostart.ru/public/884177/
Проверяет, что печатная форма (табличный документ): а. формируется; б. содержит по крайней мере одну строку (т.е. высота табличного документа > 0)
#Тестирование #1С
https://infostart.ru/public/884177/
Проверяет, что печатная форма (табличный документ): а. формируется; б. содержит по крайней мере одну строку (т.е. высота табличного документа > 0)
#Тестирование #1С
infostart.ru
Файл тестов для xUnitFor1C: тестирование печатных форм документов
Автоматическое формирование печатных форм документов с помощью xUnitFor1C.
🏋️ История успеха: от типичного одинэсника-фикси до совладельца компании, делающей отраслевую конфигурацию.
https://roem.ru/07-08-2018/272635/mikityuk-kolonka/
#1C
https://roem.ru/07-08-2018/272635/mikityuk-kolonka/
#1C
roem.ru
Директор по развитию системы автоматизации «1С: Фитнес клуб» — о развитии своего бизнеса и плюсах и минусах партнерства с «1С»
Руслан Микитюк: «У нас было 3 варианта роста — найти инвестора, продолжать самим, заключить партнерство с федеральным брендом»
💪 Андрей Овсянкин написал еще один эпический лонгрид, в котором просто и понятно рассказал про работу с транзакциями в программном коде 1С.
Пишу "еще", потому что на Инфостарте есть его аналогичные подробные публикации про XDTO, про передачу параметров по ссылке/значению, про управляемые формы (одна из топовых публикаций на ИС)... Короче посмотрите сами в его списке публикаций на ИС, рекомендую.
Пишу "еще", потому что на Инфостарте есть его аналогичные подробные публикации про XDTO, про передачу параметров по ссылке/значению, про управляемые формы (одна из топовых публикаций на ИС)... Короче посмотрите сами в его списке публикаций на ИС, рекомендую.
Хабр
Вы не умеете работать с транзакциями
Заголовок вышел броским, но накипело. Сразу скажу, что речь пойдет об 1С. Дорогие 1С-ники, вы не умеете работать с транзакциями и не понимаете что такое исключе...
💩 Когда очевидно, что разработчик не проверял свой код (и понадеялся на то, что он выполняться будет ровно одну итерацию).
Что не так?
— Переменная цикла (Результат) изменяется внутри цикла
— Инициализация переменных внутри цикла, но значения этих переменных не зависят от переменной цикла
— Выполнение запроса в цикле
#говнокод #codesmells #codereview
Что не так?
— Переменная цикла (Результат) изменяется внутри цикла
— Инициализация переменных внутри цикла, но значения этих переменных не зависят от переменной цикла
— Выполнение запроса в цикле
#говнокод #codesmells #codereview
📀 Музыка из кейгенов — отличный фон для работы
Пару недель назад или около того наткнулся на рекомендацию сайта
https://keygenmusic.tk/
Не нем собран огромный плейлист музончика из всевозможных кейгенов - для меня это оказалось эдаким приветом из начала нулевых, ностальгия по студенческой поре!
Мне этот плейлист отлично зашел в качестве фоновой музыки во время работы, а спустя полторы недели прослушивания готов рекомендовать 👍
p.s. Только старайтесь не пользоваться поиском по плейлисту на этом сайте - по крайней у меня он сильно подвешивает вкладку браузера и в целом браузер (я пользуюсь Google Chrome).
Пару недель назад или около того наткнулся на рекомендацию сайта
https://keygenmusic.tk/
Не нем собран огромный плейлист музончика из всевозможных кейгенов - для меня это оказалось эдаким приветом из начала нулевых, ностальгия по студенческой поре!
Мне этот плейлист отлично зашел в качестве фоновой музыки во время работы, а спустя полторы недели прослушивания готов рекомендовать 👍
p.s. Только старайтесь не пользоваться поиском по плейлисту на этом сайте - по крайней у меня он сильно подвешивает вкладку браузера и в целом браузер (я пользуюсь Google Chrome).
Краш-тест продвинутого одинэсника или пример того, что и как учить, чтобы расти от Серебряной пули. Кликабельные ссылки в оригинальном посте.
Александр Кунташов — про 1С и не только
Краш-тест продвинутого одинэсника или пример того, что и как учить, чтобы расти от Серебряной пули. Кликабельные ссылки в оригинальном посте.
🔗 Если вдруг у кого-то ссылка на оригинальный пост на форум SB не работает: https://xdd.silverbulleters.org/t/ishhetsya-chelovek-serebryanaya-pulya-na-dolguyu/2279/6
😱 Заказчик привлек для каких-то доработок "третье лицо", а мы, внедряя очередную порцию доработок в рабочую базу, затерли эти изменения, т.к. нас никто не предупредил (мы просто загружаем наше расширение).
Через некоторое время звонок (не дословно, но без потери смысла):
— Давайте придумаем, как обмениваться изменениями и вообще вести разработку коллективно, ведь хранилища для расширений нет
— Вообще мы для этих целей в RMS используем систему контроля версий...
— Не-не-не, у меня работы навалом, некогда с этим разбираться, давайте вы будете свои наработки сами сравнением/объединением накатывать.
Занавес.
Через некоторое время звонок (не дословно, но без потери смысла):
— Давайте придумаем, как обмениваться изменениями и вообще вести разработку коллективно, ведь хранилища для расширений нет
— Вообще мы для этих целей в RMS используем систему контроля версий...
— Не-не-не, у меня работы навалом, некогда с этим разбираться, давайте вы будете свои наработки сами сравнением/объединением накатывать.
Занавес.
⚡️ SublimeMerge — новый git-клиент с интерфейсом SublimeText
Внезапно авторы моего любимого редактора кода SublimeText выпустили SublimeMerge — Git-клиент, построенный на ядре SublimeText (анонс).
Обещают, что он очень быстрый: ради этого с нуля написали собственную библиотеку для чтения git-репозиториев; команды, изменяющие состояние репозитория (коммиты, создание веток и т.п.) используются "родные".
Ожидаемо подстветка кода и в принципе все ключевые возможности редактора SublimeText доступны при просмотре диффов и редактировании конфликтов. Например, из коробки поддерживается подсветка кода 1С 😉
#Инструменты
Внезапно авторы моего любимого редактора кода SublimeText выпустили SublimeMerge — Git-клиент, построенный на ядре SublimeText (анонс).
Обещают, что он очень быстрый: ради этого с нуля написали собственную библиотеку для чтения git-репозиториев; команды, изменяющие состояние репозитория (коммиты, создание веток и т.п.) используются "родные".
Ожидаемо подстветка кода и в принципе все ключевые возможности редактора SublimeText доступны при просмотре диффов и редактировании конфликтов. Например, из коробки поддерживается подсветка кода 1С 😉
#Инструменты
📘 Что почитать на выходных - 3
Сегодня много ссылок вокруг и около 1С: последний месяц вынужденно их копил, не имея возможности прочитать, а теперь вот, наконец, добрался.
👔 #NoEstimates isn't crazy
Лонгрид от одного из соавторов Agile Manifesto про суть подхода #NoEstimates (отказ от предварительной оценки трудозатрат). Общий смысл аргументации: сама по себе оценка не несет никакой пользы, т.к. продуктом не является (если только, конечно, вы не продаете услугу по оценке), а потому процесс оценивания - это затраты. Затраты же нужно уменьшать, а это значит, что в пределе к бесконечности они должны сходиться к нулю.
😫 История одной депрессии
Очередная история про профессиональное выгорание, а последнее время все чаще такие попадаются. То ли тема модной стала, то ли проблема обострилась. На грядущем Infostart Event'е будет на эту тему тоже будет доклад от самого Александра Орлова.
🛠 Как и зачем мы написали высоконагруженный масштабируемый сервис для 1С:Предприятия: Java, PostgreSQL, Hazelcast
Научно-популярная статья от Петра Грибанова с кучей подробностей про новый механизм платформы — Систему взаимодействия. Как всегда, в комментариях жара.
🐇 Онлайн-чеки по федеральной сети посредством RabbitMQ, 1С и черной магии
Интересный кейс, реализованный командой SB. И снова рекомендую заглянуть в комментарии.
💰Как уберизировать услуги 1С. Продолжение
Ребята пытаются сделать что-то оригинальное в сфере оказания услуг по поддержке решений на 1С ("уберизация" и "1С" в одном предложении — уже оригинально), но пока не взлетает, о чем они честно и рассказывают.
🐰Как оно работается в фирме 1С?
Отзыв одного из легендарных одинэсников Никиты Зайцева aka WildHare о его работе в "в самой 1С" (спойлер: отзыв положительный). Ностальгия: https://www.hare.ru/old-hareru/
#ЧтоПочитатьНаВыходных
Сегодня много ссылок вокруг и около 1С: последний месяц вынужденно их копил, не имея возможности прочитать, а теперь вот, наконец, добрался.
👔 #NoEstimates isn't crazy
Лонгрид от одного из соавторов Agile Manifesto про суть подхода #NoEstimates (отказ от предварительной оценки трудозатрат). Общий смысл аргументации: сама по себе оценка не несет никакой пользы, т.к. продуктом не является (если только, конечно, вы не продаете услугу по оценке), а потому процесс оценивания - это затраты. Затраты же нужно уменьшать, а это значит, что в пределе к бесконечности они должны сходиться к нулю.
😫 История одной депрессии
Очередная история про профессиональное выгорание, а последнее время все чаще такие попадаются. То ли тема модной стала, то ли проблема обострилась. На грядущем Infostart Event'е будет на эту тему тоже будет доклад от самого Александра Орлова.
🛠 Как и зачем мы написали высоконагруженный масштабируемый сервис для 1С:Предприятия: Java, PostgreSQL, Hazelcast
Научно-популярная статья от Петра Грибанова с кучей подробностей про новый механизм платформы — Систему взаимодействия. Как всегда, в комментариях жара.
🐇 Онлайн-чеки по федеральной сети посредством RabbitMQ, 1С и черной магии
Интересный кейс, реализованный командой SB. И снова рекомендую заглянуть в комментарии.
💰Как уберизировать услуги 1С. Продолжение
Ребята пытаются сделать что-то оригинальное в сфере оказания услуг по поддержке решений на 1С ("уберизация" и "1С" в одном предложении — уже оригинально), но пока не взлетает, о чем они честно и рассказывают.
🐰Как оно работается в фирме 1С?
Отзыв одного из легендарных одинэсников Никиты Зайцева aka WildHare о его работе в "в самой 1С" (спойлер: отзыв положительный). Ностальгия: https://www.hare.ru/old-hareru/
#ЧтоПочитатьНаВыходных
💉 1С+Postgres и SQL-injection
У вас ПОДОБНый код не вызывает никаких вопросов?
Генерация текста запроса налету в зависимости от каких-то внешних условий - распространенный прием при работе с БД. Он кроме всего прочего хорошо известен как потенциальня дыра в безопасности, эксплуатируемая при помощи атак типа SQL-injection. Защита от таких атак сводится к элементарным правилам гигиены: все входящие внешние данные, используемые при "сборке" итогового запроса нужно проверять и экранировать.
В 1С прием "сборки" запросов по частям тоже очень популярен, но заниматься "гигиеной" входящих данных не принято. Отчасти это оправдано тем, что в языке запросов 1С отсутствует возможность модификации данных, отчасти - из-за того, что взаимодействие учетной системы с внешним миром чаще ограничено и всем входящим данным принято по умолчанию доверять.
Тем не менее мне однажды подвернулся случай, когда запрос аналогичный запросу выше, приводил к падению рабочего процесса 1С и это было неприятно.
В старом битриксовом модуле обмена с сайтом 6.0.x есть запрос с ПОДОБНО. В качестве аргумента этой конструкции передавалась строчка — комментарий вида
Совершенно случайно заметили, что ошибка стабильно воспроизводится когда
Решение очевидное: экранировать спецсимволы:
Ошибка воспроизводится в клиент-серверной версии 1С, когда в качестве СУБД используется PostgreSQL. В файловой версии 1С такой запрос исключения не вызовет, и результата ожидаемо не вернет. Воспроизведение ошибки на других СУБД не проверял.
#1С
У вас ПОДОБНый код не вызывает никаких вопросов?
Запрос = Новый Запрос("Вы молодец, если задумались о значении в
|ВЫБРАТЬ
| Т.Поле1
|ИЗ
| Таблица КАК Т
|ГДЕ
| Т.Поле2 ПОДОБНО """ + СтрокаПоиска + """
|
|");
СтрокаПоиска
: откуда оно к нам пришло и можем ли мы ему доверять?Генерация текста запроса налету в зависимости от каких-то внешних условий - распространенный прием при работе с БД. Он кроме всего прочего хорошо известен как потенциальня дыра в безопасности, эксплуатируемая при помощи атак типа SQL-injection. Защита от таких атак сводится к элементарным правилам гигиены: все входящие внешние данные, используемые при "сборке" итогового запроса нужно проверять и экранировать.
В 1С прием "сборки" запросов по частям тоже очень популярен, но заниматься "гигиеной" входящих данных не принято. Отчасти это оправдано тем, что в языке запросов 1С отсутствует возможность модификации данных, отчасти - из-за того, что взаимодействие учетной системы с внешним миром чаще ограничено и всем входящим данным принято по умолчанию доверять.
Тем не менее мне однажды подвернулся случай, когда запрос аналогичный запросу выше, приводил к падению рабочего процесса 1С и это было неприятно.
В старом битриксовом модуле обмена с сайтом 6.0.x есть запрос с ПОДОБНО. В качестве аргумента этой конструкции передавалась строчка — комментарий вида
[Номер документа: B2B-XXXXXX]
, приходящая из Битрикса, где XXXXXX
— случайный набор латинских символов. В подавляющем большинстве случаев все было ОК, но время от времени рабочий процесс падал во время выполнения обмена. Совершенно случайно заметили, что ошибка стабильно воспроизводится когда
XXXXXX
начинался с символа A
. Квадратные скобки []
, как мы знаем, служат для обозначения множества символов, например, "любой символ латинского алфавита" можно записать как [A-Z]
. Так вот, когда в качестве аргумента ПОДОБНО
передается конструкция, в которой левая граница диапазона больше правой, например, [...B-A...]
, 1С падает с исключением - прямо как на скриншоте ниже.Решение очевидное: экранировать спецсимволы:
... ПОДОБНО "\[B-A\]" СПЕЦСИМВОЛ "\" ...
.Ошибка воспроизводится в клиент-серверной версии 1С, когда в качестве СУБД используется PostgreSQL. В файловой версии 1С такой запрос исключения не вызовет, и результата ожидаемо не вернет. Воспроизведение ошибки на других СУБД не проверял.
#1С
📜 Петиция в 1С о поддержке UIAutomation в конфигураторе . Да, у меня тоже первая реакция была "А что, так можно было?!" - причем и про петицию, и про UIAutomation.
Про существование альтернатив Снегопату - TurboConf и SmartConfigurator'а знал, но не использовал и не интересовался, как они внутри сделаны. Думал, что через WinAPI контролы получают, а на самом деле все хитрее: 1С однажды анонсировала поддержку UIAutomation в режиме 1С:Предприятия, но, оказывается, до недавнего времени оно работало и в Конфигураторе, а в 8.3.12 что-то поломалось.
Призываю поддержать коллег, нужно всего лишь заполнить форму: https://docs.google.com/forms/d/e/1FAIpQLScnwbqfpqGcASJg1QWPDmFRUkPTLkz3kP2zHX5-_aBU4x7RLQ/viewform
Про существование альтернатив Снегопату - TurboConf и SmartConfigurator'а знал, но не использовал и не интересовался, как они внутри сделаны. Думал, что через WinAPI контролы получают, а на самом деле все хитрее: 1С однажды анонсировала поддержку UIAutomation в режиме 1С:Предприятия, но, оказывается, до недавнего времени оно работало и в Конфигураторе, а в 8.3.12 что-то поломалось.
Призываю поддержать коллег, нужно всего лишь заполнить форму: https://docs.google.com/forms/d/e/1FAIpQLScnwbqfpqGcASJg1QWPDmFRUkPTLkz3kP2zHX5-_aBU4x7RLQ/viewform
Google Docs
Коллективное письмо в 1С о поддержке UIAutomation в Конфигураторе
Уважаемая фирма 1С!
Несколькими годами ранее, компания 1С реализовала программу «Невизуальная доступность прикладных решений» для людей с ограниченными возможностями. Вы добавили интерфейс UIAutomation, который позволяет получать и озвучивать голосом тексты…
Несколькими годами ранее, компания 1С реализовала программу «Невизуальная доступность прикладных решений» для людей с ограниченными возможностями. Вы добавили интерфейс UIAutomation, который позволяет получать и озвучивать голосом тексты…
🤘 Конференция ЮКОН в Саратове 13 октября
В Саратове 13 октября в очередной раз пройдет ИТ-конференция ЮКОН. Будет 2 технических трека, один бизнесовый, один - для дизайнеров и баркэмп (заявки на участие в баркэмпе принимаются).
Студентам, собирающимся работать в ИТ, рекомендуется категорически, бывалым ИТшникам - для развития кругозора рекомендую не профильные доклады (сам так делаю). Я собираюсь как минимум послушать легендарного Стингрея и по-любому что-нибудь из бизнесового трека (программа еще не сформирована, но там всегда интересно), присоединяйтесь!
Регистрация (бесплатно, без СМС): https://youcon.ru/
В Саратове 13 октября в очередной раз пройдет ИТ-конференция ЮКОН. Будет 2 технических трека, один бизнесовый, один - для дизайнеров и баркэмп (заявки на участие в баркэмпе принимаются).
Студентам, собирающимся работать в ИТ, рекомендуется категорически, бывалым ИТшникам - для развития кругозора рекомендую не профильные доклады (сам так делаю). Я собираюсь как минимум послушать легендарного Стингрея и по-любому что-нибудь из бизнесового трека (программа еще не сформирована, но там всегда интересно), присоединяйтесь!
Регистрация (бесплатно, без СМС): https://youcon.ru/
📘 Что почитать на выходных - 4
🏔 Advantages of monorepo
Имеет ли смысл использовать монорепозитории компаниям меньших размеров, чем Фейсбук или Гугл? Я темой монолитных репозиториев интересуюсь из практических соображений: в RMS мы до сих пор используем CVS, которая по сути является монорепозиторием и хочется найти способ мигрировать на современные инструменты, сохранив преимущества такого подхода. Тем, кому хочется глубже погрузиться в тему, есть также неплохой awesome-список: https://github.com/korfuri/awesome-monorepo.
🏓 Рецепт полезного код-ревью от разработчика из Яндекса
Хорошая практическая статья об аспектах код-ревью с обоих сторон: и как делать так, чтобы ревьюеру было легче работать с вашим кодом, и как делать действительно полезные ревью.
⚙️ Монитор операций закрытия месяца для УТ/КА/УП, или как правильно создать нетривиальное расширение
Одна из основных проблем с расширениями конфигураций 1С - сложность в диагностике причин неработоспособности расширения в новой версии конфигурации. В статье на примере создания расширения разбираются приемы разработки, позволяющие облегчить поиск проблем.
🤖 Intelligent Assistants Have Poor Usability: A User Study of Alexa, Google Assistant, and Siri
Очень подробная (по мнению экспертов, на сегодня - исчерпывающая) статья-исследование проблем юзабилити современных "умных помощников" (голосовых и просто "понимающих"" естеснвенный язык). Из достоверных источников известно, что инструменты семантического анализа текста будут встроены в платформу 1С, а битриксоиды тоже вчера на партнерке анонсировали интеграцию голосового помощника в Б24, так что тема горячая и в нашей экосистеме :-)
📺 Микрофильм будет существовать половину тысячелетия
Все наверное не один раз в голливудских фильмах видели, как главный герой идет в библиотеку и ищет какие-либо факты в подборках газет, просматривая их фото-копии на странном устройстве, похожем на компьютер. Статья - про историю микрографических аппаратов и микрофильмы (оказывается, они все еще активно используются).
#ЧтоПочитатьНаВыходных
🏔 Advantages of monorepo
Имеет ли смысл использовать монорепозитории компаниям меньших размеров, чем Фейсбук или Гугл? Я темой монолитных репозиториев интересуюсь из практических соображений: в RMS мы до сих пор используем CVS, которая по сути является монорепозиторием и хочется найти способ мигрировать на современные инструменты, сохранив преимущества такого подхода. Тем, кому хочется глубже погрузиться в тему, есть также неплохой awesome-список: https://github.com/korfuri/awesome-monorepo.
🏓 Рецепт полезного код-ревью от разработчика из Яндекса
Хорошая практическая статья об аспектах код-ревью с обоих сторон: и как делать так, чтобы ревьюеру было легче работать с вашим кодом, и как делать действительно полезные ревью.
⚙️ Монитор операций закрытия месяца для УТ/КА/УП, или как правильно создать нетривиальное расширение
Одна из основных проблем с расширениями конфигураций 1С - сложность в диагностике причин неработоспособности расширения в новой версии конфигурации. В статье на примере создания расширения разбираются приемы разработки, позволяющие облегчить поиск проблем.
🤖 Intelligent Assistants Have Poor Usability: A User Study of Alexa, Google Assistant, and Siri
Очень подробная (по мнению экспертов, на сегодня - исчерпывающая) статья-исследование проблем юзабилити современных "умных помощников" (голосовых и просто "понимающих"" естеснвенный язык). Из достоверных источников известно, что инструменты семантического анализа текста будут встроены в платформу 1С, а битриксоиды тоже вчера на партнерке анонсировали интеграцию голосового помощника в Б24, так что тема горячая и в нашей экосистеме :-)
📺 Микрофильм будет существовать половину тысячелетия
Все наверное не один раз в голливудских фильмах видели, как главный герой идет в библиотеку и ищет какие-либо факты в подборках газет, просматривая их фото-копии на странном устройстве, похожем на компьютер. Статья - про историю микрографических аппаратов и микрофильмы (оказывается, они все еще активно используются).
#ЧтоПочитатьНаВыходных
Abelov
RMS — удаленная работа для специалистов по 1С
Удаленная работа на постоянной основе в сфере автоматизации учета для разработчиков, аналитиков, консультантов и руководителей проектов