리눅스 개발자이십니까?

orangecrs의 이미지

밑에 쓰레드에 이어 글써봅니다.
여태껏 게시판에서 글들을 보면 리눅스에서 개발을 하시고 계신분들이 상당히 계신걸로 알고 있습니다. 하지만 국내 리눅스 어플 개발자의 수는 극히 드문것 같습니다. 특히나 오픈소스에서... 하지만 그분들의 쓰레드나 글에서는 여전히 리눅스가 자신의 개발환경이며 계속 이용하고 있다는 이야기를 하십니다. 심지어 윈도우에서 까지... 어느 정도 특화된 분야에서는 모르겠지만 윈도우같은경우 VC만큼 편안한 환경이 없을텐데도 말이죠. 근데 한결같이 그분들은 코어 개발자 처럼 글을 쓰시더군요. 그분들의 댓글에는 일반 SI개발자의 심정을 토로 하시는데 말이죠. 뭐 이것 저것 다시키는 회사가 있긴하지만요. 하지만 리눅스의 경우 꾸준히 개발하다보면 느끼는것이 굉장한 이질감인데 이걸 느낀다는 것 자체가, 그수가, 댓글로 봐서 많다는 것이고, 그러면서 국내에서 qt,gtk로 개발된 어플이 한글 입력 이외에 거의 전무하다는 사실이 아이러니 합니다.

댓글 함 달아 주세요. 자신이 리눅스 코어 개발자거나 혹은 어플개발자인데 "이건 아니다" 라고 생각하시는 분들...
코어 개발자라서의 고충도 좋습니다.

KLDP에...솔직히 말씀드리면... 제생각에... 용팔이가 많아 보여서 끝내 올려봅니다. 여지껏 댓글 많이 다셨던 분들의 댓글 부탁드립니다.

valentis의 이미지

리눅스 개발자였다는게 맞는 말일지?
아님 리눅스도 개발하는 개발자인지... 헤깔릴때가 있습니다.

대부분의 개발은 맥으로 하더라도 Qt+Posix 환경으로...
거의 소스코드의 수정없이 리눅스에서도 사용하고 있습니다.
사실 한국에서 맥용으로 프로그램을 개발하는 경우는 거의 없죠.

리눅스로 개발하다 보면 생각보다 불편한 것들이 너무 많습니다.
제가 일했던 회사들이 대부분 MS의 Exchange 서버를 이용해서...
Outlook과 같은 MS 프로그램이 아니면 제대로 사용하기 힘들었습니다.
다행이 맥에는 MS가 만든 Office 제품이 있어서... Word도 사용가능했고요...

뭐 이것말고도 불편한 것들이 많아서 맥으로 개발환경을 옮겼습니다만...
그래도 리눅스 개발자라고 말하고 다닙니다. ^^;;;
-------------------------------------

서영진 입니다.
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

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

서영진 입니다.
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

김정균의 이미지

대부분이 서버 사이드 개발자가 아닐까 생각됩니다만..

keizie의 이미지

요컨데, 말은 많은데 정말 하는 게 있는지 의심스럽다는 말씀인 것 같군요.

그런 의심은 어떤 관찰에서 나온 결론입니까? 주로 보시는 메일링 리스트는 무엇인지요? 혹은 GNOME과 KDE 중 어떤 걸 주로 쓰십니까?

의문 제기가 틀렸다는 게 아니라 주장의 근거를 제시해주십사 하는 겁니다.

체스맨의 이미지

초점을 약간 빗나가는 의견일 수 있지만, 개인적인 작업과 별도로 제가 생업을 목적으로 하는 회사일의 대부분은 데스크탑 윈도, 그 다음 자바, 윈도 CE, 심비안, 리눅스, 기타 모바일 등의 순서였습니다. 그렇다고해서 제가 윈도 개발자라고 생각하진 않습니다.

저는 응용 프로그램 개발자일 뿐입니다. 단지 리눅스쪽 일이 잘 없지만, 개인적으로 쌓아둔 결과물들은 항상 다른 플렛폼에서도 작동하는 것을 염두에 둡니다. 저는 어떤 특정 플렛폼을 기준으로 분류되는 개발자이고 싶지는 않습니다. 그렇기때문에 겉보기에는 리눅스 개발자에 가까운 것처럼 보일 수 밖에 없습니다. 어느 플렛폼에서든 거의 동일한 개발 환경들을 유지하기 위해, VIM 을 쓰고, Cygwin을 쓰고, VC 라할지라도 명령행 툴만 골라서 씁니다. 하지만, 저는 그저 응용 프로그램 개발자일 뿐입니다.

리눅스 개발자라고 불릴 수 있는 사람들은 리눅스 자체를 개발하는 사람들이나, 시스템 프로그래머 중 리눅스 드라이버 개발자 정도밖에 없을 것 같습니다. 개발자들을 분류하는 일반적인 기준으로 리눅스 개발자라 칭하는 것은 올바른 방법이 아니라고 봅니다.

Orion Project : http://orionids.org

valentis의 이미지

저같은 임베디드 리눅스 개발자도 있습니다.
요즘 DVR, PMP, DMB, 네비게이션 등...
많은 분들이 임베디드 리눅스쪽에 있습니다.
-------------------------------------

서영진 입니다.
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

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

서영진 입니다.
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

체스맨의 이미지

임베디드 리눅스도 커널을 포팅하는 개발자와 DVR, DMB, 네비게이션 등과 관련된 하드웨어용 드라이버를 개발하는 분들은 리눅스 개발자로 볼 수 있지만, 예를 들어 네비게이션을 위한 사용자 프로그램을 개발하는 사람들은 응용프로그래머일 뿐입니다.

임베디드 리눅스용 응용프로그램을 개발한 사람이 자기 자신을 임베디드 리눅스 개발자라고 부르는 것처럼 어리석은 일은 없습니다.

Orion Project : http://orionids.org

antz의 이미지

잘 아시는 분이어서 답글 달기가 그렇긴 하지만,

사실 같은 어플이라도 임베디드 리눅스 어플 개발자와 일반 어플 개발자와는
어느 정도 레벨이 틀리다고 생각합니다.

보통 장비에서 디버깅을 하려면 원격으로 gdb같은것을 서버로 띄워서 봐야하고,
커널도 전체적인것은 아니어도 수정을 해서 일반 커널과는 틀리게 조작도 해야 합니다.
이것 저것 제한된 환경에서 개발을 하는것은 일반 PC에서 어플을 개발하는것 보다 난이도가 높다고 개인적으로 생각합니다.

이런의미로 임베디드 리눅스 개발자라는 명칭을 사용해도 저는 어느정도 봐줄만 한데요. ㅎㅎ;;;

말씀데로 진정한 임베디드 리눅스 개발자는 디바이스 드라이버쪽을 개발했었던 사람이 말할 수 있는거겠죠. :-)

---


Jabber: lum0320@jabber.org

체스맨의 이미지

개발 과정의 난이도는 인정을 합니다. 하지만, 소형 장치인 관계로, 그만큼 응용 프로그램의 복잡도가 떨어져서 전체적인 관점으로 보면 난이도가 더 높다고 볼 수는 없습니다. 물론 막 개발하는 데스크탑 프로그램과 비교하면 안되겠지만요.

저 자신도 응용 프로그래머이기 때문에, 응용 프로그래머를 폄하할 생각은 없습니다만, 응용 프로그램 개발자가, 자기 자신의 능력을 '임베디드' 나 '리눅스'라는 단어로 제한해버리는 것은 바람직한 일이 아니라고 봅니다. 응용 프로그램 개발자는 그 나름대로 응용 프로그램을 개발하면서 중점을 둬야할 관점과 분야가 있다고 생각하는데, 그게 '임베디드'나 '리눅스' 같은 특정 플렛폼으로 표현되어서는 안된다고 봅니다.

