Как выбрать узкую специализацию?
Для начала нужно спуститься на землю, умею плохо - это не умею, это знаком, видел, имею представление. У вас по каждой из перечисленных областей есть несколько хороших вакансий куда вас берут работать? - Скорее всего нет. Нужно выбирать работу, а не область. Идите туда, где вас устраивают задачи, деньги и куда вас берут. Дальше растете в той области, которую требует ваша работа. А все остальное "вкусное" уходит в раздел хобби, программирования для себя и участия в опенсорс проектах.
На уровне "понимаю и немного могу" изучить html, css, js и python. Найти задачу для решения. Взять веб-фреймворк, например flask, и вкалывать пока задача не будет решена, через год будешь знать чего хочешь.