과연 프로그래머의 실력은 늘고 있나?

lovehis의 이미지

아래 질문중에서 "10년전으로 돌아간다면" 이라는 질문들과 답을 읽고 예전부터 생각해오던 의문이 떠올랐읍니다. "과연 프로그래머의 실력은 늘고 있는 것인가?" 라는 어쩌면 우습게 보일지도 모르는 질문이...

제가 컴퓨터랑 인연을 가진지 벌써 16~7년이 지났읍니다. 그 동안 엄청나게 많은 새로운 것들이 생겨나고 사라지고, 또한 많은 자칭 타칭 프로그래머들을 만나보았고,알고 지내고.... 그러는 동안 느낀 의문중 하나입니다.

저 정도의 컴퓨터 경력을 가지신 분들은 다 아시겠지만 한 10년쯤 전만 하더라도 간단한 GUI를 만들려면 프로그래머가 직접 GUI 라이브러리를 제작하는 것은 거의 기본이었읍니다. 그 GUI라이브러리를 만들기 위해서 PC 하드웨어 제어뿐만 아니라 각종 알고리즘을 직접 구현하고 나서야 비로소 기본 작업이 끝나고 본 프로그램 작업을 할 수 있었죠. 또한, 그 GUI에 거기에다가 한글과 마우스를 지원하기 위해 얼마나 많은 밤들을 한글 오토마타, font 및 마우스 제어 루틴 등에 대해 연구했으며 마우스 지원에 따른 이벤트 드라이빙 이니 뭐니 하는 기법들 또한 직접 생각해 내고 구현해야 했고, 컴퓨터의 제한적인 성능 때문에 해야만 했던 최적화는....

하지만, 요즘의 경우 그런 것들은 OS상 혹은 window manager상에서 그냥 되는 것이고, 단지 API나 container를 사용하는 것으로 많은 알고리즘과 logic적인 면들을 해결 하고 있는것 같습니다. "Know How 가 아닌 Know Where" 라는 말과 같이 만들어진 것들을 사용하기도 급급한 실정 인것 같습니다.

당연히 생산성이라는 측면에서는 요즘이 훨씬 좋다는 생각은 들지만, 평범한 프로그래머의 프로그래밍 태크닉이나 컴퓨터에 대한 이해도가 과연 좋아진걸까요? (여기서 평범한 프로그래머라는 말은 일반적인 프로그래머 라는 의미인데... 좀 이상하군요...^^;;)

제 개인적인 생각으로는 옛날 프로그래머가 좀더 요즘 우리가 흔히 말하는 해커의 개념에 가까운 사람들이 아니었을까 하는 생각도 드는데...여러분들의 고견은 어떻습니까?

익명 사용자의 이미지

비슷하다고 생각합니다.
과거에는 특정기능을 수행하기 위해 모든 환경을 이해하고 직접 구했어야 하지만, 지금은 툴자체 혹은 함수에서 많은 것을 해결해주죠. 같은 기능을 가진 것을 만든다면야 할일이 별로없지만, 그만큼 여유가 생긴는 동안 다른것을 배우는데 투자한다면. 저의 경우는... 리눅스 커널을 분석한다던지. 아님 상용OS를 사용해 본다던지. 아님 새로운 chip을 써본다던지 하고 있습니다. 이러한 투자를 좀더 하게 되지 않을 까요?
욕심이 과하다는 생각도 가끔 하지만, 내부구조 혹은 새로운것에 대한 욕심이 점점 더해져 가고 있습니다.

익명 사용자의 이미지

레이어링이라고 할까요?

그런 것들이 잘 되어온 결과가 아닐까 싶습니다.

TCP/IP스택을 보기 좋은 예로 들어보면

이제는 피지컬 레이어만 건드리고 또 그것만 아는 사람들이 있고요. 링크레이어만 건드리고 또 그것만 아는 사람이 있고.... 그런 것 아니겠습니까? 서로 잘 헤더나 테일러를 붙이거나 떼어서 주기만 하면 서로 몰라도 되는.... 그래서 훨씬 생산성이 좋아진...

그런 것 아니겠습니까?

지금도

