코딩이 노가다인가요?

gurugio의 이미지

전 지금 대학원에서 아르바이트를 하고있습니다.

어느 대학원인지는 글 성격상 말씀드리지 않겠습니다만

학계에서는 꽤 유명한 교수님이 계신 큰 연구실입니다.

저는 CaOS라고 아주아주아주 작고 귀여운 oops 커널을 만들고

있습니다. RTOS와 임베디드 시스템을 깊게 이해하고 싶어서

우선 인텔 시피유를 몸으로 느끼고 싶고 그러기 위해서는

책만 보고 이해하는 것보다는 만들어보고 디버깅하면서

겪어봐야 할것 같아서입니다.

그런데 학교에서는 제 작업을 노가다라고 생각하시는 분들이 많습니다.

노가다나 삽질이라고 하는건 결국 힘은 많이 들지만

별로 가치없는 일을 말하는거 아닌가요?

여기 연구실 사람들은 물론 tiny OS나 T engine같은

OS들을 연구하는 임베디드 연구실이고 센서 내트워크로는

국내 최초 국내 최고로 알아주고 있습니다.

정말 유명하고 레벨이 높은 연구실이지요.

저는 리눅스 커널을 몇줄 이해하지 못하는 레벨이 낮은 학생이구요.

그래서 그런 말을 할 수는 있지만

적어도 코딩이라는 행위에 대해서 노가다라고 생각하는

박사님, 석사님이 제가 겪기에는 꽤 많은것 같습니다.

물론 코딩이 시간에 비해 이익이 적다는 것은 저도 배우고 겪어서 압니다.

하지만 게시판에서 수차례 이야기하면서 동의했듯이

코딩은 프로그래밍의 중요한 부분이고 그 자체로도 아름다운 예술적

작업이 아닌가요?

논문을 읽고 수학적인 증명을 하고 훌륭한 가설을 세우시는 분들이

무지무지 높으시고 고귀한 분들이라는 것을 충분히 알고

저도 그렇게 되고자 노력하는 사람이지만

적어도 제가 창조해낸 알고리즘과 디자인들이 글 몇줄과 수식으로

종이에만 남는게 아니라 실제로 움직이고 살아 숨쉬는것이

제가 이 분야 공부를 하는 목적이라고 생각하고 있는데

코딩에 대해서 안좋은 소리를 들으니 좀 분이 납니다.

그러면서 누가 미리 코드로 만들어진 예제를 찾아서 돌려보려고

인터넷을 뒤지고 데모용 코드를 못짜서 쩔쩔메는 모습을 보면

뭔가 이중적인게 아닌가 하는 생각이 듭니다.

신기술이라 불리는 논문들을 보면 굉장한 하이테크를 이야기하고 있습니다.

그 기술을 실현하기위해서는 한두 사람으로는 부족하겠지요.

그래서 코드로 구현하기보다는 먼저 디자인을 연구하고 모델링이나

시물레이션을 해야한다는 것을 저도 잘 이해합니다.

하지만 그 최종은 코드라고 생각합니다.

코더냐 프로그래머냐라는 헤낡은 논쟁을 하려는 것이 절대 아니라요

연구라는 것이 코딩없는 철학적이고 뭔가 세련된 활동이라고 생각하는 것은

옳지 않은것 같습니다.

분업을 하더라도 코더는 값싼 인력이고 연구직은 귀한 분들이라는 공식이

있다고 들었는데 제가 오해한 것이였으면 좋겠습니다.

chadr의 이미지

과거 한 교수님이 하신 말씀이 생각나는군요..

시험지 답안에 간단히 한줄 수식으로 못쓰고 말로 주절주절 써놓으면 F줘버린다.

제 생각은 이렇습니다.

아무리 아이슈타인의 상대성이론이 위대하고
달까지 갈수 있는 우주선의 설계가 잘되어있다고 해서

그 상대성 이론에서 뭔가가 튀어나오는것도 아니고
우주선이 저절로 만들어져 날아갈수 있는건 아니라고
생각합니다.

소프트웨어공학이라는 학문이 엄연히 있습니다.
이 학문이 무엇을 하는 학문인가요?

소프트웨어의 설계, 위험관리, 일정관리를 연구하는 학문 아닙니까?

직접 프로그램을 만드는 엄연한 학문이 있는데 그걸 삽질으로 내몰다니.. 좀 그렇네요..

자신의 이론을 상대방에게 보여주지도, 이해시키지도 못하면 그건 죽은 이론이라고 봅니다.

뭐라고 주절주절 썼는데 결론은..

코딩은 절대 삽질이나 노가다가 아니다는것입니다.

-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.

TooCooL34의 이미지

"코딩은 노가다야.. 프로그래밍은 노가다야.."
이 말을 습관처럼 입에 달고 사시는 분들을 종종 보는데요..

