AppKiller - 현재 Application 강제 종료 유틸

2009/08/13 20:46 키보드예술


1. 사용 배경

  윈도우를 사용하다 보면 종종 어플리케이션이 다운되는 증상이 발생한다. Ctrl+F4나 종료 버튼을 통해 종료를 시도하지만 동작하지 않아 결국 ctrl+alt+del의 작업 관리자를 통해 강제로 종료하게 된다.

  특히 Visual Studio를 통해 디버깅을 하다 보면 다운되는 듯한 증상이 발생되는 데, 디버깅을 중단하거나, 작업 관리자를 켜고 종료하는 시점까지 도달하는 데 상당한 시간과 인내심이 필요하다. 매번 재부팅을 하기엔 너무 큰 시간 손실이다.

  AppKiller 유틸리티는 매우 작은 어플리케이션이지만 아주 유용한 유틸이다. 단순히 단축키로 한번으로 현재 활성화 되어있는 어플리케이션을 종료시키는 기능을 제공한다.

  내 경우에는 Visual Studio 개발 시 Debugging 모드에서 다운 된 경우 가장 유용하게 사용하고 있다.


2. AppKiller

  Nikolay Labinskiy라는 분이 개발하였으며, Freeware로 배포하고 있다.  아래의 홈페이지를 통해 다운 받을 수 있으나 아쉽게도 러시아어로 쓰여있기 때문에 자세한 설명을 얻기는 어려울 듯 하다. 


+ 소개 사이트 및 다운로드

  http://labinskiy.googlepages.com/appkiller

(하단에 "Загрузить (5 КБ)"를 클릭하면 다운로드가 진행된다)


 

(출처:http://labinskiy.googlepages.com/appkiller)


+ 사용 방법

  별도의 설치는 없으며 단순히 압축을 풀고 Program Files폴더에 넣고 시작프로그램에 등록하여 사용하면 된다. 그러면 위와 같이 Tray에 생성되어 사용이 가능하다.

어플리케이션 강제 종료 방법 아래의 단축키를 누르면 된다.

WindowsKey + Backspace

  위의 버튼 누름과 동시에 현재 활성화 되어 있는 어플리케이션이 바로 종료된다.


---------------

호기심으로 찾은 아래의 개발자 홈페이지에는 그의 사진과 전공에 대한 정보가 살짝 나온다:)

(..너무 깊이 들어갔나-_-..aa)

http://masters.donntu.edu.ua/2008/fvti/labinskiy/

http://labinskiy.googlepages.com/ 

2009/08/13 20:46 2009/08/13 20:46
  1. 방양  2009/08/14 09:26     댓글주소  수정/삭제  댓글쓰기
    디버깅을... 중간해????

    꼭 한개씩 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

DirectShow 각 종 강좌 및 정보들 링크 모음.

2009/07/05 01:09 키보드예술
  1. DirectShow 강좌, 커뮤니티 혹은 각 종 정보

  2. DirectShow 관련 개발 보조 유틸리티

  3. DirectShow SDK

  4. COM 강좌


.
1. DirectShow 강좌, 커뮤니티 혹은 각 종 정보

- 멀티즘연합 - 디렉터  (★)

http://cafe.naver.com/multism 

네이버 카페로서 각 종 멀티미디어 개발 관련 분야를 다루는 곳이다.

DirectShow 분류에는 윤훈남님의 동영상 강의 뿐만 아니라 각종 팁들, 그리고 QnA까지 다루고 있다.

윤훈남의 DirectShow 강좌

1 DirectShow 개요1
2 DirectShow 개요2
3 COM 개념 이해
4 DirectShow, COM, 스마트 포인터(8장)
5 GraphBuilder의 인터페이스(9장)
6 프로그램 스킬과 PID(10장)
7 캡쳐디바이스

윤훈남의 DirectShow Filter 제작하기

1 DirectShow Filter FrameWork1-CMediaSample
2 DirectShow Filter FrameWork1-CBaseAllocator/CMemAllocator
3 DirectShow Filter FrameWork1-CMediaType
4 DirectShow Filter FrameWork1-CBasePin(타입 협상)
5 DirectShow Filter FrameWork1-CBaseOutputPin/CBaseInputPin(버퍼 협상)
6 DirectShow Filter FrameWork1-CDynamicOutputPin(동적 핀 연결)
7 DirectShow Filter FrameWork1-CBaseFilter
8 DirectShow Filter FrameWork1-CAMEvent/CAMThread 

__________

- DirectShow  (★)

http://www.dshowtech.com/ 

IT 백두대간 DirectShow 멀티미디어 프로그래밍의 저자 사이트이자 커뮤니티.

상당히 많은 양의 축적된 QnA들을 통해 정보를 얻기에 큰 도움이 된다.

또한 DirectShow 관련 정보와 강좌들이 있다. 

__________

- DirectShow Multimedia project group(DMPG)  (★)

http://www.devpia.com/club_1092.MAEUL 

Devpia의 DirectShow 마을이다. 각 종 유명한 강좌나 팁 및 방대한 QnA 자료가 있다.

'박성규'님의 DirectShow와 COM 강좌가 유명하다. 

__________

- CodeProject DirectShow Part

