프로그래밍 학습 도전에 실패하는 이유
- 학습해야할 방대한 사전 지식
글을 읽고 쓸 수 있다고 소설을 잘 쓸 수 있을까?
이 비유가 아주 적절하다고 생각했다.
나는 국비지원을 받아 학원에 다니면서 프로그래밍을 배웠다.
그 당시에는 컴퓨터과학에 관해 따로 공부한 적이 없었고 또 그에 대한 필요성을 느낀 적이 없었는데,
주니어개발자로 1년 간 근무하면서 업무를 함에 있어 해당 지식들의 필요성을 느끼게 되었다.
일단.. 대화가 잘 안된다. 관련 지식이 나오기라도 하면 일단 그게뭐죠? ㅠㅠ 인터넷에 찾아볼게요 ㅠㅠ 시전해야함
CS에 대한 이해가 없는 개발자는 그냥 개발을 할 줄 아는 사람이지, 개발을 잘 하는 사람은 될 수 없다는 것을 뼈저리게 느꼈다..
변하지 않는 기술
- 네트워크 , 운영체제 , 컴퓨터시스템 , 논리학 , 대수학 , 언어론
느리게 변하는 기술
- 프로그래밍 언어 , 프로그래밍 패러다임 , 자료구조 , 보안 , 알고리즘
빠르게 변하는 기술
- 프레임워크 , 라이브러리 , UI UX , 디자인패턴
변화의 속도가 느릴수록 학습자에게 어렵고 학습에 대한 비용이 크게 든다.
: 이론이 어렵고 배워야할 지식들도 많고 선수과목도 많다
변화가 빠를수록 쉽고 빠르게 배울 수 있어 바로 응용해서 써먹을 수 있다.
프론트엔드는 특히나 새로운 것이 가장 많이 나오고 변화가 많은 분야로 피로감이 높은 편이다.
상대적으로 느린 것을 배우고 나면 트렌디한 기술을 익히기 쉬워진다!
그 이유는 밑바탕이 되어주는 지식들이기 때문이다.
쉬운 것 위주로 배우면서 상대적으로 느린 것들을 꾸준히 배워가는 것이 좋은 전략이다.
빠르게 배워야할 것 :
트렌디한 기술들
나중에 배워야할 것 / 복습해야하는 것 :
상대적으로 시간 투자를 많이 해야하고, 조금씩이라도 배워야하는 기초 지식들
프로그래밍 역량 4가지
일관성 / 유연성 / 확장성 /독립성
'프로그래밍 > javascript&typescript' 카테고리의 다른 글
Typescript (0) | 2021.09.09 |
---|---|
프론트엔트 개발환경이 복잡해진 이유 (0) | 2021.09.08 |
데이터 타입 (0) | 2020.03.26 |
07. 클래스 (0) | 2020.03.10 |
06. 프로토타입 (0) | 2020.03.04 |