"저 정도의 컴퓨터 경력을 가지신 분들은 다 아시겠지만 한 10년쯤 전만 하더라도 간단한 GUI를 만들려면 프로그래머가 직접 GUI 라이브러리를 제작하는 것은 거의 기본이었읍니다. 그 GUI라이브러리를 만들기 위해서 PC 하드웨어 제어뿐만 아니라 각종 알고리즘을 직접 구현하고 나서야 비로소 기본 작업이 끝나고 본 프로그램 작업을 할 수 있었죠. 또한, 그 GUI에 거기에다가 한글과 마우스를 지원하기 위해 얼마나 많은 밤들을 한글 오토마타, font 및 마우스 제어 루틴 등에 대해 연구했으며 마우스 지원에 따른 이벤트 드라이빙 이니 뭐니 하는 기법들 또한 직접 생각해 내고 구현해야 했고, 컴퓨터의 제한적인 성능 때문에 해야만 했던 최적화는.... "

이런 일 하시는 분들은 있습니다. 하지만 말씀드렸듯이 레이어링이 잘 이루어져서 그 레이어만을 전공으로 하는 사람이 늘어 났고 결론적으로 생산성이 좋아진 것이죠. 그결과 통일 성같은 것도 좋아졌죠. 또 그때 한사람이 다 하던 것보다는 서로 영역을 정해서 나누어 하니까 더 좋아지지 않습니까. 라이브러리 짤 사람은 그것만짜니까 더 잘짤꺼고 GUI짜는 사람은 이미 머리 안아프게 존재하는 라이브러리를 써서 하니까 훨씬 예쁘게 할 수 있는 거고 그래서 결론적으로만 봐도 옛날 통신에뮬레이터 이야기위젯보다는 현재 QT위젯이 훨씬 예쁘고 또 통일성있고 많이 쓰이지 않습니까? ;-) ( 솔직히 이건 너무 비약이군요. )

제 생각은 그런 것을 아.... 옛날에는 해커같은 사람 많았는데.... 라고 "한탄"하지는 않아도 될 것같은데요. 왜냐하면 옛날에 라이브러리 짜고 GUI짜던 한 사람 보다는 지금 라이브러리짜는 한명과 GUI짜는 한명이 더 잘할테니까. ;-)

-Venus-

김세권의 이미지

(프로그래밍이 무엇인가에 대한 것은 제쳐놓고) 프로그래밍을 잘한다는 것의 정의가 시대에 따라 변한다고 생각합니다.

컴터가 처음 만들어졌을 때는 진공 카드에다가 자신이 생각하는 바를 잘 뚫어서 컴터가 그것을 잘 돌리게 하는 것이 프로그래밍을 잘 하는 거였다고 생각하구요. 지금은 존재하는 (비주얼 하던지 안 하던지) 도구를 사용해서 자신이 생각하는 바를 잘 표현하는 것이 프로그래밍을 잘 하는 것이겠지요. 도구를 발명하는 것이 인간의 큰 특징이라고 하는데 프로그래밍 도구를 발명하는 것도 그 특성 때문에 나타나는 것이라고 생각합니다.

옛날 사람들이 기계적인 것으로 많이 생각했다면 현재 사람들은 더 추상화 된 것 (알고리즘 적인 문제들 같은 것)에 신경을 쓰죠.

우리가 해커라고 생각하는 사람들을 우리가 해커라고 부르는 이유는 그들이 있었기 때문에 우리가 지금처럼 컴터를 편하게 쓸 수 있게 되었기 때문이 아닐까요? 옛날의 해커의 특성이 지금의 해커의 특성이 될 것이라고는 생각하지 않습니다. 해커라 불릴 수 있는 (해커의 정의는 제쳐놓고) 사람들의 특성도 시대에 따라 변한다고 생각합니다.

결론적으로, 옛날 프로그래머의 프로그래밍 실력과 현재 프로그래머의 프로그래밍 실력을 비교하는 것은 예전에 소로 밭을 가는 농부의 농사짓는 실력과 현재 기계로 밭을 가는 농부의 농사짓는 실력을 비교하는 것이랑 비슷하다고 할 수 있을 것 같습니다.

익명 사용자의 이미지

줄어들고 있는거 같은데요..

요즘은 자작 프로그램 구하기도 힘듭니다

그리고 프로그래밍에 대해 하나도 모르는 사람도

프로그램을 만들 정도로 잘 되어 있으니..

익명 사용자의 이미지