http://www.codeproject.com/ 

많은 양의 다양한 Directshow Application과 Code들이 깔끔하게 설명된 문서를 제공한다.

__________

- Looting - Game Programming

http://telnet.or.kr/main.html 

DIrectX 관련 문서 및 커뮤니티

DirectShow SDK 9.0 도움말(?)을 사이트 상에서 열람 할 수 있다. 

__________

- DirectShow MVP TMH's Home

http://tmhare.mvps.org/ 

Microsoft MVP로써 DirectShow, Window Media and Multimedia들의 각 종 정보를 제공.

또한 Link페이지를 통해 유용한 사이트들을 제공한다. 

__________

- '도모네 IT 세상' 블로그

http://blog.naver.com/netrance?redirect ··· 49276005 

DirectShow 관련 포스팅

[DirectShow][COM] COM 클라이언트와 COM 서버       
[Directshow][COM] COM 라이브러리 초기화하기       
[DirectShow][GraphEdit] 코덱을 추가로 설치하면 만들 수 있는 필터 그래프       
[DirectShow][GraphEdit] 필터 그래프 예       
[DirectShow][GraphEdit] GraphEdit로 필터 그래프를 생성하는 방법       
[DirectShow] 필터(filter), 핀(pin), 필터 그래프(filter graph), 필터 그래프 매니저(filter graph manager)       
[DirectShow] 최초 DirectShow 어플리케이션 만들어 보기       
[DirectShow] Platform SDK를 이용한 DirectShow SDK 설치하기      

__________

- '마법사 하르의 엉망진창 실험실' 블로그

http://enshahar.tistory.com 

[DirectShow 기초] 필터그래프 안에서의 데이터 흐름
[DirectShow Reference] IGraphBuilder
[DirectShow 기초] 필터와 핀
[DirectShow 기초] 필터와 필터그래프
[DirectShow 기초] File Play
[DirectShow 기초] Introduction 

__________

- '김대영 입니다.' 블로그

http://kostyoung.egloos.com/category/%e ··· 25b8x9.0 

3.1.5. 필터그래프와 하드웨어 장치들 연결
3.1.4.미디어 예제와 배치자(Allocator)에 관한것
3.1.3. 미디어 타입에 관한것 [2]
3.1.2. 필터그래프 매니져에 관한것
3.1.1. 다이렉트쇼 필터에 대한것
3.1. 필터그래프와 그의 컴포넌트들
3.1. 다이렉트쇼 시스템 개요
3.0. 다이렉트쇼에 관하여
2.1. How To Play a File
2.0. Getting Started
1.1. DirectShow 소개 [4]
1.0. DirectShow

__________

- COM (Component Object Model) 과 DirectShow

http://diehard98.tistory.com/entry/com- ··· rectshow 

__________

- DirectShow Filter 운영

http://devholic.tistory.com/2  

__________

- MPEG, DirectShow, Windows Media and Filter Merit

http://www.timna.org/dshowmpeg.html 

Filter 매핍과 관련된 글. 

__________

- TP, TS 샘플 파일 다운로드 구하기 HD 영상 HDTV 1080i 720p MPEG-2 파일

http://hallang.tistory.com/85  

- DirectShow Filter 에 Interface 간단 추가

http://dynaforce.tistory.com/21  

__________

- '당신은 거기에 있습니까?' 블로그

http://hannim.com/category/프로그래밍/d ··· 2520show 

DShow 환경 설정
기본 Direct Show Filter 만들기 (변환필터)
VS 6.0 에서 Filter 만들기 설정
DirectShow Filter 제작
미디어 타입 맞추기  

__________

- 디버그 출력 함수

http://www.telnet.or.kr/directx/htm/deb ··· ions.htm 

 

 

2. DirectShow 관련 개발 보조 유틸리티

- DirectShow Filter Manager  (★)

http://www.softella.com/dsfm/ 

설치된 DirectShow Filter들을 리스트로 분류하여 각 종 정보를 제공하고, 검색 그리고 제거 등을 손쉽게 할 수 있게 해주는 유틸

필터 사용시 상당히 편리하다.

__________

- Media Info (★)

http://mediainfo.sourceforge.net/ko 

비디오나 오디오 파일을 분석하여 파일이나 코덱 정보들을 제공하는 유틸.  아래의 VideoInspector보다 깔끔하다.

__________

- VideoInspector

http://www.kcsoftwares.com/index.php?vtb 

Meida Info와 비슷한 툴로써 미디어 파일의 정보를 제공하는 유틸

__________

- DirectShow Filter Mapper Utility

http://www.timna.org/dshowmpeg.html 

DirectShow Filter를 검색하여 매핑 여부를 판단해주는 유틸(?)  (자세하게 사용해보지 않았다.)



3. DirectShow Sample Code 및 Demo Application

- guliverkli (★)

http://sourceforge.net/projects/guliverkli/ 

DIrectShow에선 유명한 프로젝트로서 각 종 Filter나 DirectShow를 이용한 Application등 많은 양의 소스를 얻을 수 있다.

__________

- GDCL

http://www.gdcl.co.uk/ 

상당량의 각 종 DirectShow Filter들에 관련 정보들과 샘플 소스를 제공한다.

