DesktopApplication 개발을 위한 Electron에 대해서 간단하게 공부를 해 보았습니다. 그중에서도 핵심부분인 Main Process에 대해서 간단하게 추려서 AngularJS2 & Electron 스터디 모임에서 발표한 내용을 업로드합니다. 몇몇 API만 추려서 설명하기 때문에 나머지 부분들은 공식 문서를 통해서 부족한 부분들을 채우시면 될 것 같습니다.
DesktopApplication 개발을 위한 Electron에 대해서 간단하게 공부를 해 보았습니다. 그중에서도 핵심부분인 Main Process에 대해서 간단하게 추려서 AngularJS2 & Electron 스터디 모임에서 발표한 내용을 업로드합니다. 몇몇 API만 추려서 설명하기 때문에 나머지 부분들은 공식 문서를 통해서 부족한 부분들을 채우시면 될 것 같습니다.
▶ 스마트스터디 채용안내
https://goo.gl/Ondwo8
▶ 발표자 소개
현재 수집형 RPG [몬스터슈퍼리그] 시스템기획 및 라이브기획PM.
법학과 졸업 후 게임업계로 와서 [디스코판다 for kakao], [LINE 플러피다이버], [범핑베어 with facebook] 등 각종 플랫폼과 국가에서의 게임상용화 경험을 토대로 글로벌원빌드 [몬스터슈퍼리그]에 열심히 녹여내는 중.
▶ 발표자료 소개
게임지표 중 누구에게나 다루기 어려운 난제, 리텐션(Retention).
[몬스터슈퍼리그] 글로벌서비스를 하며 리텐션을 15% 개선한 놀라운 경험을 바탕으로, '리텐션을 개선하려면 수치를 조정해야 한다?', '더 좋은 보상을 줘야 한다?'와 같은 숫자 위주 판단에서 벗어나 감성적이지만 파괴력 있는, 조금은 낯설지만 솔깃한 팁을 공유합니다.
※ 실제로 라이브에 적용했던 내용을 상세히 공유하려고 합니다. 최대한 현실작업과 가까운 형태로 기획자의 머릿속을 들여다 보는 시간이 되기를 바랍니다.
[NDC2017] 딥러닝으로 게임 콘텐츠 제작하기 - VAE를 이용한 콘텐츠 생성 기법 연구 사례Hwanhee Kim
2017년 4월 26일, NDC2017 발표자료입니다.
콘텐츠 제작은 게임 개발에서 많은 노력과 시간 투자를 필요로하는 작업입니다. 최근 폭발적인 관심을 받고 있는 딥러닝을 통해 여기에 드는 시간을 크게 줄일 수 있습니다. 이 발표에서는 VAE(Variational AutoEncoder)를 이용한 모방을 통한 콘텐츠 생성 기법에 대해서 다룹니다.
SMARTSTUDY 에서 몬스터 슈퍼 리그를 개발하면서 빠른 개발 진행을 위해 선택했던 Python 게임 서버, '잘 되면 다시 만들지 뭐'라는 생각에서 시작했지만 다시 만들 일은 영원히 오지 않았습니다... Python으로 게임 서버를 만들었을 때 사용한 것은 무엇인지 또 실제 오픈 했을 때 서버는 안녕했는지 알아봅니다.
추석에 새기는 마음, '오래 오래 건강하게'
둥근 보름달만큼이나 마음도 넉넉해지는 한가위입니다.
자연의 혜택을 느긋하게 누리는 풍요의 시간,
소중한 이들에게 사랑과 감사의 마음을 전하는 것이 우리네 미덕이지요.
일백년 한결같은 정성으로 명품을 완성해온 정관장으로
그 애틋한 마음을 건네보세요.
2013년 정관장 추석선물 카탈로그 입니다.
어느 해커쏜에 참여한 백엔드 개발자들을 위한 교육자료
쉽게 만든다고 했는데도, 많이 어려웠나봅니다.
제 욕심이 과했던 것 같아요. 담번엔 좀 더 쉽게 !
- 독자 : 백엔드 개발자를 희망하는 사람 (취준생, 이직 희망자), 5년차 이하
- 주요 내용 : 백엔드 개발을 할 때 일어나는 일들(개발팀의 일)
- 비상업적 목적으로 인용은 가능합니다. (출처 명기 필수)
초고속 웹사이트 개발을 위한 Codeigniter PHP FrameworkInseok Lee
지난 10월에 연구실에서 진행했던 세미나 자료입니다.
웹개발에 대한 기본적인 개념이나 프레임웤에 대한 내용을 전혀 모르는 학부 학생들과 연세가 있으신 박사과정 학생들을 위해 제작되었습니다.
Codeigniter의 내용보다도 왜 Codeigniter를 쓰면 좋은지, 그리고 웹 개발 방법은 어떻게 바뀌어 왔는지 등을 이곳저곳의 슬라이드(Codeigniter 한국사용자 포럼의 웅파님, 다음커뮤니케이션의 윤석찬님)를 정리하였습니다.
초보자를 대상으로 하는 강의에서 참고하면 좋을 것 같아용~
관련 문의는 Codeigniter 한국사용자 포럼 codeigniter-kr.org 에서 해주세요~
8. 보통의 서비스 개발 과정
• “NDC Replay” 를 서비스하는 웹 애플리케이션 개발
• 이를 위한 데이터베이스 생성 및 연결
• ‘적절한’ 로드 밸런싱 및 백업 플랜 준비
• 매년 NDC가 열릴 때마다 업데이트
– NDC 사무국으로부터 데이터를 받아서 가공 후 업로드
<또는>
– 전용 백오피스를 별도로 제작하여 NDC 사무국에 제공
9. 고민
• 개발자는 단 두 명이다. 게다가 풀 타임이 아니다.
• 서버라는 것은 관리를 필요로 한다
– 죽을 수도 있습니다
– 해킹당할 수도 있습니다
– 업데이트를 해야 하는 경우도 있습니다
• 1년에 한 번 크게 내용이 바뀌고, 그 사이에는 거의 변화가 없다
10. 방향
• “만들어놓고 잊어버릴 수 있는” 사이트 만들기
• 연계 서비스를 최소화
• 유지보수는 최대한 하지 않도록
• 개발자 도움 없이 self-service + update 가능하도록
11. 웹 애플리케이션을 만들 필요 있나?
• 사이트를 모두 다 static html으로 만들자!
서버 취약점, 업데이트 이슈 없어짐
서버의 구성이 매우 단순해짐
심지어 CDN에 업로드해도 됨!
12. 정적 웹 사이트 제작 도구 제공
• 데이터 입력 주체 : NDC 사무국 (엔지니어가 아님)
14. 변환 도구의 필요성
• 백오피스를 만들어주거나,
• 직접 변환을 해서 사이트 제작까지 할 수 있는 변환 도구 제공
15. 세 가지 파트의 작업
1. 세션 정보를 json 으로 변환하는 도구
2. 이를 바탕으로 제작되는 Static Website
3. 강연 자료 변환 도구
16. 세션 정보 : xlsx to json
• xlsx -> json -> website
• 엑셀 매크로를 제작하여, 저장 시 .json 자동 생성
17. Static website
• xlsx -> json -> website
• 처음에는 Single page application을 고려
– 단일 html + json
• 검색엔진을 고려 : 크롤러가 세션 정보를 제대로 캐싱할 수 있도록
• 세션 별로 html 파일을 하나씩 생성
• {{NRP_*}} 로 placeholder를 만든 Template html 작성
21. HTML 자동 생성
• 엑셀에서 얻은 session_list.json 을 사용하여 html 생성
• Lua로 만들었음
– 이유 : 제작자가 편하니까! (매우 중요)
– Lua-resty-template 이라는 템플릿 라이브러리를 사용 (복선1)
• 실제 사용은 .bat 파일을 통해 진행
– 엔지니어가 아닌 사람에게는 조금 낯선 프로세스
– 툴 사용 숙련이 쌓이고 나면 괜찮아질 것이라고 생각 (복선2)
22. 변환 : pptx
• iSpring 을 사용하여 HTML5/SWF Player 변환
• Iframe으로 감싸서 사용
23. 변환 : pdf
• ghostscript + imageMagick 으로 이미지 변환
• pdf to jpeg + player.html 생성해주는 lua script 제작
24. 변환 : 동영상
• 동영상
– PotEncoder를 사용하여 mp4 생성
– 스트리밍 플레이에 최적화된 preset을 제작하여 제공
– 구 IE 지원을 위해 video.js 사용
30. 2015
• 레티나 지원, 오픈그래프(페이스북 미리보기) 등 마이너 업데이트
• 2015년 NDC 데이터 추가해서 업로드
– 데이터 입력 담당자가 2014년과 다른 분
– 입력 중에 문제가 생겨서 봐드림…
31. 2016
• 데이터 입력 담당자가 또 다른 분 2015년담당자는 군대 가심
• 엑셀에 데이터를 입력하고 ‘컴파일한다’ 는 개념을 매우 어려워함
32. 이게 아닌데…?
• 애초에 왜 이렇게 만들었을까?
– 가능한 한 빨리 개발하고, 개발 완료 후에는 신경쓰고 싶지 않았다
– 서버와 DB를 없앤다 = 성공
• 새 데이터를 입력하는 과정을 매년 지원해야 하네?
33. 무엇을 잘못 생각했나
• ‘그리 어렵지 않을 것이다’
– 엑셀에 입력하고 콘솔 애플리케이션으로 후처리하는 절차
– 게임 개발에서는 흔하지만 일반적으로는 대단히 낯설다!
• ‘곧 숙련될 것이다’
– 1년에 한 번 쓰는 툴이므로 숙련될 틈이 없다
– 담당자도 매년 바뀐다
34. 역시 편집툴이 있어야겠다 ㅠ_ㅠ
• 적어도 오피스 프로그램이나 웹 페이지처럼 생겨야 한다
• 콘솔 애플리케이션은 이제 그만…
36. 데이터 저장을 S3에 한다면?
• 데이터를 브라우저에서 바로 편집 가능하다면?
• HTML을 브라우저에서 바로 생성 가능하다면?
• DB 없이 S3 권한 관리만으로 편집툴을 만들 수 있다!!!
• CloudFront에 물리면 트래픽 비용도 줄일 수 있다!!!
지금 만든다면 원본 데이터는 구글 스프레드시트에 저장하는 걸 검토할 듯