Pull to refresh
0
0
Алексей @Saty

User

Send message

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

Level of difficultyEasy
Reading time5 min
Views20K

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

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

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

Reading time11 min
Views7.7K

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

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

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

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

Level of difficultyMedium
Reading time15 min
Views40K

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

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

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

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

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

Level of difficultyMedium
Reading time9 min
Views18K

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

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

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

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

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

Level of difficultyEasy
Reading time4 min
Views4.7K

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

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

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

Reading time4 min
Views13K

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

Читать далее
Total votes 30: ↑21 and ↓9+16
Comments25

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

Level of difficultyMedium
Reading time6 min
Views18K

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

Читать далее
Total votes 32: ↑27 and ↓5+27
Comments66

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

Reading time4 min
Views52K


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

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

Reading time3 min
Views17K

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

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

Читать далее
Total votes 37: ↑33 and ↓4+35
Comments32

Ubiquitous Language и Bounded Context в DDD

Reading time3 min
Views57K

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

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

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

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

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

Reading time7 min
Views21K

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

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

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

Reading time9 min
Views17K

Добрый день!

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

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

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

Reading time7 min
Views13K


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

Читать дальше →
Total votes 11: ↑9 and ↓2+9
Comments6

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

Reading time8 min
Views27K

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

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

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

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

Reading time9 min
Views6.2K

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



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

Посмотреть
Total votes 4: ↑4 and ↓0+4
Comments2

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

Reading time10 min
Views67K
Источник

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

Читать дальше →
Total votes 39: ↑37 and ↓2+47
Comments46

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

Reading time11 min
Views11K

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

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

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

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

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

Level of difficultyEasy
Reading time3 min
Views5K

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments2

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

Reading time30 min
Views94K

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

Окунуться в мир ECS
Total votes 35: ↑34 and ↓1+36
Comments27

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity