Написал философской рефлексии пост про изменение восприятия сложности за последние полвека.
Портировал Сказку на Python 3.
Хочу поделиться опытом портирования проекта с Python 2.7 на Python 3.5. Необычными засадами и прочими интересными нюансами.
Немного о проекте:
Хочу передать благодарность разработчикам платёжного API AppStore, за то, что в пятницу в 19 вечера мне пришла ужасная бага «не работают платежи».
Ошибка оказалась не страшной и заключалась в том, что эплы хитро сломали своё API (минимум второй раз за полгода!). Сломали очень «удачно» для нашей системы, нарушив сразу два своих же соглашения по формату данных.
На этой неделе столкнулся с замечательным примером того, что даже умные люди способны реализовать одну и туже функциональность в одном и том же случае тремя разными способами (наверняка даже большим количеством, но нам пока только три потребовалось).
Речь пойдёт о non-consumable покупках/товарах в мобильных магазинах Apple, Google и Amazon. Non-consumable — это разовые покупки, которые нет необходимости повторять. Например: наборы уровней, вечный VIP, отключение рекламы. Consumable, наоборот — это расходники — золото, энергия, сундуки и прочий f2p шлак.
На работе потребовалось сформулировать задачи для DevOps. Эта роль протянула свои щупальца почти во все аспекты разработки ПО, и человеческим языком описать её задачи оказалось довольно сложно. В итоге получился такой вот перечень (конечно, это задачи именно melesta-вского DevOps):