Pull to refresh
40
0
Антон Жуков @MrCheater

Team Leader, Full-Stack JS, React, Node.JS

Send message

Kandinsky 3.1 — новая быстрая модель генерации изображений по тексту

Level of difficultyMedium
Reading time15 min
Views16K

Прошёл ровно год с момента релиза модели Kandinsky 2.1 — именно эта модель принесла известность нашей исследовательской группе Sber AI Research и дала толчок развитию всей линейки моделей Kandinsky. В честь этой даты мы выпускаем новую версию модели Kandinsky 3.1, о которой я расскажу подробнее в этой статье.

Читать далее
Total votes 64: ↑68 and ↓-4+72
Comments32

С 500 мс до нуля, или история о том, как я написал Node.js C++ addon и ускорил скидочный сервис в 500 раз

Level of difficultyMedium
Reading time18 min
Views19K

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

Читать далее
Total votes 44: ↑43 and ↓1+42
Comments37

Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 2

Level of difficultyEasy
Reading time20 min
Views15K

Всем привет! В этой статье (части) рассмотрим вопросы, связанные с великим и могучим TypeScript'ом, которые задают на собеседованиях. Если вы не читали прошлую статью, где описаны вопросы по JS, вот ссылочка. Пожалуйста, не заучивайте вопросы, это вредно для вашего здоровья!)

Читать далее
Total votes 13: ↑11 and ↓2+9
Comments14

Глубокий JS. Области тьмы или где живут переменные

Level of difficultyHard
Reading time16 min
Views13K

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

Речь пойдет об Абстрактном Синтаксическом Дереве (AST), типах переменных, областях видимости и выделении памяти в стэке и куче.

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

Никогда не забывай об этом, когда делаешь open-source проект

Level of difficultyEasy
Reading time8 min
Views27K

Если составлять топ самых крутых изобретений человечества, то второе место сразу после кофеварки наверняка займёт opensource – разработка проектов с открытым исходным кодом, которая помогла родиться поистине огромному числу полезных и гениальных продуктов. Причём опенсорс важен не только для сообщества программистов в целом, но и для каждого конкретного разработчика: участвуя в создании программ с открытым кодом, они могут неплохо развить свои скиллы, обрести новых друзей со сходными интересами и, конечно же, потешить своё самолюбие. Признайтесь, вам хотелось бы, чтобы вашей библиотекой пользовался весь мир?

Читать далее
Total votes 54: ↑46 and ↓8+38
Comments124

Почему я больше не буду работать наставником на IT-курсах

Level of difficultyEasy
Reading time4 min
Views107K

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

Читать далее
Total votes 339: ↑325 and ↓14+311
Comments724

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Level of difficultyEasy
Reading time8 min
Views182K

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

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

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

Читать далее
Total votes 191: ↑184 and ↓7+177
Comments177

Учим PixiJS на играх

Level of difficultyEasy
Reading time60 min
Views22K

В статье описал разработку 13-ти игр на PixiJS. Около 70% текста - это описание механики игр, остальное - реализация на PixiJS. Получилось много текста, т.к. описывать советы для PixiJS интереснее с примером из игр.
Самая последняя игра будет самой сложной и интересной.

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments6

VK Open: 6 часов погружения в открытые платформы

Reading time7 min
Views1.3K

3 июня VK Mini Apps провела конференцию VK Open об открытых платформах и их возможностях. В центре внимания оказались доступные разработчикам возможности платформ VK. На VK Open мы решили показать зрителям что-то новое и необычное. Не на словах рассказать о простоте и скорости разработки мини-приложений, а показать это наглядно. Для этого мы оборудовали отдельную зону лайвкодинга. Там в режиме реального времени на протяжении всей конференции команда разработчиков из студии LunaApp с нуля создавали мини-приложение – игру. В любой момент посетители могли подойти и посмотреть на работу команды. А стрим и посты из зоны лайвкодинга набрал 75 000 просмотров.

Читать далее
Total votes 31: ↑30 and ↓1+29
Comments7

Система для менеджера V1.1. Добавление расчета затрат и развитие функционала планирования

Reading time3 min
Views3K

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

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

В систему добавилось...
Total votes 4: ↑3 and ↓1+2
Comments0

Свой NPM репозитарий Verdaccio + GitLab + Docker

Level of difficultyMedium
Reading time3 min
Views3.4K

Требовалось кешировать используемые в разных проектах NPM пакеты (+ хранить свои пакеты) на отдельном сервере.

Было решено делать это с помощью репозитария Verdaccio (по нему есть достаточно хорошая офф. дока), крутится это все должно в Docker, а разворачиваться на отдельном сервере через GitLab CI/CD.

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

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

