사실 요새 코딩이 프로그래밍이? 점점 재밌다. 저번주는 학습하는 내내 서버때문에 빡친 3시간말고 즐거웠는데 사실 실력이 너무 허접인데 이걸 재밌다고하면 좀 창피해서 참았다. 근데 티아이엘이 굳이 애꿎은 내용넣는거 보다 그때 그때 내 기분 ,생각 넣는게 좋으니 그냥 쓸련다.
왜 재밌을까? (문과도 코딩배워도 되나요 ? )
나는 사람들이 농담처럼 하는 문과 이과를 대학이 졸업한지 한참 지나고도 너 문과잖아 넌 이과잖아 이렇게 나누는걸 저엉말 싫어하는데 그게 개인의 역량을 너무 문이과로 나누듯 이분화한다는 것이랑 그리고 언어는 정말 중요한데 그렇게 말함으로써 자기 자신의 역량을 딱 '문과'로 한계지음으로써 발전을 막는 것 같다. '실제로 그런말 하는 사람들은 수학 관련된 것을 보면 도망치고 언어관련된 것을 보면 당연한듯 난 이과라서 저런 말 장난 잘 몰라 로 퉁치기 다반사인듯?)
코스시작전에 나도 수리적 논리 부분이 정말 약한 것을 알고 있어서(수학이랑 과학도 좋아했다 근데 언어 외국어가 훨씬 강한 걸 어떡해...) 사실 걱정도 했다. 그런데 아직까지는 정말 수능문제에서 정답률 5퍼센트 미만의 다이나믹한 기하학 증명 문제나 수학 정의의 반례를 찾는 다는 그런 건 아직 못 봤다. 다만 해결하려는 문제가 여러 이해관계가 꼬여있어 문제간에 논리를 명확하고 순서대로 해결해야한다는 것은 잘 알겠다.
꼬인 논리(코드뭉치)를 풀려면 수많은 코드와 논리를 검사해야하는데 이 디버깅 과정이 상당히 재미있다.
문제점 찾기 게임같다고 해야하나?
문과 이과가 중요하기보다는 problem-sloving 능력이 중요한 것 같다.
그것이 끈기이든 집요함이든 논리적임이든.
처음에는 이 문제들이 어디서 터지는지 도통 모르니 맨날 울상이었는데 조금씩 내가 가설을 세우고 '이 문제가 생겼으니 이 부분들에서일거야 하나하나씩 주석처리후 테스트해보자' 로 접근해서 그 가설이 딱 맞으면 재미있다.
사고 회로가 바뀌는 것 같기도하다.
보면 우리인간은 모든걸 러프하게 보는 것을 좋아하는 것 같다.(당연히 그래야 뇌가 쉬니까) 근데 이것을 더욱 잘게 세분화하여서 즉 하나의 코드를 하나의 논리로 본다면 그 순서를 묘하게 따라가면서 내가 당연시 여겨서 생략한 사고과정을 찾는 것이 재미가 있다. 근데 사실 생각해보면 이런 사고과정은 코딩뿐만아니라 모든 일에서 중요하지 않나?
문제가 발생 -> 문제의 결과로 기반해 문제점이 될만한 원인들을 파악 -> 나머지 요인들을 차단한 채 실험 -> 핵심 문제 선별해서 해결
저 구조 과정은 어디에나 도움될 법한 사고방식인 것 같다.
시험하려고 테스트 코드를 짜는게 아니라 만드려고 테스트 코드를 짜는 것 같다.
테스트 말그대로 시험이라서 어떤 것을 세우고 시험해볼 것같은데 항상 순서는 역순이다. 근데 첨에 왜이래...이러다가 요새는 익숙해져서 인지 테스트코드부터를 왜짜는지 살짝 알 것 같기도하다.
집을 지어보자!
자 모래,시멘트,문, 철근 인부 보일러 배관.. 뭐부터 해야하나...?
어휴.. 막막해
위가 우리가 설계하려는 프로그램이라면 저런 느낌인데 테스트코드가 있으면
자 다시 집을 지어보자!
일단 안방,거실, 화장실이 필요하겟군
오케이 자 그것중 화장실부터 만드려면 뭐가 필요하지?
타일,변기,샤워부스 등이 필요하군..
그럼 타일러.. 배관공..오케이 일단 그렇게 준비해서 시작해보자!
좀 더 쉬워지지 않았는가? 나만 그런가? 집은 안지어봤지만 일단 화장실부터 만든다치면 타일러와 배관공부터 불러서 필요 자재랑 과정부터 물어보면 될 법하다 그럼 러프한 그린!
근데 진짜 집을 지을 수 있네?
근데 진짜 집을 지으려면 일단
1. 인건비 , 자재비 수천 수억원
2. 한번 초기 모델 설정후 변경 불가
3. 변경 할 수 있다고 하더라도 수개월 시간 추가
라는 극한의 한계가 있는데
프로그래밍에선 정말 몇버이든 새로운 대지위에 무언가를 세우고 실험을 하고 실제로 사람들이 사용할 수 있는 집이 되기도한다.
그래서 요약하면
하나하나씩 코드를 짚어가며 문제점을 발견하는 재미
복잡한 논리식과 문제들을 프로그래밍으로 해결하여 단순화시키는 재미
마지막으로 완성되었을때 하나의 작품이 되는 재미
이렇게 있는 것 같다.
아직 너무너무너무 허접이라 뭐 말하기도 부끄럽지만 내가 이만큼 재밌다고 할 수 있는건 돌이켜보면 지금 뿐 일것이다. 곧
1. 코드를 짚어가며 밤을 새서 야근
2. 복잡한 논리식과 문제들을 해결해야하는데 해결못해서 못퇴근
3. 완성했는데 내가 만든게아니라 돈벌려고 만든 서비스라서 작품이 아니라 그냥 취직한 회사에서의 서비스
로 고통으로 바뀔 것이니
그러니 지금을 즐기자! 무야호!
아 끝으로 재밌다곤 했지만 정말 끈기랑 학습에 대한 탐구심있으신분들이 하면 좋아욥!
'개발공부하며 느낀 인생 공부' 카테고리의 다른 글
HTTP server GET / POST 메소드 파라미터 받아오는 법[20220810 TIL](자바 스프링 부트) (0) | 2022.08.10 |
---|---|
하루 3번 회고를 하는 미친펭귄이되자[20220809 TIL] (0) | 2022.08.09 |
일주일만에 변해버렸나...?[메가테라 7주차 주간회고] (0) | 2022.08.07 |
동료 또 동료..[20220807 til] (0) | 2022.08.07 |
다 잘하는게 참 어렵다....[20220806 til] (0) | 2022.08.06 |
댓글