[T.Viewer 개발일기] 1. README.md로 시작 나의 경험담 2019.10.15 17:30

처음으로 개발일기를 써보기로 했다. 많은 개인 프로젝트를 진행했지만 내가 고민하는 것들 중요하게 생각하고, 힘들게 결정했던 것들에 대한 정리를 따로 해놓은 것이 별로 없었는데 이번에는 그런 모든 내용들을 정리하면서 오픈소스로 개발을 해보려고 한다. 재미도 있으면 더 좋겠지만 개드립은 자제하고 간결하지만 솔직 담백하게 개발자의 일기를 적어보려 한다. 어떤게 좋다 어떤 방식이 기술적으로 훌륭하다 이런 것을 증명하고 주장하는 것이 아니라 개발자로서, 개인 프로젝트를 시작부터 끝까지 진행하면서 느끼는 모든 것을 온전히 적어보고 싶다.

T.Viewer 기획

사실 프로젝트를 시작하기 전에 당연히 어떤 프로젝트를 어떻게 진행할 것인지 기획을 먼저 한다. 나는 여러가지 개인 프로젝트를 했고, 지금도 소소하게 진행중인데, 모두 각자 저마다의 의미를 갖고 있다. 기획 단계에서는 이 프로젝트가 나에게 어떤 의미인지, 어떤 목적으로 생성되었고, 어떤 목표를 갖고 있는지 명확히 하는 것이 가장 중요하다. 적당히 좋아 보이고, 멋져보이고, 사람들이 좋아할 것 같다는 단순한 기대만으로 프로젝트를 섣불리 시작하면 중간에 맥이 풀려 버리는 경우가 종종있었다.

T.Viewer 는 내가 타이젠 어플리케이션 개발을 하면서 겪었던 어려움 중 적당한 로그 뷰어가 없는 어려움을 해소 하고 싶었던 것에서 기인했다. 단순히 그 불편함을 해소하고자 했던 것만으로는 threshold를 넘지 못했고, 최근 사외 강의를 하면서 보니 나보다 더 힘들어 하는 사람이 많다는 것을 보고 한번 더 자극을 받았다.

sdb dlog 도 아니고, 타이젠 스튜디오 로그 탭만을 이용해서 개발하는 개발자들의 호소를 외면하기 힘들었다.

이왕 만들거면 제대로 만들어 보고 싶다는 생각이 들어서 오픈소스로 개발을 시작하기로 했고, 처음부터 제대로라는 그 마음가짐을 다잡으면서 나가기 위해 일기도 쓰기로 했다.ㅋ

README.md 작성

티스토리는 내게 일기장을 주고, 깃헙은 내게 repo를 줬다. 제한 없는...한 없는 은혜! 아무런 부담없이 repo를 먼저 만든다. 한 것도 없는데, 클릭 몇번으로 repo가 생기니 벌써 뭔가 시작한 느낌이다. 하지만 REAMEME를 작성하기 전에는 repo는 미숙아나 다름없다. 차분하게 정리해서 올려본다. 물건너 친구들이 볼 수 있으므로 서툴지만 영어로 쓰자. 이럴 땐 어설픈 영어가 한글보다 낫다. 아님 둘다 쓰던가...;

PC 프로그램을 만들게 되었지만 관심이 많았던 electron을 써서 웹 기술로 개발해 보고 싶었다.

# T.Viewer (Tizen Log Viewer)
**Cross Platform Tizen Log Viewer**

## What is T.Viewer? 
Easy and Simple Tizen Log Viewer 

## How to Use

## How to build, How to Join
T.Viewer use [Electron](https://electronjs.org).

### Pre-acquired
- nodejs, npm or [yarn](https://yarnpkg.com)

[Electron development environment](https://electronjs.org/docs/tutorial/development-environment)

[Run Electron Application](https://electronjs.org/docs/tutorial/first-app#running-your-app)

### Feature list 
1. log level 별로 출력
   - Info/Debug/Error
1. tag option 출력 
   - multi tag 출력 지원
1. filter 적용한 출력 
   - grep으로 원하는 로그만 출력(dlogutil grep "A|B")
   - grep으로 특정 메시지를 제외한 로그만 출력(dlogutil grep -Ev "A|B")
1. filter 별 탭 제공
   - 하나의 로그를 필터된 탭을 제공
   - 복수개의 필터 탭 제공

마치며

오늘은 여기까지만 해야겠다. 개인 프로젝트 특성상 초반에는 불꽃 튀기며 개발하다가 금새 지쳐서 흐지부지 되는 경우가 왕왕있는데, 페이스 조절 잘하면서 재미를 꾸준히 찾아 가는 것이 중요한 것 같다. 어떤 기능을 더 넣을까. 누구한테 소개 해주면 좋을까. 어떤 상황에서 사용하면 될까등의 기분 좋은 상상으로 일종의 최면 상황을 계속 유지 하는 것이다.ㅋㅋㅋ 사실 돈과 명예가 최곤데...