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를 소개해주신 정진호님과 늦은 시간에도 급히 미러링 사이트를 구축해주신 이태우님께 정말 감사드립니다!


택스트큐브에서도 Syntax Highlighter를 쓰자!

Tistory에서 Textcube로 이사를 오고나서 가장 먼저 한 게 Syntax Highlighter를 적용하는 것이었는데요... Tistory에서 하던 데로 하니 바로 되지는 않더군요ㅋ
몇 가지 꼼수를 써야 Textcube에서도 Syntax Highlighter를 사용할 수 있습니다.


먼저, 스킨편집으로 갑니다.
skin.html에 아래 태그를 추가해줍니다. 여기서 주의할 점은 <body>태그가 없으면 스킨 적용이 안되므로 <body> 태그는 중복해서 사용해주어야 합니다. (택큐에서 스킨을 적용할 때 "<body>"가 존재하는 지 확인합니다.)

오른쪽 위에 있는 버튼 중에서 가장 왼쪽의 버튼을 누르시고 Plain Text를 복사해서 쓰세요!


Syntax Highlighter를 다운받고 안에 있는 파일들을 업로드해서 사용하는 게 좋을텐데... 택큐에서는 js파일이 업로드가 안되는 관계로, 그냥 Syntax Highlighter 공식 사이트에서 js와 css파일을 가지고 오는 방법을 택하였습니다. 개인적으로 사용하고 있는 웹서버가 있으면 거기에 파일을 업로드하고 사용하시는 것도 좋은 방법일 거 같습니다.

UIzard와 관련해서 Opensource Release Feed와 인터뷰

주위에 영어 잘하는 사람이 많아서 행복합니다

 

 

Welccome Ryu and thank you for joining me for this quick chat. To get things started please give us some background on yourself.
 
Hello, My name is Ryu and I'm from Korea.
I had majored Electrical and Electronics Engineering in Sung Kyung Kwan university and graduated last summer.
Right after graduation, I entered the graduation school that summer and I've been taken time off for one year.
Currently, I am on the master course and a member of SKKU Automation Laboratory Mobile Team.
(Our team is currently working on the researches regarding Android and mobile UI)
My major is about mobile devices but I am also very interested in Web Development.
However, I do believe that the boundaries of various IT areas will be removed due to rapid evolving technologies and the Web will be the major platform thus I keep my interest in both fields.
 
 
There is a lot of interest regarding UIzard around the web and after yesterdays post on Ajaxian it seems the UIzard website was crashed. What exactly is UIzard and what can developers accomplish using this tool.
 
Yesterday, UIzard.org got so much interest from people around the world all of sudden.
So my cheap hosting stopped instantly.
I added traffic with my personal expenses but still it is not so satisfying.
I am really grateful to receive so many e-mails from people around the world suggesting the support of hosting.
However, I have not expected such, so I am kind of confused.
I don't know which one to choose among those suggestions or how to reply.
 
UIzard(User Interface Wizard) is the tool that helps the users to make UI easily. Basically, the user can make UI page based on YUI,
and develop an application by writing the function according to specific event(click or drag) for each UI object. (like the Visual Studio or XCode...)
The result is generated on the basis of HTML and JS.
Uizard has a goal to be general web-based development tool like google docs or spreadsheet, the web-based office tool.
However, it's just a beta-version at the experimenting level, so I hope to keep your interest and look forward its future.
 
 
UIzard was developed using YUI, any particular reason you chose this over say, Dojo?
 
There is no specific reason for using YUI in UIzard. The reason I used YUI was that the hosts of 2009 MASHUPKOREA that I have taken part were NHN, DAUM, YAHOO Korea and Microsoft Korea
and I had to use one of APIs provided by those companies and only YAHOO provided API related to UI. Also, the license was BSD.
But, I am planning to support UI components, provided by the library such as jQuery or Dojo. Furthermore, I would like to upgrade so that the users can consturct Toolbox in a way they want to.

 


The other exciting news is that UIzard is open source, is this the case? If so, where can developers get access to the code and under which license is it released?
 
Yes, UIzard is an open-source. Developers can download the source code from uizard.org.
However, it is closed for a moment and I'm planning to open after version-up.
As I did not take the major in the computer engineering, any special course regarding web-development and did developed all by myself, the source is not quite neat.
Because of mass in source code, I guess it will take some time to be settled as the open-source.

About the license, UIzard follows GPL v2.
Though UIzard is composed with several open souruce libraries, I thought GPL v2 is approriate to spread among more users and become better tool because
if I used license such as BSD, there could be too much versions.
 
This is a reason why I made UIzard as an open-source. Though it is 0.8 beta-version, I hope this tool to be a good, free developing tool regardless of developing language, platform when the tool is upgraded to version 5.0 or 6.0 in the future.
I am willing to open the application UI library under BSD license after a few years.
This would be the library, which may provide the form of current UIzard appearance(that would be just like the common computer application)
In my opinion,
first of all, there was a share in a way of OPEN SOURCE for the development communities.
After that, there was a share in a way of OPEN API for the individual developers
and now, I think, there will be a share in a way of OPEN SERVICE for the user.
May be, this OPEN SERVICE is actualizing in a way of Gadget/Widget.
Thus, with my support of the basic structure of UIzard in a form of library and the user will be able to construct the user-application using opened OPEN SERVICE.
(Please, do not mind my short English.. this sounds like iGoogle;; Difficult to express my ideas in English...)
 


With UIzard being open source there is sure to be a lot of community involvement in the future direction of the app but for the moment, ow do you see UIzard evolving?


Though the developers in Korea have showed a lot of interest in UIzard after 2009 MASHUPKOREA, the open-source is not settled in Korea so there is not much support.
Thus, I am really grateful to contact with open-source communities in overseas.
On the other hand, I am kind of worried of UIzard being noticed all of sudden.
As it's still at the experimental level, I hope the developers to be not disappointed after activating this incompleted version.
 
At this moment, UIzard is "ajax development tool".
But, I do believe that this can be a general developing tool if the technology prospers more and more and the concept of cloud computing becomes more realistic.
With help from excellent developers around the world, UIzard can be the development tool covering all C/C++/C#/JAVA/JSP/PHP.
If the hard-disk is removed from the computer, the smart-phone becomes useful as much as the computer and the network is involved in our lives more than ever,
the web envrionment will have a huge impact not only on the normal users, but also on the developers and UIzard will be a good tool for the developers to practice and make their ideas real in anywhere the internet is avaliable.
 