앞서 본 주제에 '리눅스 개발자'라고 말씀하셔서, 리눅스 개발자란 리눅스 환경에서 주로 개발하면 리눅스 개발자인가 하는 의문이 들었기 때문에 의견을 올려봤습니다...

Orion Project : http://orionids.org

nthroot의 이미지

임베디드 개발환경이 좀더 로우레벨이고 열악하기 때문에 난이도가 있다고 보긴 어려울 것 같습니다.
사실 어느정도의 '노가다'와 '삽질'이 동반되는 작업이기 때문에.. 코딩을 즐기는 개발자에게는 난이도 있는 프로그램이라기 보단..
몸으로 하는 노동과 비슷한 일들도 제법 됩니다. GDB로 리모트로 디버깅 할 수 있는 그나마 괜찮은 환경이 마련되기 까지는 정말 노가다입니다.
오히려 DB를 사용하거나 동접수십만의 어플들을 개발하는 일이 훨씬 난이도 있다고 생각이 드네요. 임베디드 환경들은
열악한 곳은 변수나 스택의 사용에 제한이 너무 많아서 코드를 아무리 잘 짠다고 해도 구조적으로 짜기가 힘들고 지저분해집니다.
코드를 짜는 능력을 쌓는데도 전혀 도움이 안되는 것 같습니다. 그리고 사실 대부분은 코드길이도 별로 길지 않습니다-_-;

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

valentis의 이미지

저의 경우에도 커널 포팅, 디바이스 드라이버 개발, 어플리케이션의 개발까지 다하지만...
보통 임베디드쪽에서 윗단(어플리케이션)을 개발하면서 아랫단(커널)까지 모르는 분들은 적을 듯 싶습니다.

그리고 임베디드용 응용프로그램도 일반 데스크탑과 다릅니다.
ARM의 예를 들어보면 플로팅 포인트 연산이 안되기 때문에 정수연산으로 모든 것을 대처해야 합니다.
일반적으로 임베디드 리눅스쪽에서는 표준 커널 API를 사용해서 사운드의 입출력이 안되는 경우도 있습니다.
그리고 요즘은 많이 좋아졌지만 시스템에 따라서는 메모리의 양도 제한이 있기 때문에 이러한 모든 것을 처리해야 합니다.

임베디드 리눅스부터 개발을 시작하신 분들은 그리 많지 않을 것 같은데요.
제가 아는 분들도 다들 어느정도의 데스크탑에서의 개발을 시작해서 임베디드 쪽으로 오신 분들이 많습니다.
디바이스 드라이버를 개발하시는 분만 리눅스 개발자라고 하는 건 너무 좁은 의미가 아닐까 싶습니다.
-------------------------------------

서영진 입니다.(유닉스 개발 1994년부터 시작)
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

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

서영진 입니다.
Homepage : http://valentis.pe.kr
blog : http://www.lifeholic.com

antz의 이미지

사실... 리눅스상에서 개발은 많은 분들이 하고 계시는걸로 알고 있습니다. 대신 그게 범용적인것이 적어서 겉으로 들어나지 않는것이고, 회사 일이다보니, 오픈소스에 공헌이라기 보다는 리눅스 플렛폼에서 회사에 필요한 어플리케이션 개발이 되는것이라 생각합니다.

임베디드 리눅스로 나오는 제품들을 보세요.
저도 한때는 L4 스위칭 라우터에서 어플개발도 했고,
조그만한 검색엔진도 개발을 했었습니다.

제가 안타깝게 생각하는것은 유럽과 미국과 같은 나라와 비교해서 오픈소스에 공헌을 할 수 있는 여유가 어떤 이유에서 인지 좀 적다는게 안타깝다고 느끼지만, 여기 계시는 분들이 용팔이? (무슨의미인지 잘모르겠네요. ^^; )는 아니라고 봅니다.

---


Jabber: lum0320@jabber.org

