2009년 12월 2일 수요일

블로그를 해야지 해야지 하면서도 너무 바쁘네요...

요즘에도 방문자가 있을 지는 모르겠지만...

제 블로그를 제가 지나가다가 들려서 글 하나 남깁니다.

2009년 하반기부터 석사과정에 진입한 저는

결국 전자전기라는 전공을 버리고 소프트웨어 공학 연구실 택하여

열심히 연구에 매진 중입니다.

축구나 연예 뉴스 하나 덜 보고, 미드 한편 덜보고,

친구랑 채팅으로 잡담 줄이면, 하루에 하나씩은 포스팅할 수 있을 텐데...

그게 쉽지 않군요...

그래도 여유가 좀 생기면 블로그 다시 ㄱㄱㅅ

2009년 6월 1일 월요일

UIzard Opensource Project!

UIzard가 버젼 0.9.0을 오픈함과 동시에 본격적인 오픈 소스 프로젝트를 진행하고자 합니다.
관심을 갖고 계시다면, 프로젝트에 참여해주세요!
프로젝트 진행은 구글 코드를 통해 할 예정입니다.
프로젝트에 참여하시고 싶으시면, UIzard를 사용해보시고
발견한 몇 개의 Issue(버그나 문제점, 의견 등)를 이메일로 보내주세요.

추가적으로 주목할만한 커리어나 포트폴리오를 갖고 계시다면 함께 보내주셔도 됩니다.
(반드시 보내주셔야하는 것은 아닙니다.)
이메일을 보내주시면, 제가 확인 후 프로젝트 멤버로 등록해드리겠습니다.
앞으로, 여러분들의 많은 참여를 통해 더욱 더 좋은 UIzard로 거듭나고자 합니다.
감사합니다.

UIzard Opensource Project
http://code.google.com/p/uizard/
UIzard Developers
http://groups.google.com/group/uizard-dev/ 

E-MAIL :  

2009년 5월 20일 수요일

오픈 소스의 정의와 오픈 소스를 해야하는 이유

UIzard를 통해 저도 이제 오픈 소스 프로젝트의 소유자가 되었습니다. 하지만 여전히 어떻게 진행해야할지 막막해서오픈 소스의 정의부터 그 진행방법까지 알아보면서 포스팅을 시작하기로 마음먹었습니다. 오늘은 오픈 소스의 정의에 대해 알아보면서 오픈 소스를 해야하는 이유에 대해서 정리해보았습니다.

먼저, 위키피디아에서 오픈소스의 정의에 대해서 알아보았습니다.
오픈 소스(open source)는 소프트웨어 혹은 하드웨어의 제작자의 권리를 지키면서 원시 코드를 누구나 열람할 수 있도록 한 소프트웨어 혹은 오픈 소스 라이선스에 준하는 모든 통칭을 일컫는다. 어원에 대해서는 History of the OSI 자료에 따르면, 1998년 2월 3일에 넷스케이프 브라우저의 원시 코드에 대해 어떠한 형태로 공개할까하는 전략회의에서 붙여진 새로운 용어라고 설명되어 있다.
소스 코드를 공개한다고 해서 모두 오픈 소스인 것은 아니다. 예를 들어, 마이크로소프트는 전체 비율로 보았을 때 극소수의 고객(주로 정부나 거대 다국적 기업 또는 대학교 및 연구소)들에게 마이크로소프트 윈도의 소스를 공개했다. 오로지 보안 유지를 위해서만 소스를 직접 수정할 수 있으며, 그 수정본을 재배포하는 것은 금지되어 있다. 이것은 오픈 소스의 의의에 어긋나므로 이러한 경우는 오픈 소스라 부르지 않는다.
위의 정의를 보기좋게 요약해보면,

- 오픈 소스는 오픈 소스 라이선스에 준하는 모든 통칭이다.
- 오픈 소스에서 원시코드는 특정 계층이 아닌 누구나 열람할 수 있다.
- 오픈 소스에서 제작자의 권리는 유지된다.
- 오픈 소스는 라이센스에 따라 재배포가 가능하다.

요약해놓고 보니 편합니다. 뭐, 평범한 정의이고, 평소에 생각하던 개념과 크게 다르지 않습니다만, 새삼 곱씹어 보면, "원시 코드는 특정 계층이 아닌 누구나 열람할 수 있다."라는 문장이 재미있습니다. 특히, 위의 마이크로소프트 윈도의 예와 함께 생각해본다면 말이죠.

