Tuesday, December 27, 2016

VSTS(Visual Studio Team Services)를 이용한 Xamarin xaml app 개발 환경 구축하기 기록 (1)

어디서 부터 글을 시작해야 할지 감이 잡히지는 않지만
생각의 연결 고리는 이렇다.

  • 내가 만들어 보고 싶은 App이 있는데 이왕 만드는거 크로스 플랫폼을 지원하는 Xamarin으로 만들어 보자
  • Xamarin은 Microsoft가 올해 인수했는데 무료인데다가 C#으로 만들 수 있다.
  • 내 개발 인생 중 50% 이상 차지했던 C#을 쓸 수 있다니 어찌 마다할 수 있겠는가?
  • 이왕 쓰는거 git하고 cloud build 써야 하는데 어디 없나? 하고 찾아보니
    • git은 github에 public으로 쓰면 되니까 문제 없고
    • Cloud build는 써야 하는데 찾다 보니 VSTS에서 해주네?
    • VSTS 보다 보니 이게 private git을 지원하지 않는가? 그러면 github 쓸 이유가 없어짐
    • 게다가 backlog에 나름 kanban board까지 지원을?
  • 그러면 결론은 VSTS로 맞추자!
가 된 것이다.

Xamarin을 모른다고?? 그럼 구경한번 해 보시는게?

<Xamarin Platform 메인 화면, Download now for free!. 무료야 무료 히히>
여기서 cloud build에 대한 얘기를 더 첨가해 보자면
  • Cloud build는 왜 쓰려 하는가?
  • 올해 회사에서 진행했던 프로젝트에서 client 프로그램의 플랫폼이 unity였는데 unity에서 unity cloud build라는 놀라운 서비스를 경험해본 바
  • 앞으로 빌드는 이런 서비스를 이용해야 겠구나라는 생각이 들기 시작했다.
  • 그러니까 client 파일이 필요한 누군가한테 빌드된 파일을 던져줘야 하는데
  • 그걸 일일이 사람이 빌드 해서 파일이 떨궈지면 메일에 첨부해서 던저주는 반복적이고 귀찮고 어떨때는 자괴감이 드는 행위를 하지 말아야 겠구나 라는 생각이 안들 수 없다.

아직 VSTS가 뭔지 모르는 사람이 있다면, 역시 구경이라도 한번?
https://www.visualstudio.com/team-services/

<Visual Studio Team Services 메인 화면, Get started for free!, 이것도 무료네 무료야 히히>
들어가 보면 내가 하려고 하는 핵심 단어 세 개가 떡 하니 나와 있다.
Agile, Git, CI(Continuous integration)

  • Agile: 애자일이야 호불호가 많지만, 어쨌든 쓰는 사람들 끼리 합이 맞는다면 훌륭한 방법 중에 하나가 있다. 그 중에 backlog 즉 작업 관리가 소스 코드 외에 빌드 관련 링크로도 작성 가능하니 이슈관리 시스템과 소스 버전관리 시스템이 연동되는걸 써본 사람은 그 편리함을 알 것이다.
  • Git: git이야 뭐 기본중에 기본인데, github를 아는 사람이면 딱 한마디만 한다. private인데 무료다.
  • CI: 어찌보면 내가 정말 하고 싶었던 건데 이게 여기에 들어 있다. 어디에 갖다 붙여도 써먹을 수 있는 말을 빌리자면, cloud build를 한번도 경험해 보지 않은 사람은 있어도 한번만 경험해본 사람은 없다. 즉, 경험해 보면 찾게 될 수 밖에 없는 시스템이다.
뭔가 어려운 용어가 난무하고 쓰면 뭐가 좋은지 모를 것 같다.
하지만 괜찮다.
어차피 모르면 찾아보면서 알아가면 되고, 아는 사람이면 가볍게 review 형태로 보면 되니까.
그리고 여기까지 써 놓은 것도 나름 친절한 설명이라고 생각한다.
왜냐?
이런건 내 블로그가 아닌 다른 블로그에서도 다 찾아보거나 할 수 있는 것이다.

