Pull to refresh
10
Karma
0.1
Rating
Максим @SabMakc

User

Осваиваем TypeScript: 21 лучшая практика при написании кода

RUVDS.com corporate blog JavaScript *Programming *TypeScript *
Translation

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

В этой статье мы углубимся в мир TypeScript и изучим 21 лучшую практику, с помощью которых вы сможете повысить свой навык работы с этим языком. Эти практики охватывают широкий спектр тем и сопровождаются конкретными вариантами применения в реальных проектах. Независимо от того, являетесь ли вы начинающим либо опытным разработчиком на TS, эта статья даст вам ценное понимание и рекомендации, которые помогут писать более чистый и эффективный код.
Читать дальше →
Total votes 69: ↑61 and ↓8 +53
Views 9.4K
Comments 22

Домашняя лаборатория

Configuring Linux **nix *Development for Linux *
Sandbox

Угадай данную статью написал ChatGPT или нет?

Хотите потестировать приложение, или опробовать в работе инструмент? В этой статье опишу то, как организовал тестовый стенд на Linux. Стенд поддерживает работу с доменами, умеет генерировать TLS сертификаты, легко масштабируется, окружение строится по принципе IaaC, не требует много ресурсов, легко разворачивается скриптами или SCM, есть UI, не зависит от внешних сервисов.

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

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

Читать далее
Total votes 20: ↑17 and ↓3 +14
Views 9.1K
Comments 8

Не куб, а кубик: kubernetes для не-highload

System administration *Virtualization *DevOps *Kubernetes *
Opinion
🎅 Kubernetes season

Может ли kubernetes сделать жизнь админов небольших и средних компаний проще или же это шайтан-машина для кровавого enterprise и оголтелых стартапов?

Хочется кубер, но колется...
Total votes 47: ↑46 and ↓1 +45
Views 9.6K
Comments 32

Distroless контейнеры

.NET *Server Administration *DevOps *
Review

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

Читать далее
Total votes 31: ↑30 and ↓1 +29
Views 9K
Comments 16

Лонгрид по полезному чтению в 2023 году: 39 книг, которые помогут писать красивый <код>

CloudMTS corporate blog Programming *Professional literature *Machine learning *Reading room
image

≀И эта статья ответит на вопрос, зачем вообще читать книги в 2023 году при великом разнообразии онлайн-курсов.

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

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

Для вашего удобства добавил рейтинг, ссылки на переводы и картинки для тех, кто просто добавляет статью в закладки, не читая. Enjoy на новогодних праздниках или прямо сейчас.
Читать дальше →
Total votes 33: ↑30 and ↓3 +27
Views 19K
Comments 12

Обзор платформ service mesh

Southbridge corporate blog IT Infrastructure *
Translation

Все мы любим микросервисы, но надо признать, что их довольно сложно планировать, проектировать, разрабатывать, развёртывать и администрировать.

Кроме того, нам нужно защищать трафик между сервисами и реализовывать распределённую трассировку, чтобы понимать, сколько времени занимает каждый вызов. Надёжным распределённым сервисам нужны повторы запросов, размыкатели цепи(circuit breaker) и подобные возможности. Микросервисы поддерживают почти любые языки, библиотеки и SDK. Нужно немало времени и денег, чтобы написать универсальное и многоразовое ПО, которое будет управлять общением сервисов с помощью разных протоколов, вроде HTTP, gRPC и GraphQL. В этой статье мы сравним самые популярные платформы service mesh для облачной экосистемы.

Читать далее
Total votes 11: ↑10 and ↓1 +9
Views 1.8K
Comments 0

Философия диафильмов: путь к идеальной презентации

GTD *Studying in IT Personnel Management *Reading room Lifehacks for geeks

Помните это маленькое чудо под названием диафильмы? В детских диафильмах каждый кадр был миниатюрным произведением искусства.

Я побывал в роли слушателя на многочисленных выступлениях с презентациями. Немалое количество презентаций я подготовил и провёл самостоятельно. И всё это время меня не оставляло сомнение: что-то мы делаем не так! Что-то очень простое и понятное, что лежит на поверхности, что нам давно известно, но мы успели основательно позабыть.

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

Читать далее
Total votes 51: ↑48 and ↓3 +45
Views 6.2K
Comments 33

Основные архитектурные шаблоны построения ПО

RUVDS.com corporate blog System administration *Server Administration *Distributed systems *
Translation

Краткий обзор восьми наиболее востребованных архитектурных шаблонов с иллюстрациями:

Читать дальше →
Total votes 61: ↑58 and ↓3 +55
Views 16K
Comments 6

