Если вы хотите от жизни большего, не можете сжульничать и родились в СНГ.
Давно хотел написать пару соображений на тему, а раз сейчас идёт вступительная кампания, то и напишу.
Написанное я считаю справедливым для людей, которые хотят расти над собой: стать хорошим специалистом, создать что-то заметное, принести пользу обществу.
Этот текст мало полезен для тех, кому родители уже подготовили тёплое место, кто косит от армии, кто идёт учится «потому что надо» и так далее.
Строго субъективно, конечно.
В теории с миграциями всё сложно. Но на практике надо с ними работать. Или совсем отказаться от них. Посмотрим какие рабочие варианты существуют.
В основном я пишу на Python, использую реляционные БД, поэтому и инструменты буду смотреть с ориентировкой на эти технологии. Конечно, только open source. На полноту обзора не претендую.
Если я упустил какой-то софт или описал его с ошибками — пишите в комментариях или в личку — исправлю. В конце концов, досконально изучить документацию всех утилит я не пытался — это потребовало бы слишком много времени.
Недавно смотрел чего за последние годы сделано в области решений для миграций схем и данных в базах данных и как-то мне все решения не понравились. По крайней мере из open source ни одного проекта без косяков нюансов не нашёл.
Поэтому я решил порефлексировать и копнуть глубже — миграции баз данных всегда казались мне частным случаем общей проблемы обновления версий проекта.
Я предполагаю, что вы более-менее понимаете суть миграций в БД и сможете ориентироваться в моих допущениях: явных и неявных.
Первая часть эссе описывает миграции, пользу и проблемы от них. Вторая часть — мои пожелания к идеальной системе миграций.
Экспресс пост в ответ на вопрос.
Кратко: чтобы лучше кодить, надо больше кодить :-) и вдумчиво читать код.
Если чуть подробнее, то вопрос сложный и что-то посоветовать из чтения мне сложно:
Я больше писал, чем читал :-D В итоге, когда я начал читать шаблоны проектирования, я подумал: «и что тут такого, я уже с этим сталкивался», когда листал совершенный код, я подумал аналогично. То есть моя практика обгоняла теорию.
Из книг я читал то, что советовали преподаватели в универе, благо было кому советовать, и то, что считал интересным. Страуструпа, например, 2 раза прочитал.
Я давно испытываю когнитивный диссонанс по-поводу подачи прогресса в играх. Началось это с расцветом free-to-play и мобилок, в дальнейшем диссонанс всё нарастал и нарастал.
Поэтому я решил разобраться чего у меня так зудит и пришёл к некоторым общим выводам о природе и эволюции массовых продуктов.
Наверняка схожие идеи уже озвучены философами и экономистами лет 30-50 назад. А может и раньше, потому что чётко виден вечный спор о форме и содержании. К сожалению, с подобными работами я не знаком, поэтому буду натягивать сову на глобус как умею. Если вы знакомы с темой — поделитесь ссылками в комментариях.
Начну с игр, как знакомого мне предмета и яркой демонстрации явления. После чего распространю соображения на все медиа-продукты.
По аналогии можно было бы двинуться и дальше, но я постараюсь ограничиться именно медиа частью рынка и концепцией прогресса в использовании его продуктов — это мне сейчас интереснее всего.
В конце эссе будет глава с оговорками и примечаниями. Без них текст получился бы значительно больше и запутаннее.