똑같다는 생각이 드네요

익명 사용자의 이미지

시대에 적응하는게 아닐까요?

프로그래밍을 하는 사람들의 기초는 똑같지 않을까 생각합니다. 거기에 프로그래밍 경험이 보태져서 실력이라는 것이 만들어 진다고 봅니다. 예전에는 스스로 구현해야 하는것이 많았기에 그에대한 경험이 많은 것이고 요즘에는 API같은것이 잘 제공되니 그것들을 활용하는 경험이 많겠죠.
현재 프로그래머들이 다만 있는 것을 편하게 이용하고 있을뿐이지 10년전 프로그래머들보다 떨어진다고 생각하지는 않습니다. 시대에 맞는 프로그래밍을 하면서 살아간다고 생각합니다.

익명 사용자의 이미지

^-^ 발전하고 있는 듯 싶습니다.

제가 이전 사람들의 코드를 바탕으로 새로운 것들을 작성하듯이.. 제 아래 프로그래머도 제 코드를 바탕으로 더 나은 것들을 만들고 있습니다.

전 컴파일러 만드는 법은 모릅니다. 하지만 예전에 GUI 라이브러리를 만든 후 프로그램을 작성했었죠.

지금 후배들은 GUI 라이브러리 따위는 만들지 않습니다. 그냥 더 좋은 프로그램을 만들 뿐이죠..

^-^; 잡담이었습니다.

freestyle의 이미지

구글링 하다가 검색하다 발견했습니다.

좋은 의견들이 많네요.

오래된 쓰레드지만 지금도 다시 한 번 생각해볼만한 글인듯 하여 끌어올려 봅니다.

과거엔, 해커수준이 되어야 컴퓨터 프로그래밍을 할 수 있었고,
(저는 예전의 처철한(?) 모습을 동경하고 있습니다)

지금은 편리한 도구가 많이 생기고, 다양한 분야에 다양한 기술들이 적용되었고
예전에 프로그래밍 하던 것은 일부 Geek적인 사람들만의 낭만이 된 듯 합니다.

단, 지금도 예전의 그 프로그래머들이 한 바이트(그 이전에는 한 비트)를 가지고 씨름했던
그 마음가짐만은 가지고 있어야 한다고 생각합니다.

그게 바로 프로그래머의 가치를 높일 수 있는,
프로그래머의 '자질'이 아닐까요.

-------------------------------
Go to the U-City

----------------------------------------------------------------------------------------
Don't Feed the Trolls!
----------------------------------------------------------------------------------------

silasoni의 이미지

mark
이것도 알아야 하고 저것도 알아야 하고...

sinmusa의 이미지

코딩하다가 잠이 와서 잠시 들렀읍니다
일단 어렵군요 흠...
메인보드 기판에 부품이 몇개 없어요
전부다 어디에다가 숨긴건지 ㅠㅠ
그만 좀 숨겨주세요 안그래도 소스공개 않하면서 마치 숨바꼭질하는기분 ㅠㅠ
<에이다의 저주>

<에이다의 저주>

bookgekgom의 이미지

과연 주방장의 실력은 늘고 있나?

아래 질문중에서 "10년전으로 돌아간다면" 이라는 질문들과 답을 읽고 예전부터 생각해오던 의문이 떠올랐읍니다. "과연 주방장의 실력은 늘고 있는 것인가?" 라는 어쩌면 우습게 보일지도 모르는 질문이...

제가 주방이랑 인연을 가진지 벌써 16~7년이 지났읍니다. 그 동안 엄청나게 많은 요리들이 생겨나고 사라지고, 또한 많은 자칭 타칭 주방장들을 만나보았고,알고 지내고.... 그러는 동안 느낀 의문중 하나입니다.

저 정도의 요리 경력을 가지신 분들은 다 아시겠지만 한 10년쯤 전만 하더라도 간단한 생선 소태 앙트레를 만들려면 주방장이 직접 소스에 쓰일 버터를 제작하는 것은 거의 기본이었읍니다. 그 버터를 만들기 위해서 우유의 지방 조절뿐만 아니라 각종 우유를 직접 실험하고 나서야 비로소 기본 작업이 끝나고 본 요리 작업을 할 수 있었죠. 또한, 그 버터로 소고기와 돼지고기를 지원하기 위해 얼마나 많은 밤들을 염분, 지방, 칼슘등에 관해 연구했으며 한국인 지원에 따른 이벤트 불고기 드라이빙 이니 뭐니 하는 기법들 또한 직접 생각해 내고 만들어야 했고, 오븐의 제한적인 성능 때문에 해야만 했던 최적화는....