그 분들 진짜 노가다 현장에서 딱 한두달만 빡세게 일 해보셨으면 합니다.
그럼 노가다네 어쩌네 하는 웃기지도 않은 농담 쏙 들어갈겁니다.

코딩 제대로 하지도 못하면서 저 말 하는 분들은 1년 동안..-_-ㅋ

hurryon의 이미지

제가 했던 경험과 비슷한 경험을 하고 있으시네요. 저도 아직까지...고민 중.

bugiii의 이미지

임베디드에서 코딩도 중요하겠지만 모델도 중요할 수 있기 때문에 그런 이야기를 한다면 수긍하겠습니다.

보통 임베디드라면 코딩만 어느정도 하면 된다고 하지만 실제로 깊히 하다보면 처음 설계의 중요성이 더욱 부각되는 부분이라고 생각합니다.

제대로 된 OS 가 올라가 있는 경우라면 기존의 응용들을 모델 삼아 뭔가 해볼 수 있겠지만, 보통 임베디드라면 밑바닥부터 올리는 것이라 자칫 삐끗하면 절벽 아래로 떨어질 것 같은 아찔한 경험을 해보았습니다.

하지만, 임베디드라면 코딩에 소홀해서는 안되겠죠. 아... 코딩이라기 보다는 기계에 대한 이해라고 해야 할까요. 이것의 이해를 바탕으로 코드 한줄 한문장의 의미가 기계에 미칠 영향을 고려해서 코딩을 해야 한다고 생각합니다.

지금 하시는 것이 코딩만을 위한 것이 아니라 진정한 CPU와 기기에 대한 이해라고 한다면, 설계와는 다른 또다른 경험을 쌓고 계시는 것이고, 이 위에 언어에 대한 기반을 닦고 차츰 코딩을 예술의 경지로 승화시킨다면 훌륭한 모델러가 되시리라 믿습니다.

모델러가 코딩을 못한다면... 이건 문제가 크다고 봅니다. 깊은 통찰력과 수많은 야전 경험 없이는 훌륭한 모델링을 할 수 없다고 생각합니다.

물론 야전 사령관이냐 작전 장교냐는... 본인의 선택이겠죠... 둘의 경중은 비교하기 어려울 것 같습니다. (저는 야전에서 박박 기면서 테크닉적인 면을 깨우쳐 나가는 것이 즐거운 타입입니다.)

futari의 이미지

하는 사람에 따라 다른거 아닐까요 ^^

노가다 같이 하는 사람은 노가다고 ;

예술처럼 하는 사람은 예술가죠 ^^;

하기 싫은데 억지로 아웃풋만 내려고 코딩하고 있으면

그게 바로 노가다 =_=b

근데 데모코드도 제대로 못짜는 모델러가 있는 수준높은 연구실이

어딘지 궁금해지네요,, : ) SKKU까지 적혀있으니 단서가 너무 많은가;;;

-------------------------
The universe is run by the complex interweaving of three elements: matter, energy, and enlightened self-interest.
- G'kar, Babylon 5

girneter의 이미지

"코딩이 노가다 이다"
라고 할 때 "코딩"의 의미를 연구원들이 잘못 파악한 모양입니다.

우리가 흔히
"코딩이 노가다 이다"
라고 말할때의 코딩은 소프트웨어를 공학적으로 기획, 설계하지 않고
주먹구구식으로 개발할 때
(저처럼.. :oops: )
하는 말이지
논문이나 수학적인 이론에 대비되어 쓰이는 말이 아닙니다.

코딩은 노가다이지만
님이 하시는건 코딩이 아니라 소프트웨어 구현입니다.
구현을 멋지게 하시면 되지요.

저는 사기쳐서 석사학위를 받은 관계로
이론을 실제로 구현하시는 분들을 보면 존경스럽던데...

개념없는 초딩들은 좋은 말로 할때 DC나 웃대가서 놀아라. 응?

temper의 이미지

옛날에 상엽이형 세미나에 갔는데 이런말씀을 하시더라구요...
OS공부하지 말라고...

무슨 말인고 하니,
OS는 이제 혹은 이미 만들어봐야 돈이 안돼는, 돈이 절대로 될수 없는 분야가 되어버렸기 때문이죠.

또 무슨 말인고 하니,
CaOS 좋습니다, But...돈이 안돼는 일이므로 취미쯤으로 하시고 돈돼는 코딩을 하라는 의미에서
교수님들께서 그런 말씀을 하라는 의미로 여겨집니다...

열심히 잘 굴러가는 OS만들어봐야.... (무슨 말씀인지 아시죠?)

돈안돼고 힘들고 어려우면 그게 '노가다' 지요.
제 생각엔....

