Pull to refresh
2
0

1С-разработчик

Send message

Как мы работаем с ресурсами в веб-приложениях

Reading time14 min
Views6.4K

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

Мы провели анализ существующих подходов и хотим рассказать вам об этом. Добро пожаловать под кат!

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments8

Как американская коррупция превратила физика-ядерщика в быдло-кодера

Level of difficultyEasy
Reading time17 min
Views64K

Это история из цикла «как войти в IT», написанная старпером, ветераном броуновского движения, который помнит динозавров. Поэтому его опыт вхождения в ИТ никому не пригодится, но представляет интерес с точки зрения истории.  

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

К написанию данного текста меня подтолкнула беседа с одним из крутых разрабов из «жирной» конторы, с которым мы пересеклись на яхте в Средиземном море. Узнав, что я тоже из Бауманки, и у меня свой бизнес, он заинтересовался и выспрашивал. Как я смог начать бизнес на софте, почему не пошел в большую контору, типа Yandex, Сбер и прочие. У него тоже знакомство с софтом началось как создание собственной разработки по анализу результатов металлургических испытаний в лаборатории, но закончилось работой прогером по найму. Попивая вино на яхте где-то между Турцией и Грецией в 2023 году, он предположил, что, возможно, если бы он продолжал писать софт для металлургических исследований, то, наверное, сейчас мог плавать на своей яхте, а не арендованной, и не около Турции, а на Карибах (но это не точно). А поскольку фарш невозможно провернуть назад, я решил описать свою историю успеха, так как она забавна и поучительна.

Читать далее
Total votes 313: ↑298 and ↓15+339
Comments219

Чек-лист по разработке облачных приложений. Часть 2 — аспекты безопасности

Level of difficultyEasy
Reading time10 min
Views653

Всем добрый день, я Станислав Тибекин, CEO компании Nixys. Мы продолжаем серию переводов статей Эяля Эстрина из AWS про особенности создания cloud-native приложений. В этой части обсудим вопросы безопасности.

Посмотреть чек-лист
Total votes 4: ↑4 and ↓0+5
Comments3

Doom практически на всём

Level of difficultyEasy
Reading time21 min
Views12K

Многие годы на ресурсах около-компьютерной тематики регулярно всплывают сенсационные новости про «невозможные» порты легендарной игры Doom — как очередной энтузиаст и Кулибин запустил её и на этом, и на том, и каждый раз на всё более странных и неподходящих предметах. По разнообразию версий и безумию некоторых из них этот культурный феномен вполне может потягаться с Bad Apple.

Главное в этом, конечно, вау-фактор: «а что, так можно было?», подивиться и пойти дальше. Мало кто интересуется деталями, можно ли в это играть, действительно ли это Doom, действительно ли есть, чему удивляться, а если есть, то чему именно. И в целом — как и что именно на самом деле было сделано. Но мало кто — это не про нас. Мы — поинтересуемся!
Читать дальше →
Total votes 48: ↑47 and ↓1+61
Comments22

Реверсинг приложений под Android. Разбираемся с функционалом

Reading time4 min
Views1.4K

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

Читать далее
Total votes 5: ↑5 and ↓0+6
Comments0

Шифрование бэкапов в ClickHouse: виды, инструменты и настройка

Level of difficultyMedium
Reading time7 min
Views1.2K

Один из наших клиентов обнаружил, что резервные копии ClickHouse, которые он хранит в S3 провайдера CROC, не очень-то и шифруются. А ФСТЭК суров. Перед нами была поставлена задача: настроить шифрование бэкапов. В статье покажу, как мы это сделали.

Ещё расскажу вам про такой инструмент как clickhouse-backup, распишу его плюсы и минусы и продемонстрирую, как легко восстановить данные из шифрованных бэкапов.

Пошли шифровать!
Total votes 7: ↑7 and ↓0+10
Comments0

Как в Tele2 автоматизировали тестирование SAP ERP с помощью Python

Reading time8 min
Views3.5K

Привет, Хабр! Меня зовут Анастасия Валеева, я – руководитель группы обеспечения качества в Tele2. Наша команда работает в большинстве своём с SAP ERP, и мы не понаслышке знаем, что автоматизация данной платформы — дело далеко не тривиальное. В этой статье я хочу поделиться с вами, как и зачем мы автоматизировали тестирование с помощью Python.