I have much more ideas to make web-environment more rich than the results I have actually implemented apart from UIzard.
However It is so hard to do those things all by my self because I've never carried out or even joined Open Source Project.
I know nothing about it and I don't know how to make it work.
 
I keep my eyes and ears open all the time.
I am only 24 years and still have so much things to learn.
I still need to improve my ability.
I've more ideas than I can acutally work out.
Thus, I need passion of developers younger or as young as me
and also need expert developers who can share their knowledge, know-how and technique.
I am grateful to everyone around the world who showed the interest to my work.
This is unforgettable and fruitful time of my life.
Thanks again for your interview request and suggestion of free hosting support.
 (I will get in touch about the usage of hosting after consultation with others as soon as I organize the community with the developers of Korea and around the world who are willing to participate in UIzard project)
I will do my best to make it up to your interest.

2009년 5월 11일 월요일

[UIzard 0.8.2 릴리즈!!] Color Picker 기능과 Object Copy&Paste 기능이 추가되었습니다!!

안녕하세요!!
UIzard가 오랜만에 버젼업을 했습니다!!! 다음과 같은 부분이 더 발전했습니다!!

바로 가서 실행해보기!!

- 몇 가지 자잘한 버그들이 수정되었습니다. (개발자만 알고 있을 만한... 버그들이지만, 일단 빠짐없이 모두 수정했습니다!!)
- Properties에서 색상과 관련된 속성 클릭 시 ColorPicker가 떠서 색상 선택이 편리해졌습니다.
- Object Copy & Paste 가 가능해졌습니다!!
- Object라는 메인메뉴가 추가되었습니다.


 요즘 다시 UIzard개발에 시간을 투자하고 있는데요, SVN도 구글 코드로 옮겼고, 약간의 정책적인 문제 때문에 공개를 보류하고 있습니다만 조만간 오픈할 거 같습니다.

 다음에는 메뉴얼과 튜토리얼 동영상을 포스팅해볼까 합니다. 그 후에는 다시 한 번 버젼업이 있을 예정이구요, 자잘한 버그와 미작동 기능의 완성을 주목표로 개발을 진행할 예정입니다. 기대해주세요~!



텍스트 큐브에서 이벤트를 하고 있습니다!!!

구글 우수 블로거 지원 프로그램

thinksquare.pe.kr이라는 도메인은 그대로 유지할 거구요~
블로그 시작한 지 얼마 안 된 저에게는 동기부여가 될 수 있는 좋은 이벤트인 거 같습니다!!
관심있으신 분들 모두 함께 선의의 경쟁을 펼쳐 보아요ㅋ!!

저는 새로운 주제로 블로그를 열지... 아니면 주체성 없는 지금의 블로그를 텍스트큐브로 이사할 지 고민중입니다만 이벤트에는 확실히 참가할 거 같습니다!! 물론 할 일이 태산 같아서... 수상은 힘들지도 모르겠습니다만...

뭐든 열심히 해보자는 게 제 평소 마음가짐이기 때문에!!! 이번 이벤트 때문에 하루에 5~6개씩 포스팅하는 열혈 블로거가 될지도 모르겠습니다ㅋㅋ

2009년 4월 29일 수요일

2009대한민국매쉬업경진대회 대상 수상작인 "지구를 여행하는 히치하이커를 위한 안내서"의 웹버젼 출시!


2009대한민국매쉬업경진대회 때 대상을 수상하셨던 기현님과 한나님이 이번에는 "지구를 여행하는 히치하이커를 위한 안내서"의 웹버젼을 내놓으셨습니다! 당시 대회때는 Adobe Air 버젼으로 내놓으셨는데 대회 이 후 이 멋진 서비스를 웹으로 이용하시고자하던 많은 분들에게는 정말 희소식일 거 같습니다!


이 멋진 프로그램을 이용하는 데는 단 1원도 안듭니다!! 특히 이 서비스의 백미는 여행안내서 만들기인데요! PDF로 아주 이쁘게! 멋지게! 여행안내서를 쉽게 만들어줍니다~ 사용법은...ㅋㅋ 인터페이스가 편리해서 아마 누구나 쉽게 만드실 수 있을 듯... 제가 다 설명하기는 그렇구요... 아마 조만간 개발자분이 메뉴얼도 공개하지 않을까요?!


써보시면 아시겠지만, 금방 대형 포탈사이트들이 군침을 흘릴만한 멋진 서비스입니다만, 아직은 무료입니다!! 유료화되도 손색없는 서비스기에 저는 여기서 가고 싶은 나라의 여행 안내서를 미리미리 만들어 두려구요!
여러분들도 많이 이용해보세요!! 이런 좋은 서비스는 이용해야 제맛이죠!

2009년 4월 28일 화요일

미투데이를 시작했습니다!

요즘 블로그 방문자가 많아져서 기분은 좋은데, 별 포스팅이 없어서 다시 줄어들까봐 불안감이 생기고 이 불안감이 의무감으로 바뀌어 저도 모르게 근황을 적으려고 티스토리에 로그인했습니다.. ㄷㄷㄷ

성공하는 사람들은 시간을 어떻게 쪼개서 쓸까요?
이것도 재미있을 거 같아서 한다고 그러고, 저것도 재미있을 거 같아서 한다고 그랬더니, 살짝 정신이 없으려고 하는 요즘입니다. 뭐 개발하는 거야 그냥 만들면 된다고 쳐도, 아이디어를 짜내서 그것을 글이나 그림으로 표현하는 일은 무척이나 어려운 거 같습니다. 특히 시간 관리가 힘들어질 수 밖에 없는 것이, 개발이야 정해진 목적과 주어진 스펙이 있으니 거기에 맞게 개발하면 되고 경험이 쌓일 수록 시간을 어느 정도 투자하면 충분히 완성할 수 있을 지 감이 오는데, 아이디어를 짜내는 건... 말그대로 뇌를 짜내는 고통과, 얼마나 걸릴 지 가늠조차 할 수 없는 시간 투자가 필요해서 무척 힘듭니다. 뭔가 뚝딱뚝딱 해버리고 싶은데, 개발하고, 아이디어 제안하고, 회의도 해야하고, 새벽에 맨유 경기도 봐야하고, 누가 농구나 축구하자 그러면 무조건 해야 직성이 풀리고... 다음 학기부터 대학원 연구실에 들어가면 규칙적인 생활에 더 효율적인 시간 관리가 절실해질 텐데 지금부터 연습하도록 해야겠습니다ㄷㄷㄷ

