Как стать автором
Обновить
15.2
Карма
0
Рейтинг
Ingvar Vilkman @ZEEGIN

Программист

  • Публикации
  • Комментарии

Снова про UI\UX дизайн в 1С или как ускорить разработку мобильных приложений

Разработка мобильных приложенийДизайн мобильных приложенийДизайн

              Ранее делился тем, как мы решаем проблему отсутствия UI\UX дизайна в 1С с помощью Javascript и React.js. Теперь обсудим, как UI\UX дизайн ускоряет разработку и внедрение мобильных приложений на платформе 1С:Предприятие.

Поехали!
Всего голосов 6: ↑3 и ↓3 0
Просмотры2.3K
Комментарии 3

Новости

Показать еще

Архитектура мозга. Концепция каналов

Искусственный интеллектМозг


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


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

Много букв и ни слова про машинное обучение
Всего голосов 22: ↑16 и ↓6 +10
Просмотры8.2K
Комментарии 76

Архитектура мозга. Концепция матриц

Искусственный интеллектМозг


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


Данная статья не претендует на научность. Читатель может считать ее чистой спекуляцией. Критика приветствуется.

Читать дальше →
Всего голосов 17: ↑14 и ↓3 +11
Просмотры6.3K
Комментарии 70

Про кластер серверов 1С

Анализ и проектирование системАлгоритмыERP-системы
Кластер — это разновидность параллельной
или распределённой системы, которая:
1. состоит из нескольких связанных
между собой компьютеров;
2. используется как единый,
унифицированный компьютерный ресурс

Gregory F. Pfister, «In search of clusters».


Дано: есть бизнес-приложение (например, ERP-система), с которым работают одновременно тысячи (возможно, десятки тысяч) пользователей.

Требуется:
  1. Сделать приложение масштабируемым, чтобы при увеличении количества пользователей можно было за счёт наращивания аппаратных ресурсов обеспечить необходимую производительность приложения.
  2. Сделать приложение устойчивым к выходу из строя компонентов системы (как программных, так и аппаратных), потере связи между компонентами и другим возможным проблемам.
  3. Максимально эффективно задействовать системные ресурсы и обеспечить нужную производительность приложения.
  4. Сделать систему простой в развертывании и администрировании.

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

К желаемому результату мы пришли не сразу.

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

image
Читать дальше →
Всего голосов 11: ↑10 и ↓1 +9
Просмотры26.7K
Комментарии 28

1С — Добро и зло. Расстановка точек в холиварах вокруг 1С

ПрограммированиеIT-инфраструктураERP-системы

image


Друзья и коллеги, в последнее время на Хабре участились статьи с хейтом в адрес 1С, как платформы для разработки, и выступлениями ее защитников. Эти статьи обозначили одну серьезную проблему: чаще всего, критики 1С критикуют ее с позиции "не осиливших", ругая проблемы, которые де-факто, легко решаются, и, напротив, не задевая проблемы, которые действительно важны, стоят обсуждения и не решаются вендором. Полагаю, что имеет смысл провести трезвый и взвешенный обзор платформы 1С. Того, что она умеет, того что она не умеет, того что она должна бы делать, но не делает и, на сладкое — то, что она делает на ура, а ваши разработчики на %technology_name% будут делать стопицот лет, выкинув на ветер не один годовой бюджет.


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


Под катом — масса толстых набросов на 1С, на критиков 1С, на Java, .NET и вообще… Вентилятор заправлен, добро пожаловать!

Читать дальше →
Всего голосов 80: ↑66 и ↓14 +52
Просмотры71.6K
Комментарии 799

Как устроена защита детей от информации — и феерическая история про то, откуда она сначала взялась (18+)

МосиграУправление продуктомЗаконодательство в IT


Всё началось с американских комиксов после Второй Мировой. Дело в том, что до войны ввели запрет на продажу порнографии, а порнографией нередко занимались бывшие бутлегеры. И вот у них встали печатные станки, и надо было что-то срочно придумывать. Придумались комиксы, поскольку с накалом обстановки из-за войны начала расти потребность в простых штуках (а комиксы тогда делали так, что читать уметь далеко не обязательно) и простых же супергероях, дарящих утешение.

