Pull to refresh
1
0

Пользователь

Создание атомарных коммитов в Git

Reading time 7 min
Views 15K

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

Читать далее
Total votes 34: ↑31 and ↓3 +28
Comments 41

Фиксим 21-летнюю игру

Level of difficulty Medium
Reading time 12 min
Views 7.6K

Несколько недель назад я копался в своей коллекции старых CD, и нашёл диск с Salt Lake 2002. В последний раз я играл в неё много лет назад, поэтому решил попробовать снова.

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

Читать далее
Total votes 31: ↑31 and ↓0 +31
Comments 4

В Ruby появилась поддержка WebAssemblу: что это значит?

Level of difficulty Easy
Reading time 7 min
Views 2.4K


С выпуском версии 3.2 Ruby пополнил список языков программирования, поддерживающих WebAssembly. Небольшое на первый взгляд обновление может стать самым значительным изменением языка со времён Rails, так как теперь разработчики смогут работать не только с бэкендом. После портирования кода на WebAssembly его можно будет запускать где и как угодно — на фронтенде, встроенных устройствах, как бессерверные функции, вместо контейнеров или в граничных вычислениях. WebAssembly может превратить Ruby в универсальный язык программирования. Подробности под катом, а практика в вебе — на нашем курсе по Fullstack-разработке на Python.

Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Comments 8

Что под капотом «ответов на вопросы» Маруси?

Reading time 16 min
Views 3.9K

Привет, это команда ответов на вопросы Маруси.

Этот материал состоит из двух частей. Это вторая часть (первая часть). В ней мы чуть глубже копнём технический аспект того, как устроены ответы на вопросы Маруси.

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

Материал может быть интересен тем, кто только начинает свой путь в NLP или разрабатывает аналогичные решения, но не обладает несколькими стойками c DGX.

Читать далее
Total votes 35: ↑34 and ↓1 +33
Comments 2

Как мы использовали RabbitMQ для разбиения монолита крупнейшего ритейлера страны*

Reading time 6 min
Views 8.1K

Накопить за 7 лет терабайты данных в монолите и решить, что пора оптимизировать систему и разбивать её на микросервисы — страшный сон для айтишника. Добавим сюда ещё база на решениях от 1С и необходимость обеспечить непрерывность процесса. Стало страшно? А для нас — возможность показать экспертность и решить нетривиальную задачу. О том, как «кролик» помог сдвинуть гору рассказал архитектор 1С компании «Автомакон» Виталий Осиповский.

С 2013 года ВкусВилл проводил внутреннюю автоматизацию с использованием программ на базе 1С. За годы активного развития и эксплуатации база увеличилась до нескольких терабайт, кратно выросло количество операций, что спровоцировало большой объем работы для администраторов, оптимизаторов и команды разработчиков. Например, тяжелые алгоритмы планирования, закрытий, генерации документов могли негативно влиять на работу всей базы.

Любые сбои и простои были неадекватно затратны и влияли на все компоненты системы в целом. А сама система не годилась для быстрого масштабирования бизнеса. Поэтому уже в 2020 году приняли решение о поэтапном разделении монолита на отдельные программные компоненты.  

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

Использование шаблонов проектирования группы GoF в React

Reading time 9 min
Views 9.7K

В этой статье поговорим о том, как написать в React многократно используемый код, используя три шаблона проектирования группы Gang-of-Four.

Читать далее
Total votes 10: ↑8 and ↓2 +6
Comments 10

Получил доступ к Dalle-2. Вы не поверите, что может нарисовать машина… Дизайнеры больше не нужны

Reading time 4 min
Views 149K
Текст генерации: furry monster with green eyes looking at us, the word «habrahabr» in the background, digital art, blue background, 3d

Привет, чемпион!

Недавно мне посчастливилось стать обладателем доступа к API Dalle-2. Если ты ещё не слышал про Dalle, то это такая CLIP-архитектура, обученная на огромном корпусе пар текст-изображение. Иначе говоря — она умеет генерировать очень качественные изображения из текста. Отличить результаты генерации от рисунков человека иногда просто невозможно! Это одновременно впечатляет и в то же время — немного шокирует.

По сравнению с предыдущей версией — DALL-E 2 умеет генерировать изображения в более высоком разрешении (1024×1024 пикселей, что в 16 раз превышает разрешение в предыдущей версии модели) да ещё и намного быстрее. Более того, DALL-E 2 позволяет редактировать уже существующие изображения.

Нет больше терпения ждать, давайте же опробуем её!
Читать дальше →
Total votes 234: ↑227 and ↓7 +220
Comments 817

Вашей компании не нужен HR

Reading time 2 min
Views 3.7K

Небольшие компании, особенно в IT, активно нанимают HR’ов, поручая им различные задачи - от кадрового делопроизводства до обучения и развития. Проблема в том, что компании как минимум до 50 человек вообще не нужен эйчар, но признать это иногда очень болезненно для фаундеров или директоров. HR стал гигиеническим минимумом со слабо выраженной добавленной стоимостью, откуда и растут ноги предрассудков, что эйчары только и умеют, что резюме перебирать да чаи гонять. 

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

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

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

