Как стать автором
Обновить
2
0
Алексей Балехов @Balek

Автоматизация и интеграция

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

Преобразование закрытого ключа КриптоПро CSP по ГОСТ 2012 в контейнер p12, который понимает java

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


Закрытый ключ КриптоПро CSP представляет из себя флеш-накопитель, на котором в директории ххххх.000 лежат файлы primary.key, primary2.key, masks.key, masks2.key, name.key и header.key.

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

System Design 101

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



О сложных системах простыми словами.


В шпаргалке на высоком уровне рассматриваются такие вещи, как протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование, микросервисы (и монолиты), платежные системы, Git, облачные сервисы etc. Особую ценность представляют диаграммы — рекомендую уделить им пристальное внимание. Полагаю, шпаргалка будет интересна всем, кто хоть как-то связан с разработкой программного обеспечения и, прежде всего, веб-приложений. Буду признателен за помощь в уточнении/исправлении понятий, терминологии, логики/алгоритмов работы систем (в рамках того, что по этому поводу содержится в оригинале), а также в обнаружении очепяток.


Выражаю благодарность Анне Неустроевой за помощь в редактировании материала.


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


System Design (сборник на английском языке).

Читать дальше →
Всего голосов 79: ↑79 и ↓0 +79
Комментарии 17

Теория типов

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

Мы так привыкли к типам, что редко задаёмся вопросом, что же они такое на самом деле? А главное - почему возникла необходимость в их использовании? Этот поверхностный обзор сделан для того, чтобы продемонстрировать, как типы и другие связанные абстракции являются следствием из обобщения условий различных задач.

Что можно узнать из этой статьи?
Всего голосов 75: ↑75 и ↓0 +75
Комментарии 70

Снятие с воинского учета. Дистанционно. Пакет документов

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

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

Если вкратце, то рабочий кейс, это когда: (А) имеется основание для снятия: уже живете зарубежом полгода, либо имеется иностранный ВНЖ, (B) грамотно составлено заявление на снятие с учета и подписано вашей подписью, (C) в военкомат идет ваш представитель по доверенности, которая оформлена у российского нотариуса или в зарубежном консульстве РФ.

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

Читать далее
Всего голосов 92: ↑82 и ↓10 +72
Комментарии 83

Cohesion и Coupling: отличия

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

Эта статья является переводом материала «Cohesion and Coupling: the difference». 

Возможно, вы слышали рекомендацию, в которой говорится, что мы должны стремиться к достижению low coupling (низкой связанности) и high cohesion (высокого сцепления) при работе над кодовой базой. В этой статье хотелось бы обсудить, что на самом деле означает эта рекомендация, и взглянуть на некоторые примеры кода, иллюстрирующие ее. И также хочется провести границу между этими двумя идеями и показать различия в них.

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

Сайт сына маминой подруги

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

Бывает, когда меня нанимают починить или взять на поддержку сайт, то я открываю его исходники и хочу воскликнуть: "А у кого вы его украли?" Потому что качество исполнения и сложность технологий значительно превосходят обыденные для такого класса сайтов. После того как я озвучиваю цену за поддержку подобного сайта и получаю в ответ недоумение, мне хочется уже кричать: "Что происходит?!"

Читать далее
Всего голосов 283: ↑269 и ↓14 +255
Комментарии 366

Оптимальный способ работы с DOM

Время на прочтение 7 мин
Количество просмотров 5.3K
Пока я писал на Solid у меня была возможность оценить количество попыток оптимизировать производительность на графиках (benchmarks).

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

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

Какой способ работы с DOM самый быстрый:

  • Virtual DOM
  • Tagged Template Literals
  • Fine-Grained Observables
Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 3

Из чего собрать умный дом в 2020 году: от хаба и до лампочки

Время на прочтение 9 мин
Количество просмотров 358K
ZigBee, Z-Wave, Wi-Fi, Bluetooth — на какую технологию делать ставку? Кто из брендов выпускает наиболее практичные решения? Какие выбрать шлюз, датчики и на что смотреть тем, кто хочет все упростить?