이젠 환경 구축할 때의 문제점들과 그 해결 과정을 기록을 남길 것이고
내가 남기고 싶은건 이런 내용들이다.

Thursday, November 24, 2016

스타벅스에서 만난 C++ 과제하던 학부생들 이야기

매주 월요일 저녁이면 일찍 퇴근해서 스타벅스 숭실대점에 간다.
이유는 아내가 숭실대에서 아래 링크의 강의를 듣는데 기다렸다가 집에 같이 가기 위해서이다.
http://sll.seoul.go.kr/lms/simin_course/courseRequest/doDetailInfo.dunet?course_id=ASP00001S1001201652024&class_no=01&course_gubun=0&simin_yn=U

끝나고 나면 대학가 근처니까 싸고 좋은 음식점에서 저녁도 같이 먹고 집에 가는 소소한 일정 중에
때는 2016년 11월 21일에 발생한 일을 기록한 것이다.

<스타벅스 숭실대점 2층의 모습>

여느때와 마찬가지로 까페 아메리카노 tall 사이즈를 시켜서 모바일 게임을 하며 기다리고 있는데
옆 자리와 옆옆자리의 여학생 둘이서 들으면 알 것 같은 C++ 언어 얘기, 뭔가 잘 몰라서 안풀리는 얘기, 교수님 욕 하는 얘기, C++은 잘 모르겠는데 C언어가 좋다는 등의 얘기를 아주 크게 떠들고 있었다.
대충 느낌이 과제를 해야 하는데 공부는 안했고, 제출 기한은 임박한 평범한 학부생의 모습이었다.
그래서 20분 동안 도와줄까 말까를 고민했다.
왜 그런가 하면 못해도 15년 이상 차이나는 학생들에게 괜한 오지랖이 아닐까 하는 것과 도와준다 한들 프로그래밍이라는게 본인이 생각해서 해야 한다는 걸 알기 때문이었다.
(14학번이라고 했으니... 대략 17년 차이다)

그래도 큰 마음을 먹고 말을 걸었다.
"저 실례가 안된다면 제가 도움을 드릴 수 있는데... 아는 얘기가 계속 들리는데 너무 크게 떠들어서요..."
로 말을 건넸는데
의외로 반응이 폭발(?)적이었다.
누군가 자기들을 도와준다는 사실만으로도 좋았는지
"도움을 주신다는데 거절할 이유가 없다"며 적극적으로
쓰던 노트북PC를 내 자리에 가져와서 이런 저런 설명을 하기 시작했다.

게다가 둘 중에 한 명 한테 설명하는 중에 다른 한 명이 스타벅스에서 파는 고급 과자와 견과류를 사가지고 와서 감사의 표시로 주기도 했다.

어쨌든 학부생들 과제야 거기서 거기니까 내용을 보자 했는데...
구현해야 하는 내용이 매우 디테일 했고 항목마다 점수도 매겨져 있는데 그 양이 hwp 파일로 3페이지나 됐다.
그래서 하나 하나 짚어 가면서 어떻게 하면 좋을지에 대해서 얘기를 해줬다.
과제 내용이 상당히 디테일해서 찾아보면서 할 수 있는 것들이었지만...
이건 내 기준에서 그런 거고
학부생들 기준에서는 아주 어려운 거겠지, 어려운 걸꺼야, 공부를 안해서 그런걸꺼야... 로 생각하기로 했다.

그런데 사실 생각해 보면
나도 C++ 처음 배울 때 후배들꺼 소스 코드 달라고 해서 베껴서 냈던 기억을 떠올려 보면
이 학생들을 탓할 것도 아니긴 했다.

