반응형
Professional 소프트웨어 개발을 읽었습니다. 스티브 맥코넬 씨가 지은 책인데요, 번역서가 2003년에 초판이 발행되었네요. 책의 용어를 사용하자면 이 책은 SWEBOK(Software Engineering Body of Knowledge)에서 변하지 않는 범주에 속하는 책이라고 여겨집니다.

책을 읽고 나서 곰곰이 생각하게 된 것은, 컴퓨터과학과 소프트웨어공학 사이의 격차인데요. 일단 컴퓨터과학은 현업에서 그 가치가 크게 인정받지 못하더라고, 다른 과학자와 주로 관련을 맺는 점에 반해, 소프트웨어공학은 현업에서 실제로 소비자와 부딪치기 때문에 여러가지 제약 조건들을 숙지하고 있어야 한다는 점이 인상적이었습니다.

마지막 파트인 업계의 프로정신에서 다루어진, "혁신의 확산"에 대한 그래프가 있었는데요. 선각수용자와 전기 다수의 캐즘(chasm)을 다루고 있는 부분이 있었습니다. 혁신자보다는 적은 위험을 안는 선각수용자들은 XP나 스크럼 등 애자일 방법론을 적용하는 쪽이고, 전기 다수인 사람들은 역량 성숙도 모델(CMM) 종류를 적용하는 것이라고 생각했습니다. 책에서는 Code&Fixing(일단 코드를 작성하고, 나중에 고치는)을 가장 피해야 한다고 했는데, 이 부분에서 가책을 느꼈습니다.

책의 역자서문에서는 Rapid Development나 Code Complete를 스터디하기 전에, 다소 추상적인 에세이들이 모인 이 책을 먼저 읽을 것이 추천되고 있습니다. 소프트웨어공학 분야를 아우르면서, 동시에 "프로페셔널"하다는 것에 논한다는 점에서 신선한 자극을 주는 책이락 생각합니다.
반응형
반응형
Xper[각주:1] 2007년 송년회(기記년회[각주:2])를 다녀왔습니다. 난생 처음 그리스 음식도 먹어봤네요. 잊지 못할 경험이 될 듯합니다.  중간에 나온 가지에 담긴 음식이 있었는데, 정말 맛있더라고요.
 
발표자료 준비하면서, 워낙 슬라이드 준비하는 것도 그렇고 발표하는 것도 되게 어설퍼서 어떤 내용을 넣을까 고민을 해왔어요. 그런데 막상 모임 장소에 딱 도착하자마자 PyO님 앞에 앉게 되었는데, 경수님이 환한 미소로 반갑게 맞아주셔서 긴장도 좀 풀리고 저에겐 도움이 되었습니다. 경수님은 "창의성은 어디에서 오는가?"라는 주제로 발표해 주셨는데 "의식의 흐름"이라는 기법이 인상적이더라고요. 저는 이상처럼 문학가 분들만 사용하는 방식인 줄 알았는데, 슬라이드를 준비하는 데에도 충분히 적용될 수 있구나 하는 감명을 받았어요. 늴리리야 노래를 못들은게 아쉽습니다. ^^;;

따로 적어두었으면 더 선명하게 기록을 했을텐데, 두서없이 발표 내용을 나열해 보자면...

지적재산권에 관심있다고 해주신 은경님의 "목표와 목적"에 대한 발표가 공감이 많이 되더라고요. 목적을 따라가야 하는데, 어느 사이에 목표가 목적으로 바뀌어 있는 경우가 종종 있었거든요. 심정적으로 목표에만 지나치게 생각하다가 그런게 아닌가 생각했었는데, 잘 뚜렷하게 구분해야겠다는 생각했습니다. 예전에 라이센스 관련해서 궁금해가지고, CC 비영리 라이센스와 구글 애드센스는 충돌할까?라는 글을 올려본 적이 있는데 나중에 또 뵙게되면 여쭤보고 싶네요.

TRIZ 발표해주신 승백님의 발표도 인상깊었던 게 도식을 이용해서 설명하신 부분이었는데요. 사실 이전에 TRIZ라는 걸 얼핏 신문기사에서 본 느낌은 있었느데 구체적으로 그림을 보니깐 더 관심이 가더라고요. ^^

아발론 연대기 소개해 주신분 정말 감사했어요. 마침 학교 도서관에도 책이 있고 해서, 겨울 방학을 심심하지 않게 보낼 수 있을 것 같아요. 아더왕에 대한 오해나 편견도 깰 수 있는 계기가 될 것 같고요. 그리고 좋은 소설을 찾고 있던 중이었는데, 마음을 굳혔습니다. ^^

