Search
Write a publication
Pull to refresh
5
0

Специалист по БД

Send message

[июль 2025] Настройка проекта AstroJS: VS Code, Prettier, ESlint, Stylelint, PostCSS, минификация файлов

Level of difficultyMedium
Reading time7 min
Views6.6K

AstroJS изначально был движком для создания статичных сайтов. Теперь там есть работа с API, server-side рендеринг, гибридный режим сервера. Можно написать код сайта в Astro-файлах на обычном html + js, а можно подключить визуальный фреймворк на свой выбор: React, Preact, Vue, Solid, Svelte. Подключаем CMS или backend-as-a-service - вот уже замена именитым NextJS и NuxtJS.

Но перед активной фазой создания сайта давайте потратим 10 минут. Настройка проекта для работы в команде займет каких-то шагов 20...

Читать далее

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

Level of difficultyHard
Reading time17 min
Views59K

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

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

Читать далее

C# Generic-подход к разработке web API

Level of difficultyMedium
Reading time32 min
Views14K

Статья-туториал от ведущего разработчика "ITQ-Group" Александра Берегового, в которой мы рассмотрим применение обобщенного подхода при разработке WEB API.

Читать далее

ОС «Альт» — групповые политики в Linux, как в Windows

Level of difficultyEasy
Reading time7 min
Views10K

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

Задачу решили разработчики компании «Базальт СПО». Они дополнили линейку операционных систем «Альт» набором инфраструктурного ПО, которое обеспечивает единое управление компьютерами с ОС «Альт» и Windows, и их пользователями. Решение позволяет избежать двойных затрат на поддержку ИТ-инфраструктуры в переходный период.

Сегодня тысячам государственных и коммерческих организаций необходимо перевести свои цифровые инфраструктуры на российское ПО. Многие зарубежные вендоры покинули российский рынок, приостановив продажу и поддержку своих систем. У заказчиков возникли трудности с обновлением программных продуктов, с приобретением дополнительных лицензий и продлением текущих, с получением техподдержки. Эти риски особенно опасны для критической информационной инфраструктуры (КИИ). На их устранение направлен Указ Президента Российской Федерации №166 от 30 марта 2022 г. «О мерах по обеспечению технологической независимости и безопасности критической информационной инфраструктуры Российской Федерации», а также Постановление Правительства Российской Федерации № 1236 от 16 ноября 2015 «Об установлении запрета на допуск программного обеспечения, происходящего из иностранных государств, для целей осуществления закупок перевод КИИ на российское программное обеспечение.

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

Читать далее

Postgresso №6 (55)

Reading time14 min
Views4.8K

PostgreSQL 16 Beta 2

Изменения по сравнению с 1-й бетой коснулись прежде всего правил сортировки (collation): провайдер по умолчанию, которого выбирает initdb, теперь сноваlibc. В 1-й бете решили сделать так: если доступна ICU, то выбирается ICU. Откатили. Временно или нет - не знаю. То же при сборке из исходников.

Поведение при выборе локали C сlibicu - возвращено обратно кlibicu;[??вот это не понял] На ICU 64 и выше локальC не используется, а у ICU есть собственный механизм для выбора локали или генерации ошибки.

Полный список новых и измененных старых возможностей 16-й версии в release notes. Скачать можно здесь.

Обожаемый и желанный:

Читать далее

Мини-аналог «mail.yandex.ru» для небольшой компании

Level of difficultyMedium
Reading time3 min
Views13K

Приветствую!

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

Немного предыстории

В конце 2018 довелось участвовать в создание инфраструктуры одной поликлиники и одна из задач была организация почтового сервера. По желанию заказчика, предпочтение было отдано внешним службам, а именно pdd.yandex.ru. На тот момент требовалось не более 3-5 пользователей, и это решение посчитали оптимальным и самым быстрым. Но время шло, задачи менялись и в конце 2022 г. число учетных записей выросло до 95 из них активных, в повседневной работе, 25. Когда Яндекс ввел плату за каждого пользователя, было принято решение о переводе всей почты на локальное размещение. К тому же, весь доступ к почте, предполагает только локальное использование, без доступа из внешней сети. Перелопатив кучу вариантов, от коробочных решений до самосборной конфигурации, пал выбор на Kolab Groupware. Выбор был обусловлен желанием работы через WEB интерфейс, с общей адресной книгой, календарем, списком дел и файловым облаком. Плюшек хватало с лихвой, но возник ряд трудностей, о способах решения которых, я напишу ниже.