Чем заняться тимлиду, если не кодить? Рассказываю о своих задачах

Level of difficultyEasy
Reading time10 min
Views11K

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

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

Я составил список своих задач и разбил их на категории. Кстати говоря, добрую половину этих задач я повесил на себя сам.

Читать далее
Total votes 21: ↑19 and ↓2+17
Comments13

Гайд по эвент-сорсингу

Level of difficultyMedium
Reading time19 min
Views12K

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

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

Читать
Total votes 29: ↑24 and ↓5+19
Comments104

Качаем IT-бренд работодателя в 2023 году

Level of difficultyEasy
Reading time8 min
Views5.9K

Всем привет! Сегодня расскажем, какие качества работодателя делают компанию более привлекательной в глазах соискателя. Материалом для наших выводов послужило последнее исследование ЭКОПСИ и Хабра, где мы опросили 16 тысяч IT-соискателей, сотрудников 88 компаний, на тему взаимоотношений «сотрудник — работодатель», а также провели анализ 95 EVP IT-компаний и множество фокус-групп с IT-специалистами. По итогам всей этой работы получились ключевые тренды в работе с IT-кадрами в 2023–2024 гг. Если интересно — приглашаем под кат. 

Читать далее
Total votes 21: ↑15 and ↓6+9
Comments8

Все еще работаете с access token на клиенте? Тогда мы идем к вам

Reading time15 min
Views45K

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

В статье рассмотрим причины необходимости работы с токеном на клиенте веб-приложений, узнаем ,что лучше для хранения токена: localStorage, sessionStorage или cookie без флага HttpOnly (спойлер, ничего из этого), а также посмотрим на меры воздействия, которые можно использовать для снижения риска утечки токена посредством различных уязвимостей.

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

Читать далее
Total votes 44: ↑42 and ↓2+40
Comments40

Мощь декораторов TypeScript на живых примерах. Декорирование методов класса

Reading time12 min
Views23K

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

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

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

Вся правда о кубах данных OLAP: развенчиваем мифы

Reading time4 min
Views39K


Кубы данных — не самая простая тема в дата-инжиниринге. Это тот самый случай, когда на пять запросов об определении приходятся пять разных вариантов ответа. Эта неоднозначность породила неудачную универсальную метафору, с помощью которой описываются кубы данных, — схему трехмерного куба. При этом в объяснениях нет примеров, рассказывающих, как в дата-пайплайне реализуется эта концепция.
Читать дальше →
Total votes 40: ↑38 and ↓2+36
Comments7

Пишу диаграммы последовательностей текстом (кодом). Вы тоже можете

Reading time5 min
Views26K

Я работаю бизнес-аналитиком. Создание диаграмм последовательностей (sequence diagram) – часть регулярной рутины. Всё классно. Но процесс правок…

К счастью, я нашел для себя решение. Теперь я не рисую sequence diagram, а пишу "кодом". Это легко, быстро и удобно.

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

Импортозамещение облаков: как настроить GitLab Runner в Yandex Cloud и не обанкротиться

Reading time5 min
Views7.7K

У нас в профсоюзе недавно появился сервис, который используется для создания публикаций в социальных сетях. Проект находится в GitLab, но с недавних пор использовать Shared Runners в GitLab не представляется возможным, поскольку для этого требуется подключить банковскую карту, а российские карты не принимаются. Открыть счёт в банке другой страны непросто, поэтому было решено развернуть GitLab Runner в Yandex Cloud, поскольку сервис уже развёрнут в Yandex Serverless Containers.

Развернуть GitLab Runner в Yandex Cloud можно в Managed Service for GitLab или на виртуальных машинах (далее ВМ).

Чистая ВМ — наиболее подходящий вариант, поскольку Managed Service for GitLab и ВМ с образом GitLab обходятся относительно дороже и имеют излишнюю функциональность для текущей задачи. Кроме того, чистая ВМ более гибкая в выборе вычислительных ресурсов, так что стоимость использования может быть ниже.

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

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

Читать далее
Total votes 26: ↑24 and ↓2+22
Comments17

Состояние PostgreSQL 2022: 13 инструментов, отличных от psql

Reading time8 min
Views12K

Опрос о состоянии PostgreSQL 2022 завершился несколько недель назад, и мы усердно работаем над очисткой и анализом данных, чтобы поделиться с сообществом PostgreSQL максимально полной информацией.

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

Читать далее
Total votes 21: ↑19 and ↓2+17
Comments14
1
23 ...

Information

Rating
5,091-st
Location
Тула, Тульская обл., Россия
Date of birth
Registered
Activity