이나무님의 발표도 들었는데요. 발표에서 아내를 사랑하시는 마음이 느껴져서 감동적이었어요. 인류를 위한 사랑으로 끝맺음을 하셨는데, 정말 따뜻한 발표였습니다.

애자일 방법론으로 결혼 준비를 하셨다는 발표도 있었는데요. 아마 가장 유쾌했던 발표가 아니었나 생각하게 되었어요. 압권이었던 대목은 "요구사항이 자꾸 바뀌기 때문에..사용자 스토리도 써 가면서"(이런 내용이었던 듯)였습니다. 앞으로도 계속 행복하시길 기원합니다.

입사하셨는데 사수 분이 설명도 잘 해주지 않고 짝 프로그래밍부터 시작했다는 에피소드의 발표도 있었는데요. 발표를 듣고 나서, 다른 분이 자세히 설명해 주시는 것도 좋지만 스스로 학습한 것만큼 더 기억에 남는 건 없다는 교훈을 얻게 되었어요.

파인만은 "파인만씨 농담도 잘하시네!"도 읽고, "Lecture of Physics" 때문에 재미있고 훌륭하신 물리학자임은 알고 있었는데 "파인만 학습법"을 소개해주신 분도 정말 감사했습니다. 한번 저도 적용해보고 싶네요. "오픈 시큐리티"가 잘 되셨으면 좋겠습니다.

준석님은 P-Camp에서 이전에 한 번 뵌적 있었는데, 우연히 여기서 뵙게 되어서 반가웠어요. 슬라이드 그림이 정말 멋있었습니다. 말씀도 잘하시고, 나중에 전체적으로 발표가 끝난후 WoC 이야기도 해주시고 이모저모 감사했습니다.

선아님은 어디서 얼굴은 뵌 적이 있는 것 같은데.. 하는 느낌이 들었는데 P-Camp 2회 때 OST 마무리하면서 그 때 멀리서 뵈었다는 걸 깨닫게 되었어요. 발표를 유쾌하게 진행해 주셨는데요, 열정적인 모습이 기억에 남았어요. (저도 열정을 수혈받은 느낌이 드네요. ^^)

웹개발 2.0 루비온레일스의 저자이신 대산님도 뵈었습니다. 발표를 듣는데 공부가 즐겁다고 하셔서, "혹시 엄마친구아들이신가?" 하는 생각도 했어요. 대학 때 수학이랑 물리를 좋아하셨다고 했는데, 저도 전공이 물리라서 호감을 느꼈어요. (실력은 부족하지만 저도 수학을 좋아해요.)

정훈님은 정말 따뜻한 느낌이 나는 사람이었어요. 발표가 끝난후 단위테스트를 도입해서 쓰고 있으시다는 이야기 들었는데요, 기회가 닿는다면 좀 더 이야기를 듣고 싶네요.

창준님의 발표는 파격적인 느낌이 강했어요. 발표 시작할 때 돈키호테가 부른 노래도 들려주시고, 추천해주신 돈키호테 뮤지컬에 관심이 갑니다. "이너 골프"에 대한 이야기도 듣고, 여분의 슬라이드가 궁금하네요. 아, 그리고 아기 정말 이쁘던데요. 세상을 연결하라는 의미에서, 세연이라고 이름을 지으셨다는데 정말 좋은 의미인 것 같아요.

펭도님의 발표에서는 누구나 디자인 할 수 있다라는 것과, Brass Band를 창업하신 회사에 적용하고 있다는 이야기가 마음에 다가왔어요. 주당 16시간 근무를 목표로 근무시간을 줄여나가고 있다고 하셨는데, 긍정적인 결과로 나타나길 기원할게요. 이번 행사의 스태프로 힘써주셨는데 감사합니다. :)

박일님의 발표는 리니지 2의 Credit 화면을 보여주셨어요. 확실히 프로그램에 개발하신 분들의 이름을 적는 것은, 개발하시는 분들의 입장에서는 만들고 계신 프로그램에 대해, 더 사랑할 수 있도록 하게 되는 계기를 마련해 줄 것이라고 생각해요.

미디어아트를 하시는 승준님의 발표는, "포토 모자이크"가 여러 스케일에서 이루어지는 영상을 보여주셨는데요. 각 사진으로 큰 사진을 구성한다는 게 멋있다는 느낌이 들었습니다.

