Можно ли научиться хорошо программировать если сначала теория потом практика?
===============================================================================

 Помогите, пожалуйста, можно ли научиться программировать на высоком уровне(сеньйор), если сначала теорию часа 3 изучать, потом практика часа 2 в день. Я по другому не могу, заставляют ходить в вуз, а там полная фигня, нужно самому учиться. Как вы поняли собираюсь часов 6 на парах изучать теорию сам с телефона, потом дома ее практиковать часа 1-4. Сильно ли это по продуктивности будет бить, если я сразу не смогу кодить, а только как домой прихожу? И смогу ли я на высокий уровень выйти при таком обучении сначала теория потом практика? И за сколько времени если хорошие способности у меня? Или может вообще бросить такое обучение? Вуз фиговый, там даже компов нет 

> ходить в вуз, а там полная фигня

  

Если вы не понимаете, чему вас учат в вузе, это означает, что ваш уровень образования вообще никакой.  

В вузе никто и никого не делает программистом. В вузе дают образование, базу для того, чтобы вы могли оперировать терминами, понятиями, и чтобы вы порешали практических задач, что заставит ваш мозг развиться и приобрести "логическое мышление".  

Без практики в вузе - с логическим мышлением будет плохо, а без теории в вузе, вы не сможете делать практику.  
  

Если вам так сложно учиться в вузе, а потом учиться самостоятельно, то может быть вообще не стоит идти в ИТ?  

Там в области манкикодинг очень высокая конкуренция, по сравнению с тем, что было 20 лет назад. 

 Не обращай внимания на большинство ответов тут, они поданы в негативном ключе и скорее нацелены на подавление твоей мотивации (какова мотивация авторов этих ответов - непонятно).  
  

Расскажу свою историю. Я никогда программированием не увлекался, в школьные времена большую часть времени проводил за компом в игрушках - вот и в 11 классе подумал пойти в IT сферу, мол раз за компом люблю посидеть, то и там будет интересно.  

Короче, информатику начал учить с нуля в последний год школы, успешно сдал её, поступил в ИТМО на разработку (не стоит думать что там чему-то учат). В первый год обучения мне было дико сложно, ничего не понимал, новый материал давался с трудом, задания кое как выполнял, тыря код из проектов одногруппников и интернета. Мне было настолько некомфортно, что я в конце первого года обучения хотел отчислиться. Хорошо, что этого не сделал.  
  

В итоге, спустя два года обучения меня больше заинтересовала веб разработка. Благо у меня английский на очень высоком уровне - я начал смотреть различные курсы, чтобы оттуда черпать информацию (насчёт книг скажу так - для общего развития можно почитать какую-нибудь классику по CS, в остальном куда полезнее читать доки/статьи/смотреть курсы).  
  

Таким образом через полгода я знал базовый стек по типу HTML, CSS, JS на более-менее хорошем уровне. С того момента уже около трех лет прошло, все также в свободное время смотрю курсы (уже вошло в привычку в свободное время открыть его на телефоне и залипнуть), делаю сайдпроекты, работаю.  
  

Так что скажу так - если действительно тебе это нравится, то продолжай. Да, по началу сложно, особенно если нет бэкграунда. Будешь смотреть примеры кода и не понимать что они делают. Будешь читать статьи и не понимать о чем они. Это нормально. Вся эта информация так или иначе откладывается у тебя в голове, и все что нужно для её понимания - это определённые знания, которые соединят все о чем ты прочитал или узнал в единое целое. Иными словами, в очередной раз читая о чем то ты внезапно поймёшь то, о чем читал/услышал неделю назад.  
  

Удачи.  
  

upd. Нет ничего плохого в том, что будет больше теории, чем практики. Просто делай следующим образом: узнал что-то новое - поиграйся с этим в коде. Узнал много нового - попробуй из этого состряпать что-нибудь. 

 Вуз вам не помощник - это априори, еще до поступления в ваш университет нужно было снять розовые очки по поводу высшего образования в России(если вы конечно учитесь не в СПБГУ,Бауманке,ИТМО,МГУ).   

> если сначала теорию часа 3 изучать, потом практика часа 2 в день.

 - обучение напрямую строится на ошибках, поглощая 50% или более информации из литературы - вы рискуете просто прокрастинировать, и отлынивать от практических задач.  
  

В программировании очень круто применяется закон Паррето, он же 80\20 - 80% практики, 20% теории, 20% теории нужно будет в поиске косяков, доборе нужной информации, которой вам будет всегда не хватать. Причем в 20% должно быть минимальное количество "воды".  
  

> высоком уровне(сеньйор)

 - в каждой компании свои понятия сеньёрности, видел я в нашей компании одного "миддла", который до наших джунов не дотягивал. 

> можно ли научиться программировать на высоком уровне(сеньйор), если сначала теорию часа 3 изучать, потом практика часа 2 в день.

  

Нельзя. Для этого нужно практики лет 10-15.  
  

> Как вы поняли собираюсь часов 6 на парах изучать теорию сам с телефона, потом дома ее практиковать часа 1-4.

  

На парах нужно внимательно слушать то о чем там рассказывают разные тети и дяди которых студенты двоечники вроде вас называют "преподами". Дома можете заниматься чем угодно, главное не забывать, что девушки максимально привлекательны именно сейчас.  
  

