자기 전에 답답해서 랩탑 스위치온하고 무각 다스키보드 꽂았다.
야 너들은 프로그래밍이 완전 똥망이다.
프로그래밍은 무엇이냐 하면 자신의 생각을 표현하는 거야. 근데 그 표현을 기계에서 돌려보면서 확인하는 거지. 니 생각이 똥이면 기계에서도 똥이 나오는 거야.
프로그래밍 언어란 뭐냐? 니 생각을 표현하는 수단이다. 프로그래밍 잘하려면 어떻게 해야 되냐? 니가 생각을 잘 해내고, 그 생각을 프로그래밍 언어를 써서 표현 잘 하면 된다.
어떤게 더 중요하냐? 니 생각이지. 니가 생각을 잘 할 수 있으면 아무 프로그래밍 언어나 비슷하게 쓸 수 있다(만, 그래도 C++ 나 자바는 복잡하므로 피할 수 있으면 피해라. C는 봐준다). 니 머리냐 프로그래밍언어 스킬이냐? 선택해라 무엇을 먼저 개발시킬지. 존내 생각의 힘도 안되면서 맨날 문법을 따져야 하는 것들이 뭔 복잡한 프로그래밍 언어를 책 몇권 읽고 완성하겠다고 설레발이냐?
니들이 생각하는 수준을 보면 정말 답답하다. 야, 추상화가 뭔지는 아냐? 니가 니 생각을 의미있는 단위로 쪼개서 이름을 붙일 수 있으면 그게 추상화가 되는 거야. 함수를 그렇게 하면 함수의 추상화, 데이터를 그렇게 하면 데이터의 추상화. 그렇게 되면 바로 함수나 데이터 구조의 이름이 머리에서 생각나면서 바로 코딩하기가 쉬워지는 거지. 이게 안되면 백날해봐야 Ctrl-c랑 Ctrl-v만 하는거다.
잘 만든 코드는 어떻겠냐? 읽어보면 함수이름만 봐도 앞으로 전개 방향이 눈앞에 펼쳐지는 거야. 이게 안되면서 기계에서만 돌아가는 코드는 아무리 속도가 빠르니, 알고리듬이 좋니 해도 금방 죽게돼있다. 아무도 유지보수 안하려 하거든.
근데 (다 그런 건 아니지만) 니들 하는 꼬락서니 좀 봐봐라. 문제에만 집중에도 모자란 머리를 복잡한 프로그래밍 언어에 할당하려니 감당이 되냐?
C++?, 자바? 해, 안말린다. 하지만, 머리를 먼저 좀 개발하고 해라. 가만 보자니 답답하다.
그리고 안되는 것 밤새서 한다는 넘들. 야, 그게 밥샌다고 되냐? 밥은 먹고 다니냐? 걍 일찍 자고 맑은 정신으로 하는 거지. 형은 지난 10년간 오버타임 1초도 안해봤고, 그전 SI 업체에서는 가끔 했지만 그래도 칼퇴근한 날이 더 많았다(만, 눈치 존내 받았다. 그래도 어쩌겠냐? 할 것 다하고 퇴근한다는데 짜를 수는 없지 ㅋㅋ)
아뭏든, 잘 생각해보고 깨달아서 프로그래밍 잘 하는 사람이 되든지, 죽어라 고생만 쳐하는 넘이 되든지 맘대로 결정해라. 피곤해서 자야겠다.
파닥파닥
내가 은유적으로 그동안 표현하던 것을 페고떼찌가 직설적으로 쏘아버렸군.
수학을 왜 공부해? 자료구조는 왜 공부해? 기본을 왜 공부해? - 뭐 좀 만들어 볼려고... 자기 생각대로 뭐 좀 표현해 보려고... 개발자가 스스로 사고할 수 있어야 프로그래밍 언어를 도구로 사용하여 자기 마음대로 시를 쓰던가 그림을 그리던가 할 수 있는거지.
또한 코딩을 하는 목적(?)이 뭐야? - 컴퓨터가 소스코드 짜고, 분석하고, 디버깅해? 어셈있는데 뭣하러 C만들고 이것저것 만들어? 변수, 함수, 클래스 하나를 사용해도 그 목적과 기본을 생각하면서 사용해야지. 프로그램의 규모가 어떻게 변해왔는지를 고려해보라고.
또한 아예 사고의 영역이 넘사벽인데, 그게 밤샌다고 해결돼? 당장의 그 문제가 아니라, 사고의 영역을 끌어올리는 기초를 다졌어야지.
또한 프로그래밍을 하려면 잡생각(게임, TV, 피로 등등)이 없는 맑은 상태와 헤어밴드하고 마스크 팩을 붙이거나, 누워서 하거나 등등 외부의 인터럽트(간섭, 방해, 일시정지?) 로부터 자유로울 수 있는 환경이 필요한 것인데, 개인도 회사도 기본에 대한 고민이 없어.
하루 아침에 영어 술술하냐? 하루 아침에 수학 술술하냐? 기본에 대한 고민을 해라. 장인 정신에 대한 고민을 해라. 인격을 다듬어라.