스페인어를 잘 하신다는 우경님의 발표는, 재미있게 들었어요. 온라인 학습 생태계에서 이나무님과 같이 일하시고 있다고 들었는데요. "몸을 움직이지 않으면, 살아있다는 느낌이 들지 않는다."라는 말을 인상깊게 들었습니다. 언제 한번 실력 발휘 해주셨으면 좋겠어요. ^^

세계여행을 가고 싶다고 발표해주신 분도 있었고요(정말 부러워요), 그 분의 아내 분이 커피에 대한 이야기를 해 주셨는데요. "안암동 보헤미안"이라는 곳을, 꼭 가보고 싶다는 마음을 먹게 되었습니다. 미처 그런 장소가 있는지 몰랐어요.

제일 마지막으로 발표해주셨던 미진님. XP를 먼저 경험했다가 지금은 그런 쪽과 거리가 먼 회사에서 근무를 하시니깐 주변에서 "타락한 천사"라고 부른다고 하셨다는 점이 기억에 남네요. 기년회의 스태프로 임해주셨는데 감사합니다. ^^

모든 참여자가 발표를 해서, 저도 발표를 하게 되었어요. 슬라이드 안에 포함된 이미지들은 저작권이 있는 이미지가 있고요, 발표를 할 때 슬라이드 내에서 인용의 목적으로 사용했는데 공정한 관행에 합치되지 않는 인용이라고 생각하시면 댓글이나 방명록을 통해 알려주시면 좋겠습니다. 그리고 이 이미지들은 CCL 적용을 받지 않으며, 각 저작자에게 저작권이 속합니다. 슬라이드 내에 출처 표시는 되어 있습니다.
All Images in slide are copyrighted works. I used them only for quotation (or fair use), but if you think this violates their copyright, please let me know the fact by comment or guestbook. These are not applided in CCL, and each copyrighter have their copyright on each image. I expressed source of each image in a slide by URL.


좋은 분들의 이야기도 많이 듣고 했는데, 전부 기억하지 못해서 혹시라도 포함되지 않으셨다면 양해를 부탁드려요. (--)(__)  서로의 열정과 에너지가 기년회를 통해 전파되고, 모임에 참여한 사람들이 전체 발표 세션이 끝난 이후에 편안한 분위기에서 이야기를 나눌 수 있다는 점이 좋았습니다. 발표자료를 준비하면서 한 해 전체를 회고하는 계기도 되고, 다른 분들의 회고하는 스타일과, 그 회고에서의 핵심적인 교훈들을 배웠습니다. 저는 집이 멀어서, 11시 15분 쯤에 나왔는데, 집에 도착하니 새벽 1시더라고요. 앞으로도 기회가 닿는다면 참석해서 계속 좋은 경험을 나누고 싶습니다. 감사합니다.

0123
  1. 한국 eXtreme Programming 사용자 모임으로, 익스트림 프로그래밍과 같은 책이나, What is Xp와 같은 글이 XP를 아시는 데 도움되실 듯합니다. [본문으로]
  2. 디벨로퍼 웍스의 망년회 대신 기년회라는 글을 참조하세요. [본문으로]
반응형
반응형
"Release it! 성공적인 출시를 위한 소프트웨어 설계와 배치"를 읽었습니다. Hani님 블로그인 Talk about Software with hani를 틈틈이 구독하다가 베타리딩 공지를 보고, 참여할 수 있게되어 더욱 기억에 남는데요. 12월 7일 있었던 베타리더 모임 때 Hani 님이 쓰신 메시지가 담긴 책을 받게 되어 기뻤습니다.

이 책은 프로젝트를 완성하고 나서 그 이후라는 시점에 대해 집중하고 있습니다. 2장에서 소개되는 사례연구 중 하나인 "항공사를 정지시킨 예외(Exception) 사건"이 있는데요. 실제로 모든 버그에 대해 릴리스하기 전에 대처하기는 어렵습니다. 이런 버그가 미칠 수 있는 영향을 최대한 축소시키는, 설계를 채택하는 방법이 논의되고 있습니다.

깊은 인상을 받았던 곳은 4장 안정성 안티패턴에서 언급된 "느린 응답"입니다. 저도 어떤 웹 페이지에 들어갔는데, 불러오는 과정이 더디면 무의식적으로 페이지 새로 고침을 누르곤 했습니다. 이런 사용자의 행동은 웹 서비스의 트래픽을 더 무겁게 할거라고 예상되는데요, 이런 부분에서 저자의 통찰력을 느꼈습니다.