우선, 특정 계층이 아닌 누구나 열람할 수 있도록 해놓더라도, 프로그래밍 언어라는 장벽이 있는 이상 일반인이 아닌 개발자라는 범주의 사람들만이 열람하게 될 것입니다. 그리고 그 중에서도 해당 오픈 소스를 필요로 하는 사람만이 열람하게 될 것입니다.

결국, 소스를 필요로 하는 특정 계층이 형성되는 것이죠. 물론 재배포 가능 여부와 보안 유지 등에 있어서는 마이크로소프트 윈도 예에서의 그것과는 차이가 있습니다만, 양쪽 특정 계층 모두가 소스코드를 수정하여 자신의 필요와 의도에 맞게 변형하여 사용하고 싶어한다는 점은 같다고 볼 수 있을 것 같습니다.

즉, 오픈을 하더라도 "내가 공들여 만든 프로그램을 남에게 뺏기게 되는 것이 아닐까?" 또는 "괜히 공개했다가 나만 완전히 개털리는 건 아닐까?"라는 생각은 조금은 어리석은 생각이라는 거죠. 오픈 소스를 시작하더라도, 소스에 접근하는 사람들은 대부분 해당 소프트웨어나 하드웨어를 자신의 입맛에 바꾸어 사용해보고 싶거나, 버그 수정을 직접하고 싶은 사람들일 가능성이 큽니다. 마이크로소프트 윈도의 예에서 윈도우를 자신의 연구나 회사 사정에 맞게 수정하고 싶어하는 특정 계층과 크게 다르지 않죠. 또 라이센스가 법적 분쟁의 가능성을 최소화해주고 있는 이상, 완전히 똑같은 복제품으로 누군가가 자신과 똑같은 권리를 주장할 수도 없기 때문에 공개라는 것이 불리한 것만은 아닙니다.

물론, 돈이라는 측면에서 본다면 차이가 있습니다. 오픈 소스를 통해서는 수입을 기대하기 어렵습니다. 그에 반해, 마이크로소프트는 윈도의 소스를 특정 계층에게 공개하고 그 특정 계층로부터 엄청난 수익을 올릴 것입니다. 하지만 윈도만큼의 큰 규모에 견줄만한 오픈 소스는 얼마 존재하지 않습니다. 만약, 어느 한 개발자 또는 개발자 그룹이 윈도에 필적할만한 프로그램을 만들었다면 오픈 소스보다는 클로즈드 소스로 창업을 하는 것이 합리적인 방법일 수도 있을 것입니다.

하지만, 중소규모의 프로젝트라면, 오픈 소스로 진행하는 것이 좋다고 봅니다. 형성된 특정 계층이 프로젝트에 새로운 기능을 추가해주고 버그를 찾아줄 것이며, 나아가서는 그것을 고쳐줄 지도 모릅니다. 이것은 클로즈드 소스로 프로젝트를 진행하였을 때 기대할 수 있는 수익보다 그 가치가 훨씬 클 수도 있습니다. 또한 프로젝트에 대한 자신의 권리는 유지되면서 프로젝트는 계속해서 진화할 것입니다. 프로젝트가 올바른 방향으로 잘 이끌어지고 유지된다면, 개발자는 소프트웨어로서 세계에 이바지할 수 있을 것이고, 돈도 많이 벌 수 있을 것입니다.

사람들 각자는 서로 다른 생각을 갖고 있고, 자신이 해야할 일이 있기 때문에 소스를 복제하여 재배포하거나 모방하는 일이 발생한 가능성은 낮습니다. 오히려, 소스를 공개하게 되면 넓은 범위의 사람들이 특정 계층을 형성할 것이고 그것은 프로젝트를 조금씩 성장시켜줄 것입니다. 특히 개인 개발자들에게는 자신이 만든 프로젝트를 검증 받고 그 우수성에 대해 알릴 수 있으며, 다양한 피드백을 기대할 수 있는, 그리고 명예를 얻을 수 있는 좋은 기회이자 방법이 될 것입니다.

마지막으로, UIzard의 오픈 소스 프로젝트를 응원해주시기 위해 Luke Kenneth Casson Leighton 씨가 보내주신 이메일을 소개하면서 글을 마치겠습니다. 지난 일주일간 혼란스러웠던 저에게 큰 힘이 된 글입니다. 번역이 좀 건방지지만, 오픈 소스 프로젝트를 시작하는 데 있어 저에게 용기와 동기를 주는 내용입니다. 오픈 소스 프로젝트한다고 해서 마냥 가난한 것만은 아니라 다행입니다!