ganadist의 이미지

오픈소스 개발자와 리눅스 개발자는 명확하게 분리해서 말씀하셔야 할 것 같습니다.

우리나라에 리눅스 개발자는 나름 꽤 있던걸로 알고 있습니다만 오픈소스 개발자는 찾기 힘들죠.

----
Do not feed troll!

----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러

수수깡의 이미지

저는 리눅스에 돌아가는 프로그램을 만들어요.. @-@;;
windows-VS에서 코드를 만들구요.
linux서버에 포팅을 해요..@-@;;
GNU에 있는 거만 쓰면 왠만하면 돌던데요~?
G++, aCC, xlC라던지.. warnning은 좀 나지만..
왠만 하면 다 컴파일되고 돌던데요~?

휴~ 제실력좀 늘었으면 좋겠어요..ㅠ.ㅠ

THe World is just awesome~!!
http://susukang.tistory.com

권순선의 이미지

리눅스 환경에서 개발 작업을 진행하거나, 리눅스 시스템에서 동작하는 SW(라이브러리, 애플리케이션 등 모두 포함)를 업으로 개발하는 사람의 숫자는 굉장히 많습니다. 아주아주 많습니다. 다만 많은 경우 그냥 가져다 쓰기만 할 뿐 커뮤니티와는 완전히 단절되어 있는 경우가 거의 대부분(모두라고 해도 될 정도로)입니다. 조금 안타까운 현실이죠.

cleol의 이미지

#1
orangecrs 님께서 하고싶은 말씀이 뭔지 모르겠습니다.

#2
인용 -[여전히 리눅스가 자신의 개발환경이며 계속 이용하고 있다는 이야기를 하십니다. 심지어 윈도우에서 까지]

가 대체 무슨 뜻인지요? 혹시 윈도에서 오픈 소스 개발 환경을 (예를 들어 mingw + wxWidgets + eclipse CDT 같은)사용해서 개발하는 경우를 말씀하시는 것인지요? 상상을 해봤지만 다른 의미는 떠오르지 않는군요. 혹시 제가 말씀드린 뜻이었다면 .... 문장을 정말 잘못 쓰셨습니다. 그리고 그런 뜻이었다면 대체 문제가 무엇인지? 그렇게 하면 안된다는 뜻인가요? 분명치 않군요.

#3
인용 -[댓글 함 달아 주세요. 자신이 리눅스 코어 개발자거나 혹은 어플개발자인데 "이건 아니다" 라고 생각하시는 분들...]

"이건 아니다"가 무슨 의미인지? 말씀하신 "용팔이"들을 보고 "이건 아니다"라고 생각한다는 뜻인가요? 위 문장의 다음 문장에서 코어 개발자의 고충을 말씀하시는 것을 보니 "이건 아니다"가 어쩌면 "리눅스 개발 환경에서 이런 부분은 맘에 안든다" 같은 의미일 수도 있다는 생각도 드는데, 그런 의미는 글의 전체적인 분위기(글의 의미가 분명치 않아서 분위기라고 썼습니다.)와는 어울리지 않는 것 같고. 참 이해하기 어려운 문장입니다.

#4
인용 -[리눅스의 경우 꾸준히 개발하다보면 느끼는것이 굉장한 이질감인데 이걸 느낀다는 것 자체가, 그수가, 댓글로 봐서 많다는 것이고, 그러면서 국내에서 qt,gtk로 개발된 어플이 한글 입력 이외에 거의 전무하다는 사실이 아이러니 합니다.]

이질감이라는 말은 뭔가 익숙하지 않은 느낌이라는 뜻인데... ?? 아 역시 도무지 무슨 뜻인지 모를 문장입니다. 리눅스 개발을 하면서 굉장히 익숙하지 않은 뭔가를 느낀다? 많은 사람들이 그런 것을 느낀다? 그렇다면 qt,gtk 어플이 많아야 할텐데 실제로 별로 없다? 저는 이 문장을 읽으면서 말씀하신 이질감(왠지 한국말이 아닌 것 같은)을 느꼈습니다. 저만 이해를 못하는 것인가요?