프로젝트 출시 이후의 삶을 다룬다는 점에서, 실용적인 도움이 될 수 있는 책이라고 생각합니다. 이 책은 지난 번에 소개해드렸던 "Ship it!"을 읽었습니다와 같은 시리즈입니다.
RELEASE IT: 성공적인 출시를 위한 소프트웨어 설계와 배치 상세보기
마이클 나이가드 지음 | 위키북스 펴냄
성공적인 출시 이후를 위한 소프트웨어의 설계와 배치를 다루는 전문서. '엔터프라이즈급'의 소프트웨어 시스템 개발자를 대상으로, 소프트웨어가 출시 이후, 혹독한 현실에 맞설 수 있도록 설계하고 배치하는 방법을 안내한다. 작동시간을 지속시키는 방법을 가르쳐주면서, 용량을 최적화하는 방법에 대해 중점적으로 다루고 있다. 또한 데이터 센터에서 사용하는 소프트웨어를 만들 때 아키텍트가 고려해야 하는 일반적인 디자
반응형
반응형
2007년 12월 1일 금년 마지막이 될, 다섯 번째 루비세미나에 다녀왔습니다. 장소는 4회[각주:1]와 동일했습니다.

사용자 삽입 이미지

5회 루비 세미나 사진


첫 번째 발표는 Daum 캘린더 개발이야기. 관심이 갔던 부분은 SeeSaw인데요. 서버를 재시작하지 않고 중단하는 서버를 부분으로 나누어서 각각 갱신하는 점에 매력을 느꼈습니다. RoR로 운영되는 서비스라고 하셨는데, 좋은 선례가 되었으면 좋겠습니다.

두 번째 발표는 ETRI에서 YouFree. 휴대 가능한 작업 공간을 목표로 개발되었다고 합니다. 오픈소스이고 InstantRails 기반입니다. 집에서 USB로 꽂고 사용해 봤는데, 말씀하신 대로 하드디스크나 외장디스크에 복사해서 쓰시는 편이 더 좋을 듯합니다.

세 번째 발표는 Ruby와 Rails를 이용한 진짜 개발. 첫 부분인 Getting Real에서 다루어진 주제는, 애자일 흐름과 상응하는 부분이 많아서 공감했습니다. 배포 부분도 잘 모르고 있었는데 여러 경우로 나누어 설명해 주셔서 큰 도움이 되었습니다. 중간에 사진들도 재미있었어요. ^^ 발표 내용은 ikspres님의 블로그에서 5회 루비세미나를 참조하세요.

네 번째 발표는 2007년 크리스마스 선물이 될 예정인 Ruby 1.9에 대한 소개였는데요. 이번에 새로 지원되는 해시 표기법을 보니, 더 간단하다는 느낌이 드네요. String에서도 Enumerable을 버리고 문자 자체를 출력하도록 하는 것도 좋아 보여요. ASCII 코드값보다 더 자주 쓰여서 기존의 불편한 점이 해소될 거라고 봐요. GEM이 기본 배포에 포함되고, YARV(VM)도 포함된다고 하는데 기대가 됩니다. 발표하셨던 분이 참조하셨다고 이야기 해주신 Changes in Ruby 1.9의 링크를 겁니다.

다섯 번째 발표는 RESTful 웹 서비스 소개였는데요. RESTful Webservices라는 책을 도서관에 신청만 해두고 아직 읽어보지 못한 상태였는데, 핵심단어를 슬라이드에 띄우고 잘 설명해 주셔서 좋았습니다. REST에 대해 REpresentational State Transfer라는 표면적 의미보다는, 더 자세한 의미를 듣게 되어서 기뻤습니다.

여섯 번째 발표는 JavaScript on Rails였는데요. RJH, Lowpro(with RJS), JQuery 세 방식으로 구현된 잘 짜여진 예제가 매우 인상깊었습니다. 웹에서 행동을 분리하는 움직임은 DOM 스크립트라는 책을 읽을 때도 들었던 이야기인데요, 자바스크립트를 사용할 수 없는 설정이라도 작동이 온전히 이루어질 필요가 있다는 데 동감합니다.

일곱 번째 발표는 meet the Nginx였는데요. Nginx를 왜 채택했는지 경험에 기초해 이유를 설명해 주시고, 도입하고 나서 겪으셨던 어려웠던 경험들을 공유해 주셔서 좋았습니다. timeout default와 ignore_invalid_headers 두 가지였습니다. lockdown이 팁으로 나왔는데, 공부가 많이 부족해서 잘 이해를 못했습니다.