ryu, congratulations on writing something

that people find useful and exciting.

don't let it go to your head - it's just code,

and they're just people.

i had to deal with what seemed like fame, too,

when i was working on samba, ten years ago.
there are lots of ways to make your life easier

when you "properly" embrace free software ethics

and principles, and lots and lots of resources and people

who will help and make this a big and successful,
and useful project.

if you try to "control" everything yourself, it will get messy.
you may also get offers from companies to buy your code.

please don't take them.

there are enough proprietary tools out there,

and you can make enough money and help far more people

with free software.
take the developer of Ruby on Rails as an example:

look him up.  he makes his money from consultancy

and on giving talks, world-wide.
whatever you decide, good luck,

and i hope to be in touch perhaps when things calm down :)

if you keep this as a free software project,

and you need any help from me, you only have to ask.

 

류야 사람들이 쓸모있다고 느끼고 즐거워할만할걸 써낸거 ㅊㅋ
니 머리로 흘러들어가게 두지마 그냥 코드니까

그리고 걔네도 그냥 인간이니까
나도 십년전에 삼바(Samba) 만들때 유명세처럼 보이는 것을

대처해야했었거덩
니가 "적절하게" 공짜 소프트웨어 윤리와 규칙을 포용한다면

니 삶을 더 쉽게 만들 방법도 많아
그리고 이걸 더 크고 성공적으로 쓸모있는 프로젝트로 만들게

도와줄 사람들과 자원들도 많아

니 혼자서 다 컨트롤하려고 하지마 그럼 힘들어질꺼니까
니 코드를 살려고 회사에서 너한테 제의할지도 몰라

받아들이지마
세상에는 유료 툴들도 충분히 많이있고

게다가 넌 공짜 소프트웨어로도 돈을 많이 벌면서

중생을 도울수 있느니라
Ruby on Rails 개발자를 예로 들어보자

걔는 상담해주고 연설해주는데서 돈을 벌어, 세계적으로
니가 뭘 선택하든 굳럭

그리고 상황이 좀 진정되면 너랑 연락하고 싶네
만약에 니가 이걸 공짜 소프트웨어 프로젝트로 놔둘꺼고

나한테 도움이 필요하다면 나한테 묻기만 하면되


(장수민(24세)이라는 신제품 번역기의 번역 결과입니다.)


프로필 및 경력

이름 : 류성태

생년월일 : 1986년 07년 18일

신장 : 180cm

체중 : 78kg

학부전공 : 전자전기공학

대학원전공 : 전자전기컴퓨터공학

관심분야 : 모바일, 웹, 디자인, UX



수상 경력 및 경험


2005 킹고 디지털 콘테스트 홈페이지 금상

2005 킹고 디지털 콘테스트 PDA배경화면 은상

2005 성균관대학교내 관련 홈페이지 제작 다수

2006 스키마(skima) 2기 팀장

2006 성균관대학교내 관련 홈페이지 제작 다수
2007
킹고 디지털 콘테스트 홈페이지 은상

2007 성균관대학교내 관련 홈페이지 제작 다수

2007 NDSL용 게임 개발 (임베디드시스템설계특론 프로젝트)

2007 8086 보드 제작 및 8086 Assembly SW 개발 경험

2008 삼성전자 휴대폰 아이디어 경진대회 성균관대학교 대상 입상, 본선 입선 입상

2008 블루투스 무인주행 RC(Atmega128) 개발 경험

2008 성균관대학교 정보통신공학부 전자전기공학사 심화과정 조기졸업

2008 한국전자통신연구원(ETRI) 하계 연구연수생 2개월

2008 한국전자통신연구원(ETRI) 연구연수생 : iPhone SW 개발

2008 성균관대학교 일반대학원 전자전기컴퓨터공학전공 입학/휴학

2008 한국 CISSP협회 홈페이지 디자인

2008 3 SW저작권 보호 아이디어 경진대회 은상 입상

2008 다음, 구글 위젯=가젯 경진대회 2위, 우수상 입상

2008 한국 마이크로소프트 비스타 리뷰 공모전 대상 입상

2009 대한민국 매쉬업 경진대회 우수상 입상

2009 SKT-MS T옴니아 소프트웨어 개발 경진대회 은상 입상

2009 UIzard 오픈소스프로젝트 Owner

2009 컴투스 : 삼성전자 앱스토어용 어플리케이션 개발

2009 위자드웍스 : SKT TSTORE용 iSuitUp 개발

2009 2학기 성균관대학교 소프트웨어공학 연구실 복학




 