Интересно? Переходите под кат)
Total votes 4: ↑4 and ↓0+6
Comments13

Чего нам не хватает в регистрах 1С

Reading time4 min
Views4.7K

Регистры накопления в 1С хороши своей простотой. Но не слишком ли они просты? Разговор о том, что могло бы быть в регистрах 1С, позволит вам лучше понять как устроено 1С:Предприятие. Какие типовые задачи приходится решать разработчикам конфигураций и о каких ограничениях следует знать аналитику.

Читать далее
Total votes 7: ↑5 and ↓2+4
Comments55

Собака лает, караван идет

Level of difficultyEasy
Reading time8 min
Views5.6K

Тут я переработаю свой опыт взаимодействия с 1С и другими системами. А также свой личный, необъективный, частично искаженный, но мой длинною в 20 лет программирования опыт. Надеюсь, что открою для кого-то новое направление мыслей, ну или исповедуюсь и только.

Читать далее
Total votes 11: ↑9 and ↓2+9
Comments22

Keycloak — больно не будет

Level of difficultyHard
Reading time17 min
Views35K

Привет! Меня зовут Алексей, я DevOps-инженер компании Nixys. «Как правильно и своевременно предоставлять и отнимать доступ у различных сотрудников?» — этот вопрос беспокоит всех. Особую важность эта задача приобретает, когда продукт начинает быстро расти — если ваш штат регулярно меняется, вопросы безопасности данных и работоспособности системы должны стоять на особом контроле.

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments5

Приручаем GitLab: прикольные фишки и инциденты, которые упростят вашу жизнь

Level of difficultyMedium
Reading time11 min
Views38K

В текущих реалиях все IT-продукты разрабатываются с использованием какого-либо ПО, способного управлять репозиториями программного кода для Git. В нашем случае, хотелось бы рассказать про один из самых популярных продуктов — Gitlab. «Gitlab — наше всё» должно быть слоганом каждой компании, которая его использует, иначе могут произойти события, которые приведут к печальным последствиям. На Habr можно найти множество различной информации, связанной с кейсами, туториалами или просто интересными историями. Но сколько бы ни было написано, найти место где было бы собрано всё и сразу — не получилось. Придется исправлять. 

Начнём?
Total votes 24: ↑21 and ↓3+24
Comments3

Это база: нюансы работы с Redis. Часть 1

Level of difficultyMedium
Reading time15 min
Views37K

Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на то, что в Интернете очень много статей и докладов по этой БД, мы в своей практике достаточно часто встречаемся с непониманием некоторых основных концепций Redis и со стороны разработчиков, и со стороны системных администраторов.

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

Читать далее
Total votes 79: ↑79 and ↓0+79
Comments5

Б значит не Безумие, а Безопасность: часть 1

Level of difficultyMedium
Reading time10 min
Views6.2K

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

В первой части я расскажу про проект, который недавно пришел к нам с таким ТЗ: 

1. Замкнутый контур;

2. Отсутствие CVE во всех используемых продуктах;

3. Контроль безопасности уже имеющейся инфраструктуры;

4. Контроль доступа до среды;

5. Автоматизация процессов.

Давайте посмотрим, что из этого вышло. 

Читать далее
Total votes 5: ↑4 and ↓1+5
Comments0

Б значит не Безумие, а Безопасность: часть 2 — перезагрузка

Level of difficultyMedium
Reading time13 min
Views3.5K

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

Во второй части я продолжу рассказ про проект, с которым мы уже познакомились ранее

1. Напомню про требования:

2. Замкнутый контур;

3. Отсутствие CVE во всех используемых продуктах;

4. Контроль безопасности уже имеющейся инфраструктуры;

5. Контроль доступа до среды;

6. Автоматизация процессов.

Но как быть, если ваша инфраструктура располагается в рамках kubernetes оркестратора? Как быть, если вы используете managed решение? Какие подходы для организации безопасности будут применимы? Под катом — про это, а еще про Managed Service for Kubernetes и Yandex Cloud, Kyverno, Tetragon, Falco и многое другое. 

