Мне как программисту проще всего использовать сервер-сайд-рендерниг, но только на DSL того же языка, на котором пишу код. (что бы тупо абстракции выделять, рефакторингом “extract method”)
С SPA куча проблем, из-за того что это “распределенная система”
(хуже только с backend api + mobile клиент, ибо там куда сложнее обновлять клиент)