> Сильно ли это по продуктивности будет бить, если я сразу не смогу кодить, а только как домой прихожу?

  

Не сильно, в ближайшие 1-2 года продуктивность у вас будет в любом случае нулевая.  
  

> И смогу ли я на высокий уровень выйти при таком обучении сначала теория потом практика? И за сколько времени если хорошие способности у меня?

  

Возможно сможете, лет через 10.   
  

> Или может вообще бросить такое обучение?

  

Как хотите, но помните, что для вас сейчас главное это обучение в ВУЗе и красивые девушки, остальное как получится  
  

> Вуз фиговый, там даже компов нет

  

Это где такой ВУЗ? 

 Лучше в ВУЗе учитесь, а приходите домой и изучайте в свободное время программирование. Так сразу убьете двух зайцев — муки, а правильно ли я делаю, и вас не отчислят за неуспеваемость. 

 А смысл?  

Ваши, которые вы узнаете после самостоятельного изучения во время учебы ВУЗе, устареют через год-полгода.  

Имеет смысл участвовать в реальном проекте (например OpenSource)  

Как минимум вы там реально чему нибудь научитесь.  
  

Самостоятельно чему-либо научиться сложно.  

Нужен тот кто будет "пинать в нужном направлении". 

> можно ли научиться программировать на высоком уровне(сеньйор), если сначала теорию часа 3 изучать, потом практика часа 2 в день

 эко ты замахнулся... ))) Сеньорами люди становятся после 10-15 лет работы на боевых больших проектах. С твоим графиком максимум джуниором, но в реальности - стажером станешь. 

 Научиться модно всему и везде. И твой расклад относительно программирования очень даже неплохой. У меня в свое время сложнее было со временем. У меня и друг есть, вообще идеальный пример. Работал на литейном заводе и начал учить программирование уже ближе к 30. Учил поздними вечерами. И вот уже сеньор джавист. И в Яндексе успел год подработать, но это ему оказалось мало, он двинулся ещё выше. Так что все в твоих руках. За год можно выучиться до неплохого джуна и пробовать брать свои первые заказы. Но до сеньора ты поднимешься только уже полноценно работая программистом и каждый код набираясь опыта и знаний.   

Самое главное определись с направлением. Но ориентируйся не по зарплатам, а по своему интересу. Веб, мобильная разработка, геймдев, нейронные сети и тд. Подумай хорошо, что тебе очень интересно делать чисто на энтузиазме и учись в этом направлении. Уже на основании этого выбирай язык программирования. Его в любом случае тебе очень хорошо помогут уроки по ООП. С ним можно и без кода заниматься, на обычной бумаги рисуя объекты, их свойства и функции, обозначать типы данных значками. И считай практически заниматься по теории. А дома останется лишь закрепить, переведя свои записи на синтаксис языка программирования и заодно проверив с помощью IDE то что ты сделал на ошибки.  

Мне очень нравится способ для обучения людей создание элементарной игры на языке Kotlin/Java.  

Там с учениками создаём класс Human (), сознании ему поля для имени, жизней, уровня. Добавляем возможности ходить, атаковать, работать с инвентарем. Раз появился инвентарь создаём класс Inventory () чтобы там что-то хранить создаём игровые предметы. И шаг за шагом так я с ними пишу полностью рабочую игру, которая работает в консоли. И ученикам очень интересно не тепличные примеры писать, и материал хорошо усваиваться. Как говорится двух зайцев одной пулей)  

А на счёт вуза хорошенько подумай, если ты не хочешь учиться, то стоит ли вообще в него ходить. Может пока не поздно стоит поступить в другой ВУЗ, по тому же программированию, например. Ну а если все же будешь в него ходить, то на учебу забивать однозначно не стоит! И на лекциях учись тому чему тебя учат.   

Желаю удачи в программировании!   

ПС: Если выберешь мобильную разработку, то смогу дать более конкретные советы)) 

 В сети достаточно и слитых и недорогих курсов. С их помощью будет гораздо проще усвоить и понять. Если у тебя есть планшет то и практиковать можно в свободное время на онлайн компиляторах. Всё остальное зависит от тебя и твоего стремления. 

 Забудь вообще про синьора пока. Тут уже ни раз написали, что для этого нужен многолетний опыт на боевых проектах. Причём сеньор он как правило и ценен из-за опыта, потосу что на сотни граблей наступил и тысячи шишек набил, а вот какую-то теорию он может уже и подзабыть.  
  

Поставь себе лучше более реальную цель: стать стажёром, а потом джуном. Я лично после первого курса в 2011 пошёл работать "помощником программиста", не имея больших знаний в программировании. Работал почти что за еду, но зато научится многому и дальше уже потихоньку наращивал свои знания. Должностт синьора я впервые занял в 2017 году, а сейчас уже эмигрировал и работаю на такой же должности за границей.  
  

Поэтому ставь более реальную цель - стажёр и джун. Тем более что если у тебя это получится, и ты сможешь начать хотя бы какие-то деньги зарабатывать на программировании, то и с родителями проще будет поговорить о переводе дальнейшем на тех. тпециальность, а это важно, потому что как минимум диплом тех. вуза поможет немного в поиске работы и эмиграции (если захочешь, конечно)