Читать далее
Total votes 21: ↑17 and ↓4 +13
Comments 15

YouTubeDrive: хранение файлов на YouTube

Reading time 9 min
Views 37K


Хостинг неограниченного размера? Звучит как нечто фантастическое и невозможное по законам природы. Примерно как вечный двигатель. Но что, если такое возможно? (не вечный двигатель, конечно, а неограниченный хостинг).

Если подумать, ведь бесплатное хранилище неограниченного размера предоставляют десятки интернет-сервисов, от соцсетей до фотохостингов. Например, ограничение YouTube на размер одного видеоролика — 12 часов или 256 ГБ, но на количество видеороликов ограничений нет.
Читать дальше →
Total votes 67: ↑56 and ↓11 +45
Comments 112

Создаём свою БД на PostgreSQL из CSV

Reading time 4 min
Views 16K

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

Читать далее
Total votes 9: ↑0 and ↓9 -9
Comments 12

Проксируйте всё

Reading time 6 min
Views 12K

Читатель, привет!

Если ты опытный разработчик, то ты это уже давно знаешь и используешь. Если же нет… то самое время узнать, чтобы иметь основания считать себя хорошим разработчиком ) .

Сама идея проста, как колумбово яйцо (или «проста как валенок», с учётом работающего у нас сейчас импортозамещения).

А именно: все вызовы из системы вовне и все вызовы системы извне должны быть обёрнуты минимум одним слоем прокси методов.

Как видите, очень просто.

Но разберём чуть подробнее.

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

Как настроить быстрый персональный VPN в Azure

Reading time 3 min
Views 10K

Всем привет! Я расскажу о том как в течении 10 минут создать личный VPN сервер в нужном регионе.

Очевидно, что для настройки потребуется доступ к Azure. Я сделал такой доступ через Azure Benefit (google 'how to activate azure benefit for msdn subscribers'). В марте-апреле этого года данная штука активировалась для жителей нашей страны, а вот в этом месяце с этим как мне сказали уже есть проблемы. В таком случае - обращайтесь к друзьям с доступом к Azure.

В статье будет максимально простая инструкция с большим количеством картинок.

Читать далее
Total votes 9: ↑5 and ↓4 +1
Comments 18

Имплементируем WebSocket протокол на Go

Reading time 9 min
Views 22K

Статья для тех, кто хочет познакомиться с устройством технологии WebSocket или языком программирования Go.

Или узнать с какой простотой Go стал одним из самых популярных языков программирования для написания сетевых приложений.

Читать далее
Total votes 39: ↑38 and ↓1 +37
Comments 9

Так все же, насколько быстры каналы в Linux?

Reading time 26 min
Views 22K

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

Читать далее
Total votes 96: ↑91 and ↓5 +86
Comments 31

Отрисовка в браузере большой анимации или как я ушел с mp4 к своему формату видео

Reading time 17 min
Views 51K

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

Читать далее
Total votes 286: ↑286 and ↓0 +286
Comments 134

Установка Arch Linux на зашифрованный раздел c LVM

Reading time 6 min
Views 11K

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

Почему Arch?

До этого я использовал ALT Linux, Ubuntu, SuSe, Fedora, Debian, Arch. И когда я попробовал арч я понял, что он полностью удовлетворяет моим потребностям.

Что мне в нем нравится:

Читать далее
Total votes 17: ↑15 and ↓2 +13
Comments 36

Сбежать с конференции Zoom с помощью браузера Chrome

Reading time 1 min
Views 4.6K

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

Читать далее
Total votes 22: ↑11 and ↓11 0
Comments 2

Как создать CDN в отдельно взятой стране

Reading time 10 min
Views 4.3K

Тема задержки доступа и скорости извлечения сетевых ресурсов никогда не перестанет быть актуальной. Максимально близкое расположение источника влияет не только на скорость загрузки и пользовательский опыт, но и на эффективность работы глобальной сети в целом, поскольку позволяет локализовать трафик и сократить загрузку магистральных каналов, предпочитая использовать кэшированные или расположенные локально реплики сетевых ресурсов. Не случайно Google реализует модель сохранения локальных кэшей на оборудовании крупных региональных провайдеров (Google Global Cache) и интеллектуальные алгоритмы в маршрутизации на ближайшую реплики. В этой статье мы обсудим различные подходы к реализации распределенной сети доставки контента (Content Delivery Network, он же CDN), а также акцентируем возможные решения для создания CDN в масштабах отдельно взятой страны или города.

Читать далее
Total votes 10: ↑7 and ↓3 +4
Comments 1

Уязвимость в Atlassian Confluence Server и Data Center позволяет злоумышленникам удаленно выполнять команды на сервере

Reading time 2 min
Views 5.8K

Поступают сообщения о массовых атаках на Confluence Server с использованием уязвимости CVE-2022-26134, которая используется хакерами для установки веб-оболочек (например, Behinder).

Согласно бюллетеню Atlassian проблема - не требующая аутентификации уязвимость RCE в Confluence Server и Data Center.

Подробнее и как устранить
Rating 0
Comments 0

Information

Rating
Does not participate
Registered
Activity