Давайте посмотрим, что было дальше?

Что было дальше?
Total votes 4: ↑4 and ↓0+4
Comments1

Prometheus: от основ до mem-saving оптимизации

Level of difficultyMedium
Reading time13 min
Views9.8K


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

Однако, настройка мониторинга сама по себе может стать вызовом, особенно когда речь идет о крупных инфраструктурах. На многих наших проектах в качестве инструмента мониторинга мы используем довольно популярное решение — Prometheus, при работе с которым порой возникают трудности. Их изучение и последующее решение и сподвигли нас на написание данной статьи.
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments2

Почтовый сервер с нуля. Часть первая

Level of difficultyMedium
Reading time17 min
Views32K

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

В этом материале будет представлена связка полноценного почтового сервера в виде Exim4+Dovecot+PostfixAdmin+RainLoop.

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments27

Дом, милый дом: нюансы работы с ClickHouse. Часть 1

Level of difficultyMedium
Reading time12 min
Views10K

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

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments2

Б значит не Безумие, а Безопасность. Часть 3 — Последний элемент

Level of difficultyMedium
Reading time11 min
Views2K

В финальной статье мне хочется поделиться кейсом повышения безопасности одного из самых важных компонентов инфраструктуры — базы данных (в моём случае — PostgreSQL v14 с управлением через patroni). Расскажу про то, как повысить скорость анализа потенциальных инцидентов, как настроить процессы шифрования дисков, как сгенерировать SSL‑сертификаты для базы данных и обеспечить их двухстороннюю проверку. А ещё поговорим про бэкапы и wal‑g-backup. Надеюсь, статья поможет каждому избежать ошибок в планировании и узнать что-то новое.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments2

Гуманитарный сдвиг в подготовке архитекторов 1С

Level of difficultyEasy
Reading time3 min
Views2.6K


В чем заключается миссия архитектора 1С? По большому счету в том, чтобы задать верное направление усилиям разработчиков. Архитектор 1С должен обладать способностью заглянуть в будущее. Ясно представить себе судьбу и жизненный путь создаваемого продукта. Чего могут захотеть от него пользователи? С чем придется столкнуться тем, кто будет дорабатывать и развивать продукт? Архитектор 1С должен сделать так, чтобы и первым и вторым было максимально удобно с будущим продуктом. Довольно сложная инженерная задача. Каждый раз ее приходится решать заново. Какие вызовы появились в этой области в последнее время. И где здесь место гуманитарным способностям. Поговорим об этом ниже
Читать дальше →
Total votes 6: ↑5 and ↓1+6
Comments3

Охота на недостающий тип данных

Level of difficultyMedium
Reading time11 min
Views14K
Направленный граф — это набор узлов, связанных стрелками (рёбрами). Как узлы, так и рёбра могут содержать данные. Вот несколько примеров:

Все графы созданы с помощью graphviz (источник)

В сфере разработки ПО графы используются повсеместно:

  1. Зависимости пакетов, как и импорт модулей, формируют направленные графы.
  2. Интернет — это граф, состоящий из ссылок между веб-страницами.
  3. При проверке моделей анализ выполняется путём изучения «пространства состояний» всех возможных конфигураций. Узлы — это состояния, а рёбра — это допустимые переходы между ними.
  4. Реляционные базы данных — это графы, в которых узлы являются записями, а рёбра — внешними ключами.
  5. Графы — это обобщение связанных списков, двоичных деревьев и хэш-таблиц.1

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

Я вижу графы повсюду и использую их для анализа всевозможных систем. В то же время я побаиваюсь использовать их в коде. Какой из популярных языков программирования ни возьми, поддержка графов в них практически отсутствует. Ни в одном её нет в виде встроенного типа, очень мало где они прописаны в стандартной библиотеке, и у многих языков нет для этой функциональности надёжного стороннего пакета. Чаще всего мне приходится создавать графы с нуля. Существует большой разрыв между тем, как часто инженерам ПО могут понадобиться графы и тем, в какой степени экосистема их поддерживает. Где все графовые типы?
Читать дальше →
Total votes 49: ↑47 and ↓2+69
Comments21
1

Information

Rating
4,721-st
Registered
Activity