sjpark의 이미지

코딩은 노가다.

알고리즘과 아이디어는 기술.

ihavnoid의 이미지

하기 나름이지만, 저는 요즘 코딩 자체가 노가다라는 생각보다는, 코드를 설계하고 짜는 과정을 제외한, 디버깅이라던지, 남이 짠 코드를 수정한다던지, 그런 곳에서 노가다성을 많이 느낍니다...

요즘 한 프로젝트에서 한 짓이, 남이 짠 코드 1만줄 지우고, 제 코드 1000줄 채우고, 버그 잡고, 구형 gcc용을 신형 gcc에서 다 컴파일되게 syntax 하나하나 고치고... 그런 짓이었습니다....

gcc의 에러를 하나씩 수정하는데 질려버리겠더군요....
gcc 2.8.x 대의 c++에서 넘어가던 것들이 gcc 3.x대에서는 완전히 사람을 걸고 넘어지더군요..... 온갖 다양한 방법으로 코드를 짜놔서 놀랐습니다...

하나씩 에러 찾아서 고치는 것은 노가다 맞는 것 같습니다. 으아아아아.....

Consider the ravens: for they neither sow nor reap; which neither have storehouse nor barn; and God feedeth them: how much more are ye better than the fowls?
Luke 12:24

logout의 이미지

문제는... 경영자들 중에서 코딩이 노가다라고 생각하는 사람들이 아직도 많다는 것이죠. 이런 분위기 때문에 노가다가 안될 코딩도 노가다로 전략하는 일이 많은 것 같습니다.

"I conduct to live,
I live to compose."
--- Gustav Mahler

sunyzero의 이미지

소프트웨어공학도 뛰어난 대가들은 종종 뛰어난 프로그래머들이 많습니다.

그 만큼 실전에서의 접목에 대해서 고민을 많이 한 흔적을 보여주죠.

코딩을 안해본 사람은 실제적으로 문제가 많은 설계를 보여주기도 합니다.

가끔 보면 코딩을 전혀 안한 사람이 괴상망측하게 설계해놓고 나중에

성능(퍼포먼스)가 안나오니까 한다는 소리가...

" 하드웨어를 업그레이드 하면 해결됩니다... "

라는.... -_-)

우리나라의 대형 SI업체의 관리자나 설계자들이 눈여겨볼일입니다.

코딩을 못하니 설계도 못하고 허접설계를 하다보니 부실공사가 된다는것...

대부분의 개발자분들은 알고계시죠?

========================================
* The truth will set you free.

차리서의 이미지

저는 코딩에는 영 젬병인 상태로 대학원에서 이론적인 내용을 공부하고 있지만, 한 번도 코딩을 무시하거나 폄훼하여 생각해본 적이 없습니다. 능력이 없어서 못하는거지 무시해서 안하는게 아니라는 얘기죠. 아마 그 연구실 분들도 딱히 깎아내리려는 의도였다기보다는 그냥 구현 과정을 지켜보다가 그 고생과 수고가 안스러워서 한마디 한 것이 아닐까 싶습니다.

그리고 '구현 못하는 이론가'가 자리를 잘못 잡으면 (예를 들어 엄하게 무슨 개발팀 지휘관이 된다거나) 당연히 여러사람 불행해지고 배가 산으로 가겠지만, 이런 사람도 '구현 못하는' 핸디캡에 의해 다른 이에게 피해를 주지 않고도 자신의 역할을 수행할 수 있는 적재적소가 있다고 믿습니다. (물론, 우리나라에는 풍토 상 그런 자리가 거의 없다고 생각해야겠지만 말이죠.)

--
자본주의, 자유민주주의 사회에서는 결국 자유마저 돈으로 사야하나보다.
사줄테니 제발 팔기나 해다오. 아직 내가 "사겠다"고 말하는 동안에 말이다!

ㅡ,.ㅡ;;의 이미지

gurugio wrote:

코딩은 프로그래밍의 중요한 부분이고 그 자체로도 아름다운 예술적
작업이 아닌가요?

그렇죠. 그런데 우리나라가 개발이라는걸 중요시하는나라가 아닌지라
특히 회사가보면 개무시 합니다. 예술적코딩이 가기도전에 무참히 밟히고 말죠

나름데로 창조하고 예술적으로 짜두면요.. 다시짜라고 합니다.ㅡ,.ㅡ;
성능이 좋고 머고 다떠나서 자기맘에 안든다고 합니다.
("성능으로 비교해보자" "그래도 다시짜!")

Quote:

적어도 제가 창조해낸 알고리즘과 디자인들이 글 몇줄과 수식으로

종이에만 남는게 아니라 실제로 움직이고 살아 숨쉬는것이

제가 이 분야 공부를 하는 목적이라고 생각하고 있는데