Читать далее

Алгоритмы компрессии данных: принципы и эффективность

Level of difficultyMedium
Reading time12 min
Views27K


Автор статьи: Артем Михайлов

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

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

Ближайшие бесплатные мероприятия по разработке (5 июля — 6 июля 2023)

Level of difficultyEasy
Reading time1 min
Views968
Читать описание

Неравный бой — Tinkoff эквайринг. Рекуррентные платежи

Level of difficultyMedium
Reading time7 min
Views11K

Цель данной статьи:

1. Помочь разработчикам в интеграции

2. Привлечь внимание команды Tinkoff на проблемы связанные с эксплуатацией их API

Читать далее

Правильные тестовые данные или почему Вася Пупкин лучший друг тестировщиков?

Level of difficultyMedium
Reading time11 min
Views16K

Будучи молодым QA-инженером, я тестировал модуль регистрации пользователя одного десктопного приложения. Набирать сочетания случайных букв в качестве тестовых имени и фамилии мне изначально не нравилось, а использование личных данных считалось некорректным, поэтому я начал использовать имена и фамилии существующих политиков. Барак Обама, Джордж Буш и другие регистрировались в сервисе кастинга голосовых актеров, проводили сессии голосовых записей, исправно платили по счетам и выполняли прочие бизнес-действия. Через некоторое время об этом узнал наш ПМ, который попросил отказаться от практики привлечения политиков в ряды наших тестовых пользователей. Передо мной встал выбор: пользоваться случайным набором букв или придумать некий шаблон. Я выбрал второй вариант. С тех пор персонаж Василий Пупкин стал моим лучшим другом.

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

Узнать больше о правильных тестовых данных

Сравнение тяжеловесности популярных библиотек UI компонент для Vue 3

Level of difficultyEasy
Reading time3 min
Views13K

Библиотеки UI компонент популярны и удобны в некоторых случаях, но у них тоже есть обратные стороны. Одно дело, когда делаешь админку и используешь десятки компонент, другое - когда тебе надо всего пару компонент.

Было проведено исследование - взяты три HTML элемента: Button, Input и Select, и проверено, насколько увеличатся js и css бандлы если использовать для них одну из 10 распространенных UI библиотек для Vue 3.

Читать далее

Книги для начинающих разработчиков: от «Чистой архитектуры» до «Паттернов проектирования»

Reading time5 min
Views40K

Книги — отличный источник знаний, это верно. Но как определить, где хорошая книга, а где не очень? Лучше всего воспользоваться рекомендательными сервисами либо же посмотреть обзоры на разные книги в сети. Именно поэтому сегодня публикуем подборку хороших изданий, которые в основном пригодятся начинающим разработчикам. Но, вероятно, они будут полезны и более опытным коллегам. Под катом — самое интересное!

Читать далее

Субъективно о радиолюбительстве

Level of difficultyEasy
Reading time12 min
Views12K

Далеко не самый удачный пост, вышедший практически только что, вызвал много удивления при прочтении. В комментариях к нему хорошо прошлись по разным косякам, которые были озвучены. В подкасте, наверное, их ещё больше. И это, с одной стороны, странно — действительно, даже при тестировании на 4-ю категорию нужно отвечать на ряд базовых вопросов. С другой, вопросы в тестах простейшие и в этом конкретном случае их будет всего‑то 20 и допускается 5 ошибок. На этом уровне даже элементарные схемотехнические знания не проверяются. Поэтому захотелось сделать короткую выжимку из действующих регламентов и заодно, куда ж без этого, тоже коротко привести свой опыт.

(Там немножко фотографий под спойлерами)

Читать далее

Тексты и надписи. Что не так с тёмной темой

Reading time7 min
Views11K

Совсем недавно мне стали попадаться на Хабре интересные и без преувеличения фундаментальные исследования о роли тёмной темы при проектировании GUI. Особенно отмечу публикацию уважаемой Марии Колчановой @mkolchanova «Как работают глаза и что надо учитывать, создавая тёмную тему приложения». Для меня тёмная тема неприемлема (я могу рассмотреть в ней какую-нибудь таблицу и кое-как мирюсь с ней на сайтах, посвящённых тяжёлой музыке), но мне стало интересно систематизировать, как мода на тёмную тему сочетается с удобочитаемостью и восприятием текста, какие аспекты при выборе шрифта и фона здесь действуют, какова история опытов с тёмной темой. Кстати, ранее я уже публиковал в этом блоге статью о попытках искусственно расширить видимый спектр в инфракрасную и ультрафиолетовую область, вот здесь. Но под катом речь пойдёт о других вещах, в частности, об интересных отличиях между «воспринять», «уловить» и «заметить».  