ㅋㅋ 그나저나, 포스팅의 주내용이 이게 아닌데 말이죠...
저도 드디어 미투데이를 시작했습니다! 제가 다니는 학교도 나름 수도권이고, 제가 속한 동아리도 IT와 관련이 있는 데도... 제 주위엔 미투데이를 하는 사람이 여태까지 정말!! 아무도!! 없었습니다ㅜ 그래서 별관심없이 살았는데... 막상 현실을 알고 보니 많은 분들이 미투데이를 통해 의사소통을 하고 있으시더라구요... 그 사실을 알고도 귀찮아서 미루고 미루다가 결국 어제부터  시작해보았습니다!!

미투데이를 재미있게 하려면 친구가 많이 있어야할 듯 합니다... 싸이클럽처럼요ㅋㅋ
주위사람들을 슬슬 꼬셔보아야겠네요!! ㅋㅋ
더불어서! 혹시 저와 친구를 맺고 싶으신 분은 친추 해주시면 감사하겠습니다!~
 
주소는 http://me2day.net/xenoz0718/, 이메일은 xenoz0718@gmail.com 이구요! 아마 UIzard 개발 근황이나 모바일이나 웹 개발 관련, 그리고 유럽 축구와 영화 이야기같은 걸 주로 쓸 듯하네요~ 관심사 겹치시는 분들 함께해요~ 특히 맨유팬분들 환영입니다ㅋ (저 6년째 맨유팬! 지성이형님과는 상관없이!)

사실 금새 질리고 귀찮아져서 그만 둘 거 같기도 하지만... 그래도 남들 다 하는 건데 열심히 해보아야겠죠?ㅋㅋ
다음엔 좀 더 의미있는, 개발 관련이나 UIzard 관련 포스팅으로 블로그에 돌아와야겠습니다.

2009년 4월 23일 목요일

다음 DNA에 UIzard가 소개되었습니다.

웬일로 블로그 방문자가 많아졌나 했더니... 이것때문이었군요ㅋ
이렇게 알려주신 다음 관계자분들께 먼저 감사하다는 말씀드리고 싶습니다! ^^

사실 오픈하고 아직 별다른 업데이트가 없어서, 실제 오셔서 실행시켜보신 분들은 조금 실망하실 지도 모르겠습니다. 하지만 열정이 식은 건 결코 아니구요, 올 가을, 2학기가 시작하기 전까지는 "실제 업무에 사용 가능한 수준의 개발툴"을 목표로 차근차근 준비하고 있습니다. UIzard를 하나의 개발툴로서 관심을 가지고 계신 분들은 조금만 더 기다려주시면 감사드리겠습니다. 그리고 UIzard 오픈 소스 프로젝트에 참여하시고 싶은 분들은 제 메일(xenoz0718@gmail.com)로 별도로 연락주시면 좋겠습니다. 특히 오픈 소스 프로젝트 경험이 풍부하신 분이 계시면 많은 도움을 좀 구하고 싶습니다. 저는 어플리케이션을 개발해서 이렇게 내놓는 것도 처음인데다 오픈 소스로 진행하는 것도 처음이라 마음은 앞서는데 무엇을 먼저 시작해야할 지 헤매는 중이거든요...

데모 버젼 재미있게 이용해보시면 좋겠습니다.
아직까지 데모 버젼과 큰 차이를 두고 있는 것은 아닙니다만 회원가입을 하시면 제한 없이 사용할 수 있습니다.

겨우 한 두명이 쓰는 툴이 되더라도 끝까지 만들어나가 보겠습니다! 화이팅!

2009년 4월 22일 수요일

[Smart Phone] 투명 PNG 파일 출력하기

 윈도우모바일의 기본 UI는 솔직히 말해서 구려도 너무 구립니다. 아이폰이나 안드로이드가 기본적으로 화려한 UI를 제공하는 것에 비하면 많이 부족한 거 같습니다. 윈도우모바일7이 나오면 많이 개선될 거 같긴 합니다만 당장은 화려한 UI를 표현하기 위해서 PNG 출력 방법이 절실한 거 같습니다. 지금 만들고 있는 프로그램도 모두 PNG이미지로 UI를 구성하고 있는데요, 이렇게 하다 보니 코드로만 UI를 짜고 비쥬얼 스튜디오에서 Design창을 열 일이 없네요... 얼른 윈도우모바일7이 나와서 멋진 UI를 편하게 이용할 수 있었으면 좋겠습니다.

아래는 전체 소스입니다.

Form1.cs


실제 PNG 출력을 위해서는 아래의 파일이 필요합니다. Windows Mobile 5.0 SDK에 있는 imaging.h라는 헤더파일로부터 필요한 각종 함수와 그에 필요한 Flag를 선언하는 부분입니다. 자세한 설명은 생략하겠습니다. 그냥 붙여 쓰시면 될 거 같습니다.

IImagingFactory.cs


아래는 옴니아에서 실제 실행해본 결과화면입니다.

2009년 4월 20일 월요일

[Smart Phone] WAV 파일 재생하기

아이폰과 안드로이드에 무게를 두고 공부 겸 개발을 하려고 마음 먹고 있습니다만, 외부 요청에 의해 간단한 윈도우 모바일용 어플리케이션을 개발하고 있는 중입니다. 따지고 보면 이번이 2번째 어플리케이션 개발인데요... 저도 공부하고 배우면서 하는 입장이라 개발을 하면서 사용한 코드를 이렇게 간단한 팁형식으로 틈틈히 포스팅하고자 합니다. 국내 검색엔진에서 윈도우 모바일과 관련해서 검색을 하면 관련 자료가 찾기 힘든 편이고, 간결하면서도 필요한 코드만 있는 내용을 찾기가 힘든데요... 제가 포스팅하는 내용들이 저와 같은 많은 초보분들에게 도움이 되었으면 합니다. 개인적으로 코딩을 할 때 레고를 조립한다는 생각을 갖고 임하는데요... 그래서 어떤 강좌 형식보다는 이렇게 부분부분적으로 완전히 작동하는 코드를 공개하는 것이 편한 거 같습니다.

어쨌든 이번에 공개하는 코드는 WAV파일을 재생하는 간단한 코드입니다. 이번에도 함수를 기존 API에서 Pinvoke시켜와서 사용하는데요... C#은 사용하기는 엄청 편리하지만, 문법이나 구조적인...?! 부분에 있어서 그 역할을 담당하고, 나머지 기능적인역할을 하는 많은 부분은 항상 API에 의존해야하는 거 같습니다. 그래서 검색할때도 관련 API를 먼저 찾고 그것을 C#으로 Pinvoke시켜서 사용해보는 것이 가장 빠른 방법인 거 같습니다. C#에서 다이렉트하게 어떤 기능을 구현하는 방법은 아예 없다고 보면 될 거 같거든요.