창조해낸것을 가치있는것으로 판단하지 않고 뜯어붙여온것을 더 신빙성있어하고 더좋아하더군요.
어떤것이 효율적인가를 냉정하게 판한하려하지 않습니다.

Quote:

그 최종은 코드라고 생각합니다.

코더냐 프로그래머냐라는 헤낡은 논쟁을 하려는 것이 절대 아니라요

연구라는 것이 코딩없는 철학적이고 뭔가 세련된 활동이라고 생각하는 것은

옳지 않은것 같습니다.


우리나라는 프로그래머들의 프로그래밍 철학이 이미 말쌀되었습니다.
프로그래머가 프로그래밍 철학을 내세웠다가는...
아니 그이전에 프로그래밍철학이라는 단어조차 잘사용하지 않는실정입니다...

(당신의 프로그래밍 철학은 무엇인가요?
라고 이게시판에 올려보고 싶군요..)

Quote:

분업을 하더라도 코더는 값싼 인력이고 연구직은 귀한 분들이라는 공식이

있다고 들었는데 제가 오해한 것이였으면 좋겠습니다.


현재 프로그래머(코더죠..) 생각하면 안됩니다.
싸구려라는건 이미 다아는사실이고..


----------------------------------------------------------------------------

madhatter의 이미지

노가다라고 생각하면서 하면 노가다가 되는 것이고.. 예술이라고 생각하면서 하면 예술이 되는 것 아닐까요? :)

ed.netdiver의 이미지

맞는 말 같은데요? 코딩은 노가다.
원래 코더는 정말 코드 짜넣는 일만 하는 사람을 지칭하는 말이었잖습니까.
옛날 천공카드부터 시작해서 말이죠.
그러니, 그게 아니면 엄밀히는 코더라는 이름으로 불러서는 안되는게 맞겠죠.
하지만, 코딩은 노가다 맞지 않나요?
하다보면 별의별 삽질들이 들어가죠. 각 단계별로 말입니다.

그리고 embedded시장을 놓고 보자면, 언제적이었는지는 확실치 않지만,
전미 embedded os 시장 통계자료를 본적이 있는데,
랭킹 1위라는 windriver가 3%였던걸로 기억합니다.
50%가 house-made였구요.
뭐 물론 os시장과 마이컴시장같은걸 뭉뚱그려서 만든건지도 모르고,
rt냐 아니냐등도 나눠서 생각해봐야겠지만, 아뭏든 정말 춘추전국이 무색하게
통일시킬수 없는 분야가 또 이분야인거죠.
저도 사실 os를 연구한다는 것에 대해 잘 모르겠지만, 각 target platform별로
tuning작업이 필수인 custom분야인것만은 확실하다고 하겠습니다.

하지만, 이론가에 대한 필요성은 정말 갈수록 절실해지는 것 같습니다.
architect라고 하죠?
os의 설계라고 한다면, resource가 한정되고 비범용적일경우
얼마든지 그 기능의 가지치기가 가능해서 대강 와꾸가 나오기 마련이죠.
하지만, 진짜 범용 OS, protocol stack, call control, signal processing등이
짬뽕된 system integration이란걸 할수 있으려면, 그것도 예제라는것 없이
백지에다 top-down으로 그려넣기 하려 한다면 큰 문제가 아닐수 없습니다.
그래서 과제의 경우 각 block을 팀별로 나누고, module을 사람별로 나누고,
기능을 분배해서 각자에게 할당할 경우, architect-코더의 관계가 성립되는
것이 되겠죠. 그 그림대로만 동작하게 만들면 되니까 말입니다.(지극히 단순화
시켜 한 말일 뿐입니다.)

자신이 어느 지점쯤에 위치한 사람인지는 잣대가 확실히 나와있다고 봅니다.
백지에 설계하기 시작해서 원하는 시스템을 만들수 있느냐. 혹은
지정된 시방서대로 일처리가 가능하냐.
당연하게도 원하는 기능을 하는 시스템이 아니라,
원하지 않는 기능을 하지 않는 시스템이어야 합니다.

--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)

차리서의 이미지

neTdiVeR1102 wrote:
원래 코더는 정말 코드 짜넣는 일만 하는 사람을 지칭하는 말이었잖습니까.
옛날 천공카드부터 시작해서 말이죠.

불필요한 여담입니다만, 천공카드 시절에는 프로그래머 외에도 키펀처(key-puncher)라고 불리는 사람이 따로 있었고 역할 분담이 아주 명확했습니다. 키펀처는 아예 코드를 작성하지 못합니다. 작성된 코드를 보고 천공카드에 구멍을 뚫는 작업을 할 뿐이죠. 반대로 프로그래머는 키펀처가 없으면 자신이 작성한 코드를 기계에 입력할 천공카드로 만들지 못했습니다.

