Заметки (веб и не только) разработчика

Вся моя профессиональная карьера - это программирование.

В самом начале я занимался разработкой на 1C, а потом разработкой на Ruby-on-Rails (и многом другом). Также читал лекции (offline) и вёл курсы по программированию (online).

Здесь я делюсь накопившимся опытом.

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

А когда мы разрабатываем что-то новое, хочется вбить в поисковик запрос из разряда "как написать то-что-я-разрабатываю". Например социальную сеть, или магазин, или любой сервис. Конечно, на такие вопросы нет однозначного ответа. Но здесь я постараюсь осветить некоторые, с коротыми столкнулся лично я.

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

Локализация

Под локализацией проекта следует понимать не только перевод на другой язык.

В локализацию входит множество самых разных вещей

Сложности локальной разработки в Docker

Читать о том как запускать проекты и команды внутри контейнеров и бороться с правами доступа.

Куки для поддоменов

Как отправлять одни и те же Cookie на все поддомены, когда возникает такая необходимость.

Аутентифицирующий proxy

Как авторизовывать все приложения находящиеся за прокси-сервером без написания индивидуально механизма аутентицикации для каждого из них?

Настроить аутентифицирующий прокси сервер

is_a? и reload! в rails c

При локальной разработке и использовании is_a? Rails преподносит сюрпризы.

Ссылка из статичного front на back

Во front приложении возникает необходимость добавить env а также другие динамические вещи.

Зачем нужно TDD

Часто можно услышать:

— Мы у себя используем TDD, это хороший подход, мы пишем тесты...

И никакой конкретики далее.

Зачем всё-таки нужно TDD?