Pull to refresh
6
0

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

Send message

Установка и настройка Samba с доменной авторизацией и аутентификацией (файловый сервер)

Level of difficulty Easy
Reading time 4 min
Views 8.3K

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

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

Новичкам и критикам, как говорится, welcome!

Читать далее
Total votes 8: ↑6 and ↓2 +4
Comments 7

От xWiki к static-HTML. Как мы документацию на Material for MkDocs «переезжали»

Level of difficulty Medium
Reading time 8 min
Views 1.9K

До недавнего времени мы и для внутренней, и для внешней документации использовали xWiki. И если для внутренней документации ее применение оправдано, то для внешней xWiki не самое оптимальное решение: внешнюю документацию создают максимум два–три человека, регистрация дополнительных пользователей не нужна, на xWiki постоянно идут атаки спам-ботов, а изменение структуры документации, переименование, масс-правки, изменение оформления и некоторые другие вещи требуют или правок непосредственно в базе данных, или достаточно много телодвижений. Из плюсов — визуальный редактор, возможность импорта/экспорта статей в формате OpenDocument и гибкая настройка прав. Поэтому было решено для внешней клиентской документации переехать на новый движок, и выбор пал на Material for MkDocs.

Читать далее
Total votes 9: ↑9 and ↓0 +9
Comments 1

Эволюция системы разработки на SQL

Level of difficulty Easy
Reading time 9 min
Views 5K

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

Торгово-клиринговая система Срочного рынка (ТКС Spectra) изначально строилась на основе MS SQL, и за пару десятков лет прошла сложный путь от нескольких серверов БД до огромной системы с сервис-ориентированной архитектурой. Долгое время вся бизнес-логика системы разрабатывалась в программном слое на серверах MS SQL: и матчинг заявок, и расчет обеспечения, и управление клиентами были реализованы на T-SQL.

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

В этой статье мы хотим рассказать об эволюции нашей системы разработки на SQL.

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

Самый простой способ обхода блокировок доступа к сайтам любых стран

Level of difficulty Easy
Reading time 4 min
Views 118K

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