코드는 아래와 같습니다. 무척 간단합니다.



다음으로는 그래픽 출력과 관련해서 연속적으로 포스팅하려고 합니다. 더블 버퍼링과, PNG춮력, AlphaBlend() 함수 사용이라던지... 윈도우 모바일의 구질구질한 UI를 벗어날 수 있게요ㅋ

2009년 4월 19일 일요일

구글에서 준비중인 모바일 웹APP 개발툴...

구글에서 모바일 웹APP를 개발할 수 있는 툴을 내놓는다고 합니다. 구글 안드로이드와 애플 아이폰 모두 WebKit을 기반으로 한 강력한 웹브라우저를 가지고 있기 때문에 두 폰 모두 서로 다른 OS지만 웹이란 플랫폼에 있어서는 공집합을 가지고 있는데요... 사실 이렇게 모든 게 웹기반, 웹중심으로 바뀌어버리는 건 어찌보면 당연한 일일지도 모르겠습니다. 구글 입장에서는 애플의 앱스토어의 입지를 약화시킬 수 있는 하나의 좋은 방법이기도 하겠구요...

어쨌건 블로깅을 귀찮아하는 제가 이렇게 동영상까지 긁어온 것은 저에겐 다소 힘빠지는 소식이기 때문입니다. UIzard라는 웹개발툴을 혼자서 개발하다가 힘에 부쳐서 결국엔 미완성의 소스를 공개하고 야심차게 나아가보려고 한 지 일주일도 채 안되서 좋아하고 존경하는 기업이 더 멋진 걸 내놓을 태세네요...

공개된 UIzard를 실제 실행해보신 분들은 몇 분 안되겠지만, 새 프로젝트를 시작할 때 프로젝트 탬플릿을 선택하는 창을 보시면 왼쪽에 모바일 웹어플리케이션이라는 아직 활성화되지 않은 탭이 보이실 겁니다. 사실 UIzard는 범용적인 웹어플리케이션 뿐만 아니라, 위젯/가젯, 그리고 더 나아가서는 모바일 환경에서도 최적화되어 작동할 수 있는 웹APP를 개발할 수 있는 툴이 되고자 했거든요... 그래도 만약에 구글에서 이것을 개발툴이 아닌 하나의 API나 프레임웍으로 내놓는다면 UIzard도 숨쉴 틈은 있을 거 같네요.

UIzard 오픈 소스 프로젝트를 어떻게 활성화시키고 또 어떻게 효율적으로 진행해나가야할 지 아직 좀 막막합니다. 그래서 의욕도 없어지고 날씨도 너무 좋다보니 잠만 오고 하루 하루를 낭비하고 있었는데, 실제 사용할 수 있는 툴이 되어야할 거 같습니다. 지금은 뭔가 실험적인 수준에 머물러 있고, 그냥 꽤 괜찮은 Ajax예제 수준인 거 같습니다. 사실 이렇게 사람들에게 어플리케이션을 개발해서 내놓는 것도 처음이고, 아무도 없는 방안에서 혼자 소리치는 간지입니다만, 그래도 한 번 시작한 거 끝은 봐야겠죠?

어쨌든 아래는 ZDnet에서 퍼온 동영상입니다. 구글은 역시 짱먹네요.

2009년 4월 14일 화요일

UIzard.org 오픈!


지난 2009 대한민국 매쉬업 경진대회에서 수상한 뒤로 실제 소스 공개를 위해 준비를 해왔습니다.
1.0 버젼으로 당당히 내놓고 싶었습니다만 혼자 개발하다보니 힘이 많이 부칩니다.
많은 분들이 관심가지셔서 부담스러웠는데... 이제 관심도 많이 사라졌고
제 개인적인 일들로 인해 앞으로는 (지금까지처럼은) 많이 신경쓰지 못할 거 같아 조용히 소스공개를 할까 합니다.

현재 버젼은 0.8이며 개발중인 상태의 기능도 있고 조금 불안정한 상태이기도 합니다.
주석도 거의 없고 전문 개발자분들이나 컴퓨터공학 전공하신 분들이 보면 쓰레기 같은 코드일지도 모르겠습니다만!
부족한 부분 많이 도와주셨으면 좋겠네요!!
아직도 추가하고 싶은 기능이 무척 많고... 감당할 수 없는 실력이면서도 계속 아이디어는 샘솟고 있습니다ㅜ
올해 여름 안으로 1.0으로 릴리즈하고 겨울 내지 내년초에 2.0으로 릴리즈해볼 생각입니다.
이번 소스 공개를 계기로 장기적인 플랜을 세워 개발을 해야겠습니다.
뭔가 그저 앞만 보고 달려와버렸네요...

제 블로그를 통해 소식을 전하는 것을 제외하고는 홍보같은 건 전혀 하지 않을 생각입니다.
조용히 입소문타고 꼭 필요하신 분들?!이 재미있게 개발에 응용하셨으면 하는 바램입니다.
그리고 피드백은 언제나 환영입니다!!!


uizard.org 바로가기
http://uizard.org

2009년 4월 7일 화요일

UIzard 개발 진행 상황...


 UIzard 소스 공개를 위해 혼자 개발이 한창입니다... 그럭저럭 쓸만한 수준으로는 만들어서 소스를 공개하자! 라는 생각에... 매쉬업 경진대회는 끝났지만 계속 손을 대고 있는데요... 당시 대회에 제출했던 것에 비해 200% 더 좋아졌다고 말할 수 있을 거 같습니다.

 범용적인 웹기반 웹개발툴을 표방하며 소스 공개를 하겠다고 공언을 했었는데, 추가하고자 하는 기능을 하나 완성하면 또 새로운 아이디어가 2개, 3개 떠올라서... 이건 뭐... 끝이 보이질 않는 군요... 그래도 중요한 기능만 추려서 우선적으로 개발하고 최대한 빨리 공개하기 위해 노력하고 있습니다.

 요새는 뭐... UIzard 개발하고 학교 사람들 만나고 가끔 운동하고... 이 3가지가 일상의 전부가 되버렸는데, 휴학하고 이 무슨 뻘짓인지 모르겠습니다. 일요일에는 축구하고 부모님이 올라오셔서 점심먹고, 오후 5시부터 자다가 저녁 9시에 일어나버렸고, 월요일 아침에 잠들어서 또 저녁 7시에 일어나서 하루를 시작했네요;; 일어나자마자 선배들이 농구하자고 해서 부어서 떠지지도 않는 눈으로 농구를 한 뒤 샤워하고 빨래하고... 학교로 와서 현재 새벽 5시 44분까지 생존해있습니다... 이건 완전 밤낮이 뒤바껴서 큰일입니다.

 으... 잡설이 길었네요ㅋㅋ... UIzard에 추가적으로 개발된 기능들은 다음과 같습니다.

