Pull to refresh
56
0
Ilya Kaznacheev @Color

Consulting Cloud Architect, GDE on Cloud

Send message

Чистые транзакции в гексагональном Go

Reading time 9 min
Views 13K

В современной микросервисной разработке очень популярна чистая архитектура (она же луковая). Этот подход ясно отвечает на много архитектурных вопросов, а также хорошо подходит для сервисов с небольшой кодовой базой. Другая приятная особенность чистой архитектуры состоит в том, что она отлично сочетается с Domain Driven Development — они отлично дополняют друг друга.


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


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


Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Comments 33

Автоматы на службе распределенных транзакций

Reading time 20 min
Views 5.2K

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



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

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

Не работайте в плохих проектах

Reading time 13 min
Views 99K

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


Читать дальше →
Total votes 220: ↑197 and ↓23 +174
Comments 574

Почему программисты — отстой

Reading time 6 min
Views 25K

Давным-давно я написал статью на тему «Почему компьютеры – отстой» (в итоге получившую названия «Компьютеры» и «Что не так с компьютерами» [в оригинале ссылка битая, поэтому копия из вэбархива — прим. переводчика] в двух других версиях, а оригинальное название так и не вышло в свет). Статья была достаточно длинной, но суть сводилась к идее, что компьютеры отстойны из-за того, что программисты создают дичайше сложные штуки, которые больше никто не в состоянии понять, и того, что сложность основана на еще большой сложности до тех пор, пока каждый аспект программы не станет неуправляемым.


image
КПДВ отсюда


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

Читать дальше →
Total votes 33: ↑18 and ↓15 +3
Comments 60

Управление временем для начинающих и пара приложений, которые в этом помогут

Reading time 7 min
Views 9.6K
Сегодня крайне актуальна проблема борьбы с ленью и вытекающая из нее тема управления временем. Почти каждый имеет неограниченный доступ к образовательным материалам на любой вкус, может работать удаленно, да и вообще жить в любом удобном ритме. Единственное что остается нерешенным — где на все это найти время, да чтобы еще осталось на сон?



В этой статье мы обсудим вопрос планирования и управления временем, что это дает, а также посмотрим, как это можно имплементировать в реальную жизнь тем, кто этим всерьез не занимался. Поехали
Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 2

Прокрастинация, или как перестать быть ленивой задницей и начать жить

Reading time 8 min
Views 62K
Тема прокрастинации в последнее время особенно горячо обсуждается на мегамозге и ГТ, а также множестве других околоайтишных ресурсов. Везде было выказано множество мнений, зачастую противоположных. Чтож, попробуем немного проанализировать и структурировать прочитанное, порассуждать на тему и попытаться найти решение



Автор не является ни медиком, ни психологом, а является просто лентяем, который пытается учиться на своем опыте, а также делать выводы на основе чужого. Кому интересно — прошу под кат.
Читать дальше →
Total votes 26: ↑24 and ↓2 +22
Comments 16

Click and Grow. Полгода — полет нормальный

Reading time 3 min
Views 24K


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

Прошу ознакомиться с отчетом и взглянуть на фотографии, сделанные на телефон.
Читать дальше →
Total votes 15: ↑10 and ↓5 +5
Comments 11

Diablo III выйдет для PS3 и Xbox 360 в сентябре

Reading time 1 min
Views 17K
image

Сегодня Activision Blizzard объявил, что игра выйдет на консолях уже 3-го сентября. По словам разработчика, игра будет «заточена под управление геймпадом», что, в принципе, логично. К этому добавили динамическую консольную камеру, обновили и упростили интерфейс и улучшили звуки, с которыми "консольщики пользователи приставок должны почувствовать себя как дома".
Читать дальше →
Total votes 24: ↑15 and ↓9 +6
Comments 27

Установка патча при запуске VMware на Ubuntu 12.04 и других дистрибутивах

Reading time 2 min
Views 6.3K
Сегодня столкнулся со следующей проблемой: при установке VMware Workstation 8 на Linux Mint 13 (ядро 3.2, как и в ubuntu 12.04 LTS или других новых дистрибутивах) и последующем запуске возникает требование пропатчить ядро системы. Как я узнал из интернета, ситуация достаточно распространенная, однако, ни одной подробной инструкции «от начала до конца» я не нашел. Проблема была мной решена, в связи с чем я решил написать небольшой гайд.
Итак, последовательность действий такова:

  1. Скачать и установить VMware Workstation 8 (я использовал Workstation 8.0.4, но с другими тоже должно работать)

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

Information

Rating
Does not participate
Registered
Activity