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

Front-end Engineer at Yandex

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

Дизайн-система Gravity UI: как легко построить свой интерфейс

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

Всем привет, я Алексей Сизиков, руководитель отдела User Experience в Yandex Cloud. В этой статье я хочу поделиться новостью: мы выпустили нашу дизайн-систему и библиотеку компонентов Gravity UI в опенсорс. 

Под катом — рассказ, зачем мы сделали Gravity UI, как его используем, в чём особенности и преимущества нашего подхода и как мы планируем развивать его дальше. А ещё — как настроить разные цветовые схемы в своих проектах и почему у нас четыре темы вместо двух стандартных.

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

Assembler для Windows в Visual Studio

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

В этой статье я покажу как написать приложение для windows на ассемблере. В качестве IDE будет привычная многим Visual Studio 2019 со своими привычными плюшками - подсветка кода, отладка и привычный просмотр локальных переменных и регистров. Собирать приложение будет MASM, а значит, у нас будут и масмовские плюшки. Это будет полноценное оконное приложение с меню, иконкой, отрисовкой, выводом текста и обработкой мыши с клавиатурой.

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

Основные инструменты Kubernetes в 2021 году

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

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

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

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

Feature-Sliced Design – альтернативный подход к организации кода приложений

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

Feature-Sliced Design — это архитектурная методология, активно набирающая популярность в последнее время. И не зря: организация разработки по её правилам позволяет упростить процессы, сделать их быстрее и гибче. Больше не нужно будет переживать из-за совместной работы в одном домене и конфликтов кода, долго искать ответ на вопрос «А куда же впилить новую фичу, тут и так намешано…» 

О том, как устроена Feature-sliced Design, чем она отличается от «классической» организации кода, плюсах и минусах от её внедрения — в этой статье.

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 20

Как фирма из Эйндховена стала монополистом на рынке современного оборудования для производства микросхем

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

Степпер ASML: ключевое звено в производстве микросхем. На нём производится засветка фоторезиста через маску, как в фотоувеличителе. Стоимость прибора около $170 млн

У всех на слуху компании Intel, Samsung и TSMC — три крупнейших в мире производителя микросхем (последняя выполняет заказы для Apple и AMD).

Однако мало кто слышал об ASML — скромной компании в пригороде Эйндховена, пятого по величине города Нидерландов. Но если посмотреть, эта фирма играет ключевую роль в микроэлектронной промышленности. Это единственный в мире производитель степперов для фотолитографии в глубоком ультрафиолете (EUV), пишет издание The Economist.
Всего голосов 55: ↑53 и ↓2 +51
Комментарии 111

Ты не видишь капчу, а она есть: как мы разрабатывали сервис Yandex SmartCaptcha для людей и бизнеса

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

Меня зовут Алексей Тощаков, я руковожу службой антифрода в Яндексе. Моя команда использует алгоритмы и данные для защиты наших сервисов и пользователей от фрода. Один из сервисов, которые мы разрабатываем — SmartCaptcha в Yandex Cloud.

В 2021 году мы уже рассказывали на Хабре про то, как изменялась и совершенствовалась наша внутренняя капча. После публикации статьи к нам стали обращаться владельцы сайтов с вопросами о том, как можно наш инструмент использовать у них. Это стало для нас сигналом, что пора взяться за разработку сервиса Yandex SmartCaptcha для внешних клиентов. Казалось бы, весь код уже написан, так что нужно только оформить лендинг и подключить биллинг. В реальности вышло сложнее — нам пришлось провести рефакторинг кода и многое изменить. Сейчас расскажу подробнее о том, что получилось в итоге.

Читать дальше
Всего голосов 59: ↑48 и ↓11 +37
Комментарии 100

Понять TypeScript c помощью теории множеств

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

Я пишу на TS уже довольно давно. Но некоторые вопросы все еще сбивают меня с толку: что такое never, и почему он так странно себя ведет? Чем отличаются any и unknown? Почему const x: {} = true — не ошибка?

Оказывается, если перевести TS на язык теории множеств, всё встанет на свои места!

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

Сети для самых маленьких. Часть восьмая. BGP и IP SLA

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


До сих пор мы варились в собственном соку – VLAN’ы, статические маршруты, OSPF. Плавно росли над собой из зелёных студентов в крепких инженеров.
Теперь отставим в сторону эти игрушки, пришло время BGP.

Сегодня мы
  • Разбираемся с протоколом BGP: виды, атрибуты, принципы работы, настройка
  • Подключаемся к провайдеру по BGP
  • Организуем резервирование и распределение нагрузки между несколькими линками
  • Рассмотрим вариант резервирования без использования BGP – IP SLA

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

Настройка Webpack 5

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

Пошаговое руководство по настройке сборщика Webpack 5 совместно с такими инструментами как Pug, Sass, JavaScript, React и Markdown.

Читать далее
Всего голосов 22: ↑21 и ↓1 +20
Комментарии 38

Kubernetes the hard way

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

Всем привет. Меня зовут Добрый Кот Telegram.

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

Вошли и вышли, приключение на 20 минут)

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей о K8S.

Начать приключение
Всего голосов 34: ↑34 и ↓0 +34
Комментарии 16

Установка Jenkins с помощью terraform в Kubernetes в Yandex Cloud с letsencypt

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

В этой статье будет следующее:


  • Заведение DNS домена на reg.ru.
  • Управление DNS зоной в Yandex DNS c помощью terraform.
  • Создание Kubernetes в Yandex Cloud.
  • Резервируем внешний статический IP адрес.
  • Установка Jenkins c помощью terraform модуля helm_release.
  • Создание ClusterIssue(Issue) для создания letsencypt сертификата.
Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 0