여덟 번째 발표는 봇을 위한 페이지 캐싱이었는데요. 운영하시는 서비스의 로그 분석 결과를 보고(특정 검색엔진의 봇이 한 서버에 그렇게 많은 부하를 준다는 사실에 대해 놀랐습니다.), 그 문제를 해결하기 위해 어떤 방법을 사용하셨는지 이야기해 주셨습니다. 하지만 생각했던 것보다 효과가 잘 나타나지 않았던게, 봇이 똑똑해서 같은 페이지에 대한 Hit Ratio가 낮기 때문이라고 합니다.

번외로, deepblue님이 slugger에 대한 유인물을 2장 정도로 정리해서 나누어 주셨습니다. slugger는 me2day와 springnote의 open API로 DB없는 blog를 구성할 수 있게 한다고 이해했는데요, 정말 신선하고 재미있는 프로젝트라고 생각해요. 문서에서 slugger에 대한 deepblue님의 사랑이 느껴집니다. 발표가 모두 끝난 후, 인사이트에서 후원해주신 루비 관련 도서 5권을 rand 함수를 돌려서 추천했는데요, 당첨되신 분들 축하드립니다. ^^
(저는 ㅠㅠ)

루비 사용자 커뮤니티가 점점 커지는 모습이 보인다고 많은 분들이 말씀하셨습니다. 루비 세미나 참석해서 정말 즐거웠고, 많이 배워갑니다. 내년 6회 세미나를 기대해 봅니다.
반응형
반응형
2008 매시업[각주:1] 경진대회의 부대행사로 열린, 매시업 엑스포에 다녀왔습니다. 9개월 전에 매시업 세미나를 다녀오고 나서[각주:2]라는 글을 올린게 엊그제 같은데, 어느새 2회를 맞이하는 경진대회를 보니 감회가 새롭네요.

수업이 1시에 끝나고 난 후 시간을 맞추기 위해 점심도 먹지 못하고 지하철 전동차에 탔습니다. 다행히 낮 시간대라 앉아서 갈 수 있었죠. 제가 신청했던 시간은 15시~16시 였고 20분정도 여유있게 삼성역에 도착하고 나서 조금 안심했는데, 그게 아니었습니다.

태평양홀 부근에는 무슨 개회식 같은 걸 하는 중인지 분주하고 복잡한 양상이었고, 등록대는 5개인데 사전등록과 현장등록을 담당하는 분이 각각 한 분씩이라 줄이 꽤 길어진 상태였습니다. 늦게나마 줄을 서서 꾸준히 기다린 다음에야 통행권을 얻을 수 있었죠. 패스에는 이름이 써 있는게 아니라, RFID 종류의 칩이 붙어있는 것 같았습니다. (자세한 정체는 모르겠네요.)

사용자 삽입 이미지

통행권


매시업 엑스포의 위치도 헤매서 엉뚱한 쪽으로 끝까지 갔다가 다시 반대편으로 방향을 돌려 올 수 있었습니다. 일단 등록대에서 등록 확인을 하고, 9개의 튜토리얼을 들은 후 pass를 받는 명찰을 등록대에서 주시더군요.

먼저 me2day 부스에 찾아갔습니다. 기억도 해 둘겸 me2API 사용설명서도 링크를 겁니다. get_latests, get_friends, create_post를 kkung님의 큰 도움으로 실습해볼 수 있었습니다. me2API 클라이언트 라이브러리를 java로 구현해주신 rath님도 뵐 수 있었습니다. 미투데이 만드시는 codian님, 멘토로 오신 dahlia님도 뵈었고요. (전부 소개해드리지 못한 점을 양해해 주세요. ㅠㅠ) create_post를 실습하니깐 미투데이 API로 입력하는 글로 실제로 제 페이지에 포스팅된 걸 확인하는 일은 인상깊은 경험이었습니다.

오픈마루 부스에서는 지난번에 오픈랩 때 뵈어서 그런지 월반(?)을 해서 시험만 치고 pass를 했습니다. 오픈마루 매시업 센터::API 센터 링크를 걸어 둡니다.

마이크로소프트 부스에서는 실버라이트로 플리커와 연동되는 매시업들을 볼 수 있었습니다. PopFly로 쉽게 매시업 서비스를 만들 수 있다고 하시더군요. 저는 이 부분을 보면서 Pipes가 연상이 되었습니다.

다음(Daum) 부스에서는 Channy 님께 인사도 드리고(자주 뵈서 그런지 저를 알아보시는 것 같습니다. =ㅅ=;;), 매시업 수업을 들었습니다. 세 언어로 다음 부스에서 진행되고 있었는데, 맨 오른쪽에 Python이라고 모니터에 붙어 있길래 그곳에서 들었습니다. 이미 파이썬 쪽에서 듣고 계신 분은 벌써 매시업을 만들어 본 경험이 있으시더라고요. 튜토리얼이 시작하기 전에 저에게 파이썬으로 듣겠다는 두번째 사람이라고 하셔서 조금 놀랐습니다. 파이썬마을도 꽤 오래된 곳인데 의외였습니다. 도서검색 API로 설명을 해 주셨는데요 친절하신 설명 덕분인지 이해가 잘 되었습니다.
Daum OpenAPI

네이버 부스는 지도API 쪽에서 사람들의 시선을 끌고 있더군요. 저도 중간에 껴서 마커에 대한 설명도 듣고  질문도 하고 했습니다. 이 이야기는 좀 가외지만, 의외로 AcroEdit 쓰시는 분들이 많더군요.
네이버 Open API

야후 부스에서는 플리커에 가입하는 법(!)과[각주:3] 야후 거기에서 제공되는 지도 서비스 API 설명을 들었습니다. 범위과 세계지도로 광할하며, [위성지도, 일반지도, 하이브리드지도] 모드를 지원하는 게 이점으로 생각했습니다. 이번 엑스포를 계기로 만드셨던 위자드도 마음에 들었습니다. ^^
야후 개발자 네트워크(영문)

옥션에서는 API를 오픈한지 얼마 안되었다고 합니다. 기억에 남는 점은 SOAP를 사용한다는 것인데요 회사 방침이라니 어쩔 수 없죠. 설명을 듣는 도중에
옥션이 ebay의 지사인 건 아시죠?
라고 하셨는데, 고백하자면 몰랐습니다. 나중에 ebay처럼 매시업 서비스를 통해 구매행위가 유발될 경우에 수익 분담구조를 넣을 가능성도 있다고 합니다. 아직 한국에는 이런 수익형 모델이 없었고, 없다고 하시더군요.옥션 내부에 "펌블"[각주:4]이 이와 비슷한 역할로 적용되고 있다고는 합니다.
옥션-API

카멜레온(Chameleon) 서비스는 다소 생소했습니다. 국내에서 잘 언급되지 않은 동영상솔루션을 주제로 Open API를 개방하셨는데요. 꼼꼼하고 친절하게 OpenAPI를 설명해 주셔서 감사했습니다. 어떻게 사용자의 욕구를 충족시킬 건지, 창의적인 고민이 필요하다고 생각했습니다.
카멜레온::OpenAPI

위자드닷컴은 시간이 늦는 바람에 간단한 튜토리얼과 개발 관련 사이트의 소개를 받았습니다. 블로그로 위젯을 빼서 출력하는 기능이 구현되었는데, 트래픽을 상당히 소모해서 전체적인 서비스가 다소 느려졌다는 이야기를 들었습니다. 개인화페이지보다는 RSS 리더로 주로 사용하는데, 직관적이고 한번에 제목들이 보이는 느낌이 있어서 종종 쓰고 있습니다. P-Camp 2회 때 같이 토론했던 분과 우연히 만난 것도 반가운 일이었습니다.
WZDAPI

이렇게 해서 완성된 9개 패스 스티커 사진.

사용자 삽입 이미지

pass stickered paper


사진 모음입니다.
0123

매시업 엑스포 준비하셨던 분들 수고 많이하셨고요, 정말 감사드립니다!
  1. 대회 공식 명칭은 mashup을 매쉬업으로 표현하지만, mashup을 외래어표기법에 따라 표기하면 flash를 플래쉬가 아니라 플래시로 부르는 것처럼, 매시업이 된다. [본문으로]
  2. 다른 분들의 후기를 매시업 경진대회 공식 블로그 서울 매시업 세미나가 잘 끝났습니다!에서 보실 수 있습니다. [본문으로]
  3. 주민등록번호 때문에 가입이 되지 않는다면, yahoo.com에서 직접 가입하면 플리커를 사용할 수 있다고 하더군요. [본문으로]
  4. 관심가거나, 추천하고자 하는 상품을 회원이, (옥션 내부) 자신의 블로그에 등록하는 서비스. [본문으로]
