Pull to refresh
0
0
Send message

Чтение на выходные: «Теперь вы это видите. И другие эссе о дизайне» Майкла Бейрута

Level of difficultyEasy
Reading time3 min
Views1.7K

Майкл Бейрут — графический дизайнер, критик и преподаватель дизайна из США. Награжден медалью AIGA — Американского института графических искусств. Партнер дизайнерской фирмы Pentagram. Он сотрудничал с Benetton, Motorola, Walt Disney Company и другими всемирно известными брендами.

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

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

Стресс от отдыха — болезнь трудоголиков и опасный симптом эпохи достигаторства

Reading time8 min
Views7.7K

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

Читать далее
Total votes 16: ↑10 and ↓6+5
Comments11

Книжный кружок. Рецензия на книгу «Микросервисы от архитектуры до релиза»

Level of difficultyEasy
Reading time4 min
Views9.8K

Всем прив :-)

Дочитал недавно книжку «Микросервисы от архитектуры до релиза» (в оригинале наз: «Microservices Up & Running») Вышла она в конце 2020, недавно ее перевели. В издательстве «Питер» периодически делают щедрые скидосы на книжки, и я решил порадовать себя и накупил кучу). Вообще люблю книги в бумажном виде, особенно фундаментальные книги — те, к которым я еще неоднократно возвращаюсь и из которых черпаю идеи. Более хардовые и с кодом я предпочитаю электронные.

«Microservices Up & Running» написали два чувака: Ронни Митра и Иракли Надареишвили. Оба они не понаслышке поели финтех энтерпрайза и имеют очень богатый опыт, занимаются консалтингом и пишут книги. Ронни — соавтор «Continuous API Management», а также вместе с Иракли участвовал в написании «Microservices Architecture». Ронни занимается консалтингом финтех компаний, а Иракли сейчас Banking Platform Managing Director в JPMorgan Chase & Co, а до этого был вице‑президентом по инновациям в Capital One Financial и возглавлял команды, ответственные за создание современной банковской платформы. В общем, это все можно посмотреть в их профиле в Линкедине. Им явно есть чем поделиться.

В целом, книжка мне очень понравилась, поэтому и решил сделать этот обзор. В качестве примера берется создание системы бронирования билетов на самолеты. Если прям очень коротко, то тут поднимаются вопросы:

Читать далее
Total votes 19: ↑13 and ↓6+11
Comments2

Программируем и отлаживаем STM32 через USB Type-C порт, не нарушая спецификации USB

Level of difficultyEasy
Reading time2 min
Views16K

USB Type-C - действительно универсальный порт.

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

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

Введение в Чистую архитектуру через 6 кругов рефакторинга

Level of difficultyMedium
Reading time15 min
Views45K

Разделяй и влавствуй, или как провести клининг легаси-кода GoLang.

Этот пост является частью большого цикла статей, в которых мы демонстрируем, как создавать приложения на Go, которые легко разрабатывать, поддерживать и с которыми приятно работать в долгосрочной перспективе. Мы делаем это, делясь проверенными методами, основанными на множестве экспериментов с командами, которыми мы руководили, и научных исследованиях («при съёмках фильма ни одно животное не пострадало»).

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

Что касается подхода к «чистой» архитектуре, описываемого далее, то это симбиоз двух идей: разделение Ports и Adapters, а также контроль за тем, как пакеты ссылаются друг на друга...

Оставь надежду, всяк сюда входящий
Total votes 16: ↑12 and ↓4+11
Comments4

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

Level of difficultyHard
Reading time10 min
Views16K

Мышление человека условно можно разделить на логическое и на эмоциональное. У этих двух типов мышления есть сходства и различия.

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

Мне интересно...
Total votes 17: ↑10 and ↓7+8
Comments23

Архитектура MMO: источник истины, потоки данных, узкие места I/O и их устранение

Level of difficultyEasy
Reading time6 min
Views8.3K

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

Несмотря на то что это приложение идеально вписывается в концепцию «распределённых архитектур», конкретные детали (как большие, так и малые) превращают, казалось бы, простой для любого грамотного инженера процесс проектирования в невероятную головную боль.
Читать дальше →
Total votes 37: ↑35 and ↓2+51
Comments3

Отправляем уведомления в определенный топик в чате Telegram

Level of difficultyEasy
Reading time4 min
Views14K

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

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments4

Улучшение дизайн-ревью в Google

Level of difficultyMedium
Reading time14 min
Views1.9K

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