Асинхронный python без головной боли (часть 1)

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

Почему так сложно понять asyncio?

Асинхронное программирование традиционно относят к темам для "продвинутых". Действительно, у новичков часто возникают сложности с практическим освоением асинхронности.

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку
Всего голосов 135: ↑135 и ↓0 +135
Комментарии 56

Обзор платформ для изучения машинного обучения

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

Один из главных вопросов у людей изучающих что-либо - выбор источников информации: курсов, книг, статей. Широта выбора вводит в ступор: курсов и книг просто море, особенно если рассматривать доступные на английском языке. В данной статье субъективный обзор платформ он-лайн обучения (спойлер: coursera.org и learning.oreilly.com мои фавориты).

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

Триггеры-защёлки: реверс-инжиниринг регистра команд в Intel 8086

Время на прочтение 9 мин
Количество просмотров 7.2K
Микропроцессор Intel 8086 – один из самых влиятельных чипов. Порождённая им архитектура х86 и по сей день доминирует среди настольных и серверных компьютеров. И всё же этот чип ещё достаточно прост для того, чтобы его цепи можно было изучать под микроскопом и разбираться в них. В этой статье я объясню реализацию динамической защёлки [одноступенчатый триггер] – схемы, удерживающей один бит. В 8086 есть более 80 защёлок, разбросанных по всему чипу, и удерживающих различные важные биты статуса процессора, но я сконцентрируюсь на восьми из них, реализующих регистр команд и хранящих выполняющуюся команду.

У 8086-го есть более 80 защёлок. Некоторые из них хранят значения контактов AD (address/data) или управляющих контактов. Другие хранят текущий адрес микрокода и микрокоманды, а также адрес возврата из подпрограммы микрокода. В третьих хранятся биты исходного и выходного регистра команд, и АЛУ-операция команды. Во многих хранятся статусы внутреннего состояния, в которых я пока ещё разбираюсь.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 0

Представьте — что если все, что вы делаете будет бессмысленным и бесполезным?

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

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

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

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

Читать далее
Всего голосов 139: ↑120 и ↓19 +101
Комментарии 510

Мой опыт стажировки в Microsoft Redmond и получения офера

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

перепечатка статьи "«Каждый год Microsoft получает 2 млн резюме». Разработчик из Минска — о 7-летнем пути в компанию (+Рекомендации и список книг)" с сайта dev.by.

Андрей Артемьев — Software Development Engineer в американском офисе Microsoft в Сиэтле, работает над операционной системой Windows. Его путь в компанию занял 7 лет, за плечами — пять подач резюме, одно проваленное интервью и летняя стажировка в Microsoft Redmond. Андрей делится своим опытом с читателями dev.by.

«Мой опыт говорит, что на большом интервале побеждает упорство, а не талант»


Попасть в Microsoft достаточно трудно, так как приём на работу неправильного человека может стоить компании дорого. Сюда входят не только затраты на релокейт, но и потенциальный ущерб компании от ошибок сотрудников, которые приводят к неприятным последствиям, будь то кража российскими хакерами письма кандидата в президенты Хиллари Клинтон, распространение вируса-вымогателя Petya, падение сервера базы данных о пациентах в японском госпитале или срыв контракта на $19 млн с производителем ноутбуков.

Microsoft ежегодно получает порядка 2 миллионов резюме, поэтому любое сомнение в кандидате влечёт отказ. Отказ во время финального собеседования означает, что следующая попытка будет только через 6 месяцев, но фактически — лишь через год. Мой опыт говорит, что на большом интервале побеждает упорство, а не талант.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 20

Чистим код в Angular. Готовим ESLint, codelyzer, stylelint, husky, lint-staged и Prettier

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

Если вам не приходилось работать в команде, то, возможно, вы еще не используете эти вещи, а кто-то даже не знает про них. Работая один, вы сами себе хозяин.


Как только начали работать в команде  —  ситуация резко меняется. Если нет договоренностей, то каждый начинает писать код в таком стиле, в каком умеет. И даже если вы все же собрались и обсудили на словах codestyle на проекте и даже записали где-то, это, скорее всего, не поможет решить проблему, и вот почему.


Читать дальше →
Всего голосов 21: ↑20 и ↓1 +19
Комментарии 1

Код Хэмминга. Пример работы алгоритма

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

Вступление.


Прежде всего стоит сказать, что такое Код Хэмминга и для чего он, собственно, нужен. На Википедии даётся следующее определение:

Коды Хэмминга — наиболее известные и, вероятно, первые из самоконтролирующихся и самокорректирующихся кодов. Построены они применительно к двоичной системе счисления.

Другими словами, это алгоритм, который позволяет закодировать какое-либо информационное сообщение определённым образом и после передачи (например по сети) определить появилась ли какая-то ошибка в этом сообщении (к примеру из-за помех) и, при возможности, восстановить это сообщение. Сегодня, я опишу самый простой алгоритм Хемминга, который может исправлять лишь одну ошибку.
Читать дальше →
Всего голосов 67: ↑64 и ↓3 +61
Комментарии 33

5 вещей, которые я бы хотел знать, когда начинал использовать Angular

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

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


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


Читать дальше →
Всего голосов 43: ↑42 и ↓1 +41
Комментарии 68

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

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


На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оценивают не сколько уровень владения языком, а скорее умение проходить эти самые тесты. Да и использовать их для контроля самообучения будет накладно.

В этой статье я собрал различные тесты, которые проходил сам. При этом я сверяю свою субъективную оценку владения языком с результатами тестов. А также сравниваю результаты между разными тестами.
Читать дальше →
Всего голосов 99: ↑95 и ↓4 +91
Комментарии 62

Информация

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