Если бы я не забыл Дифференциальное Исчисление (дифуры) и Теорию Автоматического Управления (ТАУ), которые мне были не нужны 20 лет, а потом вдруг резко понадобились, я бы не потерял работу.
Вообще, знание математики для software engineer -- не недостаток, а достоинство. Учите математику, и чем больше, тем лучше. Корме помянутой "базы Вашего мышления", есть ещё и чисто прикладной смысл: Вам будут открыты дороги не только во фронтенд, но и во множество других интересных областей, о которых в 18 лет даже не мечтаешь или не догадываешься: космос, радиолокация/радионавигация, моделирование физических процессов в разных индустриях, миилион других вещей. Мир не кончается на вебе.
Недавно общался со старшим геологом в одной ОЧЕНЬ крупной добывающей фирме. Мне рассказывали о таком оборудовании, что у меня волосы дыбом вставали. А ведь его программировать надо.
И да, из языков учить надо английский. Немецкий тоже хорошо, но в дополнение к английскому. Кстати, неоднократно слышал, что начинать надо именно с английского, а уже потом немецкий, не наоборот.
По теме: ответ "да". Вообще, С-образные языки. И не-С-образные (хотя бы для общего кругозора).