언젠가부터 내 유튜브 알고리즘에 포프tv가 나와서 채널의 프로그래밍에 관련된 영상들을 다수 접하게 되었다. 한 주제에 대해 확신에 찬 눈빛으로 십여분을 혼자서 말하는 것을 보고 정말 실력이 있는 사람이구나 싶었다. 기본기를 되게 중요시하는데, 평범한 지방대 컴공4학년인 나를 점검해보았을 때, 포프님이 말하는 기본기가 나에게는 없었다. 라이브영상을 보던 와중 포큐아카데미라는 포프님이 운영하시는 온라인 아카데미가 있다는 것을 보고 흥미를 느끼게 되었고 사이트에 들어가 보았다. comp 1500 실무 프로그래밍 입문(C#), comp2200 C언매니지느 프로그래밍.. comp3500 알고리듬 및 자료구조 (Java) 등등..
첫번째로 놀란것은 가격이었고 두번째로 놀란 것은 다른 온라인 강의 사이트와는 다르게 프레임워크나 클론코딩 등의 강의는 없고 컴공의 기본과목들만 강의목록에 있는 것이었다. 2023년 가을에서 겨울 넘어가는 시기에 포큐아카데미를 처음 접하게 되었는데, 강의타이틀상으로는 comp2300 어셈블리 프로그래밍을 제외하고 학교에서 전부 배운 것들이었다. 주변에서는 프로젝트를 하고 나도 인터넷강의를 보고 토이프로젝트를 하는데 포큐아카데미의 과목들이 현시점 나에게 필요한지 의문이 들었다.(의심은 긍정의 확신이 되고..)
국비지원 부트캠프들이 엄청많고 AI가 많이 발전한 이 시점, 비전공자,전공자를 막론하고 다른 프로그래머들과 차별점이 되는것은 기본기라는 생각이 들었고 겨울방학 아르바이트를 통해 5월에 개강한 comp2200을 수강하였다.
나는 현재 학부생이며 자바 백엔드개발자를 하고 싶다는 생각이 있다. 그래서 처음에는 c를 배울 필요가 없을 것이라고 생각했다.
스프링프레임워크를 써서 캡스톤디자인 프로젝트를 진행하였고 학교에서도 모기업의 부트캠프가 들어와 주로 4학년 학생들을 대상으로 자바백엔드 부트캠프를 진행한다. 꽤 유명한 기업인데 부트캠프를 수료한 사람중 실력있는 인재를 데려가고 싶어한다고 들었다. 부트캠프 설명회를 들으러 간 적이 있는데 캠프의 책임자이신분도 기본기에 대한 중요성(한숨..)을 말하셨다. 그 부트캠프 수료자중에서 해당기업에 들어간게 오래전이라고 한다.. 당장 프레임워크를 익히고 프로젝트를 하는게 중요한게 아니라는 판단을 하였다. 포프님은 기본기에 대해 말하면서 내 코드가 기계에서 어떻게 돌아가는지 아는게 중요하다고 하였고 어셈블리어 다음으로 high-level 언어 중에서 가장 어셈블리어와 가까운게 c언어라고 들어 comp2200을 듣게 되었다. 수강을 완료한 지금, 자바에서 이 코드는 내부적으로 이렇게 돌아가겠구나 라는게 추론이 가능해졌다. 결론은 후회없는 선택이었다
포프tv영상추천: 프로그래머로 살아남기 위해 필요한 언어 둘 , 저수준의 중요성
나는 전공과목을 통해 c언어를 학습하였고 (기초프로그래밍,심화프로그래밍,자료구조,유닉스프로그래밍 등의 과목..) 꽤 괜찮은 성적을 받아 내가 이걸 들어야되나? 싶었다. 너무나도 자만한 생각이었다.. 매주 나가는 실습, 3주짜리 과제, 중간고사 기말고사 그 무엇도 쉬운 것이 없었다. 다른 수강후기들을 들으면 실습에 드는 시간이 2~3시간이었던 것 같은데 나는 배로 들었던 것 같다 ㅜㅜ(그래도 강의 중반 이후로는 실력이 늘은 덕분인지 시간이 줄어들긴 했지만..)
프로그래밍을 하면서 코딩스탠다드에 대해 별로 생각을 안하고 코딩을 하고 있었다. 포큐아카데미에서 제공하는 코딩표준(스탠다드)은 따랐을때 읽기 좋을 뿐만 아니라 코딩을 하면서 실수할 수 있는 부분을 막아준다는 것에도 의의가 있었다. (함수이름의 끝에 _malloc을 붙여 줌으로써 함수 내부에서 동적할당이 이뤄지니 주의하라는 등..) 실습, 과제를 할 때 코딩표준을 지키지 않으면 점수가 깎이니 이 표준을 지킬 수 밖에 없었고, 완전히 체화하게 해준다.! 물론 회사,학교의 프로젝트에서 정해놓은 코딩표준을 지키며 코딩을 해야겠지만 좋은 코딩표준이라는 것은 이런 것이구나를 알 수 있다.(프로젝트에 적용할수도 있잖아!)
2-1)실습 및 과제의 명세서를 보고 코딩을 하게 되는데 명세서를 보고 분석하는 능력이 길러졌다. 요구사항 분석 능력이 프로그래머에게 정말 중요하다고 생각하는데, 명세서를 대충 보고 코딩을 하면 우리의 자동채점시스템 빌드봇이 이거아니야! 라고 내 점수를 깎는다.. 명세서만 잘 읽어도 쓸데없는 시간낭비를 줄일 수 있다! ㅜㅜ
2-2)개념을 완벽하게 익힐 수 있게 되었다. 여기에서 사실 풀코스의 진가가 드러나게 되는 것 같은데 동영상강의만 보면 놓치고 잘 정립이 안될 수 있는 개념들을 제대로 익힐 수 있다. 스스로 잘 알고있다고 생각한 내용들이 깨졌을 땐..
2-3)실습,과제를 IDE로 진행하지 않고 터미널(맥)에서 진행하였는데 이게 정말 좋았던 것 같다. IDE가 제공해주는 기능들이 엄청 편하지만 그런것들을 사용하지 않고 터미널 상에서 vim을 사용하여 코딩했을때 눈으로 하는 디버깅, 눈버깅이 확실히 늘었다. IDE를 써서 코딩했다면 결코 얻지 못했을 능력이다. 머리속에서 코드의 실행절차를 생각하면서 디버깅하니 내 코드에 대한 집중도도 올라간것 같았다. 시험을 대비할 수 있던건 덤.. vim 사용능력 증진도 덤..
2-4)실습,과제의 내용이 좋았다. 특히 실습 4번과 과제 3번이 기억에 남는다. 문자열에 관련된 함수들을 직접 만들어 보는 기회가 있었는데 함수 내부가 어떻게 구현되어있겠구나 생각할 수 있어 좋았고 응용에 대한 자신감도 생기게 되었다.
2-5)빌드봇. 무한 채점 시스템인 빌드봇은 정말 물건이다. 2-2를 가능케하는 프로그램인데 포큐수강생과 빌드봇은 애증의(?)관계인것 같다. 정말 많은 테스트케이스로 "너의 코드는 문제가 있어!"라고 말해준다.. 틀린 말이 아니라서 뭐라 못한다.. 빌드봇은 코드의 메모리 누수까지 알려준다!! 수강생은 코드를 한참 본 후 아 여기서 문제가 날 수 있겠구나 깨닫는다. 빌드봇을 통해서 우리는 삽질할 삽을 들 수 있게 된다. 과제를 한번 내고 끝인 일반적인 대학의 시스템과의 차이점이다.
모든 시험이 그렇지만 그동안 배운 것을 강제로 복습하게 해준다. 이 과정에서 그동안 필기한 내용들, 실습과 과제들을 다시 보게 되는데 개념들과 코드에서 실수할 수 있는 부분들을 다시 보게되는게 좋은 것 같다. 중간고사, 기말고사 모두 필요한 부분에서만 물어보는 것 같았다. 시험에 나온 개념들을 따로 정리하고 검토를 위해 다시 시험범위를 공부했을때 깨달아지는 부분도 있었다.
4-1)오피스아워: 1주마다 대표강사님이신 포프님께 각종 질문을 해서 성의있는 답변을 얻을 수 있다. (이런식으로 코드를 짜는 건 어떤지.. 실무에서는 이럴경우 어떻게 하는지.. 본인이 이해한 개념이 맞는지 등..)
4-2)실습,과제에 대한 질의응답: 두분의 조교님이 주로 답변해주시는데(포프님도 답변해주심) 질문을 했을 때 이거는 이거에요! 라고 바로 알려주시지 않고 스스로 생각할 수 있도록 해주신다.정말 성의있게 답변해주셔서 좋았다.
개인적으로 감동먹은 부분이 모 조교님께서는 내 코드를 정말 늦은시간까지도 분석해주시고 답변해주셨다..ㅠㅠ 감사했습니다
실습,과제시 크래시의 정보부족: 실습과제를 하면서 내 코드에서 메모리 문제를 일으켜서 빌드봇 크래시가 났을때, 어디서 크래시가 났는지 알 수 없는 경우가 있어 조교님께 질문을 하면 어디서 크래시가 났는지 알려주셨다.
포프티비 라이브에서 크래시에 대한 정보를 줄 수 있게 해준다고 들은것 같다!
개인적인 문제:
오피스아워를 잘 활용하지 못한것. 이건 나에 대한 아쉬움이긴 한데, 포프님께 공식적으로 질문을 할 수 있는 오피스 아워를 잘 활용하지 못한게 아쉬움으로 남는다..
시험. 검토하면서 왜 시험을 칠때는 보이지 않던것이 마구마구 보이는 건지..흑흑
5월부터 약 3~4개월이라는 짧지않은 순간동안 정말 많은 것을 배우고 익혔다. 다른 언어를 봐도 내부적으로 대략 이렇게 돌아가겠구나 라고 생각할 수 있게 된게 개인적으로 가장 큰 것 같다. 개인적으로 대학을 다니면서 1학기에 포큐과목 1개정도는 들을 수 있지 않나 싶다. 포큐의 한 과목이 대학의 6학점이라는 것과 이정도 시스템에서 이정도 퀄리티의 학습을 할 수 있다는 점을 생각하면 그렇게 비싼 가격도 아닌것 같다. 지인들에게도 추천했다. 어렵지만 좋은건 나누면 좋으니까. 돌아오는 9월학기에는 다른 과목들도 들어볼 생각이다.(휴학)
comp2500..3200..+α??
84점..85점이 통과인데..ㅜㅜ
+
나는 M1맥북 에어로 들었다. 아무 문제 없었다. 맨처음에 환경설정할때 구글링을 살짝 했던 것 같다. 환경설정에 어려운 부분이 있으면 댓글로 물어보세요..
vi,vim은 파일의 마지막에 개행문자를 넣어준다!! <- 이걸 몰라서 한 두,세시간 버린것 같다.
oop정리1 - OOP definition, 4 main feature (0) | 2025.01.25 |
---|---|
우아한테크코스 웹 백엔드 7기 프리코스 4주차 회고 (0) | 2024.12.06 |
우아한테크코스 웹 백엔드 7기 프리코스 3주차 회고 (0) | 2024.12.05 |
우아한테크코스 웹 백엔드 7기 프리코스 2주차 회고 (2) | 2024.10.30 |
우아한테크코스 웹 백엔드 7기 프리코스 1주차 회고 (0) | 2024.10.21 |
댓글 영역