Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Домашний сервер на базе Proxmox

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров25K

Привет! Меня зовут Александр Щербаков. Я DevOps команд страхования в Банки.ру. На своём карьерном пути я успел поработать эникейщиком, системным администратором и, наконец, DevOps‑инженером с несколькими командами разработки. Как и любой инженер, я стремлюсь постоянно совершенствоваться: получать новые знания, изучать как устоявшиеся, так и только появившиеся технологии.

И здесь сразу появляется главная проблема — для развития DevOps нужна среда, где можно запускать ПО для исследования. Разработчикам проще: открыл документацию, скачал IDE, начал пробовать и изучать новую технологию. А вот DevOps‑инженеру одной только IDE будет мало, так как часть его работы как минимум завязана на Linux серверах. Поэтому важно не просто знать, как использовать готовые решения, но и понимать, как они функционируют на уровне инфраструктуры.

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

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

Читать далее
Всего голосов 50: ↑48 и ↓2+54
Комментарии129

Python: Как написать систему модов для игры / плагинов для программы

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.6K

Итак, всех приветствую.

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

А начнем мы с того, что установим importlib в ваше виртуальное окружение.

Читать далее
Всего голосов 4: ↑2 и ↓2+2
Комментарии13

Linux, Git и базы данных: что почитать новичкам в Академии Selectel

Время на прочтение4 мин
Количество просмотров8.5K

Источник.

Новичкам бывает сложно войти в администрирование. Комплексные курсы стоят дорого, а самостоятельный поиск информации заканчивается пополнением закладок, о которых вспоминают раз в год. В тексте собрали шесть бесплатных курсов по рекомендации от наших коллег. Их можно пройти сразу или постепенно — сохраним ваш прогресс, когда бы вы ни вернулись.
Читать дальше →
Всего голосов 42: ↑40 и ↓2+52
Комментарии5

Как начать писать на Java в VSCode

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров20K

Давайте признаемся: подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.

Тогда зачем пробовать что‑то другое?

Привет, Хабр! Меня зовут Константин Шибков, я Java‑разработчик в CDEK.

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

Но если у вас есть трудности с доступом к Ultimate версии, а Community вариант не достаточно функционален — самое время попробовать современную альтернативу — Visual Studio Code.

В статье делюсь опытом подготовки среды разработки и изучения вопроса: «А можно ли перейти на VSCode?».

Перейти на VSCode
Всего голосов 65: ↑64 и ↓1+69
Комментарии58

REST API на котиках

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров24K

Привет любителям котиков! Меня зовут Юля, я backend‑разработчик компании CDEK. Я сама не так давно изучала все эти сложные понятия в программировании, поэтому решила помочь и вам разобраться с одним из них.

С какой стороны IT вы бы не пытались войти — в какой‑то момент столкнётесь с понятием REST API. Эта статья создана, чтобы смягчить данное столкновение. Новые темы всегда легче воспринимаются на простых примерах, ну а если это примеры с котиками, то варианта не разобраться просто нет. Хочется обойтись без сложных научных определений, а рассказать самым простым языком. Поэтому, если вы любите сухие и точные формулировки, то вам нужна другая статья :)

Читать далее
Всего голосов 63: ↑60 и ↓3+61
Комментарии26

GitHub Copilot в JetBrains IDEs в РФ

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров22K

В 2022 году в публичный доступ вышел GitHub Copilot – довольно удобный современный инструмент для разработчиков. В этой короткой статье поделюсь своим опытом взаимодействия с GitHub Copilot, а главное тем, как его использовать в IDE от JetBrains. Приятного чтения!

Читать далее
Всего голосов 23: ↑12 и ↓11+6
Комментарии45

Secure Scripting: Пошаговое руководство по автоматизации генерации паролей в Linux с помощью Bash

Время на прочтение5 мин
Количество просмотров1.9K

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

Читать далее
Всего голосов 8: ↑5 и ↓3+3
Комментарии4

История терминала как инструмент продуктивности

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров7.3K

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

Читать далее
Всего голосов 10: ↑9 и ↓1+14
Комментарии3

Мега-Учебник Flask Глава 4: База данных (издание 2024)

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров7.1K

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

Начать изучение
Всего голосов 8: ↑7 и ↓1+8
Комментарии6

Что можно сделать на личном веб-сайте

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров22K

Blot просто берёт и превращает папку в сайт. Текстовые файлы в папке автоматически становятся веб-страницами на сайте

Мы уже упоминали десяток способов, как использовать личный VPS в минимальной конфигурации за 130 рублей. Это облачное хранилище для файлов, архив для бэкапов, почтовый сервер, игровой сервер и т. д. На него можно поставить практически любой софт: 0,5 ГБ оперативной памяти хватит для запуска большинства linux-приложений (без GUI).