활동 단체

 

- 마이크로소프트 윈도우프론티어 2기 (활동중)

- 성균관대학교 정보통신공학부 시스템 컨설턴트 (활동중)

- 성균관대학교 정보통신처 지원 웹제작팀 스키마 (활동종료)

- 성균관대학교 봉사 동아리 로타랙트 (활동종료)

- 성균관대학교 정보통신공학부 축구동아리 파이어볼스 (활동종료)

- 대학생 창업/웹제작팀 npTeam (활동종료)

2009년 5월 18일 월요일

[2008년 1학기 임베디드시스템설계] 블루투스 무인 주행/주차 RC카

토요일 기차에서 노트북에 외장하드를 꼽고 영화를 보다가 기차가 덜컹거리는 바람에 외장하드 전원이 빠지면서 고장이 나고 말았습니다. 중요한 자료가 많은 관계로 급히 용산에 가서  데이터 복구센터에 AS를 맡겨놨는데, 혹시나 못살릴까 싶어서 컴퓨터에서 자료를 찾던 중에 작년 이맘 때쯤 전공 수업 프로젝트로 만들었던 블루투스 무인 주행/주차 RC카와 관련된 자료를 찾았습니다.

 


자동 주행하는 모습



신호등 인식하는 모습

 


곡률이 큰 코스를 주행하는 모습

 


자동 주차하는 모습

 

 

첫번째 동영상에서는 RC카가 턴을 완수하지 못하고 코스를 벗어나버리는데요, 이건 적외선 센서를 사용하다보니 주행 보드 밖의 카페트가 어두운 색이다 보니 도로로 인식해서 그런 것이었습니다. ㄷㄷ

 

정말 오래전에 만들었던 거 같은데, 돌이켜 보니 아직 1년도 채 안됐네요. 저 동영상을 촬영한 때가 6월 말이었으니 말이죠. 저 동영상을 촬영한 날 수업이 제 대학교 마지막 수업이라 그런지 감회가 새롭네요. 아래는 만들면서 찍은 사진들 ㄷㄷ


2009년 5월 16일 토요일

OpenHack 2009와 Ajaxian.com에 소개된 UIzard!!

지난 수요일 저녁에 갑자기 야후코리아의 이태우님으로부터 전화가 왔습니다.
uizard.org가 서버가 트래픽 초과로 접속이 안된다는 연락이었죠... 깜짝놀라서 무슨 일인가 했더니... 야후코리아의 정진호님이 OpenHack2009이 열리는 런던으로 출장을 가셔서 UIzard를 소개해주셨던 겁니다!! 이후에는 ajaxian.com에도 소개되고 3일 사이에 4000명에 가까운 전세계 분들이 왔다가셨습니다. ㄷㄷㄷ


덕분에 이메일 문의도 폭주하고, 무료로 서버 호스팅을 해주시겠다는 외국분들도 여럿 계셨습니다. 너무 감사드리고 싶고, 앞으로 그 기대에 부응하기 위해 노력해야겠습니다. 사실 오픈소스 프로젝트로서 어떻게 진행해야할 지, (늘 그렇게 말해왔지만...) 답답한 면이 있었습니다만, 이번 일로 인해 탄력을 좀 받을 거 같습니다.

조만간 구글코드를 통해 프로젝트 진행을 시작할 거 같구요, 몇몇 프로젝트 멤버도 모이고 있는 중입니다. 외국분들도 많은 참여의사를 보여주셧는데, 당분간은 국내 개발자위주로 진행을 하다가 어느 정도 시스템이 갖춰지면 외국분들도 함께해서 더 강력한 툴
로 거듭나도록 해야겠습니다.

트위터에서 본 재미있는 반응인데요, 저로선 좀 쑥스러운 반응입니다. "Korean developers scare me." 라고 적어주셨는데, 개노가다의 결과인 UIzard를 보시고 여러명에서 만드셨다고 생각하시나 봅니다ㄷㄷ
소스코드 공개를 하면 들통날 제 허접한 실력으로 인해 한국 개발자들이 같이 욕먹기 전에 외국개발자들을 정말 Scare하게 만들 UIzard Open Source Project에 참여하시고 싶으신 분은 xenoz0718@gmail.com으로 연락주세요!! 함께 멋진 툴을 만들어 보아요!!

마지막으로 아직 많이 부족 UIzard를 소개해주신 정진호님과 늦은 시간에도 급히 미러링 사이트를 구축해주신 이태우님께 정말 감사드립니다!