오히려, 과연 그 당시에는 프로그래머와 코더의 구분이 명확히 정립되어있었는지가 의문입니다. 60년대 당시에 국내 최초(정확히는 2기)로 프로그래머 교육을 받았던 당사자 분께서는 지금 '코더'라는 말을 못 알아들으시더군요. :roll:

--
자본주의, 자유민주주의 사회에서는 결국 자유마저 돈으로 사야하나보다.
사줄테니 제발 팔기나 해다오. 아직 내가 "사겠다"고 말하는 동안에 말이다!

fender의 이미지

노가다 맞습니다. 용어 부터 그렇지 않나요?

밀고, 깔고, 뒤집어 엎고, 삽질하고...

그리고 NVidia에서 리눅스용 드라이버 나온 이후로 리눅스도 3D 업종에 포함되는 것 같더군요.

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...

advanced의 이미지

temper wrote:
옛날에 상엽이형 세미나에 갔는데 이런말씀을 하시더라구요...
OS공부하지 말라고...

무슨 말인고 하니,
OS는 이제 혹은 이미 만들어봐야 돈이 안돼는, 돈이 절대로 될수 없는 분야가 되어버렸기 때문이죠.

또 무슨 말인고 하니,
CaOS 좋습니다, But...돈이 안돼는 일이므로 취미쯤으로 하시고 돈돼는 코딩을 하라는 의미에서
교수님들께서 그런 말씀을 하라는 의미로 여겨집니다...

열심히 잘 굴러가는 OS만들어봐야.... (무슨 말씀인지 아시죠?)

돈안돼고 힘들고 어려우면 그게 '노가다' 지요.
제 생각엔....

저는 이 생각에 반대 입니다

현재 운영체제도 그렇고 데이터 베이스 분야도 이렇게 미진한것이

이런 근시안적인 생각 때문이라고 생각합니다

언제까지 남의 만들어 놓은거 쓰면서 있을 수 없습니다

학교나 학생들이라도 이런 노력을 해서 기술을 조금씩 축적 시켜나가야 한다고

봅니다

그리고 돈안되고 힘들다고 노가다는 아니라고 봅니다

그럼 음악이나 그림 등등 노가다 아닌것이 없겠군요

제가 생각하는 노가다란 아무 생각 없이 무개념으로 코딩하면 노가다 인것 같네요

그리고 자신이 하는 일을 노가다로 치부한다면 그것만큼 불행한것도 없겠네요

ed.netdiver의 이미지

[quote:차리서]불필요한 여담입니다만, 천공카드 시절에는 프로그래머 외에도 키펀처(key-puncher)라고 불리는 사람이 따로 있었고 역할 분담이 아주 명확했습니다. 키펀처는 아예 코드를 작성하지 못합니다. 작성된 코드를 보고 천공카드에 구멍을 뚫는 작업을 할 뿐이죠. 반대로 프로그래머는 키펀처가 없으면 자신이 작성한 코드를 기계에 입력할 천공카드로 만들지 못했습니다.

오히려, 과연 그 당시에는 프로그래머와 코더의 구분이 명확히 정립되어있었는지가 의문입니다. 60년대 당시에 국내 최초(정확히는 2기)로 프로그래머 교육을 받았던 당사자 분께서는 지금 '코더'라는 말을 못 알아들으시더군요.

오옷, 그렇군요. 몰랐던 사실을 알게 되었네요. 고맙습니다.
그나저나 그런 분과 같이 일하고 계신가부죠?
(연배로 따지면 이미 퇴역하셨을것 같긴 합니다만^^ )
살아계신 역사 그 자체가 되겠네요.

Advanced님의 말씀에 100% 동의합니다.
그냥 있는것 갖다 쓰는것에 익숙해져 버린 것이겠지요...

--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)

codebank의 이미지

fender wrote:
그리고 NVidia에서 리눅스용 드라이버 나온 이후로 리눅스도 3D 업종에 포함되는 것 같더군요.

:D 그렇죠. 거기에 Blender나 K3D까지 있으니 확실한 3D겠죠.