Появились Супермен и его братва. Чуть позже, примерно с появлением Чудо-женщины, всё это эволюционировало обратно к мягкой порнографии (оценочное суждение). Забегая вперёд — доктор психиатрических наук обвинял эту серию в развитии множества половых извращений у малолетних американцев. Почему? Да потому что для аудитории самый естественный сюжет с дамой в трусах поверх остальной не очень богатой одежды — быть в беде. Сексуально. Ну, насколько тогда было возможно.
Читать дальше →
Всего голосов 177: ↑175 и ↓2 +173
Просмотры78.4K
Комментарии 816

Используйте GIT при документировании

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

Изложенный здесь подход, с примером конкретной реализации, имеет низкий порог вхождения. Технически, уже завтра вы можете начать работать по-новому.
Читать дальше →
Всего голосов 27: ↑24 и ↓3 +21
Просмотры17.1K
Комментарии 30

Принципы проектирования справочников номенклатуры в 1С Управление Предприятием 2 (ERP 2.4.6)

Анализ и проектирование систем
Из песочницы
Оглавление
Основные принципы работы
Справочники и связанные с ними объекты
Перечисление «Типы номенклатуры»
Справочник «Виды номенклатуры»
Справочник «Товарные категории»
Справочник «Товарные характеристики»
Дополнительные реквизиты и сведения
Функционал «Номенклатура, продаваемая совместно»
Справочник «Производители»
Справочник «Номенклатура поставщиков»
Справочник «Ценовые группы»
Справочник «Сезонные группы номенклатуры»
Справочник «Политики учёта серий»
Справочник «Группы доступа номенклатуры»
Резюме

Принципы системного подхода к проектированию справочников номенклатуры в 1С Управление Предприятием 2 (ERP 2.4.6) или как избежать замусоривания.

В 1С Управление предприятием 2 используется целое семейство справочников для работы с номенклатурой. Эти справочники являются частью НСИ. Правильно организованный подход к НСИ гарантирует контроль работы конфигурации и пользователей. Поэтому работа с НСИ требует жёсткого и, самое главное, систематического подхода, в противном случае, справочники мгновенно превращаются в заполненные мусором списки. Кроме того, правильно организованные справочники упрощают работу с составлением запросов и выборок. Помимо этого, систематически организованные и заполняемые справочники позволяют применять математический аппарат для работы с ними (в основном аппарат из теории графов). И, независимо от этого, правильно организованные справочники позволяют вести корректную кодировку товаров.

Какие же принципы позволяют организовать систематическую работу со справочниками в 1С ERP?
Читать дальше →
Всего голосов 35: ↑31 и ↓4 +27
Просмотры33.1K
Комментарии 9

Как мы перевели 10 миллионов строк кода C++ на стандарт C++14 (а потом и на C++17)

C++Разработка под MacOSРазработка под LinuxРазработка под Windows
Некоторое время назад (осенью 2016), при разработке очередной версии технологической платформы 1С:Предприятие внутри команды разработки встал вопрос о поддержке нового стандарта C++14 в нашем коде. Переход на новый стандарт, как мы предполагали, позволил бы нам писать многие вещи элегантней, проще и надежней, упрощал поддержку и сопровождение кода. И в переводе вроде бы нет ничего экстраординарного, если бы не масштабы кодовой базы и специфические особенности нашего кода.

Для тех кто не знает, 1С:Предприятие – это среда для быстрой разработки кросс-платформенных бизнес-приложений и runtime для их выполнения в разных ОС и СУБД. В общих чертах в состав продукта входят:


Мы стараемся по максимуму писать один код для разных ОС — кодовая база сервера общая на 99%, клиента — примерно на 95%. Технологическая платформа 1С:Предприятие преимущественно написана на C++ и ниже приведены приблизительные характеристики кода:

  • 10 миллионов строк С++ кода,
  • 14 тысяч файлов,
  • 60 тысяч классов,
  • полмиллиона методов.

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

image
Читать дальше →
Всего голосов 76: ↑74 и ↓2 +72
Просмотры44.5K
Комментарии 171

Процесс ревью кода в hh.ru

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


Читать дальше →
Всего голосов 40: ↑37 и ↓3 +34
Просмотры17.3K
Комментарии 2

Контейнеры для взрослых (Часть 03): 10 вещей, которые не надо делать с контейнерами