신나게 설명하던 중에 아내와 만날 시간이 되서 마저 설명해주지는 못하고 아쉬운 마음에 메일 주소를 남겨 두고 나오긴 했지만
이날 뜻밖에 개발 얘기를 할 수 있는 사람들을 만났다는 점만으로도 좋은 시간이었던 것 같다.

-----

이 글을 쓰는 시점에 아직 메일이 안 온걸 봐서는 좋게 해석해 볼 수 있을 것 같다.
과제를 내가 조언한걸 참고해서 잘 했던가.
아니면 아직 못했지만 어떻게든 내 도움 없이 해결하려고 하고 있던가.

Wednesday, July 13, 2016

회사 생활: 태도의 변화

작년 프로젝트가 끝난 후 부터 많은 변화가 있었다.

팀이 재구성 되서 다른 팀에서 일해보기도 하고,
다시 개발에 전념해 볼 수 있는 위치에 있기도 하다.

그 동안 내가 회사 생활하는데 있어서의 태도는
상당히 꼰대 마인드였다.

일이 있으면 빨리 해내야 하는 것 때문에 밤낮 구분 없이 일에만 몰두했고
그러다 보니 시간의 분배가 되지 않았다.
나만 끙끙 거리면서 일 하는 것도 싫었고
힘들게 일하면서 화풀이 한게 전혀 다른 의도로 흘러가게 됐다.

그 후 생각을 많이 하게 됐다.
내가 어떤 짓을 했으며 그로 인해 다른 사람들과의 관계가 어떻게 됐는지...
그렇게 비틀어져 간 인간 관계가 너무나도 힘들었다.

솔직히 내가 이렇게 까지 힘들어야 하나에 대해 생각을 많이 했고
사람들 마주치는게 힘들고 지쳐갔다.
지쳤다는 건
내가 더 이상 기대할 바가 없다는 뜻이기도 하지만
내가 먼저 올바른 생각을 가지고 내 할일을 잘 해낸 후에야
다른 사람과의 관계 형성에 도움이 된다는 것도 알았다.

그리고 많이 반성도 했다.

이직 생각도 좀 했었고
회사가 싫어지기도 했다.

지금은 이직 생각은 좀 접어둔 상태고 회사는 계속 싫은 상태지만
더 이상 싫어하지 않기로 했다.

제일 중요한 회사 생활의 태도를 바꾸고 난 후 부터
나는 또 다른 의미의 자유를 얻게 됐다.

생활의 중심을 일->나로 바꾸고 나니
내 스스로 시간 분배를 먼저 잘 하고 난 후에 일을 하게 되었고
일도 좀 더 업무 시간에 집중해서 할 수 있게 됐다.

물론 그 전에도 할 수 있었던 거였지만
내 생활 태도가 바뀌기 전까지는 안될 수 밖에 없는 거였다.

그리고 사람들과의 관계도 조금 멀리 하게 됐다.
내가 사람들에게 기대하는 만큼 그 사람은 부담스러워 한다는 걸 알았기 때문이다.
쓸데 없는 기대감은 일찌감치 내려 놓고
강건너 불구경 하듯이 대하다가 필요하면 불 꺼주는(?) 식으로 하는게 좋다고 생각했다.
솔직히 불구경 하는 시간도 아깝고
더 나를 위해 그리고 내 가족을 위해 시간을 보내는게 맞는 것 같다.

내가 힘들게 했던 그래서 날 싫어하는지 아닌지 모를 사람들아
이제 내가 신경 쓸일 없으니 너희의 인생은 너희가 알아서 하도록 하고
난 나의 올바른 길을 내가 잘하고 살아남을 수 있고 재미있는 걸 해보려 한다.

그래도 내가 싫다면 미안하구나
하지만 더는 싫어하지 않았으면 한다.
그래봐야 너에게도 크게 도움이 될 일은 없을 것 같으니까.

일기장에 일기를 속시원히 싸질렀으니
재미있게 일해보러 가야겠다.