eai, написать работоспособный код, который решает поставленную задачу - легко.
А вот когда изначальная спецификация меняется, тогда уже наступают проблемы, если код изначально не был на достаточном уровне абстракции, то придется все переписывать с нуля.
Где-то n^2, где-то n.
НО! Я даже не слышал о некоторых вещах, которые находятся в столбце log(n)!!!
Откуда это берется?
Курсы, немало книг прочитано, но такого даже не встречалось (за исключением разве пары пунктов).
EuGen, порекомендуйте способ подтянуть уровень. Что это чистый опыт, по мере того, как сталкиваешься с более сложными задачами? Или таки образование и книги?
По теме мало что могу сказать, но уточню по одному вопросу.
Для использования SSL не обязательно покупать какой-то сертификат. Они чудесно генерируются на сервере, выполняя основную функцию - хорошее шифрование пересылаемых пакетов, т.е. вероятность того, что кто-то прочитает почту резко стремится к нулю.
Покупка сертификатов, нужна лишь для подтверждения того, что сайт открывающий шифрованное соединение является собой, но это не часто нужно.