DDD, HEXAGON, HIBERNATE, не считая JOOQ. Часть 1

Россельхозбанк corporate blog Programming *Java *System Analysis and Design *Microservices *
✏️ Technotext 2022

Статья написана для java разработчиков, создающих системы со сложной предметной областью. Система, как правило, представлена сетью микросервисов или модульным монолитом. В рамках такой системы обычно содержится большое количество сущностей (JPA/JOOQ), которые одновременно используют как технические, так и бизнес-сущности. Смена технологической базы по прошествии нескольких лет разработки для такой системы является очень дорогостоящим решением. Доработки бизнес-функционала занимают большое количество времени.

В первой части статьи проведем теоретический обзор основных терминов и паттернов гексагональной архитектуры и Domain Driven Design или сокращенно DDD.

Какие проблемы вы сможете решить, прочитав статью

Вероятно,

Читать далее
Total votes 11: ↑11 and ↓0 +11
Views 3.8K
Comments 3

Как выучить что угодно в 7 раз быстрее и эффективнее

Reading room Popular science Learning languages

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

Удивительно, но такое средство было найдено в 1990 году американским социологом Майклом Хоу. Он провел серию тестов среди студентов и определил, что пользователи «волшебного средства» в 7 раз лучше запоминали материал, легко вспоминали факты и легко применяли знания на практике.

Тот, кто использовал «волшебное средство» был наголову выше обычных студентов. «Обычные» хуже помнили материал и хуже его понимали, более того, даже одаренные отличники были слабее тех, кто использовал это «волшебное средство».

Это удивительное средство...

Читать далее
Total votes 165: ↑118 and ↓47 +71
Views 89K
Comments 124

Топ полезных SQL-запросов для PostgreSQL

PostgreSQL *SQL *Database Administration *Data storage *Data storages *
✏️ Technotext 2022

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

Читать далее
Total votes 83: ↑81 and ↓2 +79
Views 43K
Comments 15

Как управлять командой разработки

AGIMA corporate blog Canvas *Development Management *IT career IT-companies

Привет! Я Иван Антипин, заместитель директора департамента разработки в AGIMA. За свою карьеру я поработал с десятками команд. Где-то был разработчиком, где-то тимлидом, где-то помогал извне. У меня был миллион возможностей разобраться, как люди ведут себя в коллективе. Но всё же не на все вопросы существуют четкие ответы: что такое команда, как она работает, как ей управлять. В этой статье я попробую описать те методы и подходы, которые лично мне кажутся полезными и правильными.

Читать далее
Total votes 27: ↑22 and ↓5 +17
Views 10K
Comments 14

Фишки IDEA. Часть 3 — теперь с Git

Maxilect corporate blog Programming *Development Management *Lifehacks for geeks

IntelliJ IDEA - фактически основной инструмент наших разработчиков. Года полтора назад мы публиковали собрание полезных фишек IDEA. С тех пор прошло много времени, а мы насобирали новую подборку - теперь уже для тех, кто только начинает работать в IDEA с Git. Кому интересно - добро пожаловать под кат.

Снова рассказываем по мотивам внутреннего митапа.

Читать далее
Total votes 11: ↑9 and ↓2 +7
Views 7.5K
Comments 2

Миграция приложения из Docker Compose в Kubernetes. Как, зачем и с какими проблемами я столкнулся

Build automation *DevOps *Cloud services *Kubernetes *
Sandbox

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

Стоявшая передо мной задача: улучшить инфраструктуру и качество работы приложения, успевшего вырасти из MVP и стенда для одного клиента в популярный SaaS. Отсутствие отказоустойчивости и масштабируемости компонентов сервиса начало ощутимо мешать пользователям. Настала пора адаптировать приложение под кластерный режим.

Приложение работало в контейнерах, а оркестрация осуществлялась с помощью Docker Compose. Компоненты приложения не задумывались готовыми к запуску в кластерном режиме, что, разумеется, нормальная ситуация для раннего этапа многих проектов: бизнес требует быстрой доставки новых функций, и на преждевременную оптимизацию не всегда можно и нужно тратить время. Но в какой-то момент именно стабильность и быстродействие становятся самыми важными функциями. 

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

Читать далее
Total votes 19: ↑19 and ↓0 +19
Views 12K
Comments 15

Восстановление Биткоин Кошелька через короткие подписи ECDSA

Decentralized networks *Cryptography *Python *GitHub *Development for IOT *
Recovery mode

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

Почему же эти подписи ECDSA называются короткими?