20090702 Tools and Samples for Download

Windows Mobile ViewGraph tool
Monitor Filter
Serialize Filter
Mpeg-4 Demultiplexor and Multiplexor filters
WMV/WMA Parser
GMFBridge toolkit
MPEG-1 Parser
FSFWrap
AppFilter
IPFilter
OvTool
YUVXfm
InlineClasses.zip



4. DirectShow SDK
 

- Microsoft Directshow MSDN

http://msdn.microsoft.com/en-us/library ··· %29.aspx 

__________

- vc6.0을 마지막으로 지원하는 platform SDK와 DirectX

http://glintist.egloos.com/2337943 

__________

- Windows® Server 2003 SP1 Platform SDK Web Install

http://www.microsoft.com/downloads/deta ··· filelist 

__________

- DirectX 9.0 SDK Update (October 2004) Extras

http://www.microsoft.com/downloads/than ··· 53d%253d 

__________

- Visual Studio 6.0으로 DirectShow 프로그래밍을 하다 만나는 문제점들...

http://www.nohungry.net/tt1/84 

http://blog.naver.com/elkiss?redirect=l ··· 41578870 

5. COM 강좌

- Step by Step Com Tutorial

http://www.codeguru.com/cpp/com-tech/ac ··· %2Fc5567 

2009/07/05 01:09 2009/07/05 01:09
  1. 지영냥  2009/07/13 18:18     댓글주소  수정/삭제  댓글쓰기
    이야 DirectShow에 관련된 링크들이 참 많군요 ^^
    • Yarmini  2009/07/15 04:11     댓글주소  수정/삭제
      이번에 처음 DirectShow를 접해서요.
      링크하나하나 모아서 살짝 정리해보았습니다^^

      인터넷에 딱 떨어지는 자료들은 많이 없어서 그렇지,
      왠만한 자료가 다 있더라구요.^^

'Footprint Positioning Algorithm 위치 추정,,' 과제 끝!!

2008/08/17 05:01 키보드예술
삼성 멤버십에서 처음으로 맡은 과제가 드디어 끝났다!
(미니프로젝트를 제외하고^^)

시작 전 한달 동안은 아이디어 회의로 시간을 다 보냈고,
 
실제로 3개월 정도의 기간을 프로젝트에 투자했었다.


이번 과제가 끝난 느낌이 어떤 거라고 물어본다면..


최고의 기쁨과 환희


이 말로도 부족할 정도다.

우리팀은 다른 어느 팀보다 가까웠으며

서로 믿었기에 더 큰 만족을 느끼게 되었다.


훗.. 몇일이 지난 지금도 이렇게 기쁘다니

이런 감정을 갖게 해준 우리 팀원들과 모든 것에

'고맙습니다'라고 외치고 싶다.


시간이 나는 대로 자료를 정리해야겠다.




2008/08/17 05:01 2008/08/17 05:01
  1. rapperdo  2008/08/17 15:55     댓글주소  수정/삭제  댓글쓰기
    수고하셨습니다. 인제 멘토역할을 충실히 해주세요..ㅋㅋ
    • Yarmini  2008/08/19 01:04     댓글주소  수정/삭제
      ㅋㅋ옹 고맙당^^
      이제 멘토 역할에 충실해야겠구나!

      회식부터?

JAVA로 만든 스도쿠 게임

2008/06/20 02:00 키보드예술

사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지

- Download -


1. 개발 환경
 
  Platform : Eclipse 3.3.2
  Language : JAVA
   
2. 파일 구성
 
  1. SudokuAlgo.java
    스도쿠 문제를 내기 위한 맵 생성, 문제 출제, 사용자가 입력한 숫자 검사 등 알고리즘 구현

  2. GameInterface.java
   사용자 인터페이스를 위해 Frame으로 버튼 및 9x9 창 구성

  3. Main.java
   알고리즘과 사용자 인터페이스를 연결하여 게임 실행


3. 스도쿠 맵 생성 알고리즘
  1. 총 9x9개의 칸을 모두 검사하여 현재 선택한 값들이 문제가 없을 때 종료한다.
    Queue를 사용하여 가능한 모든 숫자를 쌓고 하나씩 꺼내어 비교하는 방식을 사용한다.
  2. Push
    1) 1-9개를 랜덤으로 선택
       (숫자가 섞이고자 위해 랜덤을 사용하며 랜덤 때문에 중복된 수를 얻지 않기 위해
        1-9가 나열된 배열을 사용하여 최대 랜덤 값을 줄이는 방식을 구현했다.)
    2) 가능한 숫자를 모두 Queue에 넣는다. 이때 현재의 맵 정보도 Queue에 저장한다.
  3. Pop
    1) Queue에서 하나를 Pop하여 저장되었던 Map을 적용한다.
  4. Loop
    1) 위의 진행을 Queue가 하나도 남지 않았을 때까지 반복한다.
     (Pop만 진행하다가 더이상 진행이 되지 않는다면 Queue에 더이상
     쌓이지 않고 꺼내기만 할 것이다. 그러면서 다시 다른 숫자로 진행을 하게 된다.)


