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

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

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

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

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

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

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

Protobuf и buf: блеск, нищета и импортозамещение

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

Если для компиляции proto-файлов вы всё ещё используете protoc, самое время перестать и перейти на buf. Разберём, как это сделать и почему это необходимо. Также рассмотрим проблемы доступа к buf.build.

Меня зовут Эдгар Сипки, я Go-разработчик в Ozon Fintech. buf — мощная утилита для линтинга протофайлов, проверки обратной совместимости API, генерации кода и валидации запросов. Однако, из-за санкций она недоступна в России. Поэтому я расскажу, как мы разрабатывали собственное решение в рамках импортозамещения.

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

Что для вас Linux? Или как устроен запуск процессов

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

Как бы вы ответили на вопрос, что такое операционная система?

Скорее всего, вы легко сможете ответить на этот вопрос человеку далекому от IT, но подобный вопрос вам может задать, например, HR - в попытке переманить вас в какой-нибудь Facebook или Google. С одной стороны, ответить на этот вопрос очень легко и в интернете можно найти много определений, но относится ли, например, конфигурация DNS и файл /etc/resolv.conf к ОС ? Или в какой области памяти работает ОС - в памяти с безграничными возможностями для кода, называемой kernel space, или все же в лимитированной user space?

На эти вопросы даже в этой статье вы не найдете однозначного ответа, и только вам решать, что для вас ОС, а что пользовательские приложения. Но в конце статьи я все же приведу свои аргументы, почему важно знать, как это работает, даже если вы сеньор программист/админ/девопс, проживший без этих знаний 35 лет и весьма успешно запустивший множество проектов. 

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

Архитектура unity проектов

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

За всю карьеру удалось поработать на множестве игровых проектов в качестве лида. За более чем 5 лет удалось насмотреться на разные подходы к созданию проектов.

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

Не волнуйтесь, никаких SOLID и других изотерических практик. Коротко, по делу, подкрепленное использованием на нескольких проектах.

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

Создание сервера для онлайн ММО игр на PHP ч. 10 — Открытый бесшовный мир в 2D игре

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

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

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

Обзор паттернов хранения деревьев в реляционных БД

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

Всем привет! Меня зовут Пантелеев Александр и я бекенд разработчик в компании Bimeister. Постараюсь описать исчерпывающе, кратко и понятно суть основных паттернов хранения деревьев в реляционных базах данных. Надеюсь, что статья будет полезна тем, кто до сего момента не сталкивался с такими паттернами, и станет отправной точкой в их понимании.

Читать далее
Всего голосов 30: ↑21 и ↓9+16
Комментарии25

Кофемашина с открытым исходным кодом — как сделать (почти) с нуля

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

Эспрессо‑машины — это сложные, загадочные штуки, которые тяжело обслуживать. А ещё они очень дорогие. Но для тех, кто не может жить без кофе, нет никаких преград. Например, можно сделать вот такую эспрессо‑машину...

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

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

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


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

PostgreSQL Antipatterns: простой(?) INSERT… VALUES

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

Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).

Как больно наступить на грабли в совсем простом, казалось бы, запросе?

Читать далее
Всего голосов 37: ↑33 и ↓4+35
Комментарии32

Ubiquitous Language и Bounded Context в DDD

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

Domain-Driven Design: Tackling Complexity in the Heart of Software Эванса — лучшая книга о проектировании действительно больших enterprise-приложений, что я читал. Видимо это мнение разделяют многие другие разработчики и проектировщики, потому что Entity и ValueObject, Repository и Specification встречаются почти в каждой большой кодовой базе. Но вот незадача, Ubiquitous Language (единый язык) и Bounded Context (контекст предметной области) в чужом коде я не видел ни разу. И здесь зарыта очень большая собака.
Выкапываем собаку
Всего голосов 23: ↑16 и ↓7+9
Комментарии42

Проектируем bounded context с помощью Bounded Context Canvas: рецепт воркшопа

Время на прочтение10 мин
Количество просмотров14K
Среди тем предстоящей конференции TechLead Conf 2020 будет детальное обсуждение Domain-Driven Design и EventStorming. Помимо подготовки 2-слотового доклада Константина Густова о DDD, доклада Сергея Баранова об EventStorming и митапа, во время которого мы будем создавать DDD-радар, мы решили перевести статью об одном из самых популярных способов проектирования bounded context.

Как разбить большую систему на мелкие более управляемые компоненты? Мне часто задают этот вопрос, поэтому я собрал свои знания в эту статью.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+20
Комментарии3

Security микросервисов с помощью Spring, OAuth2, JWT и Service Account

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

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

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

Настройка jwt-username-password authentication через spring-security-oauth2-resource-server

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

Добрый день!

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

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

Создание 3D-сетки из изображения с помощью Python

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


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

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

Как научиться учиться с помощью второго мозга. 4 инструмента, 3 апгрейда и 3 ошибки

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

Новички которые слышат про методику Zettelkasten более чем в половине случаев считают что могут прокачать свой процесс обучения с ее помощью. Обычно речь идет про программирование.

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

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

Вот как генеративно-состязательные сети учатся творить

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

Объяснение популярной минимаксной игры GAN и функции общих потерь модели



Генеративно-состязательные сети (GAN) приобрели известность не так давно. Наиболее популярны эти сети в области машинного зрения. К старту нашего флагманского курса по Data Science рассказываем, какая математика у них под капотом.

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

Код, который пишет себя сам

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

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

Читать дальше →
Всего голосов 39: ↑37 и ↓2+47
Комментарии46

Уроки компьютерного зрения на Python + OpenCV с самых азов. Часть 8

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

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

Сегодня продолжим тему прошлого урока. Вычислим инвариантный вектор новым методом: через отношения длин сторон. Мы начнем обход так же с самой удаленной от центра точки, только будем брать стороны, а не углы межу сторонами. И первая сторона это та, что прилегает к первой точке. То есть она соединяет первую точку и следующую за ней по часовой стрелке. И все эти длины сторон мы разделим на самую длинную сторону. Хотя нет, сделам лучше. Сделаем минимакс нормализацию: вычтем из длины стороны минимум и разделим на разницу между минимумом и максимумом. У нас будет вектор чисел от 0 до 1.

И так, займемся кодингом. Сначала напишем цикл, создающий исходный масcив:

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

Создание сервера для онлайн ММО игр на PHP ч. 3 — WebSocket

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

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

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

Всё что нужно знать про ECS

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

Привет, Хабр! В этой статье я расскажу всё, что знаю про Entity-Component-System и попытаюсь развеять различные предубеждения об этом подходе. Здесь вы найдете много слов о преимуществах и недостатках ECS, об особенностях этого подхода, о том как с ним подружиться, о потенциальных граблях, о полезных практиках, а также в отдельном разделе коротко посмотрим на ECS фреймворки для Unity/C#.

Окунуться в мир ECS
Всего голосов 35: ↑34 и ↓1+36
Комментарии24

Информация

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