#5
종합해서 제가 이해하기로 orangecrs 님의 글에 등장한 개발자 범주는,

1. 리눅스 전용 어플리케이션을 개발하는 사람(예를 들어 gtk/qt 개발자)
2. "코어개발자"란 단어를 사용하셨는데 무슨 뜻인지요? 흔히 사용하는 단어도 아닌 것 같고, 의미도 분명치 않습니다. 혹시 시스템 개발자를 말씀하시는 것인가요?
3. 리눅스 전용은 프로그램을 개발하지는 않지만 개발 환경이 리눅스인 사람. orangecrs님의 글에는 예가 없지만 제가 예를 들자면 많은 자바 서버 개발자들을 들 수 있겠군요.

이 세가지 인 것 같습니다. 맞는지요? 그리고 이런 개발자 범주를 가지고서 뭔가 문제를 제기하고 계신데... 말씀하시는 문제가 이른바 "용팔이"입니다, 그런데 어떤 사람들을 "용팔이"라고 지칭한 것인지요? 실제로는 이 세가지 범주에 속하지 않는데 마치 속하는 것처럼 이야기하는 사람들을 말씀하시는 건가요? 아니면 3 을 "용팔이"로 지칭하시는 것인지요. 이도 아닌 다른 것을 문제삼으신 것인지?

#6
죄송한 말씀이지만 전 kldp 게시판에서 이런식으로 어줍잖게 문제를 제기하는 분들이 참 마뜩찮습니다. 제가 어줍잖다고 표현한 것은 문제에 대한 고찰이 부족한데 맘이 앞서서 말씀하는 경우나 (무슨 마음이 앞섰을까요?), 문제는 분명히 인식했더라도 글로 잘 표현하지 못한 경우 등을 이야기하는 겁니다. 지금 이 글타래를 연 글이 이 두 경우 중 하나인 듯 해서 드리는 말씀입니다. 글의 의미가 좀 더 명확했으면 좋겠습니다.

cleol의 이미지

뭔가를 이어썼다가 지우려고 보니 삭제 버튼이 안보이는군요....-_-; 원래 없었나요? 여하튼 이어썼던 요 글은 없는 것으로...

cleol의 이미지

뭔가를 이어썼다가 지우려고 보니 삭제 버튼이 안보이는군요....-_-; 원래 없었나요? 여하튼 이어썼던 요 글은 없은것으로...

imtak의 이미지

음...orangecrs 님께서 말씀하시는건
"용팔이" 즉, 용산에서 부품을 팔기만할 뿐
실제로 개발경험이나 실력이 없는 사람들이 많다고 생각하시는 말씀이신지요..?

뭐 저야 어쭙잖은 PHP 개발자입니다(얼마전에 닷넷으로 넘어오긴했지만)
보통 작은 회사에서는 리눅스 서버관리하는 사람을 따로 두지않아서
제가 서버관리도 겸하고 있습니다. 그래서 리눅스에 관심이 많은 편입니다.
그리고 많은 한국에서 영세 웹 에이젼시에서 서버관리를 겸하시는..같은 입장이신 분도
이곳에 많이 계시리라 생각이 드네요..

님께서 쓰신 글을 제가 읽고 이해한바로는
이 KLDP가 리눅스 해커 수준의 인재들만 모여서 글을쓰고 곳이 되어야한다는...
그런 느낌이 드는 것은 제 부족한 실력으로 인한 자격지심일까요..?
그런데 전 이곳이 그런 사람만을 위한 닫힌 그룹이라고 생각치 않습니다.
리눅스와 오픈소스에 관심이 있는 사람이라면...
직업이 '용팔이' 인지가 중요한가요? 초보자가 들어오면 안돼는 곳인가요?
그리고 그래서도 안됀다고 개인적으로 생각하고 있구여...
정보의 반 독과점을 주장해야할 '리눅스 오픈소스' 기치를 내건 곳에서
이런 글이 올라온것에대해 조금은 안타깝습니다...