- Object Explorer라는 레이아웃이 추가되어서 캔버스에 삽입한 모든 오브젝트 요소를 한꺼번에 볼 수 있습니다.
- 오브젝트 선택시 나타나는 박스가 클릭할 때만 나타나게 되었습니다.
- Layout에 많은 변화가 있었습니다.
- Save & Load가 완성되었습니다.
- Html 탭이 추가되었습니다.
- YUI 중 Paginator, Treeview, Chart가 추가되었습니다.
- Panel, Tabview, Treeview, Menu 등이 Html을 기반으로 생성되도록 수정되었습니다.
- Context Menu가 강화되었습니다. (편집, 삭제, 하위 요소 추가 등)

써놓고 보니 별 거 없나요?! ㅜㅜ 어쨌든 스크린샷도 함께 첨부합니다.




2009년 4월 1일 수요일

UIzard 드디어 소스 공개합니다!!!


죄송합니다. 만우절이라 구라 한 번 쳐봅니다ㅜ

사실 이틀전에 블로그방문자수 100명을 처음으로 넘어본데다가... 꾸준히 방문하시는 분은 아예 없으실 거 같고, UIzard의 소스 공개를 기다리시는 분들도 얼마되지 않을 거 같습니다만... 4월 1일 오픈이 목표였고, 지키지 못했기에 이렇게 스크린샷이라도 몇장 찍어 현재까지 개발된 부분을 설명이나 해볼까 합니다. 목표의식상실과 개강포쓰로 인해 이유없이 정신없는(!?) 생활을 하다보니 겨울방학 때 작업하던 속도의 반에 반도 안나오는 거 같네요ㅜ

메인화면입니다. ToolBox부분이 좀 더 깔끔해졌습니다. 자세히 보시면 SWF, CheckboxSet등의 Basic UI Component가 추가되었습니다. 그리고 Code옆에 Html이란 탭이 생겼구요 여기에서는 Div Layer, Table안의 내용을 편집한다거나 Menubar, Treeview의 내용을 편집할 수 있습니다.

새로 추가된 Treeview를 비롯해서 CheckboxSet, RadiobuttonSet의 모습입니다.

CodeMirror라는 Syntax Highlighting이 되는 자바스크립트 기반 에디터로 Code에디터를 바꾸었구요, 위의 스크린샷에서 보시면 실제 하이라이팅이 잘되고 있는 걸 확인할 수 있습니다. 왼쪽에 Toolbox에 보시면 YUI Components에 Chart, Paginator, Drag&Drop, Resize등이 추가되어 있는 모습입니다. (아직 제대로 추가해볼수는 없다는... ㅜㅜ)

역시 CodeMirror가 적용된 Html탭의 모습인데요, 현재 내용은 Menubar의 메뉴 내용의 모습입니다. YUI Library에서 위의 내용을 파싱해서 메뉴에 적용시켜줍니다.

써놓고 보니 정말 별 거 없네요... 별 거 없는 거 구현하는 데도 기간이 오래 걸렸다는... 제 실력도 실력이겠지만, 너무 놀고 정신 놓고 산 거 같습니다. 오픈 소스로 공개한다고 해놓고 질질 끌게 되니 혹시나 기다리시는 몇 분들께는 정말 죄송할 따름이네요... 얼른 완성하고 주석 열심히 달아서 공개를 시작해야겠습니다 ^^;

2009년 3월 30일 월요일

다음 위젯뱅크에 제가 만든 위젯 3개가 모두 오픈했습니다.


작년 12월에 참가했었던 "다음-구글 위젯=가젯 개발 경진대회"에서 수상한 작품을 비롯해서 제출한 총 4개의 위젯 중 3개의 위젯이 다음 위젯뱅크에서 정식 서비스를 시작했습니다.

소통이라는 위젯은 한두달 전에 이미 서비스가 시작되고 있었습니다만, 프리미어리그NOW와 Suit Up!이라는 위젯은 인터넷 익스플로러 6.0에서 문제가 있었기 때문에 서비스가 시작되지 못하고 있었습니다. 원 개발자로서 신속히 수정하여 다음 위젯뱅크 측에 전달해드렸어야 하는데... 개인적으로 이것저것 하느라 신경쓰지 못해서 정말 죄송할 따름이고, 이렇게 다음 위젯뱅크 개발자 분들이 손수 코드를 수정하셔서 서비스를 시작해주신 것에 대해 이 포스트를 통해서라도 감사드리고 싶습니다. (꾸벅)

현재 첫번째 페이지에 프리미어리그NOW와 Suit Up! 이라는 위젯이 등록되어 있구요,

2번째 페이지 아래에 소통이라는 위젯이 등록되어 있습니다.

이것으로 본선에 진출했던 20개의 작품들 중에 제가 만든 3개의 위젯은 모두 서비스가 시작되었네요ㅋ 이 3개의 위젯에 대한 포스트는 아래 링크를 참고하시면 될 거 같구요... 재미있고 유익하게 사용하셨으면 좋겠습니다!!

프리미어리그NOW
http://thinksquare.tistory.com/17

Suit Up!과 소통
http://thinksquare.tistory.com/19

개인적으로 더 만들어보고 싶은 재미있는 위젯들이 더 있는데, 여유가 좀 생긴다면 몇 개 더 만들어서 공개를 해볼까 합니다.

2009년 3월 28일 토요일

Poster Portfolio

Web Design Portfolio


<2008년~2009년>
성균관대학교 정보통신공학부 홈페이지 (2009년 상반기 리뉴얼 예정)

대학중심포탈사이트 온유니브 - 성균관대학교 (배타 서비스)

성균관대학교 경력개발센터 양현관

SKKU Summer School


<2007년>

성균관대학교 정보통신공학부 (레이아웃만)

ICC Online Fellowship

재성균관 중동고 동문회

성균관대학교 성평등상담실

성균관대학교 출판부

삼성전기 첨단기판 연구센터


<2005년 ~ 2006년>