Мы попросили Вадима Ерёмина, руководителя департамента «Гаджеты и инновации», рассказать о его опыте построения умного дома. Под катом только то, что было проверено на собственном опыте.
Читать дальше →
Всего голосов 15: ↑6 и ↓9 -3
Комментарии 54

Экосистема Low-Code решений

Время на прочтение 8 мин
Количество просмотров 20K
image

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

Я бы хотел рассмотреть, что это за инструменты, как именно они помогают, и какие выглядят наиболее многообещающе.
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Как готовить RTSP на сайте в 2020 году, или почему кабаны не успеют убежать

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


RTSP — это простой сигнальный протокол, который уже много лет не могут ничем заменить, и надо признать, что не особо стараются.


Скажем, есть у нас IP камера с поддержкой RTSP. Всякий, кто щупал трафик акула-кабелем, расскажет, что там сначала идет DESCRIBE, потом PLAY, и вот полился трафик напрямую по RTP или завернутый в тот же TCP канал.

Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 15

Обсуждаем PostgREST — open source веб-сервер на Haskell

Время на прочтение 3 мин
Количество просмотров 12K
Рассказываем об инструменте, который позволяет настроить API для работы с запросами PostgreSQL. Говорим о возможностях, достоинствах и недостатках утилиты, а также об альтернативных решениях.

Читать дальше →
Всего голосов 23: ↑18 и ↓5 +13
Комментарии 4

Закон Галла: что он гласит и как применяется в IT

Время на прочтение 4 мин
Количество просмотров 15K
Рассказываем, в чем суть закономерности, как она себя проявляет и что бывает, когда эту закономерность не учитывают в процессе проектирования и разработки IT-систем.


Фото — Spencer — Unsplash

В книге «Сам себе MBA. Самообразование на 100%», написанной Джошом Кауфманом (Josh Kaufman), закон Галла приведен в следующей формулировке:

«Любая работающая сложная система развивается на базе работающей простой системы. Сложные системы, созданные с нуля, никогда не будут работать в реальном мире, поскольку в процессе разработки на них не влияли факторы отбора, присущие среде».
Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 3

Как сохранить права на разработки по заказу

Время на прочтение 3 мин
Количество просмотров 12K
image

Проблема основана на положениях закона, согласно которым права на ПО и прочие произведения, созданные по заказу, принадлежат заказчику, если договором между подрядчиком (исполнителем) и заказчиком не предусмотрено иное (ст.1296 ГК РФ).

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

С учетом этого на практике сложилось несколько способов договорной защиты авторских прав разработчика на собственное программное обеспечение и результаты его последующих модификаций. Расскажем о них под катом.
Читать дальше →
Всего голосов 18: ↑17 и ↓1 +16
Комментарии 2

Субъективный user.js для Mozilla Firefox и не только

Время на прочтение 2 мин
Количество просмотров 15K
Вот уже почти 15 год я пользуюсь Mozilla Firefox на ежедневной основе, и, конечно, у меня есть свой небольшой субъективный user.js, который с каждым релизом новой версии приходится обновлять. Спешу им (и не только) поделиться.

Если кому-то интересно, то добро пожаловать под кат.
Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Комментарии 13

Скрипт настройки Windows 10

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

image
Давно хотел поделиться своим скриптом по автоматизации настройки Windows 10 (на данный момент актуальная версия 19041), да все руки не доходили. Возможно, он будет кому-то полезен целиком или только его части. Конечно, будет проблематично описать все пункты настройки, но постараюсь выделить самое важное.

Если кому-то интересно, то добро пожаловать под кат.

Читать дальше →
Всего голосов 88: ↑77 и ↓11 +66
Комментарии 297

Не очередной язык программирования. Часть 1: Логика предметной области

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


