Вообще для любого человека однозначно сказать нельзя, с чего ему лучше начинать будет. Но судя по тому, насколько жаваскрипт в тренде, можно сказать, что подход "оперировать готовыми высокоуровневыми средствами языка" подходит довольно многим. Навыки алгоритмизации всё же я склонен относить к универсальным, а многое остальное, различные парадигмы и технические знания к зависящему от конкретных потребностей и задач.
Когда и насколько потребуется изучать низкоуровневые детали зависит от склонностей и задач человека. Многим достаточно будет сугубо теоретических знаний и представлений о низком уровне. Если у человека есть именно мотивация понять "как работают компьютеры", то тогда C будет подходящим языком, но более общепринятой педагогической практикой является взять высокоуровневый язык или вообще учебный для облегчения погружения.
Есть множество разных способов изучать программирование с нуля, подходящих определенным группам людей, подход "с самого низу", конечно, подходит определенным людям, но разумеется не универсален. В противоположность ему можно выделить подход "с самого верху, от математики", который можно увидеть в SICP, где предлагается мыслить о программировании как о манипулировании абстракциями на максимально математизированном и формально описанном языке, состоящем из примитивных понятий, которые могут быть поняты в отрыве от любых технических деталей. Такой подход, разумеется, тоже имеет своих приверженцев, скорее всего из функционального лагеря. Такие люди могут иметь кардинально противоположную точку зрения в духе "Я не знаю как НА САМОМ ДЕЛЕ работают компьютеры, считайте если хотите меня прикладным математиком".