SKIMA INTRANET PROJECT MANAGEMENT SYSTEM

성균관대학교 공과대학 영문홈페이지

성균관대학교 교수평의회

성균관대학교 예술학부

캠퍼스 명소 탐방 - KDC2005 대상

성균관대학교 봉룡학사

2009년 3월 27일 금요일

[T옴니아 윈도우 모바일 소프트웨어 경진대회] 시상식 후기!



어제 T옴니아 윈도우 모바일 소프트웨어 경진대회 시상식에 다녀왔습니다. SKT-MS Mobile Partner Summit이라는 행사 중에 시상식이 있었는데요, 저는 얼떨결에 수상해서 좀 부담스러운 자리였습니다. ㅜㅜ

아래는 수상작들입니다.

<어플리케이션 부문>
대상
SayCast
금상
Drum&Drummer
omniano 'The band
은상
자산도우미(Asset Assister)
iReferee
BLIM (Bus Life In Mobile)

<테마부문>
대상
수상자 없음
금상
ZP Theme Ver1.0
Cube_Tomnia
은상
내손에 조약돌
T-OMNIA MAN
Human Network

저는 이 중 어플리케이션 부문 은상 iReferee를 만들어서 수상하게 되었는데요... 다른 훌륭한 작품이 많았었는데다, 저는 대회에 참가했다는 사실조차 잊고 있던 중에 이렇게 수상하게 되서 감개무량할 뿐이고! 다른 고생하신 개발자 분들께는 죄송할 따름입니다ㅜ
http://thinksquare.tistory.com/31 (iReferee관련 포스트)


사실 저는 이번 경진대회 중 참가를 유도하기 위해 있었던 마우스 이벤트 때문에 7시간동안 만들어 제출한 것이 얼떨결에 수상하게 되었는데요, 이 어플리케이션 외에 실제로 대회 참가를 위해 준비하던 어플리케이션은 시간 부족과 실력 부족으로 완성하지 못했습니다. 사실 그럭저럭 쓸만한 수준까지는 개발이 됐습니다만 이번 대회가 끝이 아니라 계속적으로 대회가 있다고 들었기 때문에 그냥 조용히 다음 대회를 노리기로 했었죠...

그리고 결정적으로 금상을 수상하신 "omniano 'The band"라는 작품이 업로드된 걸 보고 결정적으로 포기한 것이기도 했는데요, SayCast에 밀려 금상에 그친 것이 좀 안타깝기도 했습니다. 개인적으로 omniano의 경우 아이디어 자체보다는 UX가 정말 놀라웠고, 윈도 모바일 프로그래밍을 처음해보는 저로써는 정말 수준높은 작품이라고 생각했었기 때문에 다시 한 번 박수 쳐드리고 싶습니다.

이번 대회는 첫대회니 만큼 수상작과 발표시기 대회 운영등에 있어 많은 문제점이 있기도 했었는데요... 제 자신도 제가 만든 어플리케이션이 수상한 것이 의외며 논란의 여지가 있을 수도 있다고는 생각합니다만, 애초부터 점수 배점이 기술적인 면은 없더라구요... 저같은 경우 창의성에서 점수가 높지 않았나 합니다... 그리고 실제 옴니아에서 얼마나 잘 작동하느냐를 많이 보신 거 같구요... 경진대회의 성격인 만큼 기술의 수준보다는 아이디어 위주로 보지 않았나 합니다. 그리고 많은 훌륭한 작품들에 대해서는 SKT APP스토어를 통해 사업의 기회를 많이 열어줄 예정이라고 하시니 기대하셔도 좋을 듯 합니다. 저도 iReferee를 타이틀도 바꾸고 디자인과 기능을 한 차원 더 업그레이드를 해서 부끄럽지 않게 내놓아야겠습니다 ^^... 마지막으로 대회운영에 대한 이야기를 좀 더 하자면 어느 누구의 잘못도 아닌 오해로 비롯된 논란인 거 같구요,
1. 첫 대회였다는 점.
2. 회사와 일반부가 섞여 수준의 평준화가 힘들었다는 점.
(앞으로는 회사단위 참가와 일반부 참가를 나누던지 해야 더 많은 참여를 유도하고 대회의 수준이 올라갈 것 같다는 개인적인 생각이 있습니다.)
3. 참가자분들 중 화끈하신(!?)분들이 계셨다는 점.
이런 점 때문에 안타깝게도 대회 마무리가 약간 좋지 않았다고 생각합니다. 운영하시는 분들은 정말 열심히 하시고 수고하신 거 같은데 안타깝습니다. (제가 수상을 하게되서 이런 마음이 드는 걸까요?!)

어쨌든, 이제 제가 지난 겨울방학동안 참가한 공모전들은 모두 마무리가 되었는데요... 개인적으로는 성과가 많았던 겨울방학이었던 거 같습니다. 제가 성균관대학교에 재학중인데 한가지 비난을 하자면 저희 학교 학생들이 무척 의욕이 없거든요... 오로지 안정된 직장하나만을 바라보고 이도저도 아닌 삶을 사는 사람들이 많아서 항상 답답했었고 저역시도 그런 분위기에 휩싸여 학교 밖 세상에 나서는 것이 쉽지 않았었는데 휴학하고 여러 활동과 제가 하고 싶은 공부를 하면서, 그리고 공모전에서 수상을 하면서 많은 분들을 만나뵈면서 현 개발자분들의 수준과 트랜드를 알게되어서 정말 뜻깊었던 거 같습니다.

이제부터는 공모전은 자제하고, UIzard와 iPhone, 윈도 모바일에 집중해보려고 합니다. 그리고 많은 분들을 만나뵈면서 느낀 거지만 정말 자기 PR의 시대인 거 같더라구요... 블로그에 현재까지의 포트폴리오를 정리하는 시간도 가져볼까 합니다!

2009년 3월 22일 일요일

UIzard 소스 공개를 위해 준비 중입니다.


제가 만들어 놓고도 소스가 워낙 엉망이라 익숙해지는데 2~3일은 걸린 거 같습니다. 오늘부터 속도가 좀 나기 시작했는데요... 다음과 같은 몇 가지 기능이 추가되었습니다.

- 프로젝트의 저장/불러오기 (Web으로부터)
- Code Editor를 Code Mirror라는 Syntax Highlighting이 되는 Editor로 교체했습니다.
- 각종 아이콘의 교체...
- Code의 Undo, Redo, Select All, Indent All, Find, Replace 등