В последнее время на рынке появилось огромное количество новых языков программирования: Go, Swift, Rust, Dart, Julia, Kotlin, Hack, Bosque – и это только из числа тех, которые на слуху.
Ценность того, что эти языки привносят в мир программирования, тяжело переоценить, но, как правильно в прошлом году отмечал Y Combinator, говоря про инструменты разработки:
Фреймворки становятся лучше, языки немного умнее, но в основном мы делаем то же самое.
В данной статье будет рассказано о языке, построенном на подходе, принципиально отличающемся от подходов, используемых во всех существующих языках, в том числе вышеперечисленных. По большому счету, этот язык можно считать языком общего назначения, хотя некоторые его возможности и текущая реализация платформы, построенной на нем, все же, наверное, ограничивают его применение немного более узкой областью – разработкой информационных систем.
Читать дальше →
Всего голосов 53: ↑44 и ↓9 +35
Комментарии 431

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

Время на прочтение 3 мин
Количество просмотров 126K
Хабр, привет!

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

Приступим!

Учить лексику


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

ЛеоПереводчик

С этим плагином удобно переписываться с коллегами. Он автоматически переводит непонятные слова и выражения. Незаменимый инструмент, когда нет времени на доскональные переводы и нужен срочный ответ.
Читать дальше →
Всего голосов 45: ↑39 и ↓6 +33
Комментарии 13

Интерактивный дизайн не обязательно должен быть сложным

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


Интерактивность помогает сделать пользовательские интерфейсы выразительными и простыми в использовании. Несмотря на большой потенциал, интерактивность, пожалуй, наименее понятно из всех дисциплин дизайна. Это может быть связано с тем, что интерактивность является одним из новых членов семейства пользовательских интерфейсов. Визуальный дизайн и дизайн взаимодействия восходят к ранним графическим интерфейсам, но интерактивный дизайн должен был дождаться более современного оборудования для плавного рендера анимации. Наслаивание интерактивности пользовательского интерфейса на традиционную анимацию вносит свою лепту недопонимания. Целую жизнь можно потратить на освоение 12 основных принципов Диснея, означает ли это, что интерактивность пользовательского интерфейса также сложно? Люди часто говорят мне, что проектировать интерактивность сложно или что выбор правильных значений неоднозначен. Я утверждаю, что в областях, наиболее важных для пользовательского интерфейса, интерактивный дизайн может и должен быть простым.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 12

Полное руководство по правильному использованию анимации в UX

Время на прочтение 9 мин
Количество просмотров 45K
Предлагаю вашему вниманию перевод очень крутой статьи по анимации интерфейса.
The ultimate guide to proper use of animation in UX автора Taras Skytskyi.



В настоящее время трудно впечатлить или даже удивить анимацией интерфейса. Она показывает взаимодействие между экранами, объясняет, как использовать приложение или просто направляет внимание пользователя. Изучая статьи об анимации, я узнал, что почти все они описывают только конкретные варианты использования или общие факты об анимации, но я не сталкивался с какой-либо статьей, где все правила, касающиеся анимации интерфейсов, были бы четко и практически описаны. Но, в этой статье я не буду писать ничего нового, я просто хочу собрать все основные принципы и правила в одном месте, так что другим дизайнерам, которые хотят запускать анимированные интерфейсы, не нужно было искать дополнительную информацию.
Читать дальше →
Всего голосов 41: ↑41 и ↓0 +41
Комментарии 31

Мастер-класс «Почему Стив Джобс любил шрифты» (Алексей Каптерев)

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


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




Шутка, написанная гарнитурой Times, на 10 % смешнее той, что написана гарнитурой Arial. Почему? Чёрт знает. Лучшее объяснение, которое я видел: юмор ассоциируется с агрессией, с остротой, с остроумием — а Times выглядит более острым, чем Arial.


Ещё один любопытный эксперимент, в котором участвовало 45 тыс. человек. Заходишь на сайт, тебе показывают статью Дэвида Дойча, британского физика. В статье автор пишет, что сегодня очень трудно внезапно умереть. Например, от инфекционного заболевания или в уличной драке. Лет сто назад это случалось намного чаще. Главный вывод статьи — сейчас мир безопасен как никогда. В среднем, конечно, ведь где-то постоянно идут локальные военные конфликты.

Всего голосов 196: ↑194 и ↓2 +192
Комментарии 100

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность