안드로이드에 Flux 적용하기. Flux는 정말 새로운 것인가?

Flux는 MVC모델의 단점을 보완하기 위해 페이스북에서 고안한 패턴으로, 웹개발 환경에서 먼저 쓰여지기 시작하였습니다. 2014년에 페이스북에서 Flux를 발표하였는데, 발표 후 많은 웹개발자들의 관심과 함께 기술적인 논의도 활발히 이루어졌습니다. 저는 이것이 무엇이길래 다들 이렇게 주목하는가 궁금했습니다. 그리고 이것이 패턴이라면, 안드로이드에도 적용하여 구조개선을 이룰 수 있지 않을까, 기대감을 품고 학습을 시작하였습니다. 결론을 먼저 말씀드리면, 기대했던만큼 좋은 패턴은 아니라고Read more

RDS MySQL에서 RDS Aurora로 DB이전 다운타임 최소화 하기

얼마 전 저희 리멤버의 DB서버 이전이 있었습니다. 기존엔 AWS RDS에서 MySQL을 사용하고 있었으나 AuroraDB로 서버 이전을 하였고, 손쉽게(?) 작업을 마무리 할 수 있었습니다. 이전을 할 때 데이터 소실없이 이전 하는 것이 첫 번째로 중요했고, 두 번째로 중요했던 건 서비스의 다운타임을 최소화 하는 것 이었습니다. 첫 번째로 중요했던 데이터의 소실 없이 이전 하는건 철저한 검증을 통해 확인과 복원을Read more

안정적인 서비스 운영을 위한 서버 모니터링 #2

0. Background 전편에서는 안정적인 서비스 운영을 위해 꼭 필요한 APM(Application Performance Management)에 대해 이야기하였습니다. APM을 도입하면 운영 환경에서도 어느 곳이 성능 병목 구간인지, 어떤 에러가 발생하는지 쉽게 파악하고 추적할 수 있습니다. 하지만 이것만으로는 부족합니다. 예를 들어, 특정 사용자가 리멤버의 명함 조회 API를 호출했는데 어느 순간 갑자기 응답이 느려지기 시작합니다. APM을 통해 모니터링을 하면 이런 현상이Read more

‘처음’ Windows 설치 파일을 ‘배포’하는 개발자들을 위하여

이번에 리멤버 Windows 데스크톱 버전을 개발하면서 처음으로 exe 파일로 설치 파일을 만들고 웹에 배포해 보았습니다. 이 글에서는 처음으로 설치 파일을 웹에 배포하는 과정 그리고 예상하지 못했던 난관에 대하여 설명해보려 합니다. 앱 개발을 완성하고 설치 파일까지 만들었다고 모든 것이 끝났다고 생각하시면 안됩니다. 별 생각 없이 설치 파일을 웹에 게시하고 웹페이지에서 다운을 받으면 다음과 같은 화면들을 만나게Read more

안정적인 서비스 운영을 위한 서버 모니터링 #1

0. Background 초기 스타트업에게는 빠르게 제품을 개발하고 이를 시장에서 검증받는 것이 최우선 과제이지만, 제품이나 서비스가 어느 정도 시장에 안착하게 되면 그 다음부터는 안정적으로 운영하는 것이 점점 더 중요해집니다. 드라마앤컴퍼니도 리멤버를 출시한지 어느덧 2년이 지났고, 이제는 서비스를 검증하는 단계를 지나 확장하는 단계로 접어들었습니다. 따라서 신규 기능 개발도 중요하지만 그에 못지 않게 서비스의 안정성 유지도 개발팀 업무의Read more

Electron으로 웹 앱 만들듯 데스크톱 앱 만들기

이번에 출시된 리멤버 데스크톱 앱은 Electron을 이용하여 개발되었습니다. 이 글에서는 HTML, CSS, JavaScript만을 이용하여 Windows, Mac, Linux 등 크로스 플랫폼으로 데스크톱 앱을 만들 수 있게 해주는 Electron에 대하여 이야기해 보려고 합니다. 세 가지 플랫폼 중 가장 많이 사용하시게 될 것 같은 Windows를 기준으로 작성했습니다. 이 글이 독자분들에게 Electron에 대하여 접할 좋은 기회가 되고 프로젝트 도입 여부에 대한 결정에Read more

리멤버의 안드로이드 6.0 M버전 대응기

2015년 10월 20일, 넥서스 5x 출시를 시작으로 안드로이드 6.0 마시멜로우(이하 M버전)가 정식으로 시장에 풀렸습니다. M버전은 고객의 입장에서는 체감할만한 큰 변화가 없지만, 개발자들에게는 매우 많은 변화가 있던 업데이트 였습니다. 그만큼 구글에서는 정식으로 출시하기 전부터 3차례에 걸쳐 프리뷰를 발표하면서 많은 개발자들이 변화에 대응할 수 있는 시간을 주었습니다. (심지어 targetSdkVersion을 23으로 올리지 않아도 M버전 기기에서 앱이 잘 돌아갑니다.Read more

Tom과 Jaden의 첫 페어 프로그래밍 도전기

이 글은 처음으로 페어 프로그래밍(Pair programming)을 시도해본 두 사람의 이야기입니다. 둘 다 처음 진행해본 페어 프로그래밍인 만큼 매우 잘 이해하고 진행한 것도 아니며 최적의 방식으로 진행하지도 못했습니다. 하지만 1주일간 진행해보며 페어 프로그래밍을 처음 접해본 사람의 입장에서 진행한 방법과 느낀 점들을 적어보았습니다. 페어 프로그래밍을 시도해보고 싶으나 시도해보지 못한 분들에게 도움이 되는 글이었으면 좋겠습니다.   배경 등장인물Read more

Amazon Web Services, Capistrano 그리고 리멤버

안녕하세요. 드라마앤컴퍼니 개발팀 Jaden입니다. 얼마전 리멤버 서버 배포과정을 개발팀 내에서 공유하는 시간이 있었습니다. 이때 소개했던 Capistrano와 Amazon Web Services(이하 AWS) 에서의 배포 과정을 공유 드리고자 합니다. 개발자와 피할 수 없는 숙명, 배포 모든 개발자에게 있어 개발과 배포는 떼려야 뗄 수 없는 관계입니다. 특히 서버의 경우엔 서비스 규모가 커짐에 따라 배포에 대한 부담이 커지기 마련입니다. 그리고 플랫폼에Read more

드라마앤컴퍼니 기술 블로그에 오신 것을 환영합니다.

드라마앤컴퍼니는 DReam And MAke it happen을 모토로 국민 명함관리 앱 리멤버(rememberapp.co.kr)를 서비스하고 있으며, 더 나아가 명함이라는 매개체로 한국형 business networking platform을 완성시키는 것을 꿈꾸고 있습니다. 리멤버는 사용자가 명함 이미지를 업로드하면 이를 타이피스트가 보고 수기로 입력을 해주는 서비스입니다. 따라서, 뭔가 엄청난 고도의 기술이 사용되었다기보다, 사람이 일일이 작업하는 노가다 서비스라는 인식이 강한 것도 사실입니다. 솔직히 노가다 서비스가Read more

1 2