Чтение с экрана отличается от чтения с бумаги тем, что экран является источником света. Сложно сказать, является ли белый шрифт на чёрном фоне идеальной комбинацией для чтения с бумаги (бумага исходно являлась белой), но электронный носитель текста — продолжение бумажного, поэтому показатели текста и фона на экране исторически «подстраивали» под аналогичные свойства бумаги. Наряду со свойствами контрастности шрифта и фона важен вопрос об удобочитаемости самого шрифта. Исторически предполагалось, что шрифт с засечками хорошо подходит для восприятия длинных текстов (книжных или газетных), однако в исследовании, описанном на Хабре в блоге Tinkoff, делается вывод, что у человека с хорошим зрением восприятие текста с засечками и без засечек почти не отличается. В свою очередь, старики и маленькие дети (соответственно, слабовидящие и плохо умеющие читать) легче воспринимают  шрифт без засечек. Далее сосредоточимся на типичных и экзотических соотношениях шрифта и фона. Выбор цвета шрифта и цвета фона во многом зависит от того, какого типа восприятия мы добиваемся: быстро уловить информационный фрагмент или внимательно прочитать длинный текст.

Читать далее

В поисках альтернативы Jira

Level of difficultyEasy
Reading time4 min
Views58K

Наша команда как и многие другие работала с облачными продуктами Atlassian: Jira и Confluence. Осенью прошлого года, Atlassian отправила нам письмо счастья.

Читать далее

Установка и настройка сервера Matrix Synapse + PostgreSQL + Admin UI + Element WEB. Ubuntu 20 LTS / Ubuntu 22 LTS

Level of difficultyMedium
Reading time11 min
Views83K

Всем привет. В данном гайде я постарался пошагово, подробно и доступно описать процесс установки на свой сервер Matrix Synapse + Element WEB + Admin UI на базе Ubuntu 20 LTS / Ubuntu 22 LTS.

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

Разобравшись с данным вопросом и затратив не мало усилий я решил поделиться своими результатами с сообществом habr.

Читать далее

ALD Pro – средство централизованного управления и как мы выполняли пилотное внедрение. Часть 1

Level of difficultyMedium
Reading time20 min
Views37K

AD — как много в этих буквах для сердца нашего слилось… Один из ключевых сервисов в любой средней или крупной организации — это Microsoft Active Directory. А какие есть альтернативы?

Кому интересно, прошу под кат

Простейший алгоритм разделения слова на слоги

Reading time3 min
Views6.7K
Однажды на проводимом мной практическом занятии [по ЯП] я, скучая, разглядывал список студентов группы. Глаз зацепился за знак ударения в фамилии Лемзекóв, который я поставил [для себя] после того, как произнёс фамилию этого студента неправильно. Я мысленно прочёл эту фамилию по слогам, и тут у меня возник вопрос: «а по какому алгоритму мозг разбивает слова по слогам?» Почему-то интуитивно получается "Лем-зе-ков", а не "Ле-мзе-ков" или "Лем-зек-ов". Я выписал ещё несколько примеров, и разглядывая их размышлял о том, как перевести это в алгоритм.
Читать дальше →

Строим свой SSO сервер используя Spring Authorization Server

Level of difficultyMedium
Reading time45 min
Views47K

На днях я решил сделать под все свои pet-проекты собственный SSO сервис, дабы не заморачиваться каждый раз с авторизацией и аутентификацией. Возиться с этим особо долго мне не хотелось. Все таки это для pet-проектов. Поэтому выбор пал на Spring Security. Мне давно уже было интересно посмотреть в действии как на Spring Boot 3, так и новый Spring Authorization Server версии 1.x.x. В данной статье речь пойдёт о проблемах и их решениях при построении собственного SSO. А также я поставил себе ряд интересных требований, с которыми я постараюсь справиться и рассказать о своём опыте.

Читать далее

Уровни английского языка: детальный разбор критериев в 2023

Level of difficultyEasy
Reading time10 min
Views75K

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

Читать далее

Information

Rating
6,726-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Database Developer
ASP.NET Web API
PostgreSQL
Git