И веб-сервер с личным сайтом и блогом — одно из таких приложений. Почему нет? За доллар в месяц вложение в личный бренд и технологическую независимость окупится многократно.
Читать дальше →
Всего голосов 49: ↑32 и ↓17+27
Комментарии32

Как настроить префикс в PortProton

Время на прочтение2 мин
Количество просмотров5K

В программу PortProton для запуска Windows-игр под Linux добавлена возможность использовать в ОС «Альт» установленный в систему wine и wine-etersoft.

Список ПО, которое можно запускать при помощи PortProton, существенно расширился.

Покажем по шагам, как создавать и настраивать новые префиксы в PortProton для использования системного wine. Этой же инструкцией можно воспользоваться для встроенных wine в PortProton.

Читать далее
Всего голосов 11: ↑10 и ↓1+12
Комментарии4

Микросервис на Python+ FastAPI

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров17K

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

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

В микросервисной архитектуре приложение разбивается на несколько отдельных служб, которые выполняются в отдельных процессах. Существует другая база данных для разных функций приложения, и службы взаимодействуют друг с другом с использованием HTTP, AMQP или двоичного протокола, такого как TCP, в зависимости от характера каждой службы. Межсервисное взаимодействие также может осуществляться с использованием очередей сообщений, таких как RabbitMQ , Kafka или Redis .

Читать далее
Всего голосов 12: ↑11 и ↓1+14
Комментарии7

Развертываем peer-to-peer чат с голосом, видео, шарингом экрана, файлов и паролем

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров9K

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

Что будет ниже:

Поиск open source решения для общения голосом, шаринга экрана, включения видео и чатов в режиме peer-to-peer, без лишних бекендов
Запуск этого решения в открытую в github pages
Заворачивание этого решения на приватный сервер
Простенькое закрытие доступа туды через basic http auth
Заключение с описанием некоторых замечаний и потенцевальных возможностей

Читать далее
Всего голосов 22: ↑20 и ↓2+27
Комментарии13

Микросеть: настройка роутера для ИТшной семьи

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров29K

Привет, читатель!

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

Вперед к настройке
Всего голосов 17: ↑16 и ↓1+18
Комментарии32

Мега-Учебник Flask Глава 1: Привет, мир! (издание 2024)

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров31K

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

Начать изучение
Всего голосов 46: ↑46 и ↓0+46
Комментарии12

Бэкапы для самых маленьких и матерых

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров14K

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

Сегодня — международный день бэкапов. Кажется, это отличный повод, чтобы вспомнить, почему резервное копирование так важно, какое оно бывает и как его настроить. Подробности под катом!
Читать дальше →
Всего голосов 27: ↑26 и ↓1+34
Комментарии10

Какой язык программирования выбрать? Обзор Go

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров10K

Продолжаем серию статей про особенности, применение, плюсы и минусы языков, которые используются в «Криптоните». В этой статье наш инженер департамента инфраструктуры Алексей Косов расскажет про Golang.

Ранее наши разработчики делали обзоры Rust, Scala, JavaScript и Spark.

Читать далее
Всего голосов 11: ↑8 и ↓3+6
Комментарии5

GET запросы на практике: правила, принципы и примеры

Время на прочтение14 мин
Количество просмотров30K

Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.

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

Я работаю тимлидом направления системного анализа в X5Tech и за все время развития карьеры сталкивалась с большим количеством кейсов проектирования Web систем. IT продукты в большинстве очень динамичны: постоянно изменяются требования, появляются новые, итеративно улучшается пользовательский опыт (по принципу 20% усилий на 80% результата, а остальное доделаем потом).

Часто при проектировании мне помогала следующая идея: было бы здорово проектировать контракт так, чтобы при малейшем изменении/добавлении бизнес-правил его не приходилось сильно трансформировать, так как API является стыковочным звеном между разными слоями приложения. По ходу повествования я приведу пару примеров, чтобы проиллюстрировать такие изменения.

В этой статье предлагаю спроектировать контракт по шагам, и на каждом из них я расскажу про общие рекомендации из копилочки “Полезное”, а также про личные правила и практики, полученные долгим опытом работы над постоянно меняющимися ИТ-продуктами, которые помогут для “дальновидного” проектирования GET REST API.

Читать далее
Всего голосов 25: ↑23 и ↓2+24
Комментарии13

Как быстро написать API на FastAPI с валидацией и базой данных

Время на прочтение11 мин
Количество просмотров24K

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

В этой статье мы разработаем простой API с помощью самого популярного стека и FastAPI. Рассмотрим важные концепции в работе с этим фреймворком, набросаем базовую структуру проекта и развернем приложение на облачном сервере. Подробности под катом!
Читать дальше →
Всего голосов 45: ↑40 и ↓5+43
Комментарии39

Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров47K

Привет, Хабр!

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

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

Читать далее
Всего голосов 69: ↑67 и ↓2+80
Комментарии96

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Software Developer, Backend Developer
Intern
Python
Git
OOP
Linux
Docker
CI/CD