4. 스도쿠 알고리즘 함수 목록
 1. 초기화
 2. 스도쿠 규칙에 어긋나는지 검사하는 함수
 3. 맵을 생성하는 함수
 4. 사용자가 문제를 풀기 위한 난이도에 따른 공백을 만드는 함수
 5. 맵에 사용자가 선택한 숫자를 입력하는 함수
 6. 사용자가 맵 정보를 얻기 위한 함수와 맵 정보를 출력하는 함수


5. 여담

 학기 중 '객체지향 프로그래밍' 과목에서  팀을 구성하여 자바언어를 사용한 하나의 프로젝트를 구성했다.

 우리 팀은 스도쿠를 만들기로 했고, 알고리즘 파트와 외형 인터페이스로 나눠 작업하기로 했다. JAVA 언어가 아직 익숙해 지지 않아 처음에 낯설었지만 조금 익숙해지고 나니 쓰기 쉽도록 설계되어 있으며, C언어와 다르게 메모리 침범을 자동으로 처리해 줘서 개발 시간을 줄일 수 있었다. 어려웠던 점은 클래스 간의 참조 방식을 구현하기 어려워 주위의 도움을 많이 받았다.

 단기간에 코딩해서 얻은 것치고는 제법 쓸만한 듯하다^^

2008/06/20 02:00 2008/06/20 02:00
─ tag  , , ,
  1. 방양  2008/06/20 03:36     댓글주소  수정/삭제  댓글쓰기
    글만보면... 오빠가 100% 다 한것같네요?? ㅋㅋㅋㅋ
  2. 밍코  2009/03/03 23:22     댓글주소  수정/삭제  댓글쓰기
    스도쿠 생성알고리즘이 있는것은 처음보네요..그러나 이해가 잘안가는..ㄷㄷ;;ㅎㅎ
  3. 스도쿠를좋아하는고등학생  2010/05/31 20:14     댓글주소  수정/삭제  댓글쓰기
    두뇌게임을 만들려고 하는학생입니다. 그중에 스도쿠도 포함되어있는데요. 알고리즘이 노다가형식으로 밖에 떠오르지않아서 찾아다니고 있었습니다. 그러다 우연히 들렸는데요. 비록 JAVA로 구현되어 있지만 C를 좀 배워서 소스 이해가 가는데 소스좀 참고 해도될까~? 해서 댓글을 남깁니다. 참고해도 되겠지요 ㅎㅎ ?

Lumi's Escape! <영상처리를 이용한 사람 구출 게임>

2008/03/21 05:00 키보드예술
멤버십에서 진행한 미니 프로젝트인 "Lumi's Escape"의 결과물이다.

진행했던 사항들과 후기는 링크 참조. "4주간의 미니 프로젝트를 마치고.."


아래 동영상은 개발이 완료된 후 시연하는 모습을 담았다.




게임을 진행하는 모습





사용자 삽입 이미지
Canon DIGITAL IXUS 65 | 1/40sec | F2.8

앵글 차체
청계천에서 간단한 도면을 주고 앵글을 잘라 들고와서 조립하였다.
전면에는 아크릴을 주문 제작하였으며 강한 빛을 막고,
스크린에 상이 맺히도록 기름종이 비슷한 것을 붙였다.


사용자 삽입 이미지
Canon DIGITAL IXUS 65 | 1/40sec | F3.2

뒤에서 본 모습

빔프로젝트로 영상을 출력하고, 그 위에 올려진 캠 카메라로 영상을 받는다.



사용자 삽입 이미지
E5200 | Program | 0ssec | F2.8 | 35mm equiv 38mm | ISO-64

마커 블록의 전면도
LCD와 RF Module을 장착하였다.



사용자 삽입 이미지
E5200 | Program | 0ssec | F2.8 | 35mm equiv 38mm | ISO-64

마커 블록의 후면도
TMS320F2808 CPU를 사용하였다.



사용자 삽입 이미지
E5200 | Program | 0ssec | F2.8 | 35mm equiv 38mm | ISO-64

실제 마커 블록의 모습


사용자 삽입 이미지

2D 물리엔진

주인공 중심 좌표의 움직임을 표현하기 위해 만든 툴
중력, 힘, 마찰력, 관성 등 간단한 물리 법칙을 적용하였다.





사용자 삽입 이미지
E5200 | Program | 1/4sec | F2.8 | 35mm equiv 38mm | ISO-188

개발 시의 모습
우리는 세미나실에서 거의 개발을 했는데,
영상처리를 위해 빛을 막기 때문에 이렇게 어두운 곳에서만 계속 작업을 했다.



사용자 삽입 이미지
E5200 | Program | 0ssec | F2.8 | 35mm equiv 38mm | ISO-64

우리가 쓰던 화이트보드!
남은 할일부터 낙서, 그림, 컨셉등 잼있게 사용하였다.
2008/03/21 05:00 2008/03/21 05:00
  1. 유훈  2008/03/22 11:34     댓글주소  수정/삭제  댓글쓰기
    동영상속 욕설 난무 ㅋ 동영상으로 보니까 디게 멋있네요 ^^
    • Yarmini  2008/03/23 00:16     댓글주소  수정/삭제
      헉. 그래? 소리는 안듣고 동영상 올린건데..
      조만간 수정해야겠다^^
  2. 오군  2008/03/23 14:53     댓글주소  수정/삭제  댓글쓰기
    퍼가고 싶어열...호호호호 뿌듯뿌듯.ㅋㄷㅋㄷ
    • Yarmini  2008/03/23 23:00     댓글주소  수정/삭제
      쿠쿠. 형석이 게임이 잘 발휘했지~!

      우리 작품 남겼으면 좋았을텐데..
  3. 방양  2008/03/24 00:53     댓글주소  수정/삭제  댓글쓰기
    이거 보니 기분 좋네요- 뿌듯하고- 근데.... 마지막 보드의 압박이;;;;;; ㅋㅋㅋㅋㅋ

4주간의 미니 프로젝트를 마치고..

2008/03/10 05:10 키보드예술

 2월 초부터 3월 초까지 삼성 멤버십에서 미니 프로젝트를 진행하였다. 이번 18기 신입 기수끼리 각자 팀을 정하고 프로젝트의 아이디어 구상부터 실제 완성까지 구현하는 것이다.


팀 구성

 먼저 게임 프로그래밍을 했던 형석군이랑 같이 하기로 했고, 한 사람을 더 찾아야 했다. 마침 사람들이 서로 팀을 짜기 위해 인력시장(?)을 방불케 하던 찰나, 영상처리를 담당한 빵양이 합류하게 되었다.

- 하드웨어
형석군 - 게임 프로그래밍
빵양 - 영상처리

 PL 선정 시에는 미니 프로젝트인 만큼 경험도 쌓을 겸 다른 사람이 하는 것도 좋다고 권유했지만, 결국 가장 나이가 많은 내가 맡게 되었다.


주제 선정

 팀을 구성하자 마자 서로의 담당을 살펴본 결과 우리의 프로젝트 주제는 윤곽이 들어났다.

 하드웨어를 이용하여 영상처리를 통한 게임!

 첫번째로 정한 주제는 '그림자 영상을 이용한 결투 게임'이었다. 사람의 그림자를 카메라로 입력 받아 팔의 패턴을 분석하여 스크린에 비친 캐릭터가 기술을 사용하여 상대방을 공격하는 게임이다.
 거의 진행 될 뻔 했으나, 기술 상의 어려움과 짧은 기간으로 인해 잠시 뒤로 놓고, 다른 주제를 검토해 보기로 했다.

 주제를 검토하던 중 우리는 하나의 동영상을 보자마자 '이거 하고 싶다!!'라고 외치게 되었다. 그것은 바로 스크린에 블록을 접촉시키면 게임 속 캐릭터가 그 블록 위에 서 있는 것으로 목표 지점까지 이동 시키는 게임이다. 단순하면서도 매력적인 게임이었다.

 우리는 좀 더 스케일을 확장 시키기 위해 각 종 기능과 요소를 추가하여 시안을 계획 했다. 그리고 모두에게 프로젝트의 시작을 알리는 개발 계획 발표를 했다.

 프로젝트 제목은 'Lumi's Escape'으로 정했다.



개발 진행

 개발 회의 때 나온 방안은 스프링노트를 활용하여 정리하였는데, 이것을 통해 서로간의 의견들을 바로 정리 할 수 있어 좋았던 것 같다. 또한 할일 목록이나 일정들을 체크하는 데 유용했다. 다만 후반부로 갈 수록 정리를 하지 않은 점이 아쉬웠다.

 개발은 중반까지 각자 담당한 부분을 독립적으로 진행하기로 했다. 하지만 멤버십 내에서 각 종 교육 및 행사가 많아 실제적로는 개발을 거의 진행하지 못했다. 일정이 조금씩 밀리기 시작했다. 처음에는 느긋한 마음을 갖고 시작하였으나, 완료 일정에 가까워 짐에 따라 서로 집중하는 시간이 늘어났다.

  나는 집중력의 효율을 위해 '아침이 되기 전에는 잠을 잔다'라는 생각을 갖고 생활했는 데, 나를 제외한 팀원들은 아침이 넘어서까지 잠을 안자고 코딩하곤 했다. 그래서 주위 사람들에서 PL은 일이 적어 푸욱 잔다는 소문이 돌기도 했다ㅠ 사실 일의 양은 적긴 했어도, 억울 했다.ㅠ
 변명은 넘어가고^^ 사실 내가 감탄한 부분은 우리 팀원들은 목표한 양을 채우거나 문제를 해결 할 때까지는 상당히 놀라운 집중력을 보인 다는 것이다. 요즘 들어 어느 것 하나에 집중을 오래 하지 못하는 내가 본받아야 할 부분이었다. 또한 피곤한 몸을 이끌고 집에 도착해서까지 코딩하여 완성물을 보여 줄때는 감격을 금치 못했다.

 '프로젝트 진행 시 가장 중요한 것은 의사 소통이다.'

 3명의 다른 분야 사람이 모였기 때문에 자신의 담당 분야을 제외한 다른 분야는 깊은 지식이 부족하다. 우리는 종종 회의를 하곤 했는 데, 첫 회의 때 서로 합의 한 내용이 두번째 회의 때는 엇갈리는 경우가 종종 발생했다. 여기서 문제는 서로간에 의견을 교환하고 합의점을 찾아도 실제적으로는 자신이 알고 있는 지식에 맞추게 된다는 것이다. 애메모호하거나 불확실 한 것은 서로간에 의견이 일치하더라도 실제론 정반대가 될 수도 있다.
 PL인 나는 이러한 경우가 발생 할 수 있는 것을 미리 체크하여 보다 심도 깊게 논의하여 확실한 결정을 내렸어야 했다. 이쯤 정하면 서로가 각자 잘하겠지.. 하는 생각에 종종 넘겼는데, 결국 시간을 투자하여 회의를 한 가치를 떨어뜨린 셈이다. 이 부분을 반성하자.

 언쟁

 회의를 하다 보면 언쟁이 가끔 발생한다. 서로의 의견을 교환하다보니 충분히 발생할 수 있는 것이다. 서로 더 좋은 프로젝트를 만들고자 하는 목표만은 같기 때문이다. 언쟁이 발생하면 기본적으로 상대방의 목소리를 진지하게 받아들이기 어렵다. 악화 될 경우 감정적인 면까지 상하게 되는데, 여기까지 되지 전에 침착한 대처가 필요하다.
 우리 팀에서는 둘이 언쟁을 할 경우 한명은 약간 먼 발치에서 지켜보며 상황을 정리한다. 그리고 논쟁이 어느 정도 선이 넘었을 경우 중재를 하기 시작한다. 그리고 논쟁을 정리하기 시작하면서 본래의 목표와 어긋난 부분들을 제거한다. 그러면 의견들은 유익한 부분과 불필요한 부분으로 나뉘어 결론을 맺을 수 있다.
 이러한 역할 또한 PL이 했어야 되는데, 부끄럽다ㅠ 추가적으로 이러한 상황이 안될 경우 '10분 휴식'이라는 것을 사용해 보는 것도 좋을 듯 하다.



개발 완료

 일주일 전부터 프로젝트는 급속히 진행 되었다. 하나하나 살이 붙여지고 문제점을 잡아가며 완성도 있는 모습을 볼 수 있었다. 결국 우리는 예상했던 모든 기능들을 구현하였고, 전체적인 완성도 역시 기대에 만족했다. 마지막까지 최선을 다했기에 가능했던 것이라 생각한다.

 긍정적인 사고와 여유
 
 (팀원들이 못느꼈을 수도 있겠지만)나는 이번 프로젝트를 맡게 되면서 팀원들이 항상 긍정적인 사고를 할 수 있도록 노력하고 행동했다. 우리 프로젝트는 당연히 완성도가 높게 나올 것이며, 문제가 발생할 경우에도 큰 문제 없이 잡을 수 있을 거라는 모습을 비춰왔다. 이러한 사고를 밑바탕으로 함으로써 (약간이라 할지라도) 여유로운 마음이 생길 것이라고 믿었기 때문이다. 작은 여유는 자신의 개발 뿐만 아니라 팀 내 분위기를 좌우 할 수 있다.

 발표

 완료과제 발표 때 피곤함 떄문인지 말을 버벅거리며 프로젝트를 100% 소개 하지 못했다. 참으로 아쉽고 팀원에게 미안한 마음이든다. 우리가 열심히 노력하여 완성한 것을 대중(+평가단)에게 못 보여 준셈이니 말이다. 우리 프로젝트가 다른 프로젝트에 비해 뛰어난 점을 부각 시켰어야 했다. 그래서 부족했던 부분이나 추가했어야 하는 부분을 나열해 보았다.

1. 시작 발표 때 말한 기능들이 모두 완료된 점
2. 기능을 추가하였던 게임 요소들에 대한 설명
3. 시연 시에 대중이 주목해서 봐야 할 점
4. 개발 시 힘들었던 부분을 극복한 점
5. 보다 강한 자신감(+언어력)


마치고

 짧은 기간이었지만 프로젝트를 마치고, 많은 것을 배우고 반성할 수 있었다. 접하지 못했던 분야를 가까이서 지켜볼 수 있어 폭 넓은 지식을 쌓을 수 있었으며, 갇힌 사고 방식을 많이 넓힐 수 있었다.

 또한 프로젝트를 마치고 크게 반성한 점은 나는 계획한 일정이 바로 앞에 부딪혀야지만 비로소 작업을 시작했던 점이 부끄러웠다. 다른 팀은 개발 일정 혹은 앞당겨 수행하여 남들보다 더 여유가 있었으며, 완성도를 많이 높일 수 있었다. 나도 충분히 가능했지만 게으른 마음에 못이룬 일인듯 하다. 이 게으름이 프로젝트 뿐만 아니라 내 앞날을 크게 손해보게 만드리라하며 반성한다.

 가장 고마운 부분은 당연히 형석군과 빵양이다.^ㅡ^ 함께한 시간이 즐겁고, 서로 열중 할 수 있었던 것에 감사한다. 이러한 마음 때문에 완성한 작품을 어떻게든 보존하고 싶은 생각이 드는 것 아닐까..

2008/03/10 05:10 2008/03/10 05:10
  1. 방양  2008/03/12 12:03     댓글주소  수정/삭제  댓글쓰기
    와와- 정리해논거 보니까 웬지 뿌듯해요!!! 동영상 촬영한거는 편집할거에요? 편집하고 저좀 -_-ㅋㅋㅋ
  2. 미친병아리  2008/03/16 23:09     댓글주소  수정/삭제  댓글쓰기
    와우~ 좋은 경험 하셨네요.. 실전에서 많은 도움이 될 것 입니다..

Source Insight 매크로 활용 팁 <한글 주석 입력, 소스/헤더 전환, 색상 Style>

2008/01/14 06:20 키보드예술

개발 시에 전용 편집 툴로 사용 중인 Source Insight의 몇 가지 팁을 이곳저곳에서 모아 링크해 보았다.


1. 한글 입력하기

 Source Insight 사용 중 가장 답답한 문제가 한글 입력이 제대로 안 된다는 것이다. 이것은 유니코드 입력을 지원하지 않아 발생하는 문제인데, 기존에는 쌍자음이 나올 때 커서를 앞으로 옮겨 delete 키로 지우며 사용했었다. 그러던 도중 후배 블로그를 통해 간편한 방법을 얻었다.

사용자 삽입 이미지

  단축키를 통해 위와 같은 창이 뜨며, 글자를 입력하면 에디터에 입력된다. 매크로 기능을 통해 실행되며, 간단한 매크로 수정을 통해 자기의 입맛에 맞게 텍스트를 추가/수정할 수 있다.

 매크로 다운로드와 자세한 기능 설명은 아래 주소에 있다.

  달빛선장의 'Sourceinsight(소스인사이트) 에서 한글 주석 입력하기. -매크로이용 첫번째'
(http://jany.tistory.com/47)



2. 소스/헤더 파일 전환하기

 Visual Studio를 통한 개발 시 Visual Assist의 'Open Corresponding .h or .opp(Alt +O)' 기능을 통해 소스파일과 헤더 파일 전환 기능을 자주 사용했었다. Source Insight에는 없나 해서 검색 했더니..!! 발견^^

 루키CJ님께서 작성하신 매크로를 통해 소스와 헤더 파일 간의 토글 기능이 작동되었다.

  루키 CJ님의 'Source Insight 에서 header, source파일간에 토글 기능'
(
http://rookiecj.tistory.com/4)



* 내가 사용하는 색상 Style

 기본 색상은 Multi-Edit Editor를 참고 하였으며, 눈이 덜 아픈 검정 화면에 적절히 색을 배치했다.

 
- Download  -


사용자 삽입 이미지

< 일부 화면 >


사용자 삽입 이미지

< 전체 창 >
2008/01/14 06:20 2008/01/14 06:20
  1. 유훈  2008/02/10 21:09     댓글주소  수정/삭제  댓글쓰기
    헤헤 감사합니당 ㅋ. 마지막 style엔 변수형식이랑 함수에 하일라이트가 안되어있네용~
  2. jimmy  2008/07/03 23:45     댓글주소  수정/삭제  댓글쓰기
    Nice CFG but can't see clear!

오랜만에 하는 밤샘 코딩

2007/05/06 01:47 키보드예술

  화일처리 시간에 특정 프로그램을 만들어 오라는 알고리즘 레포트를 내주었다 . 나는 '모 금방 끝내는 거 겠지..' 하는 마음과 '그래도 경력이 있는 데 이런 레포트 정도는 내가 해야..' 하는 마음으로 레포트를 하기 시작했다.

  개인 정보를 입력/수정/갱신/삭제를 마스터 파일과 트랜잭션 파일로 알고리즘을 설계 하는 것이다. 얼핏 봤을 때는 한두 시간이면 끝낼 줄 알았던 것이 아침 수업 8:30에 딱 마춰 간신히 끝냈다ㅠㅠ 11시부터 8시까지 꼬박 9시간을 내리 코딩했다.  나름 구조도 잡고, 주석도 달고, 방식도 바꿔 보면서 했더니 시간이 훌쩍 지나가 버렸다.  평소에 하던 프로그래밍과 달라 MSDN도 뒤지며, 이래저래 해매서 그랬나보다.

  그래도 요즘 회사일의 단순한 코딩이 아닌 문제가 주어지고 타임어택이라는 것까지 추가되어 오랜만에 머리 굴리며 잼있게 코딩했다. 동아리에서 후배들 역시 밤새 놀지도 않고 집중하여 코딩하니 일종의 대회에 출연하여 누가 빨리 프로그래밍 하나 시합하는 느낌도 들었다. 이것과 비슷한 대회가 있었는데.. 기억이 안나네..

  가끔씩 오랜 기간동안 하던 프로젝트를 뒤에 두고 참신하고 짧은 프로젝트를 여러명이 달라 붙어 빠르게 완성하는 것도 나름 좋을 듯 하다. 일종의 손 맛을 느껴 본다고 할까나...

 


 

..밤새 집중하고 잠을 못잤더니 다음날엔 거의 비몽사몽~

2007/05/06 01:47 2007/05/06 01:47
  1. 윤정  2007/05/13 16:54     댓글주소  수정/삭제  댓글쓰기
    밤새 집중하고 술을 마셨더니 나도 비몽사몽 -_-.....
    열심히 하는 모습이 보기 좋네 그려~
    그나저나 대체 지금 이거 한국말로 쓴거 맞아?
    • Yarmini  2007/05/14 00:48     댓글주소  수정/삭제
      한국말로 쓴거 맞오^^

      술에 관한건 윤정이한테 물어봐야 되겠는걸
  2. 윤정  2007/05/14 22:26     댓글주소  수정/삭제  댓글쓰기
    ㅋㅋㅋㅋ 실습이라니까. 전공실습. 그나저나. 타로 환불 좀 받아!!!!!!!!!!!!!!!!!!!! -_-

[링크] C 코드 최적화 비법

2007/05/01 13:57 키보드예술

원문 : http://www.joinc.co.kr/modules/moniwiki ··· mization 
KLDP : http://kldp.org/node/79109 

 오랜만에 KLDP 갔다가 강좌란에서 좋을 글을 보게 되었다. 말 그대로 C언어를 위한 최적화 방법인데, 실용적인 코드가 많이 소개되고 있다.

 최적화와 가독성은 서로 어긋나기 쉽지만, 양쪽의 특징을  알고 적절히 조합한다면 그 보다 멋있는게 있을까..
 

 최적화의 예 중 아래의 코드는 최적화 뿐만 아니라 관리도 편리해 진다.

switch ( queue ) {
  case 0 :   letter = 'W';
     break;
  case 1 :   letter = 'S';
     break;
  case 2 :   letter = 'U';
     break;
}


위의 코드를 문자 배열을 이용하여 아래와 같이 변경한다.

static char *classes="WSU";
letter = classes[queue];
2007/05/01 13:57 2007/05/01 13:57
  1. 희진  2010/01/07 14:13     댓글주소  수정/삭제  댓글쓰기
    오 이렇게 쓰는 방법도 있네요ㅋ

    퍼가겠습니다~ㅋ

버전 관리 툴 전파를 위한 Subversion 세미나

2007/04/05 23:45 키보드예술

  동아리에서 Subversion 세미나를 위해 파워포인터로 준비했다. 일단 기본 개념과 장점, 자주 쓰이는 명령어까지 정리하였다.

Subversion 기초 사용법

1. Subversion 소개
  1) 버전 관리 툴의 필요성
  2) Subversion 구조도
   3) 저장소(Repository)란
   4) Subversion 설치하기