Red HatOpen sourceВиртуализацияРазработка под Linux
Вы, наконец, сдались на милость контейнеров и обнаружили, что они решают массу проблем и имеет массу преимуществ:

  1. Контейнеры незыблемы: ОС, библиотеки, папки и приложения – поскольку все это хранится прямо в контейнере, вы на 100 % уверены, что в продакшн всегда пойдет именно тот образ, который тестировался в QA. И работать он при этом будет абсолютно аналогично.
  2. Контейнеры легковесны: Контейнер не ест память впустую. Вместо сотен мегабайт и гигабайт контейнеру нужна память лишь под основной процесс.
  3. Контейнеры быстрые: Контейнер запускается так же быстро, как и обычный Linux-процесс. Не минуты, а буквально считанные секунд.



Однако, многие до сих пор считают, что контейнеры – это виртуальные машины, и забывают про важнейшее их свойство…
Читать дальше: 10 вещей, которые не надо делать с контейнерами
Всего голосов 38: ↑35 и ↓3 +32
Просмотры23.8K
Комментарии 194

Ссылка на трансляцию Слёрма (интенсива по Kubernetes)

SouthbridgeСистемное администрированиеСерверное администрированиеDevOpsKubernetes

Начинается Слёрм. Трансляция стартовала.


Темы дня:


9:15 Автоматизация развертывания инфраструктуры. Ansible
Основы, принципы работы, ускорение ансибля


10:00 Docker, основы практической работы
Docker, его устройство, Dockerfile, docker-compose


11:30 Знакомство с Kubernetes, основные компоненты
Введение в технологию k8s. Описание, применение, концепции
Pod, ReplicaSet, Deployment, Service, Ingress, PV, PVC, ConfigMap, Secret


13:00 Пауза


16:00 Знакомство с Kubernetes: продолжение
Устройство кластера, основные компоненты, отказоустойчивость, сеть k8s — 1 час


17:30 Kubespray, тюнинг и настройка кластера Kubernetes
Особенности настройки серверов Kubernetes
Ansible, установка под Kubespray
Разворачивание кластера с Kubespray


Мероприятие живое. Расписание может плавать.


Ссылка на трансляцию


Читать дальше →
Всего голосов 12: ↑10 и ↓2 +8
Просмотры4.4K
Комментарии 9

Git: советы новичкам – часть 2

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


Читать дальше →
Всего голосов 37: ↑34 и ↓3 +31
Просмотры67.2K
Комментарии 37

Git: советы новичкам – часть 3

PlayrixGit

В финальной части нашей серии статей о работе с Git мы продолжим разговор о ветках, рассмотрим особенности работы с командой push и расскажем, что такое rebase. Первую и вторую статьи серии вы можете прочитать по ссылкам.
Читать дальше →
Всего голосов 55: ↑55 и ↓0 +55
Просмотры57.4K
Комментарии 24

Заделываем дыры в сервере приложений 1С и вокруг него

Сервер МоллИнформационная безопасностьСистемное программированиеIT-инфраструктураСерверное администрирование


В сегодняшней статье я расскажу об уязвимостях сервера 1С в корпоративной сети.


Как показала практика, в инсталляциях с 1С все допускают одни и те же ошибки разной степени серьезности. Я не буду касаться очевидных вещей вроде установки обновлений, но пройдусь по специфике работы сервера приложений под Windows. Например, по возможности бесконтрольно манипулировать базами Microsoft SQL с помощью инструментов 1С.

Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Просмотры47.4K
Комментарии 96

Почему плохо быть отличником

Управление персоналомКарьера в IT-индустрии
Из песочницы
Я отличница. Конечно, не совсем та, которая со сложенными ручками, пятёркой по поведению и отглаженным воротничком. Но золотая медаль, олимпиады, красные дипломы в количестве трёх штук и прочая атрибутика «школьного» успеха налицо. Вот уже 11 лет я работаю в бизнесе — всё это время в ИТ: инженером по тестированию, инженером VoIP, коммерсом. Хорошо работаю, почти не придраться. Всё на «пять», часто с плюсом. И у меня, как у любой отличницы, много историй про одноклассниц, которые в 33 года и замужем, и на последних «мерсах», и со своим делом. «Харэ ныть, пора разобраться, какого, собственно, так происходит?» — в один из дней эта мысль плотно засела в голове. И вот он, разбор полётов — для нас, отличников, для будущего поколения и для родителей, которые «тянут» своих детей от пятёрки к пятёрке.