반응형
반응형
실용주의 프로그래머를 위한 단위테스트 with JUnit를 읽었습니다. 실용주의 서가에서 나온 책인데요, 데이비드 토머스와 앤드류 헌트가 실용주의 프로그래머의 실천편이라고 보시면 될 듯합니다. 테스트는 코드를 다 작성하고 나서 발견하지 못한 오류를 찾기 위해 나중에 작성하는 것이 아닌가라고 생각하시는 분이 꽤 되리라고 생각합니다. 시간과 공간 자원에 제약이 걸린 일반적인 프로젝트의 경우에는, 동작하는 코드를 만들기에 급급해서 테스트라는 부분을 소홀히 하는 경우도 드물지 않을 것입니다. 그리고 그때 테스트를 수행한다고 해도 그건 요구사항에 적합한지 확인하는 인수 테스트(acceptance test)이죠.

이 책은 단위테스트를 왜 도입해야 하는가에 대해 서론에서 매우 설득력 있게 설명하고 있습니다. 원천적으로 오류가 없는 소프트웨어란 매우 어렵습니다. 목적은 매 순간의 코드를 단위테스트를 통해 검증함으로써 나중에 일어날 수 있는, 즉 찾지 못한 오류가 누적됨으로써 발생하는 재앙을 막아보자는 데 있습니다. 이런 패턴적 문제 해결은 애자일 쪽과 통하는 면이 있습니다. 코드를 작성함으로써 부산물로 나오는 단위테스트 코드는, 그 코드를 후에 인수할 사람들에게는 좋은 문서이자, 참고자료, 나침반이 됩니다.

이 책에서는 JUnit으로 테스트를 작성하는 근본적인 부분부터, 테스트의 대상은 무엇인지, 모의 객체는 어떻게 사용하는지, 프로젝트에서는 테스트를 어떤 식으로 할 것인지 등에 대해 차근차근 다루고 있습니다. 재치있는 약자를 통해 쉽게 책의 내용을 숙지할 수 있도록 돕는 것도 책의 장점입니다. 이를 테면 Right-BICEPCORRECT가 있습니다.

사실 이 책을 고른 이유는, 책의 서문에서 비록 이 책이 예제는 Java를 사용하고 JUnit 프레임워크를 사용했지만 다른 60개가 넘는 언어에서 비슷한 테스트 프레임워크가 지원된다고 했기 때문입니다. c2.com에서 Testing Framework라는 문서를 통해 다양한 프레임워크가 있다는 것을 알 수 있습니다. 개인적으로 SmlUnit[각주:1]이라는 테스팅프레임워크를 다루어 보려고 하다가, 막막해서 JUnit에 대한 책이 나와 있으니 이 책을 우선 참고하는게 어떨까 하는 생각이었죠.

프로젝트에 단위테스트를 도입하여 꾸준한 피드백으로 잘 조직화된 코드를 작성한다면, 유지보수성이 높고 안정적인 결과물이 나오지 않을까 생각해 봅니다.
단위 테스트 (실용주의 프로그래머를 위한) 상세보기
데이비드 토머스 외 지음 | 인사이트 펴냄
소프트웨어 개발의 생산성을 증대하기 위한 기본 도구들을 다룬 '시작 도구 시리즈'의 두번째 책으로 JUnit를 이용한 단위테스트 방법을 소개한다. 이 책은 테스트를 통해 요구사항을 좀더 명확히 하고 질 높은 소프트 웨어를 개발하고자 하는 테스트 주도 개발에 중점을 두고, 자동화 테스트 기구인 JUnit을 이용하여 무엇을 어떻게 테스트할 것인지 구체적이고 실용적인 방법을 제안하고 있다.

  1. SML#, SML/NJ, MLton을 지원하는 Standard ML 버전 프레임워크. SML#-SMLUnit에서 JUnit의 이식된 버전임을 밝히고 있다. SML#의 도구로 포함되어 있다. SML#은 SML에서 C와의 한결같은 상호운용성, 레코드 다형성, 랭크1 다형성 등을 확장한 것이다. 도호쿠 대학 전기통신 연구소에서 일본 문부과학성 등의 후원을 받고 있다. [본문으로]
반응형
반응형
다음 캘린더가 베타서비스로 티스토리 공지블로그에서 소개되었습니다.

구글기어스와 같은 툴을 이용해서, 오프라인에서도 일정을 편집하다가
네트워크에 컴퓨터가 연결되면 동기화해주는 그런 기능이 있으면 좋을 것 같아요.

Sunbird, Thunderbird와 같은 로컬 프로그램과 다음 캘린더가 연동될 수 있으면, 좋겠어요.

