목요일, 1월 02, 2014

집에서 일하기 시작한 지 20개월이 되는 시점에서..

http://sangminpark.wordpress.com/2013/12/31/%EC%A7%91%EC%97%90%EC%84%9C-%EC%9D%BC%ED%95%98%EA%B8%B0/

집에서 일하기 시작한 지 20개월이 넘어가는 시점이네요.
큰아이가 방학이되고 막내가 아파서 어린이집에 못가니, 집에서 집중이 안되어 밖으로 나왔네요.

한국에서 오픈소스, 집에서 일하는 남자등의 쉽지 않는 주제라 몇가지 남겨 보는 것도 재미있겠다 싶습니다.

- 일을 어디서 하던 원하는 결과만 나온다면야 문제가 되지 않겠습니다만
문제는 원하는 결과를 협의하고 존중하는 과정을 어떻게 마련할지도 고민이긴 하네요.

저는 생활 패턴을 보면 일하는 시간이 딱히 몇시부터 몇시까지가 없기도 합니다.  바꿔 말하면 남는 시간은 모두 만들거나 공부하고 있지요.

이것은 풀타임으로 혼자 하기에 가능 한 것인데, 다른 풀타임 개발자가 생기면 협의하고 만들어 가야 하는 합리적인 과정이 필요한듯도 합니다.
저 처럼 할 수도 없고, 해서도 안되는 그런 것이죠.

올챙이는 지금까지 어떤 팀의 힘으로 진행되는 프로젝트 이기보다 개인의 힘으로 진행되는 성격이 강했던 듯 합니다.
- 이것을 팀의 프로젝트가 되도록 역할과 책임을 분리 해야할 필요가 있어 보입니다.
- 결국은 더 짜임새 있고 프로가 되지 않으면 안되는 문제 인데요.

- 오픈소스 프로젝트가 먹고사는 문제와 대면하게 되면, 당연하지만 만들고 싶은것보다 소비자가 원하는 것을 만들어야 하는데 이 둘 사이 균형을 만들기가 벌써 부터 살짝 겁이 나긴합니다.

가장 이상 적인 것은 소비자가 원하는 것이 되도록하는 것인데 말이지요.

일의 양이 절대 많은 것은 괴로움의 문제가 아니라 즐거움의 문제가 되려면 말이지요.

올챙이 기반을 RAP에서 NODE로 바꾸거나
아니면 2.0의 프로토 타입을 해보거나(없는 줄 알았더니, 무서운 형들은 벌써 해오고 있더라고요)..
아니면 기반기술을 공부하거나 말이지요.

괴로운 것은 어쩌면 하고 싶은일을 못하는 것이거나...

-- 여러가지를 적으려고 하니 글이 산만해 지는데, 정리해서 다시 적어봐야겟네요.

토요일, 9월 07, 2013

그 이후~~~~

하고 싶은 말이 있어서, 적었다가 지워버렸네요. 

공부 거리가 왜 이렇게 많은지.. ㅠㅠ;; 
노력으로 해결 할 문제가 아니라, 협력을 통해 해결 할 문제인듯도 합니다.
오픈소스 따위가 좋은 해결책인 것이죠. 

그래서 큰(?) 회사에서는 오픈소스를 더 하나 봅니다.
큰 회사에서도 자신의 노력 만으로 해결 할 문제가 아니라서요.

혹은, 그 문제에 대해 관심있는 좋은 자원을 더 끌어 모으기 위해서 말이지요.
주는 듯 하지만, 더 끌어 모으게 되고 결국은 더 좋아지는듯합니다. 인류혹은 자신의 주변에 선한 도움이기도 합니다.

혹은, 그 문제에 대해 고민하지 못한 집단에게 좌절을 주기 위한 좋은 수단인듯도 합니다. 어떤 그룹은 그것을 더 좋게 발전 시키고 공유하지만, 어떤 그룹은 그것을 사용하기에도 급급해 하니까요.

그래서, 소비하는 편 보다는 생산하는 편을 선택해야 하는듯 합니다.
우리가 생각하는 허접한 결과 물 일지라도 다른 사람들에 의해 더 좋아지기도 할 것이며, 같이 발전할 테니까요. 그리고 누군가에게 도움이 될 테니까요.

이게 돈으로만 되는 일일까 싶기도 합니다. 물런 많은 돈이면....
그것보다는 생산하는 사람들이 의도가 생각이 중요하겠다 싶구요. 가치 있다고 생각 하는 것들을 재미있게 만들수 있는 환경을 제공하고, 그것을 어떤 철학(?)적 가치에 의해 공유하는 것 말이지요.

이렇게 생각하니 구글의 10%(없어지고 있다지만(?)) 법칙은 참 대단하다도 싶습니다.

설마, 내가 좀더 잘 된다면.. 이런 가치를 좀더 추구해야겠다 싶습니다.

일요일, 8월 11, 2013

회사 그만 둔 후로 그러니까, 좀더 자세히 말하면 작년 초부터..
주말과 평일 모두 올챙이 만드는 것에 미쳐 있는듯 합니다.

페이스 북 친구들의 일상 휴가나 가족사진들을 보면서...
내가 주말인 오늘도 코딩을 하고 있는 모습을 보면서...
좀 한심하다고 해야할까도 싶구요.
무엇을 위해 이러고 있는지 점점 기억에서 잊혀져 가는듯합니다.
1.0 릴리즈 후로 많은 좋은 조짐들이 보이기는 하지만, 말이죠.

생각해보니 통장 잔고만 좀 넉넉했어도.. 이런생각이 들구요.
아니면, 규모있는 회사에서 진행했으면 이런 생각도 듭니다.

구현해야 할 기능과, 도전과제들이 가득 차 있는데 말이지요.
냠냠~~~

~~~~~~~~~~~~~페북에 쓰기 어려운 오늘의 코더 일기~~~~~~~~~~~~~~~~~
원하는넘 있을때 던질까?

월요일, 8월 05, 2013

어제 드디어 Tadpole DB Hub 1.0.0 버전을 릴리즈 했어요.

어제 드디어 올챙이 1.0.0 버전을 릴리즈 했습니다.
1.0.0 버전을 릴리즈 하는 것이 개인적으로 많은 의미가 있는 일이라 신경을 많이 썼는데, 
그래도 부족한 부분만 보이네요. 아직 메뉴얼과 홈페이지등의 작업을 끝내야 완전히 끝난 것이라 많이 남았습니다.