Читать дальше →
Всего голосов 163: ↑133 и ↓30 +103
Просмотры113.9K
Комментарии 470

Юнит-тестирование для чайников

Разработка веб-сайтовТестирование IT-систем
Tutorial
Даже если вы никогда в жизни не думали, что занимаетесь тестированием, вы это делаете. Вы собираете свое приложение, нажимаете кнопку и проверяете, соответствует ли полученный результат вашим ожиданиям. Достаточно часто в приложении можно встретить формочки с кнопкой “Test it” или классы с названием TestController или MyServiceTestClient.



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

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

We need to go deeper
Всего голосов 70: ↑63 и ↓7 +56
Просмотры757.2K
Комментарии 65

Используйте Stream API проще (или не используйте вообще)

ПрограммированиеJava

С появлением Java 8 Stream API позволило программистам писать существенно короче то, что раньше занимало много строк кода. Однако оказалось, что многие даже с использованием Stream API пишут длиннее, чем надо. Причём это не только делает код длиннее и усложняет его понимание, но иногда приводит к существенному провалу производительности. Не всегда понятно, почему люди так пишут. Возможно, они прочитали только небольшой кусок документации, а про другие возможности не слышали. Или вообще документацию не читали, просто видели где-то пример и решили сделать похоже. Иногда это напоминает анекдот про «задача сведена к предыдущей».


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

Читать дальше →
Всего голосов 71: ↑71 и ↓0 +71
Просмотры127.7K
Комментарии 50

Доступно о криптографии на эллиптических кривых

КриптографияАлгоритмыМатематика
Перевод
image


Тем, кто знаком с криптографией с открытым ключом, наверно известны аббревиатуры ECC, ECDH и ECDSA. Первая — это сокращение от Elliptic Curve Cryptography (криптография на эллиптических кривых), остальные — это названия основанных на ней алгоритмов.

Сегодня криптосистемы на эллиптических кривых используются в TLS, PGP и SSH, важнейших технологиях, на которых базируются современный веб и мир ИТ. Я уже не говорю о Bitcoin и других криптовалютах.

До того, как ECC стала популярной, почти все алгоритмы с открытым ключом основывались на RSA, DSA и DH, альтернативных криптосистемах на основе модулярной арифметики. RSA и компания по-прежнему популярны, и часто используются вместе с ECC. Однако несмотря на то, что магия, лежащая в фундаменте RSA и подобных ей алгоритмов легко объяснима и понятна многим, а грубые реализации пишутся довольно просто, основы ECC всё ещё являются для большинства людей загадкой.

В этой серии статей я познакомлю вас с основами мира криптографии на эллиптических кривых. Моя цель — не создание полного и подробного руководства по ECC (в Интернете полно информации по этой теме), а простой обзор ECC и объяснение того, почему её считают безопасной. Я не буду тратить время на долгие математические доказательства или скучные подробности реализации. Также я представлю полезные примеры с визуальными интерактивными инструментами и скриптами.
Читать дальше →
Всего голосов 127: ↑125 и ↓2 +123
Просмотры144.9K
Комментарии 58

Отчетность в 1С: Система Компоновки Данных (СКД), идея и архитектура

Анализ и проектирование системПроектирование и рефакторинг1С-Битрикс
Одна из самых важных областей бизнес-софта – это отчетность. От того, насколько легко настроить под меняющиеся потребности бизнеса (и законодательства) существующий отчет или сделать новый, может зависеть (причем не в переносном смысле!) судьба бизнеса, будь то отчет для налоговой инспекции или диаграмма зависимости спроса на товары от сезона и других факторов. Мощная и гибкая система отчетности, позволяющая легко извлечь из системы нужные данные, представить их в доступном для понимания виде, позволяющая конечному пользователю перенастроить стандартный отчет так, чтобы увидеть данные в новом свете – это идеал, к которому должна стремиться каждая бизнес-система.

В платформе «1С:Предприятие» за построение отчётов отвечает механизм под названием «Система компоновки данных» (сокращенно СКД). В этой статье мы постараемся дать краткое описание идеи и архитектуры механизма СКД и его возможностей.

image
Читать дальше →
Всего голосов 24: ↑21 и ↓3 +18
Просмотры70.9K
Комментарии 75

Информация

В рейтинге
5,773-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность