전체 글 118

2009년 11월 XPER 모임 후기

전반적인 정리와 다른 분들의 후기는 박PD님의 블로그에 잘 링크가 되어 있다. 2009년 11월 xper 모임 후기(1/2)입니다.2009년 11월 xper 모임 후기(2/2)입니다.발표자 두 분 모두에게서 아 저건 진심이구나, 하는 느낌을 받았고, 정말 감동적인 경험이었다. SK C&C 민신현 과장님의 사례 발표에서는 오랜 기간 동안 프로젝트를 이끌며 엄청나게 괴로워하고 고민하다가 드디어 답을 찾아 낸 사람의 희열을 느낄 수 있었고, 스페셜 포스 2 고성원 팀장님의 사례 발표에서는 함께 한다는 즐거움, 팀과 팀원들에 대한 따뜻한 애정을 느낄 수 있었다. 단체 사진 속의 팀원들은 생기 넘치는 눈빛들을 하고 있었고, 참 행복해보였다. 부럽다. 오늘의 아하!를 하나 들자면 직원의 '보상' 중에 한 가지로 언..

2009.12.03

시각화, 문서화

cavin이라는 아이디를 사용하시는 분의 블로그 포스트에서 구글 독스 소개 동영상을 보았다. 위 동영상을 보면 UI 프로토타이핑에서 사용하는 페이퍼 프로토타이핑 기법을 이용했다고 볼 수 있는데, 메일의 단점과 그에 비한 구글 독스의 장점을 간단한 그림과 설명을 통해 잘 표현하고 있다. 이 동영상을 보니 문득 영회님의 블로그에서 본 산출물을 영리하게 만들지 못할 뿐, 애꿎은 산출물 탓은 하지 말자라는 포스트가 떠올랐다. 어떻게 하면 의도를 잘 전달할 수 있는가? 꼭 문서의 형태로 정리해야 하는가? 하는 의문에 대한 답이 될 수 있는 영상과 블로그 포스트라고 생각한다. 문서화 작업이라는 것이 귀찮고 하기 싫은 일임은 분명하다. 내게 있어서는 스스로 잘 할 수 있다는 충분한 자신감이 없다는 것도 하기 싫은 이..

2009.11.15

Scott Gu가 전하는 WPF 4 소식

Scott Gu 아저씨가 계속해오고 있는 Visual Studio 2010과 닷넷 4.0 시리즈 중에 WPF 4에 대한 포스트가 올라와서 요약해보고자 한다. Controls Controls for Building Rich Clients WPF 4에는 훌륭한 UI의 LOB(line-of-business) 응용프로그램을 쉽고 빠르게 만들 수 있는 새로운 컨트롤들이 많이 추가되었다. DataGrid, DatePicker, Calendar 등이 새로 추가되었다. Silverlight와 WPF 사이의 코드 재사용성을 높이기 위해서, 새로 추가된 컨트롤들은 99%의 API 호환성을 보장한다. Bag O'Tricks is back WPF Bag O' Tricks 라고 불리는 여덟 개의 컨트롤 모음을 릴리스할 것이다...

2009.10.28

Silverlight Pixel Shader 개발 팁

요즘 HLSL을 가지고 Pixel Shader를 만들고 있다. 따라서 여기서 얘기하는 경험은 HLSL로 된 *.fx 파일을 컴파일 할 때 적용되는 얘기이다. 셰이더 어셈블리 명령을 직접 써서 만드는 일은 전혀 해보지 않아서 얼마나 관련성이 있을지 모르겠다. Silverlight 3와 WPF(.NET 3.5 SP1)에서는 Shader Model 2의 Pixel Shader(ps_2_0)를 지원한다. Pixel Shader 2.0에서는 64개의 산술 instruction만을 사용할 수 있다. 문제는 64개를 넘어서 컴파일이 안 될 때만 인스트럭션 개수를 알려준다는 것. 기본적인 사용법만 배운 상태에서 한참 만들다가 "님, 인스트럭션 개수 초과했어염. 65개임."하는 에러 메시지를 받았을 때 어찌나 황당하던지..

2009.10.25

VBScript Empty, Null, Nothing

지난주에는 ASP 프로젝트를 유지보수 할 일이 있어서 VBScript를 쓰게 됐는데, 하다보니 제일 헷갈리는게 Empty, Null, Nothing 구분이었다. C# ASP.NET도 그렇고 보통 C/C++도 그렇고 널 체크하나면 끝나는데 이놈의 언어는 깡통 값을 나타내는데 키워드를 세 가지나 쓴다. 변변한 자료 구조 하나 기본으로 제공하지도 않는 주제에(Scripting.Dictionary 정도? 나름 유용하게 잘 썼다) 엉뚱한 곳에 지나치게 신경썼다는 생각까지 들기도 한다. 아무튼 Empty는 초기화되지 않은 값이다. 그래서 Dim value : value = Request.Form("value")했을 때 아예 value 라는 폼 필드가 존재하지 않으면 IsEmpty(value) = True 이다. N..

2009.09.08

버려지지 않은 코드

몇 년 전(Windows Vista 대응이 끝난 상태였으니 한 3년 전인가?)에 인수인계 받아서 관리하고 있는 Visual C++ 6.0 프로젝트가 있다. 계속 판매되고 있지만 안정화된지 오래되었고 신기능 추가가 없어서 사실 거의 열어 볼 일은 없는 프로젝트이다. 그런데 이번에 급하게 처리할 이슈가 생겨서 오랜만에 뒤져보고 있다. 소스 분석을 하고 있자니 한 가지 어려운 점이 있는데, 안 쓰는데 남아있는 코드가 너무 많다는 점이다. 역사가 길고 소스 코드 버전 관리 도구를 도입하기 전에 작성된 코드가 많아서인지, 원래 개발하시던 분의 습관인지는 모르겠으나 아무튼 무진장 안 쓰는게 많다. 살아있는데 안 쓰이는 것만큼 주석 처리되어 있는 부분도 많아서, 다 포함해서 라인 수를 세니 20만 라인이 넘는데.....

2009.09.07

신입사원들과 함께한 TDD 토론

김창준 님과 강규영 님께서 예전에(켄트 벡의 TDD 책이 번역되어 나오기 전) 만드신 TDD 강좌 동영상을 신입 사원들과 같이 보는 스터디가 회사에서 있었는데, 지난 주에 스터디 정리 미팅이 있어서 참석했다. 요즘 너무 정신없는 터라 글을 한 번 써보자고 하고는 벌써 일주일이 지났네. 나는 스터디에는 참가하지 못하고 정리 미팅에만 참석했지만 참 의미있는 미팅이었다고 생각한다. 신입사원들이지만 참여하는 프로젝트 성격상 유닛테스트와 약간의 TDD 경험이 있는 사람도 있고 아예 유닛 테스트에 대한 경험조차 없는 사람도 있었다. 아예 경험이 없는 사람인 경우에는 역시나 유닛 테스트나 TDD에 대해서 제대로 파악하지 못했음을 알 수 있었다. 유닛 테스트에 대해서도 모르는데 TDD와 동시에 접하게 되면 완전히 혼란..

2009.09.06

유용한 Macbook BootCamp 단축키

Windows Key Macbook Equivalent Pause fn + esc Print Screen fn + shift + F11 Application Key shift + F10 * Application Key(또는 Context Key)는 맥북의 특별한 키 조합이 아니라 Windows에서 기본으로 제공하는 단축키(바로가기 키) 조합이다. 매킨토시 데스크톱 키보드에는 키가 많아서 대부분의 Windows PC용 키를 쓸 수 있는데, 맥북 프로나 맥북 에어는 키 개수가 적어서 쓸 수 있는 특수키가 별로 없다. 그래도 표에 제시한 것처럼 자주 쓰는 키들은 쓸 수 있어서 정말 다행이다. Pause 키를 자주 쓰는 이유는 + 하면 시스템 정보창이 뜨는 바로가기 키 조합 때문이다.

2009.08.29

대통령이란...

캡콜님께서 노무현 대통령의 현실적인 업적을 기리기보다는 그저 신격화만해서는 우리에게 남을 것이 없지 않겠는가 하는 내용의 '6조 전설보다 시스템'이라는 글을 쓰셨다. 나도 노무현 대통령을 지지하고, 좋아한다. 하지만 단지 그것뿐이라서는 그저 말끝마다 김대중 노무현을 욕하기 바쁘신 어르신들과 다를바가 없지 않은가 스스로 반성하곤 한다. 내가 정의롭고 멋진 누군가를 좋아한다는 것만으로 내가 정의롭고 멋지게 되는 것도 아니고, 내 의식 수준이 발전하는 것도 아니지 않나. 요즘 읽고 있는 '후불제 민주주의'에서 유시민 씨가 이야기하는 내용 중에 관련된 부분이 있어 옮겨본다. 노무현 대통령이 일으켰던 국민들과의 정서적·정치적 불화가 주로 여기에서 비롯되었다고 나는 판단한다. 그는 대통령이라는 자리를 사회적·정치적..

2009.05.28