Настоящий программист обладает хорошим аналитическим мышлением. Он расписать алгоритм решения какой-либо задачи на бумаге простыми словами, без использования языков программирования, а потом объяснить его маме на примере овец, собачек и лягушек. Хорошему программисту все равно на чем программировать, потому что основная сложность программирования — не знание конкретного языка, а именно правильно мыслить, по шагам, от общего к частному, от простого к сложному.