아무리 날고 기는 리누스 토발즈라 할지라도 올챙이적이 있고
현재의 하찮은 용팔이(초심자)일지는 몰라도
언젠가 누구보다 높은 해커 구루의 경지를 이룰 수 있다고 생각합니다 :-)

Quote:
KLDP에...솔직히 말씀드리면... 제생각에... 용팔이가 많아 보여서 끝내 올려봅니다.

님의 말씀에 살짝 상처받을 뻔 했지만...님의 말을 긍정의 힘을 빌어서 재해석하면 초보자 또는 입문자들 위한 포럼 또는 카테고리를 제안하신 것으로 보아도 될런지요? :-)

익명입니다의 이미지

예전에는 MFC/COM 어플 개발자였고, 지금은 Linux 상에서 OS 개발합니다. 같이 개발하는 사람들을 보면, 타겟이 타겟인지라 같은 팀에서 보면 2/3 정도는 리눅스, 나머지 1/3 정도는 윈도우즈 (주로 새로 들어온 사람들)에서 개발을 하는군요.

rosebuntu-KUDP의 이미지

자바를 쓰세요.

익명 사용자의 이미지

현업에 있으면 용팔이들 많죠.. :)

anfl의 이미지

솔직히 "코어"라는게 어떤걸 의미하는지 명확하지 않네요.
linux kernel을 의미하는건지 아니면 linux 핵심 어플리케이션을 의미하는지????

5~6년전 까지는 주로 리눅스 kernel과 system 프로그래밍을 했습니다.
3~4년전에는 RTOS kernel을 두 개정도 만들고 모 대기업의 RTOS kernel을
거의 모든 부분 설계하고 만들었습니다.
현재는 새로운 아키텍쳐의 프로세서를 만드는 곳에서 컴파일러와 디버거를 만들고 있네요.

최근에 프로세서를 개발하는데 있어서 power analyser가 필요해서 오랜만에 QT로 개발했습니다.
개인적으로 GUI 프로그래밍을 극히 싫어하는데 필요에 의해서 하게되더군요.
나름 재미있었습니다. 그다지 미려한 UI라던지 대단한 기능이 필요하지 않아 대충만들었는데
만들면서 느낀게 제대로 만들려면 쉽지 않겠구나 라는걸 느꼈습니다.

대단하다, 핵심이다, 어렵다라는 개념은 상대적 개념입니다.
자기 기준에만 대단하고 어렵고 핵심이죠.
예를들면 세상에서 최고의 옹기장은 깨어지지 않는 튼튼한 옹기를 만드는게 세상에서 가장 힘들다고 이야기하고, 세상에서 최고의 자기장은 6색깔을 내는 유약을 이용하여 원하는 형태로 원하는 색깔을 내게 하는게 세상에서 가장 힘들다고 이야기하지요.

둘다 어려운게 맞습니다. 하지만 세상에서 가장 단단한 도자기를 만들었다고 해서 자기장이 옹기장에게 "그건 너무 쉬운일이야"라고 이야기할수는 없는겁니다.

본인 기준에서 대단한걸 한다고 느껴진다고해서 다른 사람들을 폄하하지는 마십시요.
그건 자신의 기준일뿐입니다.


익명 사용자의 이미지

줏어들은것은 있어가지고 입만 살아있는 개발자들이 많다는것은 알고있습니다.
실상 같이 일해보면 글에서 받은 느낌과 생각이 많이 다를수도 있습니다.
하지만 같이 일해보지 않고서야 어떻게 판단내릴수 있을까요?
그걸 알아내는 방법적인 문제를 먼저 고민해보고요. 혹시 알아내시면 꼭 좀 공개바랍니다.
글만보고도 용팔인지 코어개발자인지 알수있는 방법을.. -_-;