1.0.0 버전에 관한 정보는 이곳을 보면 보기 쉽겠어요.(https://github.com/hangum/TadpoleForDBTools/wiki/Release-Note(v1.0.0))

1.0.1 버전은 모니터링에 관한 초기 코드와 Hive관련 초기 코드를 만들 생각 이에요.




토요일, 6월 22, 2013

Tadpole DB Hub 1.1 예상

올챙이(https://github.com/hangum/TadpoleForDBTools/wiki) 1.0도 아직 완성이 안되었는데요.
세미나 발표도 있고해서 1.1 모습을 그려봤습니다.
빅데이터 등의 요즘 흐름에 맞게 redis, hive를 추가하려고 합니다.

redis는 강대명님이 기능을 정리해 주신다고하셔서 더욱 기대되기도 하구요.
그나 저나 1.0도 완성을 못했는데 1.1 이라니요.

더욱 긴장하고 집중해서 1.0이 정상 동작하도록 해야겠습니다. 
우선은 7월말까지 주단위 일정을 세워야겠습니다.

우선 1.1까지의 기능을 마무리 해놓고 직장으로 돌아가던지 하는 플랜을 짜야겠습니다.
직장이라니 말입니다.


수요일, 6월 19, 2013

저번주 토요일 어느때 토요일과 다름없이 한가롭게 시간을 보내고 있었습니다.
아이들과 떠들고 놀고 말이지요.

오후 쯤 누나에게 메시지가 왔습니다.
형의 막내아이가 엄마랑 있다가 교통사고가 났다구요.
처음에는 별 수롭지 않게, 이야기를 들었고 광주까지 가야하나 싶었습니다.

좀 있다가 다시 메시지가 왔습니다. 좀 심각하다구요.

바로 광주에 가는 버스를 타려고 출발했습니다.
터미널로 가서 광주에 버스에 올라 탈 무렵 형에게 전화가 왔습니다.
'유리가 죽었다구요'.  만2살...
천재성을 가지고 있었던 아이였는데 말입니다.

아이의 장례식장에는 그 흔한 무엇도 없습니다.

3일동안 그저 형 옆에서 담배만 같이 피웠고, 다른 어떤 말도 할 수가 없었습니다.
죽은 아이는 죽은 아이고 산사람은 살아야 한다고 위로 하시는 분들의 이야기를 듣지만, 용납이 안됩니다.  하루 아침에 죽어버린 아이를 현실과 바꾸기에는 너무 가혹합니다.

그 사이에도 돈 계산과 부의함 관리, 보험 가해자등을 처리하면서 오는 현실은 혼란스럽기만 합니다.

영락공원에서 화장을 하고 자연장을 하니 더이상 할 것도 없습니다.

'유리가 잘가 작은아빠가 미안해'



토요일, 5월 04, 2013

일상단편

파키스탄 여행을 가려고 해요.
이미 비행기 발권과 비자 신청까지 거의 모든과정을 마무리 했지요.
지난 1년간 오픈소스와 올챙이 나 등을 정리해 봐도 좋겠다 싶습니다.
그리고, 노트북을 들고 가니 코딩도하고 책도 보고요.



훈자와 k2등이 벌써 기대가 되네요.

한편으로는 이런 두려움도 잠깐 들었습니다.
잘나가는 오픈소스(?)라고 표현하는 분들도 있으신듯한데요.
- 경제적으로는 2013년 수입이 1-5월까지 약 450만원정도입니다.
여행경비는 짜낼수 없을 만큼 짜내어 가는 것이구요.  오해하시는 분들 없으시면 좋겠네요.

오픈소스와 경제적인 관점에서 이야기를 정말 많이 하는데요.
속해있는 곳 즉 개인, 회사, 재단, 국가등의 추진하는 곳에 따른 전략이 다르고 의미가 다르지 않을까도 싶습니다.

여행을 다녀와서는 알바를 좀 구해봐야할듯하구요.
잘 안되면 직장을 다시 들어가야 하지 않을까도 싶습니다. ^^*

의미도 좋고, 일도 좋지만, 가장으로서 가족을 먹여 살리는게 첫 번째 이니까요.
그리고, 올챙이는 계속 만들어 갈 거에요.

그리고, 여전하지만 내가 먹을 것을 조금만 덜 먹고, 다른 사람이 먹을 수 있도록 양보하는 삶을 살아야겠어요.
육체적으로 좀 불편한것을 미덕으로 보구요.
이양이면 벌어서 남주고 말입니다.  물런 배고파가며 스트레스 받아가며 하는것 말고 말입니다.


화요일, 4월 23, 2013

요즘은 burnout 상태인가봅니다.

요즘은 burnout 상태인가봅니다.
직격탄은 2주전쯤인데.. 더러운꼴에.. 애효라
여튼 변명이라면 변명이구요.

미친 코드가 어렵게 보이고, 눈에 들어오지 않네요. 흐미..  ㅋㅋ

저번 주 금요일 가족 전체의 여권을 신청했습니다.
저도 여권이 만료되었기도했고요.
아이들은 5년 저희 부부는 10년짜리로요.
파키스탄에 꽃히기도했구요.  좀 진절머리나기도 했습니다.

올챙이를 접어야 하면 그 다음은(?) 이런 마음도 조금있었어요. ㅎㅎ


금요일, 4월 19, 2013

2013.04.19 올챙이 사이트 모습입니다


2013.04.19 올챙이 사이트 모습입니다
2012.04.19 올챙이 사이트(http://hangumkj.blogspot.kr/2012/04/blog-post_19.html) 모습과 비교해보면 무언가 하기는 참 많이도 했네요.
---------------------------------------------------------------------------------


Tadpole DB Hub(올챙이)를 관심을 보여 주셔서 감사합니다.
웹브라우저에서 MongoDB, CUBRID, MariaDB, MySQL, Oracle, SQLite, MSSQL, PostgreSQL을 관리 하는 툴입니다. 
지금까지 다양한 Database를 사용하면서 여러가지 툴을 사용하시면서 불편하셨죠?
Tadpole DB Hub는 이 불편함을 해결합니다.

올챙이는 웹서버를 이용하므로 자신의 로컬에 프로그램을 인스톨 하지 않아도 됩니다.(war 방식일 경우에)
혹은 로컬에 설치하여 사용하실 수도 있습니다.
올챙이는 아직 뚜렷이 정착하지 못했습니다.  관심있는 분들은 문의 주십시오.(adi.tadpole@gmail.com)

요즘 올챙이는
- 13.03.02 버전 1.0.0 개발을 시작했습니다.  (기능보기) 일정은 5월말이지만, 어느정도 나오면 공개하도록하겠습니다.
- 13.03.24 오픈소스포럼에서 '올챙이로 살펴보는 Eclipse RAP(Remote Application Platform)' 로 교육을 진행했습니다.
- 13.03.01 V0.0.8 SR12을 배포합니다. 자세한 사항은 여기 를 참조하세요.
- 13.02.22 제13회 JCO에서 '올챙이(Tadpole for DB Tools)로 살펴보는 Eclipse RAP'라는 주재로 발표합니다.
- 12.09.06 제32회 Open Technet에서 '공개SW DB관리툴 올챙이로 살펴보는 Eclipse개발' 발표했습니다.
- 12.08.19 올챙이가 Eclipse RAP 홈에 소개 되었습니다(
- 12.06 제2회 대한민국 커뮤니티 데이에서 '올챙이로 살펴보는 개발툴과 cloud 발표'하게 되었습니다.
                           
                      
스크린 캡쳐
  
                                           << RDB ERD >>                                                                    << Query Browser >>

  
                                      << MONGODB ERD >>                                                          << MONGODB Instance Summary >>

4.19를 올챙이 생일로

4.19은 올챙이 생일로 해야 하지 않을까 싶습니다.
작년 4.19은 http://hangumkj.blogspot.kr/2012/04/blog-post_19.html 올챙이 베타를 오픈한 날이 었네요. 지나고 보니 1년이 아주 빠르고 느리게, 기쁘고 힘들게 지나 간듯합니다.

1년전에는 3개의 DB를 지원했고 지금은 8개를 지원하게 되었네요.
요즘 올챙이를 봐도 매월 무언가를 했네요.

사실은 얼마전부터 스트레스가 심해셔 전체적인 코드가 보이지 않게 되는듯하더라구요.
그게 코드 양이 방대해지고, 복잡해 져서라고 인식했는데... 그게 아니고... 번아웃이 된게 아닌가 싶더라구요.  파키스탄에 계신 형네 가족에 놀러가려고, 오늘은 가족 전체 여권을 만들었는데...

이것이 인생을 어떻게 결정할지 내심 기대가 되기도 했습니다.
올챙이를 그만 두어야 할 상황이 오게되면, 영어를 좀더 준비해볼까~ 이런 기대 말이지요.

그나저나 5월말 완성 목표인데, 지금 하는거 봐서는 5월말은 베타정도 나올것 같은 일정이네요. 끙~
사용하시는 분들의 다른 요구 사항이나 일이 많지만, 가장 중요한 것은 역시나 품질이구요.  많이 알리고 사용되어 지는 것도 중요하지만, 0.0.8버전 처럼 가능성만을 두는것이 아니라, 실제 사용성에 초점을 맞추고 싶어요.
그래서 이름도 Tadpole for DB Tools에서 Tadpole DB Hub 로 바꾸었네요.


일반 DB Client Tool70% 기능
Cloud 환경에 사용 가능
DB들의 허브가 될 수 있도록 확장 가능한 구조
데이터 보호(?), 암호화 툴과 연동



일요일, 4월 14, 2013


오픈소스는 무료인가? 답은 그때그때 달라요.
그렇지만, 대부분 무료이지요. 아는 것 처럼, 무료인 조건이 까다롭게(?) 있어요. 소스를 공개해야한다거나, 내가 사용하고 있음을 공지해야한다거나요.

그럼 상용 소프트웨어와 오픈소프트웨어가 뭐가 틀리냐면, 소스공개하는거 빼고는 똑같아요. 오해하지 마세요. 똑같아요. 적어도 내가 아는 선에서 말입니다.

오픈소스를 사용하니, 이것을 라이센스에 맞지 않게 사용해도 되겠지 하고 생각하시면 오해하지마세요.

상용소프트웨어을 개발한다고 해서 비 도덕적이거나 나쁜일 하는거 아니 잖아요. 혹은 오픈소스의 Apache, EPL, GPL, LGPL, MIT등의 공개여부나 사용여부에따라 프로젝트가 사람이 좋고 나쁜것이 아니니 오해 마세요.

그러면, 오픈소스는 왜 하는가? 인데요. 일종의 전략이다 싶어요. 자신의 잉여력으로 보여주고 싶은 개인 개발자? 혹은 ibm이 eclipse를 만들었을때 처럼, 자바 진영의 힘을 통합하고 지배력을 확산하려는 의도이지 않을까 싶습니다.
너무 사회적인 답이라면, 개인적으로 오픈소스의 장점은 배움과 그 철학이 안에 있는 것이지요.

회사를 그만 두고 약 1년정도 개발하고 있는 올챙이 프로젝트네요.
프로젝트를 시작할때 기대 하는것은 다음과 같습니다.
- 개발해야 먹고사니, 이양이면 내가 개발하고 싶은 것, 의미있다고 생각하는 것을 개발하자.
- 사람들에게 의미가 있으면, 누군가는 투자자가 되어 주겠지???????
이런 막연한 기대를 가졌지요.

1년 시간이 지난 후 다음과 같습니다.
- 역시 먹고살기 쉽지 않다. 하는데까지는 해볼거다.
- 역시 사회에대해 너무 모르고 미숙한 1년이었다. 내가 개척해 나가야지.

그래서 프로젝트 라이센스를 epl에서 다른것으로 바꿀 예정입니다. (제가 주도권이 있는 한 적어도 소스는 오픈할거에요). 이름도 Tadpole for DB HUB로바꾸려고 합니다. tools에서 주는 이미지가 기존 db client tool과 오해의 소지도 있어서요.
이것에 대해 걱정하시는 분들이 많으신데, 저는 이렇게 생각해요.
올챙이 소스를 더 이상 오픈하지 않는다고 올챙이가 사용자들에게 외면받을 프로젝트라면, 오픈해서도 망해야 맞다. 지금 망해야 할지도 모르겠습니다. --;;
아직은 미련한지 모르겠지만, 가치는 소스에 있는 것이 아니라고 믿고 싶습니다. 그리고, 나쁜(이상한) 의도를 가지신 분이 계신데, 제가 두배로 열심히 하겠으니, 이양이면 비싼 값에 사주세요. --;; ㅜㅜ;;

많은 분들이 바라보고 계시고 응원하신것을 인정하고 감사하게 생각합니다.
언제까지 내가 좋아하는 개발 삶을 살 수 있을지 다음달도 그렇게 살수 있다고 말씀 드리지 못하겠네요. 적어도, 열심히는 하겠습니다. 그리고 보여드리고 싶은 것이 많아요.

금요일, 4월 12, 2013

Eclipse platform에서 internal package의 의미는 대략 다음과 같습니다.


Eclipse platform에서 internal package의 의미는 대략 다음과 같습니다.

- api 바뀔 가능성이 있는 아이들을 internal로 정의합니다.
소스삭제나 메소드 삭제등을 할 수 있다는 것이지요.  누군가 확장해서 개발했을 Eclipse 개발에서는 혼란과 많은 제약이 따를수 있어 이렇게 했을 것으로 보입니다.

그래서 internal을 보는 다른 외부 개발자들은 해당 프로젝트를 확장 개발하는데 제약을 받겠구나, 바뀔 가능성이 있구나 하고 인식합니다.  개발할때도 실제 외부 참조 번들에서도 사용에 제약을 실제로 받게 됩니다.

어쩔 수 없이 이것들을 확장하거나 사용해야 한다면 fragment plugin으로 개발 해야 하구요.
그래서 일반적으로 internal package가 많은 bundle은 개발의 성숙도가 아직은 미숙하다라고 표현 할수가 있는 것이지요.  DTP(Data Tool Platform) 같은 아이는 internal이 너무 많아서.. 확장하기에 에로 사항이 많습니다.

만들고 있는 프로젝트도 대략 이런 맥락에서 만들어야 하는 것이지요.

다음에는 Eclipse의 주요 프로젝트의 프로젝트 스타일에 대해 써보는 것도 재미 있겠어요.

수요일, 4월 10, 2013

오픈소스에서 버그 기능개선에 대한 변명~


요즘, 올챙이는 버그나 기능추가 요구가 계속 되고 있습니다.  오픈소스에 관해 이슈가 많으니... 제가 생각하는 것을 좀 적어 봐야겠다 싶습니다.

- 오픈소스에서의 버그는?
버그는 버그에요. 오픈소스 이던 아니던 치명적인 것이구요.  변명할 가치가 없는 그런 것이지요.  그 프로젝트에 열정이 애정이 있다면, 버그를 등록해 주세요.  (등록하실때는 되도록이면 자세하고 상세하게.. 기술 하셔야 이해할수 있어요.  프로젝트 참여자는 신이 아니니까요.) 아마도 대부분의 개발자는 고마워하고 미안해 할거에요.

- 기능 개선은?
아이디어가 떠올랐다가 개발팀에게 메일이나 이슈를 올려주세요.  ㅜㅜ 많이 고마워 하겠지요.  선택되지 않았다고 싫망하지는 마시구요.

여기까지는 일반적인 이야기 이구요. 몇가지 변명을 해보자면 다음과 같은 이유인듯해요.
저 같으면 엔드유저 사용자를 많이 접해 보지 못했어요. --;;  개발의 결과물을 보통은 다른 분들에게 주면 끝나는 그런일을 해왔어요.(?????) 피드백은 엔드유저가 아닌, 시스템을 통해 피상적으로 접해오고 있지요. 그래서인지 좀 불친절(?) 한듯해요.
이정도면 괸찮겠지라거나...

아무래도 주어진 시간(?), 예산(?)에 비해 턱없이 프로젝트가 크네요. 제대로 마무리 하려면 정말 많은 시간과 사람이 필요한데 여력이 없어서 인듯해요.
그래서, 기능을 추가할때 컨셉적인 기능을 추가하는듯합니다.  사용자들의 반응이 있으면 계속 확장개발하고, 없으면 덮으려구요. --;;  여기에서 나타나는 문제가 아닐까 합니다.

-- 일단 새벽5시이므로 잠을 좀 자고.. 계속 이어서...

금요일, 3월 29, 2013

Eclipse incremental build


요즘하는 알바인데, 그냥 묵히기는 아깝고 누군가에게는 피가되고 살이 되겠다 싶어서 남겨봅니다.


이클립스에서 빌드에서 등장하는 아이들은 다음과 같습니다.
- Builder : 워크스페이스의 특정 리소스가 변경되면 작업을 처리하도록 하는 것입니다.
- Marker : 워크스페이스의 특정 리소스를 연결(?) 시켜 놓은것을 말합니다.
--------------------------------------------------------------------------------------이클립스에서 incremental-build를 수행하기 위해서 동작하는 몇가지 용어는 다음과 같습니다.
제 컴파일은 org.eclipse.jdt.core 플러그인에서 동작합니다.
private void buildDeltas(SimpleLookupTable deltas) {
코드의 용어로는 풀빌드를 batch build라고하고, incremental build를 build delta라고 합니다.
그래서 결국에서는
그래서 결국에는 AA클래스를 수정했다고 하면, 소스 폴더에서 AA가 있는지 비교하여 있으면 컴파일하는 식으로 한느듯합니다.
수정될 것들을 다 모아서 결국에는 컴파일 합니다.
소스를 좀더 보기는 봐야할듯한데, 어느정도 빡셀듯하네요.
예전에 eclipse 소스 검색 쪽을 분석해 본듯한데, 파일을 열어서 일일이 검색하였는데, 같은식으로 일일이 검색하는 것으로 생각됩니다.

- Workspace : 이클립스의 작업공간
- Resource : 작업공간에서 접근하는 .java등의 리소스
- Project : 워크스페이스안에 작업관리 단위
- Nature : 프로젝트에서 특정 기능과 처리를 하도록 하는 연결 방식입니다. 
예를들어 자바프로젝트는 자바네이쳐(org.eclipse.pde.PluginNature), 
plugin 개발자는 plugin 네이쳐(org.eclipse.jdt.core.javanature)를 가지고 있습니다.
이클립스에서는 이것은 .project에서 관리 합니다.
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>

이클립스에서 이것은 .project에서 관리합니다.
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>

리소스의 error나 warning등을 표시해 줍니다.
이클립스에서 Windows->Show view -> marker에서 볼수 있는 것들입니다.

위에서 언급한 resource가 변경될때 이벤트를 관리하는데 등장하는 아이는 다음과 같습니다.
IResourceChangeEvent : 리소스 변경 이벤트
IResourceDelta : 리소스가 변경될때마다 변경시점을 기억하는 아이.
IResourceDeltaVisitor : 변경된 리소스를 처리하기 위하기 위한 인터페이스.

그 중에서 org.eclipse.jdt.internal.core.builder.JavaBuilder 클래스가 실제 일을 수행합니다.
protected IProject[] build(int kind, Map ignored, IProgressMonitor monitor) throws CoreException {
...
}
메소드에 코드를 풀빌드해야하는지 incremental build해야하는지 결정하게 됩니다.

...
}
메소드가 incrementa build를 합니다.


IncrementalImageBuilder의 public boolean build(SimpleLookupTable deltas)에서 처리합니다.

ReferenceCollection의 includes에서 그런것들을 처리합니다.(addAffectedSourceFiles();)



화요일, 3월 19, 2013

요즘 올챙이와 한금이는 - 13.03.19

올챙이는 드디어 1.0.0 버전을 만들기 시작했습니다.
개인적으로는 2014년에나 1.0.0을 가려고 했으나, 1년은 더 빠른 결정이고.. 1년의 공백을 매꾸기위해 더 노력해야 하려나 봅니다.

0.0.8 버전이 올챙이의 가능성을 보는 것이었어요.
1.0.0 버전은 올챙이가 상업적으로도 가능성을 보려고 합니다.

요즘 하고 있는 일은 대략
- 1.0.0 이름과 라이선스 정하기
- 기능목록 정하기
-- cloud시스템에서 사용할 수 있도록 open api 추가
-- 관리 및 보안 기능 강화
-- 에디터 기능 강화
-- 확장 가능한 api 추가
- 관련 회사설립(?)등의 일을 하는 것입니다.

지금까지 올챙이가 가장 크게 어려웠던 것은 기존에 존재하는 DB Client Tool들과의 비교 이었다고 생각이듭니다.  올챙이는 기존의 툴들과는 사용과 쓰임이 다르다고 생각해요.  
그래서 클라이언트 툴이 아니라 DB의 Hub가 되고 싶습니다.  물런 기능중에 Client Tool이 들어 가겠지만, 그것만이 아니라는 것이지요.

--- 
조만간 한장의 그림으로 올챙이 1.0.0을 표현해봐야겠어요
---

이런 작업을 4월말까지 계획하고 있습니다.
구현하고 싶은 기능은 너무 많고, 하고 싶은 것들도 너무 많네요. 

토요일, 2월 23, 2013

오늘 JCO 발표를 무사히 끝났네요.

나름 고민하고 준비한 발표가 생각보다 사람이 적어서 내심 서운하네요.
그래도 특별히 사고(?)는 치지 않은것으로 만족해야 하나도 싶습니다.

좀더 발표스킬도 준비하고 해야겠어요.


발표자료는 다음을 통해 확인하실 수 있습니다.
제목은 : 올챙이(Tadpole for DB Tools)로 배우는 Eclipse RAP
http://www.slideshare.net/hangum/2013-jcorap


월요일, 2월 11, 2013

SR11 버전을 내 놓을수 있겠네요.

구정에 부모님에 못 간 죄로, 코딩을 좀 해서 SR11 버전을 내 놓을 수 있게 되겠네요.

대략 다음과 같은 개선 사항인데요.  작업을 해도 해도 한도 끝도 없지만, 무언가 새로운 개념과 개선 사항이 있어서 기분이 좋네요.

현업에서 운영디비 잘 못 조작 한 경험이 저도 있고, 또 빈번(?)하게 일어 나는데, 시스템으로 그런 것들을 최소화 할 수 있도록 초점을 맞추어야 겠습니다.

  1. DB등록시(운영, 개발, 기타) 를 입력 받도록 하였습니다.(어드민 값으로는 프로파일 유무, 쿼리실행시 YES, NO묻기)
  2. Connection Manager에 [D][R][O] 라는 약어로 디비의 상태를 표시합니다.
  3. 운영디비의 경우 에디터 상에 빨간태두리가 보이도록 하였습니다.
  4. 쿼리 실행시 쿼리, 쿼리 실행시간이 디비에 기록됩니다.
  5. 유저타입에 DBA 타입을 추가했습니다. 올챙이는 4가지(유저, 관리자, DBA, ADMIN) 유형의 유저를 갖습니다.
  6. 일반유저로 로그인 한 경우 신규비디를 등록 할 수 없습니다. 또한, 운영디비의 경우 SELECT문에 만 실행 할 수 있습니다.
  7. MongoDB는 그룹 조회 기능이 추가 되었습니다.
  8. MongoDB의 모든 에디터가 코드 에디터로 교체되었습니다.
  9. MongoDB의 sharding 기능이 추가 되었습니다.
  10. ERD는 정렬 알고리즘이 개선되었습니다.
  11. 기타 버그 패치 및 기능 개선이 되었습니다.



화요일, 1월 29, 2013

RDB ERD

이번에 RDB ERD는 뒤에 백그라운드 색을 주었습니다.
백그라운드가 색이 없는 것보다 있는 것이 훨씬 좋네요.



MongoDB ERD

MongoDB의 설계뷰 작업을 계속하고 있습니다.
MongoDB 전체 Collection과 Object들을 한꺼번에 보여주고 관리하기 쉽도록 말이지요.




수요일, 1월 23, 2013

MongoDB 설계 뷰 만들기.

요즘은 몽고디비의 설계뷰를 만들고 있습니다.
몽고디비의 릴레이션과 콜렉션의 서브 도큐먼트표시 및 인덱스 까지 표시 하려고 합니다.

아래 보시는 것처럼 아직은 오류가 있는 상태이구요.
마눌님께서 한마디 해주십니다. 가위가지고 오리면 된다구요. ㅋㅋㅋㅋㅋ

오늘쯤 이것을 마무리하고, 몽고디비의 다른 이슈들을 빠른 시간에 해결하려고 합니다. 


목요일, 1월 17, 2013

올챙이 개발이야기

올챙이를 막상 사용하려는 분 입장에서는 기능이 너무 부족하고 아쉽지요?

사실은 거의 많은 부분을 혼자 개발해야하구요.
개발해야할 기능들이 너무 많은게 현실이에요.

그래서 이렇게 생각했어요. 사용자들의 필요가 있어 요구사항을 받게 되면, 받은 부분을 개발하자구요.

굳이 필요하지 않는데, 미리 혼자 개발하지 말자구요.

물런 실력이 부족해서 일수도 있어요.

그렇지만, 아직은 실력보다는 .. 다른곳에서 이유를 찾고 싶어요.

올챙이 사용하시는 유저분들 이슈를 던져주세요.

금요일, 1월 11, 2013

요즘 올챙이 개발

요즘은 올챙이 개발은 MongoDB 개발하는 것에 많은 시간을 쏟고 있습니다.

Document의 하위 레벌까지 확장하도록 수정하였 습니다.
Index, JavaScript의 리스트를 보이도록 수정했습니다.
Group, MapReduce를 실행할 수 있도록 작업을 진행 중입니다.
Profile 기능에서 Profile된 쿼리를 실행하고 플랜 결과를 확인할 수 있록 했습니다.
쿼리 결과 창에서 하위 도큐먼트가 존재할 경우 상세하게 보이도록 수정했습니다.

ERD보이는 창에서 몽고디비의 Collection이 보이도록 수정 중이며, Collection간의 관계를 보이도록 수정 중입니다.

생각보다 작업이 늦어지고 있구요. ㅜㅜ

지금까지는 자바 드라이버를 사용하여 처리했는데..
자바스크립트 드라이버를 사용하여 처리 하도록 전체를 수정 해야 하나도 싶습니다.

월요일, 1월 07, 2013

MongoDB 설계


올챙이 기존 RDB ERD보는 기능에서..
MongoDB ERD(?) 보는 기능을 추가하려고 하는데...
비슷(?) 하면서도 틀려서 고민 중입니다.

불편한 동거를 하면 가능하겠으나, 확장해 가는것은 상당히 불편 할 것이고..
분리하자니 재사용하는 코드가 대폭늘어나고....
EMF를 사용해서 마음대로(?) 하기 힘들다는 단점이 있네요. 흠냐..

나중을 생각해서 우선은 분리하고,
중복 설계와 코드 등을 어떻게 줄일 수 있는 것인지 연구해 봐야겠습니다.

MongoDB ERD는
Collection의 Document 계층 보여주고, 릴레이션, 키 관계를 보여주려고 합니다.
거기에 리버스, 포워드 엔지니어링과 디비 카피등까지(?)를 하면 어떨까싶습니다.


화요일, 11월 13, 2012


개발일이 습득과 창조의 반복일이라면, 항상 돌아보게 되고 겸손하게 될수 밖에 없는듯해요.  다른 누군가의 평가보다 스스로 그렇게 되어 버리는듯해요.

그리고 한편으로는 무언가 정리되려는 본성이 되어 가는듯합니다.
개발하려는 전체를 자신의 능력만큼 머리에 그리고 싶은 듯해요. 일정과 능력만큼요.


토요일, 11월 10, 2012

올챙이 일지

제 6회 공개 소프트웨어 개발자대회 Tadpole for DB Tools가 대상(지식경제부장관)을 수상했습니다.  태어나서 개근상 이외에 잘 받아보지 못했는데.. 가장 큰 상인듯합니다.

6th Open Source Software Developer Challenge Tadpole for DB Tools for target (Minister of Knowledge Economy), has been awarded


화요일, 10월 30, 2012

요즘 올챙이

1. 올챙이는 11.3일에 개발자 대회 2차 심사가 있어요.
심사때 5분간 발표 시간이 주어 지는데, 발표자료를 만들어야 합니다.

내용은
- 현재 올챙이
   - 지금까지 해온일(외부 발표, 올챙이 소스까보기, 커미터모임(?)) - 이런걸 커뮤니티 라고 하면 될까?
   - 올챙이가 외부에 소개된것 큰것으로 추리기

- 미래 올챙이(?)
   - 청사진...
   - 앞으로...(어떻게 살아갈까?)

2. 11.7 올챙이 소스까보기(세번째시간)
- 올챙이 1.0.0 (30분) 정재홍
- 올챙이 시작 (올챙이 처음 시작하면 어떤것을 설정하는 지)

- 어떻게 될지 모르지만, 컨트리뷰터, 커미터등의 정책을 세워야 할지도...
- 올챙이가 개발도구 혹은 관리도구로 커 나가려면 어떻게 해야할까?

3. 주중에 sr6 릴리즈
- 잘잘한 버그 패치및 기능 개선이 많은 버전
- 이렇게 언제까지 갈지 0.0.9부분은 erd 부분을 좀더 수정해서 릴리즈 해야 하지 않을까도 싶네요.

글을쓰다보니 회사 그만둔지가 반년이 넘었네요. 이렇게 살아가는게 좋은 것인지...
계속 유지 할 수 있을까?

마음을 먹는다는것이 얼마나 중요한지요.


 

it가 발달할 수록 개발자 들에게 더 많은 것들이 요구 됩니다.
1999년에는 자바만... 2000년 넘어오면서 jsp--> ejb-> struts-> spring-> .
 무슨 프레임웍도 없던 그때도 있었죠. ide도 없고 불편해 울트라 에디트에 커맨드로 컴파일하고....

요즘와서 커맨드로 자바 컴파일 하라고 하면 웃기는 이야기 일수도 있겠어요.
java -cp ~~~~~~~ /home/user/~~/*.java 이런거 말이죠.  classpath 잡아서 컴파일을하거나 실행하거나 하는걸 얼마나 할수 있을지도 모르겠습니다.  저도 해본지가 언제인지 기억도 안나요.

public static void mina(Stirng[] args)가 어떻게 돌아가는 지나... 자바 바이트코드의 스팩 관심있는 분이나... jvm 구조라던가요.  혹은 collection, thread, io 같은 아이도 그렇고요.

어떤 지식의 기본을 정의하기에는 서로의 환경이 너무 틀려 힘들겠어요.
누군가는 엔진을 만들기도하고, 안드로이드 앱을 만들기도하고, 웹기반(?)시스템을 만들기도하고요.

어떨지 모르겠지만, 누군가는 엔진도 열심히 만들어 주면 좋겠어요.
이미 잘 만들어진 오픈소스가 있겠지만, 가져다 쓰기보다는 만들어보면 어떨까 싶어요.

분석이니 설계니 개발이니 하는 것은 최종사용자가 편하게 사용하기 위해서 고려되는 것일 뿐이에요.  최종 사용자가 좋다면 그것이 허접 쓰러기에 유지보수도 불가능한 것이라 해도 좋은거죠.

그러니 각자 상황 환경에 맞추어 개발을 시작해보세요.
누구는 기획부터 누구는 설계부터 누구는 코드부터 이겠네요.

수요일, 10월 24, 2012


멈추면 비로소 보이는 것들, 이란 책을 이때 읽어서 얼마나 감사한지 모르겠습니다.

처음에 올챙이는 나에게 놀이터 였지요.  회사의 따분함(?)가 삽질을 회피하기 위한 돌파구였기도 했구요.
새로운 기술과 적용해보고 싶은 아이들이 있으면 올챙이와 안맞아도 시도해보고, 오오 이거 웃기지만 재미있네.... 하기도하고 한달간 만들었어도 버리기도하고요.(xtext, eclipse link)이런 아이들은 안타갑지만요.

어느때부터인가... 이런 시도들을 못하겠더군요. --;;

올챙이를 다시 나의 놀이터로 만들어야 겠습니다.
rap 2.0도 적용해보고, 버그나 개선사항이 나오면 랄프아저씨에게 폭탄도 좀 드리기도하고, 참여도하고요.
erd부분도 에디팅 가능하게 기능도 좀 넣고요.
에디터도 쌩짜로 좀 만들어 보기도 하구요.

이런시도들을 하려면 적어도 몇달 이렇게 걸리는 일인지도 모르겠습니다만...
다른 누구에게 보여주는 것보다, 나와 관심있는 분들의 재미나 장난감이 되는게 먼저 이겠다 싶습니다.

개발자 대회나 현재 진행되고 있는 일(?)도 정리 좀 하구요.
그러게요. 내가 언제부터 남을 얼마나 의식했다고 말입니다.  다른 이에게 피해가 가지 않는다면.... 말이죠.

개인이 오픈소스를 한다는것은 많은 투자(?)가 필요하네요.
그 투자를 바라보는 사람마다 차이가 있겠지만 그건 내 알바 아니고요.
돈을 받아 책임이 있거나, 비 도덕적이지 않으니, 그럴필요도 없는 것이지요.
오픈소스(?)와 같은 아이를 장려 한다고 장려되는 그런게 아닐지도 모르는데 말이죠. ㅎㅎㅎ

소스오픈하면, 개발자에게는 쪽팔림을 감수할 배포도 필요하지...
컨셉이던 머던간에 가지고 있던 바닥도 보이지...
당장에 돈 들어 오는게 아니기에 개발 품질은 거칠기만 하지...
그래서 당연하지만, 개발자가 원하는 그런 부분에 더 신경이 가서, 사용자가 원하는게 아닐지도 모르지...

개인이 하고있는 이 프로젝트를 왜 회사가 돈을 들여 하는 오픈소스와 비교하며 따라가려고 했던 것인지 말입니다.  프로젝트 참여자들에게 돈을 줄수 있는 것도 아니면서 말이죠.

자 돌아가자... 처음으로~


수요일, 10월 10, 2012

Tadpole for DB Tools

한글 홈페이지 : https://sites.google.com/site/tadpolefordb/
English home : https://sites.google.com/site/tadpolefordbtoolsen/



It is a tool to manage CUBRID, MySQL, Oracle, MSSQL, SQLite, PostgreSQL, MongoDBin Web Browser. 
Do you feel uncomfortable to install and manage various DB tools for each DB?
Tadpole for DB Tools' is the answer for it.
You don't need to install software in your local because 'Tadpole' uses web server(if you use 'war').
(But, you can install it in your local if you want.)

1. Environment : Java 1.6.x 1
2. Support System Standalone : linux.gtk.x86, linux.gtk.x86_64, macosx.cocoa.x86, macosx.cocoa.x86_64, win32.x86, win32.x86_64Server, Tomcat 6.x 
3. Support browser : Safari, Chrome, IE 9, Firefox, Opera

If you are interested, please contact us.(adi.tadpole@gmail.com)

금요일, 10월 05, 2012

요즘 하고있는 올챙이(Tadpole for DB Tools) 작업이에요.


요즘 하고있는 올챙이(Tadpole for DB Tools, https://sites.google.com/site/tadpolefordb/) 작업이에요.

- Connection Manager는 기존에 DB기준으로 사용자 디비를 정렬했던것을 업무(?) 기준, 그룹기준으로 보일 수 있도록 수정했습니다.
- DB Connection Dialog도 Connection Manager처럼 그룹 기준으로 바꾸고 수정 기능을 추가 했습니다.
- Editor의 메인 상단에 현재 현결된 디비의 상세보기 버튼이 추가되었고, 아이콘을 넣었습니다.  단축키도 추가 및 바뀌었죠. 이제 Ctrl + e는 쿼리 실행이 아니 plan 보는 키입니다.  단축키가 궁금하다면 Ctrl + Shift + l 을 누르면 단축키 목록이 나옵니다.


수요일, 9월 26, 2012

올챙이 에디터 수정사항


올챙이 단축키 작업을 하고 있습니다. 
단축키 도움말은 이클립스 처럼 Ctrl + Shift + l 이구요. 창은 esc 키를 누르면 닫아지구요.

좀더 사용하기 편한 에디터로... 버전업해야할건데...  해야할 일은 정말 끝도 끝도 없네요.

Save, Ctrl + S
Execute Query, Ctrl + enter
Execute Query, F5
Execute Plan, Ctrl + E
Query Format, Ctrl + Shift + F
Query History, Ctrl + H
To Lower case, Ctrl + Shift + Y
To Upper case, Ctrl + Shift + X
Shortcut Help, Ctrl + Shift + L
Clear page, F7
Select All, Ctrl + A
Go to Line, Ctrl + L
Copy text, Ctrl + C
Past text, Ctrl + V

금요일, 8월 31, 2012

올챙이로 살펴보는 Eclipse 개발

제32회 Open Technet에서 '올챙이로 살펴보는 Eclipse개발' PPT입니다.

http://www.slideshare.net/hangum/eclipse-14121504

토요일, 8월 18, 2012

올챙이 작업일지.


올챙이는 저번주에 PostgreSQL 지원과 메인 sql 에디터를 전면 업그레이드 한 SR3버전을 배포했습니다.
그리고  올챙이를 좀더 확장성 있게 만들기 엔진을 다음과 같이 수정하려고 합니다.

amazon rds나 외부 어카운트 개념의 디비를 수용하도록 수정했구요. (ext_account )올챙이 좀더 확장성 있게 만들기 위해 resource data를 테이블 데이터로 저장하는 구조로 수정 하려고 합니다.현재는 엔진하나에 디비 하나로 맵핑 되어 있어서 확장하는데 많은 에로점이 있었구요.이것을 엔진 여러개에 디비 하나로 사용할수 있도록 

하는 작업입니다


.

수요일, 7월 25, 2012

예전생각에...

아음, 내가 왜 프로그래머 란 직업을 가지게 되었을까?
중학교때 애플컴퓨터가 있던시절, 8080컴퓨터가 학교에 처음으로 보급되고 전산실이 생기면서 부터 인듯합니다. Visual Basic으로 9*9 배열 만들면 팩맨 게임을 수업끝까지 하게 해주었죠. 그러면서 상업 고등학교 진입.. 80386 컴퓨터를 140만원이라는 거금을 들여 사주셔서... Doom 2를 하드가 뽀게지도록 하였고...

주로 3명이 어울려 돌아 다녔는데, 한명은 전자 상가에서 알바하면 컴터 조립도하는 고수(?),
한명이 형이 컴공을 전공하며 군대에 간틈에 형의 컴터를 독차지한 ??, 그리고 나 이렇게요.
전자 상가에서 컴터 조립하는 친구 컴이 최신에 엄청 좋은 거라고 소문이 났는데, 집에 놀러가보니 286 ㅋㅋㅋㅋㅋ 푸하하하 난 엄마가 386에 프린터까지 사줬다고.... 거기다 옥소리 사운드 카드라고.. 자랑하며 ㅎㅎ

광주 전자상가인가를 친구들과 돈을 걷어 일본 야한 불법게임을 복사하러 다니고... ㅎㅎㅎ
친구가 운영중에 bbs 호롱불(?)로 집전화를 빼 접속하고... 엄마에게 전화비영수증으로 추궁(?) 당하고.... ㅎㅎㅎㅎㅎㅎㅎ
호롱불 처음 접속하니 무언가하려면 id(?) 넣으래서.... id가 몬지 모르고 두려움에 '한글'을 타이핑.... 입력완료 눌렀으나 써진글은 한금(?) ㅋㅋㅋㅋㅋ 이때부터 나는 한금이 ㅋㅋㅋ 푸하하

게임복사하러 디스켓통들고 친구집에 놀러가고.....
컴터에 메모리 업글한다고, 아무것도 모르면서 컴터 열고 대충 키워 맞추다 보드 깨먹고.....
콜트(?), 베레타 모의 권총으로 총싸움하고....

그러면서 프로그램을 시작한듯합니다.
공부 찌질히도 못했고, 그런다고 잘한것도 없고.. 그나마 게임좀 했으니 프로그램을 만들어야(?) 겠다 싶었죠. 하하...

맨탈 붕괴 중이 었는데... 예전 생각을 하니 잠시 흐뭇하네요.

월요일, 7월 02, 2012

올챙이 0.0.9 feature

올챙이 0.0.9 feature
이렇게 0.1.0까지만 나올수 있다면 좋겠네요. 

RDB 
- 기본기능 향상
- DB to DB migration
- ERD 새롭게 구현
- PostgreSQL, DB2추가
- 모니터링 기능 

NoSQL
- 기본 기능 향상
- RDB to NoSQL migration
- Apache Cassandra 추가
- 모델링 도구 개발
- 모니터링 기능

월요일, 6월 25, 2012

올챙이 beta 5 배포시작합니다.

음 그러니까 토요일 저녁쯤에 코드가 마무리 된것으로 보이고...
일요일 좀 느슨하게하면 beta 5를 내놓을수 있을것이라 생각했지만...
크.. 역시나 생각했던것보다 1.5를 곱하면 시간이 딱 나오네요.

beta5의 가장 두드러진 점은 역시나 cubrid, mongoDB를 지원하는 것입니다.
mongoDB는 올챙이가 RDB 이외의 디비를 지원하는 첫번째 것이라.. 걱정을 했지만, 역시나.. 그나마 위안은 기본 뼈다구가 튼튼해서인지 괸찮았습니다. (물런 불만이 많지만..요.)

아직 올챙이가 해결해야 할 부분이 산더미....
할 수만 있다면 빠른길보다는 올바른 길로.. 코더의 자존심을 지키고 싶습니다.

올챙이가 beta 5가 나오기까지 약 340회 정도 다운로드가 되었습니다.
그리고 제2회 커뮤니티데이에서 올챙이를 소개하면서 cloud, 오픈소스, 개발툴 이런부분을 설명 할수 있게도 되었구요.
모회사에서 검토해 보시겠다고 했구요.

그나저나 7월 7일에는 커뮤니티 데이 발표있고, 14일에는 강의 있고...
PT는 아직도 이고..
버그도 스물스물... 기능 요구사항도 스물스물....

금요일, 6월 22, 2012

제2회 대한민국 커뮤니티데이에서 발표합니다.


올챙이로 살펴보는 개발툴과 cloud 발표하게 되었습니다.
올챙이 기본 구조도 살펴보고 
개발툴 e4나 orionHub등도 살펴보고요. 
cloud(??) 에서 개발이 무엇인지도 살펴 보려고 합니다.

오시면 뵈요....

자세한 설명은

화요일, 6월 12, 2012

올챙이 MongoDB 작업하기 중...

Tadpole for DB Tools는 MongoDB를 추가하기 위해 고민하고 있습니다.
처음에는 쉽게 생각했으나, 역시나 문제는 산적하네요.

우선 개발하고 있는 화면은 다음과 같습니다.
왼쪽 제일 상단에는 연결된 몽고디비리스트를 출력하고, 그 아래 왼쪽 Object view에서는 디비의 collection list를 출력하고 컬랙션을 선택하면 컬럼의 정보가 출력됩니다.
컬랙션을 더블클릭하면 중앙에 보이는 쿼리창이 보이게 됩니다.

쿼리 창은 필드, 검색 조건, 소트, skip, limit 등의 값을 주어서 검색하게 됩니다.
그리고 검색 조건을 특정 언어로 바꾸어 주는 컨버팅 기능이 존재하구요.
검색 조건을 csv, json 형태로 export 가능합니다.
검색 기능은 현재 이렇게 생각하고 진행하고 있습니다.

이렇게 구조를 잡은 이유는 다른 툴 같은 경우에는 json 형태의 쿼리를 입력해야 하는데, 여간 불편하고 복잡하고 그랬습니다. 또한 json 쿼리와 java 언어에서 쓰는 방법(?)이 또 틀려 더 불편했습니다.(실제 작업하시는 분 느낌은 어떠신지 모르겠네요)
그래서, 위의 그림처럼 조건을 입력하게하고 조건을 분석하기로 하여 개발하고 있습니다.

개발 하다보니, 결국은 SQL을 분석하는 거와 같은 작업을 하고 있다는 생각이 들었지요. --;;
음냐, 차라리 검색시부터 SQL을 쓰도록 하고sql을 분석하는 방법을 쓰면 어떨까 싶어 고민 중에 있습니다. 기존 10gen에서 sql jdbc드라이버를 쓰는것이 아니고, 독자적인 SQL AST를 만들어야 겠지요. 이것을 Convert to application기능을 이용해서 다시 자바나 json으로 바꾸어주면 되니까 더 편하지 않을까도 싶고요.
이렇게 하려면 시간이 좀 걸릴듯 합니다.

올바른 접근 법인지 어떤지 모르겠네요.
여러 분은 어떠세요?

올챙이 홈은 : https://sites.google.com/site/tadpolefordb/ 입니다.

금요일, 6월 08, 2012

오랫만에 쓰는 올챙이 작업일지

올챙이는 저번주에 CUBRID DB를 지원하는 코드를 작성했습니다.  사실 계획에 없었는데, 필받은 김에 넣었고 즐거운 경험이었습니다.

약간의 히스토리가 있는데 다음과 같습니다.
facebook 오픈소스 포럼에 올챙이 소개했습니다.
포럼 분이신 조민재님이 cubrid를 언급하시면 cubrid 정병주 사장님을 코멘트해주셨고, 정 사장님이 넣어주시면 좋겠다고 이야기 하셨지요. 그래서 작업시작...

작업시작 후 질문을 페이스북에 남기니 적극 응대 해주시는 정사장님과 NHN분이신 Laura oh..  지원완료 두둥...  큐브리드 디비 설치부터 지원완료까지 3-4일 정도 소용 되었습니다.
물런 틈틈히 다른 일하면서요.

재미 있는 경험 이었습니다.  이런 저런 생각을 많이 하게 되었고요. 

현재는 MongoDB도 지원하려고 코드를 작성하는 중에 있습니다.(에디터 버그 픽스 때문에 작성하던 코드를 멈추었지만, 버그픽스 후 바로...) 이것 시작도 페이스 북이 시작이구요. 오재용님이 조언해주셨고 따랐습니다.  카페와 몇군에 몽고디비를 지원하겠다는 소식을 남겼고, 올챙이 하루 다운로드가 약 20회가 되었습니다. 음음... 놀래라....
여러 분들에게 약속했던 6월말 배포를 지키려면 좀 바뻐져야 할듯 합니다.

토요일, 5월 26, 2012

Tadpole for DB Tools

https://sites.google.com/site/tadpolefordbtoolsen/home/TadpoleForDBToolsArch.png
원본인데.. 블로거에 올리면 이미지가 깨져보여서 ㅠㅠ;;

올챙이 모양을 수정 중에 있습니다.
올챙이가 하고 싶은 일을 한장에 표현하고 싶은데, 힘든데요.


프로젝트( https://sites.google.com/site/tadpolefordb/ ) 보시면 좀더 많은 정보가 있습니다.

수요일, 5월 16, 2012

Eclipse Basic?


예비 Eclipse platform 개발자들을 위한 8시간 기본 강좌를 준비 중입니다.
Eclipse라는 아이에 대배 전체적으로 알아보는 시간을 하려고 합니다.
Eclipse의 여기 저기를 좀더 알아보도록 수정해야겠습니다.


6월 초에 강의를 계획 중입니다.
비용은 20만원입니다.
관심 있는 분들은 5월 30일까지 메일 보내주십시오(hangum엣gmail.com)
ps) 10명 미안일 경우 취소 될수 있습니다.

  1. What is Eclipse ? (1시간)
    1. IDES
      1. NetBeans
      2. IntelliJ IDEA
      3. Cloud9 IDE
    2. History ?
    3. Eclipse Platform Architecture
    4. Eclipse Feature(e4, orionHub)a
  2. Eclipse IDE Basic (2시간)
    1. eclipse.org 둘러보기
      1. Eclipse Projects(http://www.eclipse.org/projects/listofprojects.php)
      2. download(http://www.eclipse.org/downloads/)
        1. eclipse marketplace(http://marketplace.eclipse.org/)
      3. resources(http://www.eclipse.org/resources/)
      4. forum(http://www.eclipse.org/forums/index.php/i/1/97e14bc518d5251c8ab6c65466eeb4d0/)
      5. bugzilla(https://bugs.eclipse.org/bugs/)
      6. planet eclipse(http://planeteclipse.org/planet/)
    2. 설치
      1. JDK  설치
      2. 개발자 별 Eclipse Download(Java EE, C/C++, RCP/RAP, Report, Tester, PyDev, PHP......) Developer
    3. Eclipse 구조
      1. 폴더 구조
        1. configuration
        2. dropins
        3. feature
        4. p2
        5. plugins
        6. workspace
      2. plugin 추가/ 삭제
    4. Eclipse 구성
      1. 전체 workbench모형
    5. 유용한 plugin 소개
      1. log4e, UMLet, FindBugs, Checkstyle, Subclipse, WindowBuilder, WindowTester 등
    6. 실습
      1. Helloworld Project 생성 
      2. 실행, 디버깅, JUnit 만들어보기
      3. other plugin 설치
      4. svn, git 중 하나 실습
  3. What is SWT/JFACE? (2시간)
    1. About SWT
    2. SWT Packages
    3. SWT widgets / controls
    4. SWT Event
    5. Layout
    6. Viewer
    7. Resource Management
    8. Selection Service
    9. Data Binding
  4. What is Eclipse Plugins/RCP? (2시간)
    1. Runtime and OSGi
    2. Workbench
    3. Plug-ins
    4. Startup sequence
    5. Extension points, extensions, contributions
    6. Views
    7. Commands and Actions
    8. Editors
    9. Wizards
    10. Help
    11. Branding
    12. Target Platforma
    13. Update Site
    14. Test
    15. Build, Deploy
  5. Eclipse Heroes (1시간)
    1. Birt (http://www.eclipse.org/birt/phoenix/)
    2. SWTChart (http://www.swtchart.org/)
    3. EMF (http://www.eclipse.org/modeling/emf/)
    4. GEF (http://www.eclipse.org/gef/)
    5. XText (http://www.eclipse.org/Xtext/)
    6. OrionHub (http://www.eclipse.org/orion/)
    7. babel (http://www.eclipse.org/babel/)
    8. Gyrex (http://www.eclipse.org/gyrex/)
  6. 질문 응답

화요일, 5월 08, 2012

5.7 올챙이 작업일지.

1. 올챙이에 xtend를 적용해 보기 위해 밀렸던 스터디 시작
target platform에 기존 xtend 2.3.0m6 반영

- export 데이터 출력
- 언어별 코드 변화
부분에 적용해 볼 생각

2. 하루에 3회 다운은 계속되지만, 반응은 없음.
--;; 아마 별로라 없는가?

월요일, 5월 07, 2012

5.6 올챙이 작업일지

1. User관리 기능 정의(com.hangum.tadpole.manager.core 플러그인으로 확장)
 - 어드민 관리 화면
 - 메니저 관리 화면
개발 중

2. 올챙이는 하루에 적게는 2회 3회 정도 다운로드가 계속 되고 있네요.

다운되고 있고, 도와주시는 분들을 위해서라도 좀더 잘 해야하는데...

화요일, 5월 01, 2012

5.1 노동절 올챙이 작업일지.

올챙이 작업일지는 앞으로 페이스북 올챙이 페이지에 적어야 될듯도 싶네요.

1. 테스트를 위해 vmware에 ubuntu, mac 설치완료.
2. tadpole에 제품 이미지(?)  적용.
3. 올챙이를 사용하는 중에 특정 페이지 이동시에 나가겠냐는 메시지 나오도록 수정
(지금은 ie, firefox만 적용)

4. 테이블 데이터 직접 수정 로직 정리

 * <pre>
 *
 * 테이블 데이터가 실제 테이블에 보여짐
 * 모든 데이터는 트렌잭션 처리를 하도록 하며, 데이터 저장시 오류가 나면 롤백 처리 합니다.
 * 데이터 타입의 검사는 ResultSetMetaData의 getColumnType으로 검사합니다.
 *
 * - 데이터 추가
 * 1) foreign key가 존재 하지 않아야 한다.
 * 1-1) 데이터 수정은 Date, 숫자 항목의 key type만 검사하여 입력한다.
 *
 * - 데이터 수정 규칙
 *   1) primary 테이블의 데이터를 수정 가능합니다.
 *   1-1) 데이터 수정은 Date, 숫자 항목의 key type만 검사하여 입력한다.
 *   1-2) 데이터 저장은  틀랜잭션을 처리합니다.
 *
 *   2) foreign key가 존재 하거나, primary key가 없다 면 읽기 모드만 가능
 *
 * - 데이터 삭제
 * 1) primary key가 존재해야한다.
 * 2) 다만 foreign key가 존재 한다면 삭제 하지 못한다.
 *
 * </pre>


일요일, 4월 29, 2012

토요일, 4월 28, 2012

올챙이 전체 이미지 작성

올챙이가 중간에서 어떤 역할을 더 할수 있을까요?
올챙이 같은 역할을 하는 프로그램은 이미 많이 나와 있고, 점점더 힘을 더해 가는것이 사실인듯 합니다. 

개발환경도 점점 변하겠지요. 
Cloud Foundry나 Amazon AWS Marketplace 처럼요.
데스크 프로그램으로 무언가 하기에는 너무 빨리 변하고 있는 상황을 봅니다.

여기저기 과도기 적인 개발 플렛폼들이 선을 보이고 있네요.
<< 과도기 적인 개발 플렛폼 >> 들에 관해서는 다음에 글을 써보죠.
그래서, 어떻게 보면 Eclipse 4.x도 과도기적인 플렛폼이 아닌가 싶습니다.

세상은 빨리 변하는데, 이클립스는 흐름과 다르게 특정 기술에 접목해서 발전하려는 듯 싶어서요.  물런 orionHub를 에디터 상에 임베디드해서 git이랑 붙이는 노력들은 있지만, 아마 힘들것으로 보이구요.

한편으로는 구관이 명관일지도 모르겠다는 생각도 듭니다.
알아야 할것은 더욱이 많아지고, 선택의 폭은 더 넓어지고 있으니까요.

여기저기 은 총알(?)을 말하지만, 총을 잘 다루는 사람에게만 통하는 것인지 모르겠습니다.
대강 넘겨 집을 정도로 호락호락 하지 않는듯 합니다.


수요일, 4월 25, 2012

4.25 올챙이 릴리즈 노트

1. 에디터
- 오라클 키워드 하이라이팅 되도록 수정
- 에디터 에디터 버그 수정
- 에디터 최적화 진행 중

2. 권한 관리 기능 추가
- guest, user 권한일 경우 디비 url보이지 않도록 수정

3. Object View에서 더블 클릭시 데이터 보이도록 수정.

4. standalone mode 일 경우, 시작과 동시에 브라우저로 올챙이 보이도록 수정

5. 기타 잘잘 한 버그 수정

6. 올챙이 소스 오픈

4.25 올챙이 작업일지

1. 4.25일자 베타 배포예정
2. standalone 모드 일 경우 시스템 시작시 브라우저 자동으로 실행되도록 수정

3. 6일간 올챙이 첫번째 배판 상황 :
다운로드 64회
블로그 평소보다 두배정도..
음음...

일요일, 4월 22, 2012

4.22 올챙이 작업일지

1. 에디터 :  Oracle 문법강조 구문 적용.
      인테넷에서 텍스트 붙여넣기 했을때 쿼리 실행하지 못하는 오류 수정

2. group table 추가 및 user 그룹 추가

3. 유저에 따른 권한 기능 추가

토요일, 4월 21, 2012

4.21 올챙이 작업일지

1. 올챙이 베타 다운로드 : 5회 ㅠㅠ 주말이라 그런지... 끙
2. 올챙이 엔진 수정 및 스키마 수정 (정상적으로 커넥션 못 끊는 경우가 생기나 봐) ㅠㅠ
3. amazon rds 분석 중...
   IAM 분석 중 - RDS Full ACCESS 권한으로 접근 가능하고 cli 기능으로...
4. amazon rds 60일 무료 가능
5. 위안은 블로그 유입자가 평소보다 두배정도 많은 것.  유투부 플레이가 두배정도 많은 것.

금요일, 4월 20, 2012

4.20 올챙이 작업일지.

1. 테스트를 만들려고 sahi로 삽질 대략 object 인식하는 단위(?)가 틀림. 적용안되.
http://wiki.eclipse.org/RapUITesting 를 찾아서 해보려는데, 일단 작성해야 할 범위가 너무 커서 엄두가 안남. ㅠㅠ

그나마 심플한 방법은 rcp로 팩키지를 만들고, WindowTester로 테스트(?)  어떨지 고민 중인데.
0) 빠른 테스트 가능 및 빌드 테스트 가능.
1) 로직 테스트는 가능 할 듯.
2) 기본 UI도 테스트 가능 할 듯.
3) 간단한 gef 테스트도 가능.
4) jenkins로 빌드도 가능(?).

현실적인 대안이 될듯 싶습니다.

OS, Browser 별 테스트는 불가능. ㅠㅠ

2. Eclipse Marketplace에 올림.
http://marketplace.eclipse.org/content/tadpole-db-tools

반응은 글쎄.
소스 어디 있냐고 문의 메일 한통 정도.(???)

3. 올챙이 베타 다운로드는 24시간동안 24번 다운로드 됨.
오늘은 특별히 알리는 행위를 하지 않았음에도, 어제보다는 다운로드 수가 많음.

아마도 마켓플레이스 보고 온 사용자 + 어제 광고 효과 때문이 아닌가 싶습니다.

사이트 방문 통계나 다운로드 통계로 어플리 케이션의 방향성이라던가 호흥도를 알수 있으면 좋겠는데...

4. 기능 리스트를 다시 만들어 보자.
예전에 RDBAS에서 작성해주신 리스트+ 토드 혹은 SQLGate 기능 비교표를 만들고 반듯이 있어야 하는 기능을 만들어 보도록.

- 기본 기능을 잘 구현하면, 불법 소프트웨어를 사용하는 개발자들에게 무료로 사용할수 있도록 하는것.
- 아마존 계정으로 접속하는 것은 빠른시간에 해야겠어.

5. 구글 사이트에 영문 페이지 제작(?), 구글 코드에서 영문 설명으로 수정.

6. 블로그 방문객 수가 평소보다 두배 많음(?).

목요일, 4월 19, 2012

4.19 올챙이 작업일지

1. 베타버전 배포 및 상황(?) 살피기
2. 버그 해결(http://code.google.com/p/tadpole-for-db-tools/issues/detail?id=7&can=1)
오라클 jdbc 드라이버를 최신으로 교체.
아마 오라클 8i, 9i에서는 안될지도... 테스트를 못해봄.
3. 배포 모듈 수정(하루 속히 데일리빌드, 테스트 가능한 환경을 만들어야겠다는...)
4. 사용자 계정 디비 수정
5. 이클립스 마켓 플레이스에 올챙이 등록(승인 대기 중)

4.19 올챙이 베타 배포기

올챙이 배타를 배포한지 20시간이 흘렀습니다.
다운로드는 20회
버그 & 이슈 3개

페이스북
개인 :  좋아요14, 댓글 29개
jco : 좋아요 12, 댓글 4개

이정도입니다.

내일쯤에는 이클립스 마켓플레이스에 오픈이될터인데, 결과가 어떨지 궁금하네요.


올챙이 드디어 배타 빌드를 해서 오픈했습니다.


올챙이 드디어 배타 빌드를 해서 오픈했습니다. 



Tadpole for DB Tools(올챙이)를 관심을 보여 주셔서 감사합니다.
웹브라우저에서 MySQL, Oracle, SQLite DB, MSSQL(예정)을 관리 하는 툴입니다.

지금까지 다양한 Database를 사용하면서 여러가지 툴을 사용하시면서 불편하셨죠?
Tadpole for DB Tools는 이 불편함을 해결합니다.
웹 브라우저에서 개발이 멀지않아 현실이 될 것인데 그것을 미리 시도해 보려는 목적도 있습니다.

올챙이는 웹서버를 이용하므로 자신의 로컬에 프로그램을 인스톨 하지 않아도 됩니다.(war 방식일 경우에)
혹은 로컬에 설치하여 사용하실 수도 있습니다.
브라우저로 접속하여 어플리케이션을 사용합니다.


4.18올챙이는

1. 홈페이지 수정 및 메뉴얼(?) 보강 --;;
2. 배포 바이너리 생성 및 배포
3. 몇개 사이트 홍보(?)

수요일, 4월 18, 2012

4.17 올챙이는

어제 올챙이는 국제화 작업(?). 
Erd에 관계 제대로 표현하지 못하는 버그 수정. 
유저관리에 아마존rds 포함하도록 디비수정 및 guest유저 추가 및 로그인 기능 추가 했습니다.

월요일, 3월 19, 2012

생각해보니 내가 Eclipse Platform을 개발하고 있는 것은 크나큰 행운인지도 모르겠습니다. Swing 으로 시스템을 개발하고 있을때, Swing의 불편함을 해결해주는 JFace를 보고 Eclipse RCP를 공부하기 시작한것이 개기가 되었는데 말이죠.

  벌써 시간이 7년전인가 8년전인가 싶기도 한데 말이죠.

  Eclipse 라는 좋은 오픈소스와 좋은 아이디어 하며, 진취적인 사람들을 보면서 그나마 허접하지만, 내가 있는 것이 아닌가 합니다.
  그 좋은 환경에서 허접한 내가 아쉽지만 말입니다.

  그럼에도 불구하고, 허접한 나에게도 무언가 계속 대단하다고 생각되게 하는 좋은 것들이 끊임없이 보이네요.
  오픈소스, 오픈소스 커뮤니티란.. 참 좋은 것인듯 합니다.

  점점 무뎌져 가는 듯한(?) 나에게 좀더 도전할 수 있도록 힘이 되어주는듯도 하구요.
  e4가 잘 런칭되었으면 좋겠네요. 몇개월 남지 않았지만요.

  올챙이도 잘 되어주면 좋겠네요 푸힛