Ответ на этот вопрос вы можете получить из обсуждаемой темы: "Самая короткая подпись ECDSA" [The shortest ECDSA signature]

В прошлой нашей статье: "Уменьшение приватного ключа через скалярное умножение используем библиотеку ECPy + Google Colab" мы создали Python-скрипт: maxwell.py который сгенерировал для нас довольно интересный публичный ключ

(0x3b78ce563f89a0ed9414f5aa28ad0d96d6795f9c63 , 0xc0c686408d517dfd67c2367651380d00d126e4229631fd03f8ff35eef1a61e3c)

Как мы знаем значение сигнатуры "R" это и есть публичный ключ от секретного ключа (Nonce)

Взгляните на Blockchain транзакцию: 11e6b169701a9047f3ddbb9bc4d4ab1a148c430ba4a5929764e97e76031f4ee3

RawTX:

0100000001afddd5c9f05bd937b24a761606581c0cddd6696e05a25871279f75b7f6cf891f250000005f3c303902153b78ce563f89a0ed9414f5aa28ad0d96d6795f9c6302200a963d693c008f0f8016cfc7861c7f5d8c4e11e11725f8be747bb77d8755f1b8012103151033d660dc0ef657f379065cab49932ce4fb626d92e50d4194e026328af853ffffffff010000000000000000016a00000000

Размер этой транзакции всего лишь: 156 байт

Как можно восстановить Биткоин Кошелек через короткие подписи ECDSA?

В криптоанализе блокчейна криптовалюты Bitcoin мы используем собственный Bash-скрипт: btcrecover.sh

Читать далее
Total votes 14: ↑13 and ↓1 +12
Views 4.7K
Comments 1

8 практических советов как сделать тренировки частью привычной жизни и перестать ненавидеть физкультуру. Часть вторая

Popular science Lifehacks for geeks Brain Health Biology

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

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

Ре-бя-таааа!!! Берегите себя, заботьтесь о себе, ваше тело может выполнять ту физическую нагрузку, к которой вы подготовили ваше тело. Поймите, ваша физическая активность должна быть безопасна в первую очередь, адекватна вашей физической подготовке во вторую и должна приносить вам удовольствие в третью, но не в последнюю очередь!

Разберем еще несколько, достаточно важных, рекомендаций, которые вы сможете применить немедленно. И в конце, по традиции вас ждет чек-лист для самоконтроля. И велкам комментировать!

Читать далее
Total votes 24: ↑16 and ↓8 +8
Views 19K
Comments 114

Создаём своё объектное хранилище за чаc

VK corporate blog Data storages *Tarantool *


Привет! Меня зовут Артем Гаврилов и я работаю в Tarantool. Сегодня я расскажу, как быстро создать объектное хранилище на основе платформы in-memory вычислений Tarantool и распределённой файловой системы IPFS (InterPlanetary File System).


Мы рассмотрим пример шардирования стороннего приложения с помощью Tarantool и сделаем MVP объектного хранилища с отказоустойчивостью на уровне ЦОДа, в то время как более простые решения отказоустойчивы только на уровне нескольких серверов.


Тем, кто знаком с IPFS, вероятно, будет интересно читать начиная с раздела «С чем мы столкнёмся».

Читать дальше →
Total votes 38: ↑38 and ↓0 +38
Views 6.3K
Comments 3

Пропустили интенсив Чистая архитектура на Go? Мы загрузили его записи и открыли предзапись на новый поток

Southbridge corporate blog

15-17 июля в Слёрм прошёл первый интенсив Чистая архитектура на Go от Николая Колядко, Senior Go Backend в Robovoice. Если у вас не получилось принять участие в интенсиве, мы выложили его записи: 11 часов ценнейшего материала.

Читать далее
Total votes 9: ↑8 and ↓1 +7
Views 1.5K
Comments 1

Что делать неизвестным в вашем git репозитории

Группа НЛМК corporate blog Programming *Git *
Tutorial
✏️ Technotext 2022

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

Читать далее
Total votes 38: ↑36 and ↓2 +34
Views 11K
Comments 5

Архитектура Архитектуры. Шаг 10. Это конец

System Analysis and Design *Designing and refactoring *Development Management *Project management *
✏️ Technotext 2022

Знаете, как называется система, которая приносит постоянную прибыль, работает без особых проблем и обслуживается маленькой командой? Продукт с заканчивающимся сроком обслуживания!

Время ли хоронить архитектора?
Total votes 19: ↑18 and ↓1 +17
Views 5.8K
Comments 22

Information

Rating
2,217-th
Location
Россия
Registered
Activity