@ImagineWorld

Как учить программирование, чтобы понимать его и быть хорошим программистом?

1) Нужно ли понимать как работает компьютер на самом низком уровне? Как кодируются и обрабатываются сигналы в процессоре и как выводится ответ на экран?
2) Нужно ли обязательно знать "исподнюю" языков программирования, то есть как устроен и как работает интерпретатор или компилятор того или иного языка? Где он хранится в программе-обработчике и как взаимодействует с ОС и компьютером в целом?
3) Нужно ли хорошо знать математику?
4) Нужно ли хорошо знать английский язык?
5) Каким образом лучше учить программирование?
  • Вопрос задан
  • 717 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
1) Нужно ли понимать как работает компьютер на самом низком уровне? Как кодируются и обрабатываются сигналы в процессоре и как выводится ответ на экран?
Хотя бы в базовом виде, любое понимание на более глубоком уровне всегда можно дотянуть по возникновению задачи. Главное осознавать что искать, а для этого должны быть какие-то понятия основ.

2) Нужно ли обязательно знать "исподнюю" языков программирования, то есть как устроен и как работает интерпретатор или компилятор того или иного языка? Где он хранится в программе-обработчике и как взаимодействует с ОС и компьютером в целом?
Это нужно, во всяком случае если вы претендуете на серьезный уровень в своем деле. Большинство не сильно интересуется "что под капотом" пока оно выполняет свои функции как задумано. Но для серьезных вещей нюансы и использование таких знаний дают большой профит.

3) Нужно ли хорошо знать математику?
Спорный вопрос. Арифметика и базовые правила необходимы, естественно. Более глубокие знания нужны редко, но есть области, которые очень желательно знать хотя бы для понимания как можно сделать по науке (графы, деревья, дискретка в целом, алгебра и теория множеств будут не лишними, сложность алгоритмов...)

4) Нужно ли хорошо знать английский язык?
Да. Нужно. Хотя бы технический английский. Разговорный тоже нужен, тут и форумы, и конференции, и доклады международные и вообще практически все на английском изначально. На русский переводится лишь малая доля, а есть еще время на перевод и... короче, английский для программиста маст хэв.

5) Каким образом лучше учить программирование( в частности веб-разработку: сайты, приложения и т.д.) и в какой момент можно смело сказать себе: "Я - программист", ведь конечной точки нет, верно?
В момент написания на бейсике хелло ворлд можете себя поздравить - вы программист. Об уровне компетенции и качестве вашего кода на начальном этапе скромно умолчим.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
Zoominger
@Zoominger Куратор тега IT-образование
System Integrator
1) Нужно ли понимать как работает компьютер на самом низком уровне? Как кодируются и обрабатываются сигналы в процессоре и как выводится ответ на экран?

Судя по тому, что у вас выставлен тег "веб-разработка" - нет, не надо.

2) Нужно ли обязательно знать "исподнюю" языков программирования, то есть как устроен и как работает интерпретатор или компилятор того или иного языка? Где он хранится в программе-обработчике и как взаимодействует с ОС и компьютером в целом?

Тоже нет, зачем тратить время на такую фигню, если можно сразу пойти рубить сотни тысяч на фрилансе?

3) Нужно ли хорошо знать математику?

Нет, это даже вредно.

4) Нужно ли хорошо знать английский язык?

Нет, на Апворке можно через Гуглтранслейт спокойно общаться.

5) Каким образом лучше учить программирование( в частности веб-разработку: сайты, приложения и т.д.) и в какой момент можно смело сказать себе: "Я - программист", ведь конечной точки нет, верно?

Как заработаете свой первый миллион на jQuery. то есть, где-то через полгода.
Ответ написан
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Чем больше знаешь, тем больше программист. В первый раз назвать себя программистом можно, когда вышел с первого в своей жизни испытательного срока.
Ответ написан
approximate_solution
@approximate_solution
JS Developer. Angular\React\Vue\Ember
1) Нужно ли понимать как работает компьютер на самом низком уровне? Как кодируются и обрабатываются сигналы в процессоре и как выводится ответ на экран?

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

Нужно ли хорошо знать математику? Нужно ли хорошо знать английский язык?

Если вы хотите расти как специалист - нужно, если вам хватает условных 50к в месяц до конца жизни, можно и программирование не учить.
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега IT-образование
software engineer
1) Нужно ли понимать как работает компьютер на самом низком уровне? Как кодируются и обрабатываются сигналы в процессоре и как выводится ответ на экран?

Понимать - надо, знать не обязательно. Ну и в узкой специализации зависит от сферы работы. Разработка процессоров, программирование микрокода без этого никак.

2) Нужно ли обязательно знать "исподнюю" языков программирования, то есть как устроен и как работает интерпретатор или компилятор того или иного языка? Где он хранится в программе-обработчике и как взаимодействует с ОС и компьютером в целом?

Программа собственно и взаимодействует в первую очередь с ОС. Вам еще рано задавать подобный вопрос, потому что вы его и задаете неправильно и ответ понятен не будет

3) Нужно ли хорошо знать математику?

"Математику уже затем учить следует, что она ум в порядок приводит" (С) Ломоносов
Подумайте над этой фразой хотя бы минуту, не откидывайте ее как очередную цитатку с пикабу.

4) Нужно ли хорошо знать английский язык?

Неплохо бы. Но можно ограничиться отечественным рынком и отечественной документацией. Будет больно и тяжело.

5) Каким образом лучше учить программирование?

Как дела в школе?
Можешь рассказать первоклассникам как лучше всего учить алгебру, русский язык, историю?
Напиши свои объяснения на бумажке, потом замени слова на программирование и все будет также само.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы