프로그래밍에 관심을 갖고 재미 있기 때문에 몇 가지를하십시오. 당신이 당신의 10 년 / 10,000 시간을 기꺼이 넣을 수 있도록 충분히 재미있게 지내십시오.
프로그램 . 가장 좋은 종류의 학습은 실천함으로써 배우는 것입니다. 보다 기술적으로 말하자면, "지정된 도메인의 개인에 대한 최대 성과 수준은 연장 된 경험의 함수로서 자동적으로 달성되지는 않지만, 고의로 개선하려는 노력의 결과로 고도로 숙련 된 개인에 의해서도 성과 수준을 높일 수 있습니다. " (p. 366) 및 "가장 효과적인 학습을 위해서는 특정 개인에 대한 적절한 난이도, 유익한 피드백, 반복 및 오류 수정 기회가있는 잘 정의 된 작업이 필요합니다." (p. 20-21) 일상 생활에서의인지 : 실천, 마음, 수학 및 문화라는 책은이 견해에 대한 흥미로운 참고 문헌입니다.
다른 프로그래머와 대화하십시오. 다른 프로그램을 읽으십시오 . 이것은 모든 서적이나 훈련 과정보다 중요합니다.
원한다면 4 년 동안 대학 (또는 대학원)에 입학하십시오. 이를 통해 자격 증명이 필요한 일부 일자리에 액세스 할 수 있으며 현장에 대해 더 깊이 이해할 수 있지만 학교를 즐기지 않으면 자신이나 직장에서 비슷한 경험을 할 수 있습니다. . 어쨌든 책 학습만으로는 충분하지 않습니다. "새로운 과학 해커 사전"의 저자 인 에릭 레이몬드는 "컴퓨터 과학 교육은 브러시와 안료를 연구하는 것만으로도 전문가 프로그래머가 될 수 없다"고 말했다. 내가 고용 한 최고의 프로그래머 중 하나는 고등학교 학위 만있었습니다. 그는 훌륭한 소프트웨어를 많이 생산했으며, 자체 뉴스 그룹을 보유하고 있으며, 자신의 나이트 클럽을 구입할 수있는 스톡 옵션을 충분히 갖추고 있습니다.
다른 프로그래머와 함께 프로젝트를 수행하십시오 . 일부 프로젝트에서 최고의 프로그래머가 되십시오. 다른 사람들에게는 최악입니다. 최고가되면 프로젝트를 이끌고 비전을 통해 다른 사람들에게 영감을 줄 수있는 능력을 테스트하게됩니다. 당신이 최악 일 때, 당신은 주인이하는 것을 배우고, 그들이 싫어하는 것을 배우게됩니다.
다른 프로그래머들에게 프로젝트를 진행하십시오 . 다른 사람이 작성한 프로그램을 이해하십시오. 원래 프로그래머가 없을 때 이해하고 수정하는 데 필요한 사항을 확인하십시오. 프로그램을 관리하는 사람들이 프로그램을 쉽게 유지할 수 있도록 프로그램을 디자인하는 방법에 대해 생각해보십시오.
최소한 6 개의 프로그래밍 언어를 배우십시오. 클래스 추상화 (예 : Java 또는 C ++)를 지원하는 언어, Lisp 또는 ML과 같은 기능적 추상화를 지원하는 언어, Lisp와 같은 구문 추상화를 지원하는 언어, 선언적 사양 (Prolog 또는 C ++ 템플릿과 같은)을 지원하는 언어, 하나 아이콘 또는 구성표와 같은 코 루틴과 Sisal과 같은 병렬 처리를 지원하는 코 루틴을 지원합니다.
"컴퓨터 과학"에는 "컴퓨터"가 있다는 것을 기억하십시오. 컴퓨터에서 명령을 실행하고 메모리에서 단어를 가져오고 (캐시 미스가 있거나없는) 디스크에서 연속 단어를 읽고 디스크의 새로운 위치를 찾는 데 걸리는 시간을 알 수 있습니다. (답변은 여기에 있습니다.)
언어 표준화 노력에 참여하십시오. ANSI C ++위원회 일 수도 있고 지역 코딩 스타일에 2 ~ 4 개의 공백 들여 쓰기 레벨이 있는지 결정할 수도 있습니다. 어느 쪽이든, 당신은 언어로 다른 사람들이 좋아하는 것에 대해, 그들이 얼마나 깊이 느끼는지, 그리고 왜 그렇게 느끼는지에 대해 조금 배울 것입니다.
언어 표준화 노력을 최대한 빨리 끝내는 것이 좋습니다.