Далее мы обсудим как проводится дизайн ревью в Google и предлагаем новое, структурированное, автоматизированное решение, которое сокращает время. Основываясь на данных 141 625 документов 41 030 авторов на протяжении 4 лет показываем, что наше решение проблемы сокращает время ревью на 25% и обеспечивает преимущества при постоянном использовании. Также подкрепляем слова данными, которые демонстрируют успех нашего решения, обсуждаем факторы, влияющие на скорость дизайн ревью, предлагаем стратегии для их преодоления и делимся уроками, полученными из использования нашего подхода.

Читать далее
Rating0
Comments3

System Design 101

Level of difficultyMedium
Reading time42 min
Views102K



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


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


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


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


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

Читать дальше →
Total votes 79: ↑79 and ↓0+79
Comments17

Как распознать мошеннический сайт. Памятка безопаснику для обучения пользователей основам ИБ

Level of difficultyEasy
Reading time7 min
Views20K

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

Читать далее
Total votes 11: ↑10 and ↓1+11
Comments5

Что будет если команда, не видавшая Compose, решила делать новую сложную фичу на нём?

Level of difficultyMedium
Reading time14 min
Views8.9K

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

Звезды сошлись таким образом, что произошло 2 события:

Настало время делать кардинальный редизайн одного из наших главных экранов — карточки продукта

Мы приняли решение переходить на стек Jetpack Compose в нашем Android приложении.

В этой статье я расскажу, как мы сделали кастомный Compose экран с кастомным скроллом и снаппингом.

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

Проектирование интеграции. Чек-лист — как подготовить архитектурное решение

Level of difficultyEasy
Reading time4 min
Views14K

В работе solution архитектора или системного аналитика есть задачи на проектирование интеграции. Иногда заказчик приносит задачу с требованиями на один абзац.

С чего же начать, если перед вами такие минимальные бизнес требования?

Хочу узнать
Total votes 26: ↑25 and ↓1+27
Comments9

Как я делал то же, что и ФСТЭК, когда это еще не было трендом

Level of difficultyEasy
Reading time5 min
Views8.8K

Всем привет, меня зовут Андрей Рогов. В СИГМЕ, где мы разрабатываем и внедряем ИТ-решения для всей электроэнергетики — от контроля работы электростанций до расчета платежей «за свет», я работаю в отделе аудита и консалтинга. А значит, в мои должностные обязанности входит написание множества документов, связанных с нормативкой ФСТЭК России. Это модели угроз, наборы мер, закрывающих угрозы из моделей, которые написал я, адаптация и дополнение наборов мер, которые написал я, закрывающих угрозы из моделей, которые написал я, подбор средств защиты информации, реализующих меры, которые адаптировал и дополнил я из наборов мер, которые составил я, закрывая угрозы из моделей угроз, которые написал я (могу продолжать бесконечно, но это не собеседование).

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

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

О сложности и монолитах

Level of difficultyEasy
Reading time18 min
Views7.1K
Изображение сгенерировано с помощью DALL·E. Запрос: a complex monolith in a server room, with the faces of IT consultants with suits engraved in it with twisted faces, mathematical formulations about complexity floating around, and with a mysterious malevolent godlike presence in the background (комплексный монолит в серверной с искажёнными лицами IT-консультантов. Вокруг витают сложные математические формулы, а на фоне присутствует мистическое злобное богоподобное существо).

Статья посвящена анализу и сравнению двух моделей построения систем — монолитной и с разделением на микросервисы. В ней мы с разных сторон оценим оба этих подхода и связанную с ними сложность, убедившись в превосходстве последнего. Представим микросервисы и прочие архитектуры в реалистичном свете, не воскрешая то, что должно оставаться мёртвым.
Читать дальше →
Total votes 34: ↑27 and ↓7+33
Comments75

Управление общей кодовой базой в микросервисной архитектуре

Level of difficultyMedium
Reading time6 min
Views10K

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

Читать далее
Total votes 10: ↑4 and ↓6-2
Comments9

Как подготовиться к собеседованию с помощью Telegram-бота на Node.js

Level of difficultyEasy
Reading time14 min
Views10K

В этой статье мы разработаем бота для подготовки к собеседованиям. Он будет задавать вопросы по HTML, CSS, JS и React. При этом часть из них будет с вариантами ответа, а часть — без. Базу вопросов вы сможете пополнять самостоятельно.

Во время разработки вы научитесь работать с Telegram Bot API с помощью grammY и Node.js, а также самостоятельно деплоить ботов на сервер.
Читать дальше →
Total votes 31: ↑29 and ↓2+35
Comments3
12 ...
8

Information

Rating
Does not participate
Registered
Activity