원래 이론을 배우는 사람에게는 코딩을 하는것 자체가 쓸데없는 작업으로 여겨질
때가 많은걸로 알고 있습니다.
하지만... Minix가 그냥 나온건 아니라고 생각합니다.
기존에 분석할 수 있는 UNIX코드가 있었는데 왜 Minix라는 OS를 다시 만들었을까요?
돈을 벌려고 만들지도 않았고 그것으로 이름을 날려보려고 만들지도 않았을거라고
생각합니다. 다만 OS의 구조는 어떻게 돌아가고 그것을 이용해서 새로운 이론을
자유롭게 접목시킬 수 있도록 하기 위해서 만든것이 아닌가 생각됩니다.
남들이 쓸데 없는 일이라고 치부하는일들은 상당히 많이 있습니다.
가령 우리 주변에는 무언가를 광적으로 수집하는 사람들이 있습니다.
곤충이라던가 우표라던가 현재 사용되는 돈이라던가...
그 당시에는 상당히 쓸데없는 일이라고 치부하거나 때로는 하지말라고까지 합니다만
상당한 시간이 흐른 후에는 상당한 가치가 있는 일을했다는 평을 듣기도하고 때로는
그것을 통해서 돈을 벌기도(전시회나 매매를 통해서...)하죠.

노가다라는 말을한 사람들은 나무를 보지 않는 사람들이라고 생각합니다.
숲만 보는거죠. 물론 숲도 중요합니다만 숲이 이루어질 수 있는건 나무겠죠.
좋은 숲은 다양한 종류의 나무들이 서로 어울려서 커갈때 만들어질 수 있다고
생각합니다.
한종류의 나무만이 무성한데 숲이 풍성하니 다른 나무는 필요없다는 식의 논리가
아닐까 생각되는군요.
숲도 중요하지만 그 숲을 구성하는 나무도 중요하죠. 숲도 볼 수 있고 나무도 볼 수 있는
그런 사람이 되어야겠죠.

이론을 성립하는데는 실전도 많은 영향을 미칠 수 있습니다. 물론 사전검렬의 우려도
있지만 도전해보지 않고서는 결과를 만들어 내지 못할겁니다.
때로는 힘들고 어렵더라도 열심히 하시면 좋은 결과가 있으리라 생각됩니다.

------------------------------
좋은 하루 되세요.

mach의 이미지

"코딩은 노가다."

맞다.

* "단지, 노가다를 뛰어본 사람은 설계에도 능하게 적응할 수 있지만,
설계만 하던 사람은 노가다 절대로 (약간의 가능성을 남기기 위해),...대체로,
뛰기 힘들다."

* 다른 말로 "이론만 가지고 있는 사람은 실전에 강하기 힘들다.
그러나, 실전에 강한 사람은 이론에 강해지기 쉽다."

------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.

offree의 이미지

노가다 를 줄이기 위한 노가다 이지 않을까요?

코딩? 프로그래밍? 어느 하나만 우월하고 하나만이 전부는 아니겠지요.

그런데.. 노가다(?)도 즐기면 재미있습니다. ( 아닌가? )

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

차리서의 이미지

neTdiVeR1102 wrote:
그나저나 그런 분과 같이 일하고 계신가부죠?
(연배로 따지면 이미 퇴역하셨을것 같긴 합니다만^^ )
살아계신 역사 그 자체가 되겠네요.

아뇨. 그분은 지금 30년째 전업 주부십니다. 수학과 출신이시고 당시에 생산성본부에서 Facom222로 한창 교육을 받고 계셨는데, 어느날 KIST인지 어딘지에서 국비유학생으로 보내주겠다는 이야기에 오히려 당황스러워서 그길로 그만두셨답니다. 결국 몇 년 후에 전산학이 아닌 다른 공부를 위해 어차피 유학길에 오르셨기 때문에, 그 때 프로그래머로서 유학가지 않고 그만둔 것을 지금 적잖이 후회하고 계시는 듯 합니다.

그런데 저로서는 다행스러운 일입니다. 만일 그때 국비유학생으로 나가버리셨으면 지금 저는 없었을겁니다. :)

--
자본주의, 자유민주주의 사회에서는 결국 자유마저 돈으로 사야하나보다.
사줄테니 제발 팔기나 해다오. 아직 내가 "사겠다"고 말하는 동안에 말이다!

ed.netdiver의 이미지

그럼, 엄청난 생명의 은인이 되시는가 봅니다.^^;

--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)

irondog의 이미지

워낙 훌륭한 시스템을 설계하고 프로그래밍 해보셔서 RTOS에서 쓰이는 간단한 커널은 눈감고도 만드실줄 아셔서 노가다라고 하시는 것이겠죠.

님도 지금의 과정을 빨리 극복 하셔서 나중에 교수님만큼 훌륭한 설계가 녹아든 코딩을 하시면 되겠네요. ㅎㅎㅎ

솔직히 프로그램 몇 백줄로 학창시절 레포트 때문에 알고리즘이나 잤던게 전부인 분들이 대학교수님으로 계시는 경우가 많은데요.
박사학위 받으시고 실전에서 코드 만드시는 걸 즐기는 분들도 많으세요. 그런분들과 대면하면 아마 상황이 달라질 겁니다.

설마 그분이 그런분은 아니시겠죠? ^^