4월 1일에 오픈하는 게 목표인데요...
매쉬업 대회 직후 폭주한 관심때문에 많이 부담스러웠었는데 오히려 관심이 없어져서 지금은 부담감도 없고 편안하고 조용히 오픈할 수 있을 것 같습니다.
 
공개하기 전까지 추가할 기능은 다음과 같습니다.

- 프로젝트 내보내기 기능
- CSS 편집 기능
- Prototype, jQuery 등의 Javascript 라이브러리 지원
- Menu 편집 기능
- Treeview 편집 기능
- 각종 단축키 활성화
- Local XML Setting

이 외에도 욕심부리고 싶은 기능들이 많은데요... 그 기능들을 다 구현하려면ㅜㅜ... 갈 길이 많이 멀었다는 생각이 드네요... 앞으로 안정적인 전문 개발 도구가 되기 위해서 좀 더 많이 배우고 좀 더 열정적으로 코딩해야겠습니다ㅋㅋ

2009년 3월 20일 금요일

[iPhone] UIView, CGPoint, CGSize, CGRect

UIview
- 아이폰 화면에 보여지는 대부분은 View
- View는 색, 그림, 버튼들을 가질 수 있다
- 드래그, 크기 조정, 겹침 등이 가능
- UIView는 GUI를 구성하는 단위 블록
- UIWindow는 특별한 UIView


CGPoint
- 포인트는 x와 y 좌표로 정의된 위치를 말한다.
 

CGSize
- 폭과 높이를 가지는 구조체

 
CGRect
- 모든 View는 경계를 정의하는 데 프레임을 사용한다.
- 프레임은 뷰의 위치, 폭, 높이와 같은 외형을 지정한다.
- 코어 그래픽 구조를 사용하여 프레임 직사각형을 정의한다.
- 프레임은 보통 시작점(CGPoint)과 크기(CGSize)로 구성된다.



Reference : The iPhone Developer's Cookbook - Erica Sadun

2009년 3월 18일 수요일

[PHP] PHP로 파일 압축/해제하기 - PclZip Library

PHP만으로도 zip/tar 등의 압축 방식으로 파일이나 디렉토리를 압축하거나 해제할 수 있습니다. 먼저 PclZip Library가 필요한데요, 현재 공식 사이트에는 접속이 안되어서 여기에 다운로드 링크를 걸어두겠습니다.



파일이나 디렉토리의 압축


압축 파일의 해제




2009년 3월 13일 금요일

오픈 소스 라이센스 GPL, LGPL, BSD


UIzard의 소스 공개를 위해 라이센스에 대해 알아보는 중입니다. 전혀 모르던 부분인데ㅋ 생각보다 복잡하지는 않네요.

주요 오픈 소스 라이센스의 종류는 다음과 같습니다.

1. GPL : GNU General Public License
2. LGPL : Lesser GPL
3. BSD : Berkeley Software Distribution
4. Apache
5. MPL
6. QPL


우선 제 개인적으로는 GPL, LGPL, BSD, Apache 이외의 라이센스는 사실상 처음 접한 라이센스들이고 대충 훓어보니 GPL과 LGPL, BSD가 비교적 더 중요한 거 같아서 이 세가지 라이센스에 대해 중점적으로 알아보았습니다.


1. GPL : GNU General Public License

GPL 라이센스에 관한 전문은 다음 링크를 통해 읽어보실 수 있습니다.
http://korea.gnu.org/people/chsong/copyleft/gpl.ko.html

GPL 라이센스에 대해 요약해보면,
- 자유 소프트웨어라고 할 때 자유(Free)의 의미는 무료 사용이 아닌 자유로운 사용이다.
- GPL로 프로그램을 배포할 경우 유료/무료 판매에 관계없이 자신이 해당 프로그램에 대해 가질 수 있었던 모든 권리를, 프로그램을 받게 될 사람에게 그대로 양도해야 한다.
- 무보증 : 자유 소프트웨어는 반복적인 재배포 과정을 통해 소프트웨어 자체에 대해 수정과 변형이 일어날 수도 잇으며, 이는 최초의 저작자가 만든 소프트웨어의 문제가 아닐 수도 있다.
- GPL을 따르는 소프트웨어 소스 코드의 일부를 사용해 만든 소프트웨어는 GPL을 따라야 한다.
- GPL을 따르는 소프트웨어 소스 코드를 개인적으로 사용할 수 없다. 반드시 소프트웨어를 개발한 원작자나 공동체에 환원해야한다.

소스코드 배포 시
- 저작권 표시
- No Warranty
- GPL로 배포

실행파일 배포 시
- 저작권 표시
- No Warranty
- GPL로 배포
- 소스코드 제공

수정코드 배포 시
- 저작권 표시
- No Warranty
- GPL로 배포
- 소스코드 제공
- 수정 사실 및 일자

2. LGPL : Lesser GPL

LGPL 라이센스에 관한 전문은 다음 링크를 통해 읽어보실 수 있습니다.
http://korea.gnu.org/people/chsong/copyleft/lgpl.ko.html

- LGPL은 GPL의 강한 Copyleft 조건과 BSD를 절충하여 만들어졌다.
- LGPL은 Copyleft에 대한 규제를 프로그램 자체에 두나 이 프로그램을 사용한 다른 프로그램에 대해서는 Copyleft를 두지 않는다.
- 따라서 LGPL은 소프트웨어 라이브러리에 주로 쓰이며, 간혹 독립적인 프로그램(모질라, 오픈오피스)에도 쓰인다.
- GPL의 "소프트웨어 소스 코드의 일부를 사용해 만든 소프트웨어는 GPL을 따라야 한다."는 조항을 완화한 라이센스 모델.
- LGPL 대상 라이브러리와 링크만 해서 사용한 경우 실행 프로그램에 대한 공개 의무가 없다.

소스코드 배포 시
- 저작권 표시
- No Warranty
- LGPL로 배포

실행파일 배포 시
- 저작권 표시
- No Warranty
- LGPL로 배포
- 소스코드 제공

수정코드 배포 시
- 저작권 표시
- No Warranty
- LGPL로 배포
- 소스코드 제공
- 수정 사실 및 일자

3. BSD : Berkeley Software Distribution

- 프로그램의 자유로운 사용, 복제, 배포, 수정을 허용한다.
- 수정한 프로그램이더라도 소스 코드를 공개할 필요가 없기 때문에 상용 소프트웨어에도 무제한으로 사용가능하다.
- Yahoo User Interface Library의 경우 BSD 라이센스를 따르고 있다.