2. 사용하기
  1) 저장소 생성하기(Create Repository)
  2) 프로젝트 등록하기(Import)
  3) 소스 가져오기와 갱신(Checkout, Update)
  4) 수정된 소스 적용하기(Commit)
  5) 파일 추가, 삭제하기(Add, Delete)
  6) 프로젝트 버전에 따른 백업(Tag)
   7) 오버레이 아이콘 상태 설명

3. 프로젝트 참고사항
  1) 개발 흐름도
  2) 프로젝트 관리하기

4. 인용 및 참고자료

  최대한 캡쳐한 그림으로 보면서 진행하려 했는데, 대부분 칠판과 말로 쉽게 진행이 되었다. 어렵지는 않기 때문에  전체적인 학습도도 높았던 것 같다. 이제 요번달 말 부터 동아리 전체 프로젝트를 대상으로 진행하니까 직접 해보면 더 장점을 살릴거라고 본다.

  고생한 만큼 보람을 느낀 세미나였다.

2007/04/05 23:45 2007/04/05 23:45
─ tag  ,
  1. 유훈  2007/04/08 00:15     댓글주소  수정/삭제  댓글쓰기
    감동적인 세미나; 가아닌 교육이였습니다. ^^ 정말 오랜만에 멋진 교육이였어용 ㅋㅋ 수고하셨습니다~ 짝짝짝
    • Yarmini  2007/04/08 04:29     댓글주소  수정/삭제
      의외로 쉽게쉽게 모두 잘 따라해준 덕분이지.ㅋ 다음은 유훈이 세미나?ㅋ
  2. moon  2007/04/09 02:12     댓글주소  수정/삭제  댓글쓰기
    미안. 꼭 듣고 싶었는데.. 빠져버렸네..ㅠ.ㅠ 수고했다..
    ㅋㅋ 참 이거 니 아뒤 얼마전에 알았다.. 네이버 블로그 첨에 이게 누군가 하다가 블로그 접을려면서 지워버렸는데..ㅋㅋ 미안. 내가 가장 좋아하는 선응인데..^^;
    • Yarmini  2007/04/09 04:59     댓글주소  수정/삭제
      하핫^^ 형 안녕하세요~ㅋㅋ
      당연히 형 블로그 RSS 리더기에 추가해서 보고있죠
  3. codewiz  2007/10/28 13:37     댓글주소  수정/삭제  댓글쓰기
    좋은 자료 잘 보고 갑니다.
  4. lwk  2009/06/03 06:33     댓글주소  수정/삭제  댓글쓰기
    학교에서 교수님이 후배들한테 SVN좀 알려주라고 해서 자료좀 찾아봤는데.. 잘 정리되어 있네요^^ 써도 되겠죠?
menu openmenu close