코드는 가장 자세한 설계도 입니다. 기초도 없이 너무 한정된 분야에서 좁은 시각으로 얻은 지식으나 경험을 일반화 시키면...
전체 그림을 놓치게 됩니다. 질문자께선 전체를 보고 설계를 할 수 있는 개발자를 꿈꾸시는 것 같으신데... 그런 말에 개념치 말고 열심히 하세요.
그리고 역으로 코드 자체에만 신경쓰느라 전체를 놓치지 마시구. 균형있게 실력 쌓으시기를 바랍니다. ^^

markboy의 이미지

차리서 wrote:
그런데 저로서는 다행스러운 일입니다. 만일 그때 국비유학생으로 나가버리셨으면 지금 저는 없었을겁니다. :)

순간적으로 머리속에 "어머니" 란 단어가 생각나는군요. :)

jachin의 이미지

temper wrote:
옛날에 상엽이형 세미나에 갔는데 이런말씀을 하시더라구요...
OS공부하지 말라고...

무슨 말인고 하니,
OS는 이제 혹은 이미 만들어봐야 돈이 안돼는, 돈이 절대로 될수 없는 분야가 되어버렸기 때문이죠.

또 무슨 말인고 하니,
CaOS 좋습니다, But...돈이 안돼는 일이므로 취미쯤으로 하시고 돈돼는 코딩을 하라는 의미에서
교수님들께서 그런 말씀을 하라는 의미로 여겨집니다...

열심히 잘 굴러가는 OS만들어봐야.... (무슨 말씀인지 아시죠?)

돈안돼고 힘들고 어려우면 그게 '노가다' 지요.
제 생각엔....

OS 개발을 하지 말라니요. 큰일납니다! +ㅂ+

OS로 돈 만들기 어려우니 하지 말라는 얘기일지도 모르겠습니다만,

이상엽 교수님께서 그런 말씀을 하시다니 웬지 서글퍼지네요. (그 두툼한 책도 만드시느라 고생하셨을텐데...)

저는 CPU를 연구하는 사람이지만, OS가 없으면 검증조차 하기 힘듭니다.

요새 추세가 SoC로 넘어가면서 OS에 대한 비중이 얼마나 큰데요.

만약 Linux가 없었다면 CPU 개발을 했더라도 그것에서 돌아갈 프로그램이

없어서 엄청 힘들었을겁니다. (binutil도 없는데, 명령어셋이 다르면... 으으으~ @_@ 상상하기도 싫습니다.)

OS 개발은 정말 필수불가결한 문제입니다. 여러 사람들이 쓰는 PC에 들어갈 OS가 아니더라도,

OS만큼은 연구하고 개발해야 합니다. 안 그러면 독립적인 장치들을 쓸 수 없거든요...

그리고 코딩은... 아무리 생각해봐도 중요하다고 생각됩니다.

물론 기계적인 타이핑은 문제가 됩니다만,

코딩을 하지 않으면 실제 자신이 머릿속에서 생각한 모델과

실제로 돌아가는 모델과의 거리를 좁히지 못하는 것 같습니다.

저는 어셈블러 코딩이 좀 많은 편이라... (단순히 CPU 때문에...)

조금 노가다를 한다고는 하는데,

작동에 대한 이해를 하면서 코딩하는 것은 디바이스에 대한 충분한 이해를

돕는데 중요하다고 생각합니다.

ydhoney의 이미지

음..제 간단한 머리로 생각컨데..

예술은 맞습니다만..

예술이란게 원래 배고픈것인지라..-_-;;

Darkcircle의 이미지

코딩하는게 지겨우면 노가다겠죠...

차라리 그런 생각이라면 코딩을 하느니
프로그래밍 관련된거 싹다 집어치우고
음식장사나 하는게 낫겠습니다. :oops:

( 사실 음식장사도 쉬운건 아닙니다만 먹고 살래면 이게 훨 낫습니다. -_-/ )

---------------------------------------------------------------
폐인이 되자 (/ㅂ/)

sargas의 이미지

각각의 언어를 각각의 악기에 비유한다면

코딩은 연주라 볼수 있죠.

내공에 따라서 연주가 아름다울수도 귀가 아플수도 있겠지요.

귀가 아플때 저는 '노가다'라 부릅니다.

iolo의 이미지

sargas wrote:
각각의 언어를 각각의 악기에 비유한다면

코딩은 연주라 볼수 있죠.

내공에 따라서 연주가 아름다울수도 귀가 아플수도 있겠지요.

귀가 아플때 저는 '노가다'라 부릅니다.

좋은 비유인것 같습니다^o^
언어가 악기고, 코딩은 연주라면...
설계는 작곡이고... 개발방법론, 패턴, 알고리즘 이런건 다양한 음악이론 쯤 될까요?
아키텍터는 지휘자 같은 역할이겠죠?