하지만, 요즘의 경우 그런 것들은 식품 납품 업체 혹은 우유 가공 상에서 그냥 되는 것이고, 단지 "지방이 제거된 우유"나 "칼슘 첨가 우유"를 사용하는 것으로 많은 기법과 기술적인 면들을 해결 하고 있는것 같습니다. "Know How" 가 아닌 "Know Where" 라는 말과 같이 만들어진 것들을 사용하기도 급급한 실정 인것 같습니다.

당연히 생산성이라는 측면에서는 요즘이 훨씬 좋다는 생각은 들지만, 평범한 주방장의 칼질 태크닉이나 식재료에 대한 이해도가 과연 좋아진걸까요? (여기서 평범한 주방장이라는 말은 일반적인 주방장이 라는 의미인데... 좀 이상하군요...^^;;)

제 개인적인 생각으로는 옛날 주방장이 좀더 요즘 우리가 흔히 말하는 요리사의 개념에 가까운 사람들이 아니었을까 하는 생각도 드는데...여러분들의 고견은 어떻습니까?
---------------------------------------------------------------------------------------------------------------
루비 온 레일즈로 만들고 있는 홈페이지 입니다.

http://jihwankim.co.nr

여러 프로그램 소스들이 있습니다.

필요하신분은 받아가세요.

---------------------------------------------------------------------------------------------------------------
루비 온 레일즈로 만들고 있는 홈페이지 입니다.

http://jihwankim.co.nr

여러 프로그램 소스들이 있습니다.

필요하신분은 받아가세요.

brianjungu의 이미지

모든 분야가 다 그렇습니다. 기초과학을 보더라도 더이상 과거처럼
아인슈타인 같은 일개과학자가 획기적인 결과를 내는건 불가능하게 됐습니다.
각각 맡은 영역에서 그것도 개인단위로는 어렵고 팀단위로나 의미있는 성과를 내고 있지요.
연구자체가 Data-Driven이고, 방대한 데이타를 어떻게 잘 분석해서 결과를 내느냐가
요즘 과학연구의 트랜드입니다.

신곡을 쓴 단테 시대에는 런던대학교 장서가 1만권이 안됐다고 합니다.
그 정도도 엄청나다고 그 당시에는 말했고, 그 예기는 만권만 보면 최고의 현자가
될수 있었다는 예기죠. 하지만 현재 세계최고 도서관인 미국국회도서관 장서수는 1억권을
넘었음에도 불구하고, 전세계 지식의 절대량에 비추어볼때 일부에 불과합니다.

이렇게 정보의 양이 방대하다 보니 불가피하게 레이어와 영역이 정해지고,
그 안에서 집중할 수 밖에 없는 겁니다.

컴퓨터 사이언스도 똑같습니다.
Windows NT시절에 코드수는 200만 라인정도였지만, 지금은 4천만 라인이 넘습니다.
더이상 과거같이 처음부터 끝까지 바닥부터 상단까지 꽤뚷고 있는 구루는 존재하기
어렵습니다.

NoSyu의 이미지

c'est un des orgueils de notre pauvre humanité, que chaque homme se croie plus malheureux qu'un autre malheureux qui pleure et qui gémit à côté de lui
- Le Comte de Monte-Cristo
-----------------------------------------------------------------------

제목과 본문의 글을 잠깐 읽고

'최근 글인가....'

싶었는데 날짜를 보니 거의 10년이 다 되어가는 글이네요.

만약 저 글을 지금 썼다면 비교 대상이 해당 글을 쓰신 분이 살았던 시기가 된다고 할 수 있으니

그것 참 오묘하면서 기분이 이상합니다.

어찌되었든 좋은 글 소개 고맙습니다.

c'est un des orgueils de notre pauvre humanit?, que chaque homme se croie plus malheureux qu'un autre malheureux qui pleure et qui g?mit ? c?t? de lui
- Le Comte de Monte-Cristo
-----------------------------------------------------------------------

페이지