Я понимаю (программисты, сисадмины, DevOps'ы и т.д.) данный способ нельзя назвать уникальным, оптимальным и вообще, так лучше не делать, но согласитесь - это достаточно простой способ туннелирования трафика, который позволяет обойти (если не все), то огромное количество разнообразных сетевых блокировок.

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

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

Интересно?

Читать далее
Total votes 107: ↑78 and ↓29 +49
Comments 412

Делаем домашний VPS для тестовых и пет проектов

Level of difficulty Medium
Reading time 7 min
Views 17K

Привет, Хабр! Меня зовут Васьен, я – .NET backend разработчик. До этого момента я несколько месяцев проходил увлекательней жизненный квест по поиску работы, выполняя одни и те же задания – расскажи рекрутеру кем ты себя видишь через 5 лет, реши тестовое, не получи ответ. И задумавшись о том, как же повысить вероятность попасть на тех собес после решения тестового и выделиться на фоне остальных кандидатов, я пришел к идеи развернуть на компьютере окружение, в котором я смогу его запустить и отправить ссылку для взаимодействия.

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

Читать далее
Total votes 14: ↑12 and ↓2 +10
Comments 20

Как писать более чистый CSS: дюжина советов от банальных до неочевидных

Level of difficulty Easy
Reading time 9 min
Views 15K

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

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

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

Сто паттернов для разработки корпоративных программ. Часть 2.1

Level of difficulty Medium
Reading time 7 min
Views 5.1K

В этой статье представлены такие паттерны, как Abstract Document, Monad, Object Mother, Object Pool, Step Builder. Примеры приведены на .NET 7 и C#. Приятного чтения.

Продолжение в статье "Сто паттернов для разработки корпоративных программ. Часть 2.2".

Читать далее
Total votes 12: ↑2 and ↓10 -8
Comments 59

Личный прокси для чайников: универсальный обход цензуры с помощью VPS, 3X-UI, Reality/CDN и Warp

Level of difficulty Medium
Reading time 27 min
Views 103K

На фоне прошлогоднего обострения цензуры в РФ, статьи автора MiraclePTR стали глотком свободы для многих русскоязычных айтишников. Я же хочу приоткрыть дверь к свободной информации чуть шире и пригласить «не‑технарей» («чайников»), желающих поднять личный прокси‑сервер для обхода цензуры, но дезориентированных обилием информации или остановленных непонятной технической ошибкой.

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

Статья рассчитана на «чайников», не знакомых с предметной областью. Однако и люди «в теме» могут найти нечто полезное (например, чуть более простую настройку проксирования через CloudFlare без необходимости поднимать nginx на VPS).

Если у вас ещё нет личного прокси для обхода цензуры — это знак.

Читать далее
Total votes 113: ↑111 and ↓2 +109
Comments 281

Публикация локального сервера из дома в интернет

Level of difficulty Easy
Reading time 10 min
Views 36K

Приветики. Надеюсь, все отошли от новогодних, и можно писать и читать дальше. Как хозяин умного дома, я состою в чатике по Home Assistant, там прекрасное ответчивое комьюнити,
но периодически задаётся вопрос по тому, как собственно выставить свой веб сервис в интернет. И оказывается, что в двух словах тут не ответишь, а вменяемой инструкции на которую можно дать ссылку - нет. Так что теперь она будет здесь.

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

Мы рассмотрим здесь несколько сценариев - статический белый айпи, динамический белый айпи, и серый. Для серого рассмотрим варианты с готовыми сервисами, с помощью Keenetic и с помощью ssh туннеля. Погнали!

Читать далее
Total votes 66: ↑64 and ↓2 +62
Comments 95

JWT-аутентификация при помощи Spring Boot 3 и Spring Security 6

Level of difficulty Medium
Reading time 15 min
Views 24K

Переход от базовых приложений к более сложным требует использования Spring Security для обеспечения безопасности. Новая версия, Spring Security 6, изменяет некоторые базовые реализации, а русскоязычных материалов на эту тему очень мало. В этой статье мы рассмотрим JWT-аутентификацию и авторизацию с помощью Spring Boot 3 и Spring Security 6, чтобы помочь начинающем разработчикам разобраться и начать пользоваться базовым функционалом этой библиотеки. Цель данной статьи - показать, как использовать JWT-аутентификацию с API-интерфейсами.

Читать далее
Total votes 16: ↑13 and ↓3 +10
Comments 10

Производственный календарь в PostgreSQL

Level of difficulty Easy
Reading time 6 min
Views 11K

Новый Год уже совсем на носу, а значит нужен свежий производственный календарь в базе данных PostgreSQL. Но как совершенно обленившийся IT-шник, заводить его руками не хочется. Хочется, чтобы вызовом одной функции он сразу появился. Ну а уж из этой функции можно его сохранить в табличку и спокойно использовать до следующего Нового Года. А тогда опять просто вызвать вызвать функцию и с чистой совестью отрапортовать о выполненной работе. Цель статьи - показать возможности COPY ... FROM PROGRAM и простейшие приемы парсинга XML в PostgreSQL.

Читать далее
Total votes 22: ↑21 and ↓1 +20
Comments 20

Строим свой SSO. Часть 4: Vue.js, Регистрация, Сброс пароля

Level of difficulty Medium
Reading time 44 min
Views 8.1K

Всем привет!
Мы продолжаем строить собственный SSO Server. Сегодня мы детально разберем Vue.js приложение, а также спроектируем и реализуем долгожданные механизмы регистрации и сброса пароля. Как всегда, дополнительно мы разберём ряд интересных общесистемных решений, которые наверняка Вам пригодятся в дальнейшем.

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

Кастомизируем VS Code для веб-разработки

Level of difficulty Easy
Reading time 10 min
Views 26K

Visual Studio Code — это бесплатный, шустрый (что важно на больших проектах) и глубоко кастомизируемый редактор кода.

В статье расскажу, какие настройки и плагины VS Code использует наша команда фронтенда в KTS. Материал может быть полезен для JavaScript- и React-разработчиков, а ещё для тех, кто уже давно пользуется VS Code, но не знает о некоторых полезных плагинах и фичах для повседневного использования. 

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

Также я рассмотрел инструменты для оптимизации работы с Git, шаблоны директорий и другие возможные настройки.

Читать далее
Total votes 46: ↑42 and ↓4 +38
Comments 17

Создание пользовательского типа поля Form в Joomla 5 на примере Modal Select

Reading time 14 min
Views 1.3K

В панели администратора Joomla встречаются поля, которые нужно заполнить данными из других компонентов: указать материал, пункт меню, контакт, товар и т.д. Обычно такие поля оформляются в виде выпадающего списка select option, могут оформляться в виде input type="text" с datalist, но есть и удобные поля, показывающие список искомых сущностей, с фильтрацией, поиском, пагинацией и т.д.

Все мы видели эти поля в действии при выборе материала в пункте меню типа "Материалы - Материал", "Контакты - Контакт", или при создании алиаса (псевдонима) пункта меню - "Системные - Псевдоним".

Как создать точно такое же, но своё (например, для выбора товаров) расскажет эта статья.

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

Как интегрировать авторизацию через Госуслуги (ЕСИА) с помощью Docker и Typescript

Reading time 6 min
Views 31K

Привет, Хабр! В одном из постов блога мой коллега Иван писал о нашем блокчейн-сервисе для онлайн-голосований WE.Vote. Он подробно разобрал, как работает WE.Vote с точки зрения технологий. Но чтобы сервисы удаленного голосования можно было использовать для принятия официальных решений юрлиц, не хватает еще одного важного компонента — достоверной верификации участников. В России для этого можно провести интеграцию с ЕСИА (Единой Системой Идентификации и Аутентификации) — проще говоря, с Госуслугами. Интеграция эта заметно отличается от интеграции с другими oauth2-сервисами, как, например, Google или VK. В этом посте мы постараемся помочь тем, кто захочет интегрировать ЕСИА в свой сервис через стек, подобный нашему, а также дадим несколько полезных ссылок по ЕСИА в принципе.

Читать далее
Total votes 6: ↑4 and ↓2 +2
Comments 8

Переделка мини компьютера в мобильный NAS

Level of difficulty Medium
Reading time 9 min
Views 33K

Что если взять готовый мини компьютер и установить в него несколько SSD дисков для того чтобы получить мобильный NAS?

В статье рассмотрена возможность доработки готового мини ПК на процессоре RK3568 до мобильного NAS с помощью дополнительного модуля дисков.

Рассказывается как собрать почти полный прототип мобильного NAS на основе мини ПК и приводится пример разработки своего модуля дисков.

Доработать можно всё, но...
Total votes 42: ↑42 and ↓0 +42
Comments 66

[SDK и UI-библиотеки] Backend-Driven UI

Level of difficulty Medium
Reading time 3 min
Views 1.7K

Это глава 46 раздела «SDK и UI-библиотеки» моей книги «API». Второе издание книги будет содержать три новых раздела: «Паттерны API», «HTTP API и REST», «SDK и UI‑библиотеки». Если эта работа была для вас полезна, пожалуйста, оцените книгу на GitHub, Amazon или GoodReads. English version on Substack.

В предыдущей главе мы обсудили, каким образом можно упростить разработку сложных компонентов с использованием паттерна «модель». Другой способ обойти сложность «переброса мостов» между несколькими предметными областями, которые нам приходится сводить в рамках одного UI-компонента — это убрать одну из них. Как правило, речь идёт о бизнес-логике: мы можем разработать компоненты полностью абстрактными, и скрыть все трансляции UI-событий в полезные действия вне контроля разработчика.

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

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

Два студента опровергли широко известную математическую гипотезу

Reading time 10 min
Views 18K

Саммер Хааг и Клайд Кертцер возлагали большие надежды на свой летний исследовательский проект. Нанести неожиданный удар в слабое место целой области математики не входило в их число.

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

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

Читать далее
Total votes 54: ↑45 and ↓9 +36
Comments 23

Александров Павел Сергеевич: советский математик, чьи труды высоко оценило мировое научное сообщество

Level of difficulty Easy
Reading time 7 min
Views 4K

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

Читать далее
Total votes 30: ↑26 and ↓4 +22
Comments 5

Готовим микрофронтенды на чистом JS без фреймворков

Level of difficulty Medium
Reading time 15 min
Views 7.7K

Привет, Хабр! Меня зовут Евгений Лабутин, я разработчик в МТС Digital. Сегодня я расскажу вам о своем рецепте приготовления микрофронтендов без использования каких либо фреймворков. Ведь такие фреймворки как Webpack Module Federation, Single-SPA, SystemJS и подобные вам просто не нужны для написания микрофронтендов, ровно так же как вам не нужен jQuery для написания современных фронтендов. Ведь все необходимое для разработки и работы Микрофронтендов уже встроено во все современные браузеры. Интересно? Добро пожаловать в статью.

Читать далее
Total votes 24: ↑18 and ↓6 +12
Comments 21

Information

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

Specialization

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