그리하여 하나의 시스템을 완성하는 과정은 오케스트라의 공연과 같은게 아닐까요?

너무 뻔한 패턴만 많이 사용하면... 밋밋한 대중가요가 되겠죠?
지휘를 잘 알려면 음악을 이해해야겠죠. 그럴러면 역시 악기.. 그 중에서도 기본이라고 할만한 피아노(C?)를 잘 연주할 수 있어야 겠죠. 그리곤 악식론도 공부하고.. 다른 사람들의 음악도 많이 감상하고... 악보도 잘 그려야 하구요^^

헤헤 끝이 없네요=3=333

----
the smile has left your eyes...

krisna의 이미지

iolo wrote:
sargas wrote:
각각의 언어를 각각의 악기에 비유한다면

코딩은 연주라 볼수 있죠.

내공에 따라서 연주가 아름다울수도 귀가 아플수도 있겠지요.

귀가 아플때 저는 '노가다'라 부릅니다.

좋은 비유인것 같습니다^o^
언어가 악기고, 코딩은 연주라면...
설계는 작곡이고... 개발방법론, 패턴, 알고리즘 이런건 다양한 음악이론 쯤 될까요?
아키텍터는 지휘자 같은 역할이겠죠?

그리하여 하나의 시스템을 완성하는 과정은 오케스트라의 공연과 같은게 아닐까요?

너무 뻔한 패턴만 많이 사용하면... 밋밋한 대중가요가 되겠죠?
지휘를 잘 알려면 음악을 이해해야겠죠. 그럴러면 역시 악기.. 그 중에서도 기본이라고 할만한 피아노(C?)를 잘 연주할 수 있어야 겠죠. 그리곤 악식론도 공부하고.. 다른 사람들의 음악도 많이 감상하고... 악보도 잘 그려야 하구요^^

헤헤 끝이 없네요=3=333

그렇다면 립씽크나 댄스 가수로 나설수도 있을까요?

ydhoney의 이미지

krisna wrote:
iolo wrote:
sargas wrote:
각각의 언어를 각각의 악기에 비유한다면

코딩은 연주라 볼수 있죠.

내공에 따라서 연주가 아름다울수도 귀가 아플수도 있겠지요.

귀가 아플때 저는 '노가다'라 부릅니다.

좋은 비유인것 같습니다^o^
언어가 악기고, 코딩은 연주라면...
설계는 작곡이고... 개발방법론, 패턴, 알고리즘 이런건 다양한 음악이론 쯤 될까요?
아키텍터는 지휘자 같은 역할이겠죠?

그리하여 하나의 시스템을 완성하는 과정은 오케스트라의 공연과 같은게 아닐까요?

너무 뻔한 패턴만 많이 사용하면... 밋밋한 대중가요가 되겠죠?
지휘를 잘 알려면 음악을 이해해야겠죠. 그럴러면 역시 악기.. 그 중에서도 기본이라고 할만한 피아노(C?)를 잘 연주할 수 있어야 겠죠. 그리곤 악식론도 공부하고.. 다른 사람들의 음악도 많이 감상하고... 악보도 잘 그려야 하구요^^

헤헤 끝이 없네요=3=333

그렇다면 립씽크나 댄스 가수로 나설수도 있을까요?

키랑 얼굴이 좀 되야해요. -_-;

요즘 똥싼바지인가 하는 친구들을 보니 좀 사자같이 갈기가 있는 사람을 좋아하는지..-_-;

너굴사마의 이미지

작업을 하면 할 수록 머리속은 단순해 지고 작업속도가 빨라지면 노가다고, 작업을 계속 해도 일정한 속도를 유지하면서 머리로 생각을 한다면 노가다가 아닌거 아닐까요... -_-;

----------------------------------------------------------------------------
"It is more important to know where you are going than to get there quickly"
- Mabel Newcomber

카二리의 이미지

저두 코딩은 노가다라고 생각하고 있었는대요..

하지만 똑같이 벽돌쌓기를 하더라도 노가다판에서 쌓는거랑..
벽돌 쌓아서 예술 하는거랑 틀리듯이.

가끔 간결하면서도 아름답고 효율적인 코드를 보면

멋진 예술 작품을 보면서 느끼는 그런것들을 느낌니다.

또한 C언어나 펄같은 언어로 등의 사람눈으로 이해하기 힘들지만

기묘한 코드들을 봐도 추상화를 보는 듯한 느낌을 받습니다.

그런 코드들을 보면 한편으로 코드는 노가다가 아니라 예술인거 같기도 합니다.

개인적으로 프로그래머가 코딩을 한다는건..

공학과 예술의 절묘한 만남이라고 생각합니다 :oops:

새 생각 :)