라이센스에 대해 간단히 알아보면서 UIzard의 경우 GPL 라이센스를 따르는 것이 좋겠다고 결정했습니다. 다음주 월요일에 소스코드를 공개하는 것을 목표로 준비를 시작해야겠습니다.

2009년 3월 12일 목요일

[Smart Phone] T옴니아의 모션(가속도) 센서 사용하기

제가 T옴니아가 아닌 다른 스마트폰에서는 테스트 해보지는 못했습니다만 아마 다른 모션, 가속도 센서를 장착한 윈도CE나 모바일 기반 장치들도 DeviceIoControl이라는 함수를 이용해서 똑같이 센서값을 읽어올 거 같습니다. (혹시 아시는 분 계시면 코멘트 좀...)

아래 소스는 사실 T옴니아 경진대회에서 삼성전자가 제공한 C++소스를 이용한 것이며, 이전의 진동이나 터치 인식과 같이 C#에서 지원하는 메쏘드를 사용하기 보다는 API를 끌어와서 사용하고 있습니다.

아래는 전체 코드 입니다.

[Smart Phone] 마우스 포인터, 터치 좌표 인식하기

윈도 모바일에서 마우스 포인터 위치나 터치 좌표를 인식하는 코드입니다.
T옴니아에서 태스트해보니 옵티컬 마우스를 움직여도 좌표를 인식합니다. 그리고 두 군데를 터치했을 때는 두 지점 사이의 중점 좌표가 찍히는데, 이 부분을 이용한다면 멀티 터치도 구현할 수 있을 거 같습니다.

아래는 실제 코드입니다.
 
값을 사용할 때는 아래와 같이 하면 됩니다.

2009년 3월 11일 수요일

[Smart Phone] C#에서 모바일 장치에 진동 발생 시키기

공짜로 옴니아가 생기면서 한달전정도부터 윈도 모바일 어플리케이션 개발에 관심이 생겼습니다. T옴니아 개발 경진대회가 있었지만 X뉴비로써는 아직 벽이 높다는 걸 깨닫고... 다음 대회를 한 번 노려보기로 했구요ㅜ 한 달 동안 알게 된 것들을 공유하기로 했습니다. 윈도우 모바일 관련 자료는 국내 사이트에서는 찾기가 힘들더라구요... 아는 건 몇 개 없지만 공유의 정신! 이 중요한 거 아니겠습니까- ㅋㅋ

T옴니아를 기준으로 하는 코드지만 다른 모바일 장치에도 충분히 사용가능한 코드입니다.
LED를 컨트롤하는 함수를 사용하는 것을 봐서 보통 모바일 장치에서 진동 모터는 LED출력 포트와 함께 연결되어 있나 봅니다. 어쨌든 C#에서는 직접적인 메쏘드를 지원하지 않기 때문에 API를 끌어와서 사용함으로써 진동을 작동시킬 수 있습니다.

아래는 실제 코드입니다.

실제 사용할 때는 다음과 같이 사용하면 되겠죠ㅋㅋ

2009년 3월 10일 화요일

나는 개발자다? 아니다?


얼마전 매쉬업 경진대회가 끝나고 정신도, 몸도 너덜너덜해진 상태로 정신없는 개강 분위기를 견디며 T옴니아 개발 경진대회를 준비하기 시작했습니다. 하지만 역시 실력도 부족, 시간도 부족... ㅜㅜ 제가 만든 거의 프로토 타입 수준의 프로그램을 올릴까 말까 고민하던 중에 제출 마감일인 오늘!!...
오늘에서야 올라오는 많은 훌륭한 작품을 보고서는 제 프로그램은 그냥 제출하지 않기로 했습니다. 급하게 만들어 본 제 프로그램은 역시 흔한 아이디어였고, 흔한 기능이었습니다. 처음으로 해 본 윈도우 모바일 어플리케이션 개발이 그렇게 쉽지만은 않기도 했고, 코딩 실력도 많이 부족하다는 걸 느꼈습니다...

어제 저녁에 집으로 돌아오면서 후배들한테 푸념을 했습니다. 실력도 많이 부족한데다 훨씬 뛰어난 사람이 세상에 많이 있는 거 같다고... 그런데 후배가 저에게 오히려 반문하더군요...

"형이 개발자에요? 그 사람들은 전문 개발자들이잖아요... 형 앞으로 개발자될 거에요?"
"..."

아... 바보같이 그제서야 깨달았습니다...
전 전문 개발자도 아닐 뿐더러, 전문 개발자가 될 생각도 없었던 겁니다!! 전 아직 학생이고, 배우는 입장에다 기술은 하루하루 급속히 발전하고 있습니다... 그 어떤 형식적인 틀에 묶여서 시키는 일만 하는 입장도 아니고 저는 능동적으로 배우고 싶은 것들, 경험해보고 싶은 것들에 도전하며 살 수 있는 학생이었던 겁니다... 제가 어떠한 무언가를 만들더라도, 그 아이디어로 인해 비난을 받거나, 그 퀄리티에 대해 평가를 받거나, 제 실력에 대해 의문을 품던 간에 저는 전혀 신경 쓸 필요가 없다는 걸 깨달았습니다.

결론적으로
전 전문개발자도 아닌데다, 아직 성장하고 있으며, 결과보단 도전 자체에 더 의미를 둘 수 있는 학생신분이었습니다.
어찌보면 조금은 멍청한 깨달음입니다만, 요즘 받고 있는 여러 부담감을 떨쳐낼 수 있는 유익한 깨달음이었습니다...

2009년 3월 4일 수요일

[LG모바일공모전] 탈락 작품!!

탈락한 아이디어라면 가차없이 공개해버리는 겁니다!

[T옴니아 개발 맛보기] 7시간만에 만든 iReferee

 T옴니아 경진대회가 진행중인데요... 3월 4일까지 제출하면 MS무선마우스를 공짜로 준다고 해서 급하게 만들어보았습니다. 원래는 더 많은 기능으로 iPhone용 어플로 계획하고 있던 것인데... 이렇게 먼저 선보이게 되었네요... C#으로 짰는데다 별 기능이 없어서 코딩은 한 1시간 좀 넘게 한 거 같고... 나머진 다 디자인 하는 데 쓴 듯;;;

 프로그램 소개를 간단하게 하자면 축구 심판 볼 때 사용할 수 있는 어플인데요... 보시는 바와 같이 스코어보드, 카드, 휘슬, 시계로 구성되어있습니다. 코드가 복잡하다거나 그런 건 없고 오직 UI에만 신경 쓴 허접한 프로그램입니다ㅋ