일정을 일정 개수 이상의 개수를 입력하면
more 버튼이 나와서 누르고 나서 생략된 내용이 보이도록 하는데, 그냥 클릭하면
그 부분이 확대되서 생략된 일정 내용이 보였으면 좋겠어요.

연간 일정 보기도 있었으면 좋겠어요. 그러면 좀 더 거시적인 계획을 세우는 데 도움이 될 것 같네요.

반응형
반응형

한국소프트웨어진흥원에서 2007년 11월 10일 토요일에, KLDP 11주년 기념 KLDPConf가 열렸습니다. 생각보다 지하철로 가는 시간이 오래 걸려, 조금 늦게 들어가서 자기 소개를 하게 되었습니다.

가서 자리에 앉자마자 Dan의 구글 기어스 발표가 있었습니다. 오프라인 상으로 한 작업이, 온라인으로 연결되면 동기화과정을 이루는 기능을 제공하는데, 캘린더(일정관리 프로그램)이나, 위키편집기(스프링노트) 등에 유용하게 사용될 것 같습니다. 그런데 원래 발표 주제였던 Erlang에도 관심 있는 사람이 저 뿐만은 아닌 것 같더군요. 다음에 기회가 된다면 이 주제로도 강연을 듣고 싶습니다. :)

그 다음은 한국에서 F/OSS로 밥 먹고 살기라는 주제였는데, (오픈소스에 대한) 비영리 재단을 만드신다는 말에 많은 분들이 관심을 보이시더군요. 잘 되셨으면 합니다.

중간에 Intel에서 오신 분께서 멀티 스레딩에 관련된 CD와 함께 하드웨어를 듀얼코어, 쿼드코어로 만들어도 이를 제대로 활용하는 게 중요하다고 하시더군요. 막연히 Intel에서는 하드웨어만 만든다는 편견을 갖기 쉬운데, 도움이 되었습니다.

Hello Perl! Hello POE!라는 주제로 세 번째 발표가 진행되었는데요, Perl에 갖고 있었던 제 생각을 다시 한 번 되돌아보게 하는 계기가 되었습니다. 한번 관심 있게 나중에 공부해봐야 겠네요. POE는 펄 객체 환경의 준말이라고 합니다. 펄마니아에서 도움이 되실 문서를 찾으실 것이라고 생각합니다. (발표해 주신 분도 펄마니아에서 오신 분이더군요.)

closed source OS 에서의 F/OSS 사용은 네 번째 발표의 주제였는데요. 현실적인 고민들을 담아낸 주제여서 그런지 많은 사람들의 공감을 얻은 듯 보였습니다. 이런 담론이 F/OSS에 긍정적인 영향을 줄 것이라고 생각합니다.
ebxml messaging server은 잘 몰라서 제대로 이해 못했습니다. V3 이야기는 신선한 충격이었습니다.

경품은 당첨되지 않았네요. 하지만 좋은 이야기를 듣고, 좋은 분들을 만날 수 있다는 점에서 의미있는 자리라고 생각합니다. 다음부터는 KLDP에서도 여성쿼터제를 도입하실 거라고 합니다. 내년에도 KLDPConf가 열려서 많이 오셨으면 좋겠습니다. (이번에 선착순으로 참가신청을 받았는데 빨리 마감이 되었다고 들었습니다.)

반응형
반응형
태터툴즈[각주:1]라는 오픈소스 블로그 툴을 기반으로 한 티스토리는, 설치형 블로그의 번거러움과 불안정성을 해소하고  상세한 기능 요구를 어느정도 절충하여 나온 모델인데요. 오픈소스로부터 피어난 성공 모델이 국내에 하나 더 늘어나게 되어 기쁩니다. 티스토리의 정식오픈을 진심으로 축하합니다.
  1. GPL화되어 현재는 텍스트큐브란 이름을 사용하고 있다. Tatter Network Foundation의 Needlworks라는 조직에서 텍스트큐브 뿐만 아니라 '데이터의 독립'을 목표로 프로젝트를 준비하고 있다고 한다. [본문으로]
반응형
반응형
Ajax 인 프랙티스위키북스에서 발행하는 열 번째 도서라고 하는데요. 실무에 도입할 수 있는 내용을 많이 다루고 있어서, 실용적으로 볼 수 있는 책이라고 생각합니다. 개인적으로 위키북스에서 지속적으로 좋은 책들을 번역해주신 것에 대해 감사를 표하고 싶습니다. 쉽게 배우는 JRuby On Rails도 만족했었는데, 이번 책도 매우 기대되네요.
반응형

+ Recent posts