Crashlytics로 앱 배포하기

진행 중인 프로젝트가 모바일을 포함하는 경우, 거의 모든 경우에 Beta by Crashlytics 서비스를 통해 배포된다. Testflight이라는 훌륭한 툴이 있지만, Apple에 인수되고 난 뒤로는 줄곧 Beta by Crashlytics를 사용한다. 간편하고, 테스터 관리가 쉽고, 훌륭한 부가 기능들이 있다. 생각나는 장점이 있다면 다음과 같다.

  • 앱스토어를 거치지 않고, 개발 중인 앱을 설치할 수 있다.
  • 향후 앱이 업데이트되는 경우 자동으로 알림을 받고, 업데이트할 수 있다.
  • iOS의 경우에도 (상대적으로) 쉽게 설치가 가능하다.

 

 

안드로이드 사용자

[STEP 1 : Beta by Crashlytics  설치]

  • 테스터로 지정된 사람들은 Crashlytics에서 발송된 이메일을 받게된다. 이 이메일을 연다.
  • 이메일에서 ‘Check It Out’ 버튼을 누른다.
  • Beta by Crashlytics가 설치되어 있지 않는 경우, 이를 설치하는 Download 버튼을 누른다.
  • .apk 파일이 안드로이드 폰에 다운로드되고, 이를 눌러 설치한다.

 

주의할 점

  • 지금 설치하는 앱은 ‘테스트를 위한 앱’이 아니라 테스트 앱을 설치/관리하기 위한 도구이다.
  • 즉, Beta 라는 앱을 설치한 후에 내가 원하는 ‘테스트를 위한 앱’을 또 설치해야 한다.
  • ‘알수없는 출처의 앱’을 설치하도록 스마트폰 설정을 변경해주어야 한다.
  • 간혹 메일에서 Spam으로 처리할 수 있으므로, 메일이 수신되지 않은 경우 확인한다.
  • PC가 아니라 테스트할 스마트폰에서 메일을 확인한다.

  

 

[STEP 2 : Beta 앱 설치 완료 후 런칭]

  • Beta 앱을 처음 열면 이름을 등록하는 칸에 자신의 이름을 등록한다. (가급적 본명 사용)
  • 이름 입력을 완료하면 ‘테스트할 앱이 보이고, INSTALL 버튼을 눌러 앱 설치’를 완료한다.
  • 결과적으로 Beta by Crashlytics 앱과 내가 ‘테스트할 앱’ 두가지 앱이 스마트폰에 깔린다.

 

주의할 점

  • 앱 설치에 실패하는 경우, 기존에 설치되어 있는 ‘테스트할 앱’이 있는지 확인하고, 삭제한다.
  • 특히, 다른 버젼의 테스트 앱이 설치되어 있거나, 앱스토어 버젼과 혼용하는 경우 에러가 생긴다.

 

iOS 사용자

[STEP 1 : Beta by Crashlytics  설치]

  • 테스터로 지정된 사람들은 Crashlytics에서 발송된 이메일을 받게된다. 이 이메일을 연다.
  • 그러면 웹 페이지가 하나 열리고 이름을 등록하는 칸에 자신의 이름을 등록한다. (가급적 본명 사용)
  • “Crashlytics”라는 프로파일(Profile) 설치 안내 페이지를 확인 후 NEXT 버튼을 누른다.
  • “Install Profile”이라는 페이지가 나오고, 여기서 INSTALL 버튼을 누른다.
  • 폰 패스워드를 입력하고, INSTALL 버튼을 다시 누르면 프로필 설치가 완료된다.

 

주의할 점

  • 간혹 메일에서 Spam으로 처리할 수 있으므로, 메일이 수신되지 않은 경우 확인한다.
  • PC가 아니라 테스트할 스마트폰에서 메일을 확인한다.

 

[STEP 2 : 새로운 배포버전 대기 후 설치]

  • 1단계까지 완료한 후에 아이폰 사용자는 개발팀에서는 사용자 UDID를 등록, 재배포하는 것을 기다린다.
  • 새로운 배포버젼이 공유되면 이를 설치한다.

 

주의할 점

  • 앱 설치에 실패하는 경우, 기존에 설치되어 있는 ‘테스트할 앱’이 있는지 확인하고, 삭제한다.
  • 특히, 다른 버젼의 테스트 앱이 설치되어 있거나, 앱스토어 버젼과 혼용하는 경우 에러가 생긴다.

Adobe “Installer failed to initialize” 이슈

갑자기 Flash를 사용할 일이 생겨 Adobe Animate CC를 설치했지만, ActionScript 버젼이 1.0으로 작성된 파일이라, 급하게 이전 버젼을 설치하였다. Flash Professional CS6를 설치하려고하니 (물론 Adobe에서 다운받은 Trial 버젼이다.) 아래와 같은 에러 메시지가 발생하였다.

We’ve encountered the following issues.

Installer failed to initialize. This could be due to a missing file. Please download Adobe Support Advisor to detect the problem.

 

이래저래 해봤지만 그다지 해결은 되지 않았다. 그래서 아래와 같은 방법으로 문제를 해결하였다. (역시 Stackoverflow에게 감사를…)

  1. 마우스 우클릭으로 Package File을 연다. (Install 파일에 우클릭 ‘Show Package Content’라는 메뉴)
  2. Contents 폴더 하위에 있는 MacOS 폴더에 들어간다.
  3. Install 파일을 더블클릭한다.
  4. 아마 자동으로 Terminal이 열리고, 설치를 시작/완료한다.
  5. 잘 된다.

/ 그렇다는 얘기다.

 

창업 5년 동안 느낀점

사실 사업을 하면서 겪는 일들에 대해 얘기하는건 조심스럽다. 모두에게 동일하게 적용되는 원칙 같은게 있을리 없고, 누군가의 원칙을 따라한다고 실패의 가능성이 줄어드는 것은 아니다. 다만 개인적인 목적으로 메모할 필요는 있다고 생각했다.

이 글을 한번은 써보고 싶었지만, 쉽사리 정리되지 않았다. 생각은 많고, 누군가에게 해주고 싶은 얘기도 많았지만, ‘난 아직 성공하지 않았기 때문에’라는 이유로 아껴두고 싶었다. 그래도 한 번 적어본다.

 

내 손에 있는거만 내꺼다.

인간은 늘 누군가와 스스로를 비교한다. 다니던 회사를 나와 내 사업을 시작한 이유 중 하나는 ‘내가 원하는 방식으로 돈을 벌고 싶다’는 것이었다. 하지만 현실은 그렇지 않다. 회사가 모든 직원들의 성과를 측정하고 1등부터 등수를 정하듯, 스타트업의 영역도 다르지 않다. 난 어느정도 위치에 있는가를 늘 고민하고, 의심하고, 남과 비교하게된다.

남과 비교한다는 것은 나의 준거 집단이 정해진다는 의미도 있다. ‘그들처럼 되고 싶다’는 생각을 지우기 어렵다. 그래서 그들처럼 움직인다. 수익이 보장되지 않는 서비스 기획, 무의미한 MOU, 대기업과의 파트너쉽, 각종 정부 인증들, 특허, 친목 모임을 넘어서지 못하는 스타트업 모임들, 나열하자면 끝도 없다. 그 시간들이 지나고나면 모두가 ‘Moment of Truth’를 맞이한다. 돈을 벌었는가. 돈을 남겼는가. 내년에는 올해보다 더 많은 돈을 벌 수 있는가. 이 순간 창업자는 고립되고, 누구하나 도와줄 수 없는 상황에 처한다. 지옥 한가운데로 슬쩍 들어가는거다.

그러니 좀 더 냉정하게 내 손안에 있는걸 확인하고, 또 확인해야한다. 유료 고객이 없는 서비스를 운영하고 있다면, 난 앞으로 몇 개월간 돈 벌 가능성은 없는거다. 지금 매출이 100만원이라면, 다음달 매출은 잘해야 200만원이다. 지금 서비스 수준이 목표의 50% 수준이라면, 다음달엔 잘해야 55%다. 남들이 받는 투자, 다양한 정부 혜택, ‘운’과 ‘실력’으로 표현되는 많은 기회들은 내 것이 아니다. 잘나가는 사람과 친하다고 내가 얻을 수 있는 것은 없다. 모든건 그들의 것이다. 이 사실에서부터 ‘내’ 사업이 시작된다고 본다. 이 단순한 사실을 깨닫는데만도 많은 시간이 필요했다.

 

너무 큰 꿈은 독이다.

내 손에 100원을 들고, 100억을 꿈꾼다면 그건 허상이다. 100원에서 100억으로가는 길은 그 누구도 정교하게 설계할 수 없고, 준비할 수 없다. 100원을 들고 생각할 수 있는 미래는 500원, 잘해야 1,000원이다. 어쩌면 200원일지도 모르겠다.

이 사회에서 꿈이 크다는 것은 ‘현실을 모른다’에서부터 ‘대단하다’는 평가까지 다양하다. 하지만 최소한 사업을 한다면, 꿈이 크다는건 대부분의 경우에 잘못된 접근이다. 구체적으로는 두 가지 문제가 생겨난다. 하나는 큰 꿈은 언젠가 ‘허황된’ 망상일 뿐, ‘계획된’ 목표가 아니라는게 드러나게된다. 그 꿈을 보고 합류했던 사람들은 떠나고, 꿈을 꾼 창업자도 슬럼프에 빠진다. 지름길이 있을 줄 알았는데, 나에겐 행운이 찾아올줄로 굳게 믿었는데 그게 아니라는걸 알게된다. 두번째는 꿈을 꾸는동안 아무 것도 안한다는 것이다. 정확히는 목표에 다가갈 한 걸음을 걸어가지 않고, 책상앞에 앉아 머리만 굴린다는 얘기다. 그리고 덤으로 ‘현실이 하찮아보이는’ 현상도 생긴다.

 

사업은 쉬워야 한다.

모두가 ‘기술’에 집착한다. 정확히는 ‘기술이 있다고 보여지는데’ 집착한다. “비정형 빅데이터를 분석하여 사용자의 라이프스타일 패턴을 규정하고, 이에 최적화된 정보를 추천하는 알고리즘을 개발하여 적용한다.” 듣고 있으면 보그xx체가 떠오른다. 민망하게도 앞에 있는 저 얘기는 내가 처음 서비스를 만들면서 하고다닌 얘기 중에 하나다. 기술은 개발할 수 있는 사람과 시간이 필요하고, 결국 충분한 돈이 있어야 한다. 하지만 우리에겐 그만한 여유가 없다.

사업은 기술을 모르는 부모님도 이해할 수 있어야한다. 거창하지 않아야 하고, 작고 구체적이어야 한다. 그리고 쉬운 사업으로 돈을 벌어야 기술도 개발할 수 있다. 검증되지 않은 사업모델을 가정하고, 다년간 기술에 집착하는건 연구소나 대학의 역할이다. 사업가는 돈을 벌어야 한다.

 

성공과 실패의 정의도 쉽지 않다.

모두가 성공과 실패에 대해 이야기하지만, 사람에 따라 그 정의는 달라질 수 있다. 특히 성공은 현재 진행형에 가깝기 때문에 ‘매우 개인적인 목표’가 성공의 정의가 되기도 한다. 그래서 성공에 대한 정의보다는 실패에 대한 정의가 보다 현실적이다. 내가 생각하는 실패는 1) 사업 모델을 통해 수익(매출이 아니라)을 내지 못하는 것, 2) 현금이 바닥나고, 더 이상 돈을 융통하지 못해 월급/세금/4대보험이 밀리기 시작하는 것, 3) 1,2를 해결할 수 있는 방법이 보이지 않고, 내년이 되어도 별반 다르지 않는 것 등으로 표현할 수 있다.  그 모든 현상의 결과는 패업, 또는 창업자(대표)의 이탈이다. 내가 지금까지 보아온 회사의 실패 유형은 다음과 같다.

#1

2~3년동안 만들어온 서비스, 제품을 통해 수익을 창출하지 못한 채 자본금/투자금/대출금을 모두 소진하였고, 이로인해 월급을 줄 수 없어 팀원들이 떠났다. 아직 회사를 운영하고는 있으나, 내년이 된다고 해도 큰 변화가 생기기 어려운 구조로 운영되고 있다. 회사는 유지되고 있고, 대표도 바쁘게 일하고 있으나 ‘망할 수 없어 버티는’ 회사들이 여기에 포함된다. 초기 자본금, 기술보증기금 대출금, 여기저기서 빌린 돈들, 밀린 세금과 4대보험료 등이 쌓여있다면 쉽사리 파산을 결정하지 못한다.

#2

초기 비용을 최소화하고, 학생들 또는 친구들, 일부 창업 멤버가 모여 서비스를 만들었다. 정부지원사업에 선정되어 일부 개발 비용을 지원받고, 서비스도 어느정도 완성되었으나 그 이상 끌어갈 여력은 없다. 그래서 창업자 중 일부는 복학을 하고, 일부는 취업을 하고, 일부는 다른 일을 한다. 이 경우는 학생들로 구성된 회사이거나, 창업 지원 센터 등 정부 기관을 통해 만나게된 많은 회사들이 해당된다. #1 케이스처럼 회사를 억지로라도 끌고가야할 책임감이 적은만큼 조용히 사라지는 경우가 많다.

#3

#1, #2가 창업자의 Full-time 참여로 회사가 운영된다면 #3 케이스는 회사원, 또는 학생들의 파트타임 참여로 사업이 시작되는 경우다. 정확히는 회사를 설립하지 않고, 팀을 결성하고 운영되는 경우가 대부분이다. 이 경우, 서비스가 완성되어 공개되지 못하고 사라지는 경우가 대부분이다. 가장 큰 이유는 1) 창업자가 개발을 담당하지 못하고, 2) 그래서 외주 개발사를 통해 개발을 진행하거나, 3) 억지로 끌어온 파트타임 개발자가 정해진 스케쥴을 따라가지 못하고 이탈하는 경우가 많다. 이러한 케이스들은 표면적으로 드러나지 않기 때문에 더욱 많을 것 같다.

 

기타 메모들

  1. 하고자하는 ‘영역’은 중요하다.
  2. 하지만 사업의 ‘아이템’은 그다지 중요하지 않다.
  3. 어차피 어떤 ‘아이템’으로 시작하든 비슷한 문제를 경험하고, 비슷한 시기에, 비슷한 모습으로 망한다. 하지만 ‘영역’은 유지된다. 또는 ‘영역’은 쉽게 바꿀 수 없다.
  4. ‘망한다’의 절반 정도는 제대로된 서비스를 만들기 전에 조용히 사라짐을 의미한다.
  5. 제대로된 서비스를 만든 회사의 대부분은 서비스 런칭 후 1년 안에 성장이 정체하며 사라진다.
  6. 시작은 사람 > 서비스 > 돈이지만, 운영은 돈 > 사람 > 서비스이다.
  7. 시작에서 운영으로 넘어가는 시점은 1년이다. 아무리 길게 잡아도 2년을 넘지 못한다.
  8. 다시 말해 2년안에 돈을 확보하지 못하면 더 이상의 사업은 불가능해진다.
  9. 돈을 위해선 서비스가, 서비스를 위해선 사람이 필요하다.
  10. 결론적으로 사람들이 열정적으로 일할 수 있는 1년안에 서비스를 ‘제대로’ 만들고, 운영해야한다.
  11. 그게 아니면 결국 ‘외주’, ‘감원’, ‘정부 과제’ 등 다양한 방식으로 버텨야 한다.
  12. 이 쯤되면 처음 시작할 때 시도했던 ‘아이템’은 사라지고, 잘 해야 ‘영역’ 정도를 유지한다.
  13. 초기에 함께 했던 팀원 중 절반정도는 떠났다.
  14. 초기에 알고 지내던 비슷한 단계의 스타트업(창업자) 중 70~80%는 다른 일을 하고 있다.
  15. 대부분의 경우, 창업자가 생각하는 고객은 존재하지 않거나 매우 소수다.
  16. 차별화보다는 기존 서비스와 유사하게 만들어보는 것이 나을 수도 있다.
  17. 차별화된 서비스는 1~2년 개발하며 업데이트해도 여전히 마이너로 남을 수 있다.
  18. 디자인과 마케팅은 매우 중요하다.
  19. 개발 완료가 곧 앱스토어 런칭은 아니다. 반대로 앱스토어 런칭이 개발 완료는 아니다.
  20. 수익 모델은 저절로 생기는게 아니다.
  21. AWS는 생각보다 비싸다.

 

쓰다보니 마무리는…

나중에 하자…

 

 

 

 

블랙베리 사용기 #1 : 몇 가지 중요한 설정들

이제 맥북과 블랙베리를 연결하는 Blackberry Link 또는 Blackberry Blend는 더 이상 지원되지 않는다. 특히 MacOS Sierra 업데이트 이후로는 전혀 동작하지 않는다. 그럼에도 불구하고 블랙베리를 사용한다는건 굉장한 용기를 필요로하는 일이다. ‘예쁜 쓰레기’가 현실화되고 있다. 하지만 쿼티 자판과 블랙베리 OS가 가진 여러가지 특징들에 끌린다면 어쩔 수 없다. Android가 탑재된 터치스크린형 블랙베리는 이미 블랙베리가 아니다.

#1. KT 통신사 세팅하기

시스템 설정 (Settings) > Network and Connection > Network 설정을 LTE/HSPA+/UMTS/GSM로 변경한다. 그리고 APN에 들어가서 KT라면 lte.ktfwing.com 를 입력해주고 재부팅하면 된다. 

 

#2. 블랙베리에 SNAP 설치하기

우선 Chrome 브라우저를 열고 Web Store로 들어간다. 보통 화면 왼쪽 위에 Apps를 누른 후에 다음 화면에서 우측 하단에 있는 Store 버튼을 클릭해서 들어갈 수 있다. 여기에서 BB10/ PlayBook App Manager를 검색하고 설치한다.

Screen Shot 2016-12-14 at 11.36.44 AM.png

블랙베리에서는 (Q10 기준) Settings > Security and Privacy > Development Mode 에 들어가서 모드를 활성화시켜준다. 그러면 패스워드를 세팅하라고 하니, 원하는 패스워드로 세팅한다. 그 후에 다시 Chrome을 열어서 좀 전에 설치한 Extension을 구동한다. 이 때 블랙베리에 있던 IP 주소를 입력하고, 저장하기를 누르면 하단에 ‘Manage Your Device’라고 보인다. 이걸 클릭하면 된다. Screen Shot 2016-12-14 at 11.41.52 AM.png

Screen Shot 2016-12-14 at 11.46.59 AM.png

만약에 세팅된대로 접속을 시도했지만, 위와같은 에러가 발생한다면 블랙베리에서 Settings > About > Network 에 들어가서 IPv4 옆에 적혀있는 IP로 접속을 시도해본다. 패스워드를 입력하고, 정상적으로 로그인이 된다면 아래와 같은 화면이 보인다.

Screen Shot 2016-12-14 at 11.50.33 AM.png

그렇다면 Snap이라는 사이트(http://redlightoflove.com/snap/)에 들어가서 스냅을 다운로드 받는다. 무료 옵션도 있으니 원하는데로 선택한 후에 다운로드 받는다. 프로그램 다운로드가 완료되면 위 페이지 우측 상단에 있는 Install App을 눌러, 다운받은 Snap을 설치해준다. Snap은 기본적으로 블랙베리에서 구동하는 AppStore 개념이기 때문에 원하는 앱을 찾아서 설치할 수 있다. 단, Google Services에 해당하는 기능들을 가진 앱이라면 (예를 들어 GPS 라든가, Google Map 등) 정상적으로 설치, 구동되지 않을 수 있다.

Screen Shot 2016-12-14 at 11.57.53 AM.png

Screen Shot 2016-12-14 at 11.52.26 AM.png

 

/

자전거 공유를 위한 새로운 도전 – MoBike

Mobike-Commons.wikimedia.org_.png

자전거를 공유한다는 컨셉은 커머스만큼이나 오래된 주제다. 있으면 편하지만, 관리하기 어려운 자전거를 내가 원하는 시간과 장소에서 이용한다. 이는 사실 너무 진부한 주제이고, 세계의 많은 대도시들은 자신들만의 자전거 대여 서비스를 운영하고 있다.

 

#1. 내가 원하는 장소에서 내가 원하는 장소까지

오늘 소개하는 서비스는 MoBike라는 중국 서비스다. 그럼 뭐가 그렇게 특별한것일까? MoBike는 내가 원하는 장소에서 찾을 수 있고, 원하는 장소에 주차할 수 있다. 즉, 자전거 전용 거치대를 찾지 않아도 된다는 얘기다. App을 통해서 근처의 자전거를 찾고, 자전거를 타고, 내가 내린 지점에 놓아두면 된다. 자전거와 모바일 앱은 QR 코드로 서로를 인식한다.

“무겁다는 단점을 빼면, 정말 혁신적이죠. 집에서 사무실까지 5km 정도인데 자전거로 이동하면 30분 안에 올 수 있어요. 아쉬운 점이 있다면 오전 7시가 넘어가면 집 근처의 자전거가 모두 사라진다는 점 정도가 있죠. 서비스가 출시되자마자 가입해서 쓰고 있어요.”

여기서 놀라운 점이 하나 있다. 마지막으로 상해를 방문했던게 5월. 그리고 이번 10월말에 다시 방문했다. 단 4~5개월만에 대다수의 상해 주민들이 MoBike를 인지하고 있고, 내가 머물렀던 곳이 상해 외곽임에도 불구하고 (홍췐루 인근) 출퇴근 시간에만 40~50대 이상이 검색된다. 걸어다니면 길에 세워져있는 자전거, 타고 다니는 사람들을 아주 쉽게 볼 수 있다는 것도 당연하다. 이 짧은 시간에 하나의 O2O 서비스가 사람들의 일상에 파고든 것이다.

 

#2. 몇 가지 정보들

MoBike는 30분당 1 RMB의 요금을 지불한다. 우리돈으로 대략 190원 정도이다. 물론 사용을 위해 299 RMB (5~6만원)을 Deposit으로 지불해야하며, 환불 가능하다. 상해에는 2016년 6월 런칭하였고, 총 10,000 대의 MoBike를 배포했다. 대당 가격은 5,000 RMB (거의 100만원 수준)으로 알려져있으나, 양산 규모가 늘어나면서 3,000 RMB 수준으로 떨어지고 있다는 얘기도 힜다. 10월부터는 북경에도 서비스가 되고 있고, 3,000여대를 배포하였다.

빠르게 대중화되는만큼 단점들도 빠르게 드러나고 있다. 결국 도난을 방지하고, ‘관리’ 비용을 줄이기 위하여 내구성을 매우 높게 설정했다는 것이다. (그리고 상해는 매우 습하고 비가 자주 온다.) 그렇기 때문에 30분 이상 타기에는 무겁다. 그리고 안장을 조절할 수 없기 때문에 불편하다.

 

#3. 사용하는 방법

mobike-1024x626

앱을 열고, 자전거를 찾는다. 자전거를 찾은 후 자전거에 부착된 QR 코드를 인식한다. 이후 인증을 거쳐서 자물쇠를 해제하고, 타고 다니면 된다. 목적지에 도착하면 다시 QR 코드를 인식하여 자물쇠를 잠근다. 이 때 요금이 지불된다. 흥미로운 점은 1) 중국인 모두가 매일 사용하는 QR 방식을 이용한다는 점과 2) 자전거 자체에 Lock이 있기 때문에 어디에나 세워둘 수 있다는 점이다.

현재는 위 사진에서 보여지는 모델만 제공하고 있지만, 최근 2차 모델 (MoBike Light)이 출시되었다. 중국인 친구가 보여줬는데, 다시 찾으려니 안보인다. 요약하자면 장바구니가 달린 클래식 자전거에 가깝다. 1차 버젼과는 다르게 일반 자전거 휠도 사용된다. 여기서 두 가지 생각을 해볼 수 있는데, 첫 번째는 ‘장보기’ 등 주부 또는 여성 사용자를 배려하기 시작했다는 것이고, 두 번째는 어느정도 도난, 파손에 대한 해결책을 찾았다는 의미로 이해된다. 당연히 2차 모델은 1차 모델보다 단가가 비싸다.

 

#4. 어떻게 관리되는가

이 부분은 리서치가 좀 더 필요하다. 알려진바로는 1) GPS가 부착되어 있다. 이를 통해 자전거의 위치를 파악하고, 관리한다. 물론 GPS 정보를 전송하기 위해 3G 모듈까지 들어있는지, 이를 유지하기 위한 베터리까지가 들어있는지는 확인이 필요하다. 2) 파손이 발생하거나, 적절하지 못한 위치에 주차하는 경우 Credit에 변화를 준다. 즉, 부적절한 행위를 한 사용자는 Credit을 낮추고, 사용 요금은 Credit에 따라 10~20배까지 높아진다. 이 시스템이 정화작용을 하는지는 의문이다.

즉, 파손 및 도난 자전거를 어떻게 관리하는지, 자전거를 적절하게 재분산시키는 등의 관리 작업이 어떻게 이루어지는지는 정확히 알지 못한다. 이에 대해서 들은 얘기로는 다음과 같다.

“파파라치처럼 MoBike를 회손하거나, 훔쳐가는 사람들을 제보하는 시스템이 있는 것으로 알고 있다. 하지만 중국이라는 점을 감안할 때 어느 정도는 도난, 파손을 염두하고 운영하지 않을까 싶어요. ‘은박지로 GPS 센서를 가리고 훔치면 된다’던지, 꽤 디테일한 ‘Abusing’ 방법들이 벌써부터 인터넷 상에 올라오는걸로 알고 있어요.”

 

#5. 왜 상해인가, 한국은 안되는가

일단 상해는 인구가 많다. 2500만에서 3000만명이 상해 또는 상해 인근에 거주하고 있다.

사실 그보다 중요한 요인 중 하나는 지리적인 부분이다. 중국의 대도시중에는 평지에 자리잡고 있는 경우가 많다. 상해는 언덕없는 도시로도 유명하다. 그렇기 때문에 자전거는 오래전부터 상해 사람들의 친숙한 교통 수단이었다. 그리고 대부분의 도로에는 자전거와 전동 이륜차를 위한 전용 차선을 가지고 있다. 상해는 자전거를 포함한 이륜차를 사용하기에 최적화된 도시다.

서울을 생각해보자. 기본저으로 서울은 언덕이 많다. 도시 내 터널도 있고, 전용 자전거 도로 역시 매우 제한적이다. 한강이나 주요 하천 인근지역이 아니라면 자전거를 통해 접근하긴 어렵다. 이는 부산도 다르지 않다. OFO가 시작된 대학가는 더욱 열악하다. 많은 대학들이 산과 언덕에 자리잡고 있다. 자전거는 여가를 위한 수단이지, 본격적인 생활 밀착형 교통 수단으로 발전하기 어려운 환경이다.

 

#6. 수익이 날까

 

아주 단순하게 생각해보면 자전거 한대가 우선 1 RMB 로 수익을 내기 위해서는 3년 이상 운영되어야 한다. 그 와중에 파손, 도난으로 인한 관리 비용을 고려하면 실제 운영 기간은 더 길어진다. (물론 대량 생산으로 인한 단가 절감은 지속적으로 이루어질 것이다.) 이에 대해 중국에서 일하는 친구의 의견은 다음과 같다.

“현재 중국인들을 대상으로 마케팅을 진행할 때 고려할 수 있는 플랫폼은 ‘디디'(택시앱) 밖에 없어요. 전 연령대를 커버하는 플랫폼이 많은듯하지만 별로 없다는 뜻이죠. 그런 의미에서 상해의 전 연령대를 커버할 수 있는 MoBike 누구나 탐낼만한 고객층을 확보한다는 거죠. 아마 상해에서 마케팅을 진행하면서 Mobike보다 더 나은 채널은 없을거 같아요.”

 

이미 수천억의 투자를 받았고, MoBike와 OFO(북경 기반의 경쟁 서비스)의 경쟁은 DIDI와 UBER의 경쟁처럼 과열되고 있다. 그 얘기는 당장 돈 걱정은 할 필요가 없다는 얘기다. 단 몇 달만에 상해 사람들에게 없어서는 안될 중요한 교통 수단이 되었다는 점이 더 중요하다고 본다. 다음 상해 출장은 연말/연초가 될듯한데, 과연 겨울에는 어떻게 운영될 것인지 궁금하다. 그리고 상해의 습하고 추운 겨울 날씨에 자전거가 ‘깨끗한’ 상태로 유지될 수 있을지도 의문이다.

 

/

Mac에서 Host 파일 수정하기

호스트 파일을 변경하는 것은 다양한 용도로 이용된다. 보통은 테스트 서버를 구축한 후에 접속하기 위해서 사용되는데, 특정 URL을 정해진 IP와 매칭하기 위해 사용한다.

 

맥에서 호스트 파일을 수정하기 위해서는 터미널(terminal)을 열고, 아래와 같이 명령한다.

$ sudo nano /private/etc/hosts

 

패스워드를 입력하고 나면, 호스트 파일이 열리고 커서를 움직여 추가할 내용을 입력한다. 그 후에 control + x 를 누르고 저장한 후 종료하면 된다.

52.78.110.26    dev.admin.xxxxxxxxx.kr

맥용 안드로이드 에뮬레이터

지니모션

정상 동작하기 위해서는 Virtualbox가 필요하다. 가장 매끈하게 만들어진 에뮬레이터이고, 무료 버젼으로도 충분히 사용할 수 있다. 다만 아쉬운 점이 있다면 Genymotion이 제공하는 정해진 Device만 동작시킬 수 있어서 다양한 기기 테스트를 목적으로 한다면 부족할 수 있다.

단점 : 새로운 기기 설치가 제한적이다.

의혹 : 메모리를 많이 차지한다. 가끔 맥프로가 종료되기도 한다.

Screen Shot 2016-08-24 at 11.59.25 AM

 

블루스택

다른 에뮬레이터와는 컨셉과 지향하는 바가 다르다. 즉, 블루스택은 개발자를 위한 에뮬레이터라기보다는 ‘커다란’ 화면에서 동작하는 안드로이드 시스템으로 보는게 맞다. 따라서 개발에 필요한 안드로이드 애뮬레이터를 찾는다면 그다지 추천하고 싶은 녀석은 아니다. 단, 자체 스토어를 제공하는 점은 ‘나름’ 매력적이다.

단점 : 세로모드를 지원하지 않고, 패드 사이즈를 기본으로 한다.

Screen Shot 2016-08-24 at 11.53.44 AM Screen Shot 2016-08-24 at 11.52.45 AM

삼성 공식 사이트

사실 잘 사용하지는 않지만, 삼성 개발자 센터에서도 에뮬레이터를 지원한다. 삼성 계정으로 로그인한 후, 몇 가지 정보를 입력하면 원하는 디바이스의 원하는 세팅을 찾아서 사용을 요청할 수 있다. 선택을 완료한 후 Start 버튼을 누르면 *.jnlp 형태의 파일이 다운로드되고, 이를 실행하면 자동으로 원격 에뮬레이터가 동작한다.

Screen Shot 2016-08-23 at 3.28.39 PM.png

에뮬레이터를 실행시키면 몇 가지 간단한 주의사항이 팝업으로 보여지는데, 요약하자면 ‘애뮬레이터를 사용한 후에는 사용한 계정이나, 테스트앱을 삭제해달라’는 요청이다. 요청하니, 그렇게 해주자. 애뮬레이터로 보여지는 화면은 실제 스마트폰의 화면 대비 해상도나 퍼포먼스는 확연히 떨어진다.

Screen Shot 2016-08-23 at 3.36.24 PM.png

단, 은근히 좋은 점이 있다면 APK 파일을 설치할 때 Drag & Drop을 지원한다는 점이다. 앞서 설명하였듯이 계정 정보를 지우기 위해서는 아예 사용을 하지 않아야하는데, Dropbox나 Google Drive를 연결하고 다운받는 노력을 들이지 않아도 된다는 점은 매우 편리하다.

Screen Shot 2016-08-23 at 3.40.24 PM.png

 

Day2 : 파이썬이란?

파이썬이란?

파이썬이라는 언어에 대해 이해하고 싶다면, 위키 문서를 한번 읽어보는게 좋다. 누가, 언제 만들었는지, 파이썬이 가진 특징과 장점들은 무엇인지 아주 친절하게 설명하고 있다. 만약 이 글을 몇 개의 키워드로 요약해보자면 ‘쉽다’, ‘간편하다’, ‘활용도가 높다’ 정도이겠다. 즉, 프로그래밍 입문자들이 접하기에 좋은 언어임과 동시에 구글 같은 거대한 서비스를 구축하는데에도 활용할 수 있다는 얘기가 되겠다. (결국 뭔가 멋진걸 만들고 싶어서 배우는거니…)

 

파이썬 시작하기

맥 사용자라면 Terminal을 이용해서, 이미 설치되어 있는 2.x 버젼을 사용할 수 있다. Terminal을 열고, $ python을 입력하면, >>> 라는 프롬프트가 구동되면서, 파이썬을 시작할 수 있다. 아래의 스크린샷은 파이썬을 구동한 후 간단한 계산을 해본 화면이다. (계산기로도 사용할 수 있다!)

Screen Shot 2016-08-24 at 10.46.38 AM

 

하지만 우리가 앞으로 배우게될 파이썬은 최신 버젼인 3.x 버젼을 기준으로 한다. 특이하게도 3.x 버젼이 출시되고 지속적으로 업데이트되고 있지만, 여전히 2.x 버젼 사용율이 높고, 이 역시 업데이트되고 있다. 그만큼 3.x 버젼이 2.x을 모두 대체할만큼 강력하지 않다는 의미일 수 있고, 다른 측면에서는 2.x 파이썬이 범용적으로 많이 사용되고 있다는 의미가 된다. 일단 파이썬 공식 사이트에 들어가보자.

Screen Shot 2016-08-24 at 10.50.47 AM

이 화면 아래에 있는 Download 메뉴에서 3.x 버젼을 선택하고 (현재는 3.5.2 버젼임) 들어간 후, 자신의 개발 환경에 맞는 파이썬을 다운로드 받아서 설치하면 된다. 설치하고 나면 IDLE라는 파이썬 기본 개발 도구를 연다. 우리는 앞으로 이걸 통해서 개발할 계획이다.

Screen Shot 2016-08-24 at 10.53.30 AM

좌측에 보이는 화면이 기본 IDLE이다. 1+1을 쳐보자. 2라는 결과를 보여준다. 즉, 한 줄 한 줄 ‘enter’를 치면서 결과를 바로 확인할 수 있다고해서 ‘인터프리터’라고 부른다. 파이썬의 IDLE의 L이 Learning을 의미하는게 이런 의미라고 본다. 여기서 새 창 열기 (맥 기준으로 command + n)를 하면 우측 화면 처럼 비 창이 보여진다. 동일하게 코드를 작성하면 ‘저장’ 후 ‘실행’해볼 수 있다. 참고로 파이썬은 .py 형태로 저장된다.

Screen Shot 2016-08-24 at 10.57.23 AM

보통은 f5가 실행키이다. 눌러보면 파일을 저장하라고 안내하고, 저장을 완료하면 해당 코드가 구현되어 좌측 ‘인터프리터’ 화면에서 보여진다. RESTART : …. 밑으로 hello world가 리턴된 화면을 확인할 수 있다.

 

오늘의 요약

  • 파이썬은 쉽고, 빠르고, 강력하다고 ‘다들 얘기’ 하더라
  • python.org에 가서 IDLE를 다운받아 설치하고, hello world를 찍는다.
  • 다음 시간에는 ‘파이썬을 시작하기전 좀 더 알아야할 것들’에 대해 공부하자.

 

 

/

 

Day1 : 무엇을, 어떻게

IT 관련 사업을 시작한지 4년이 넘었고, 훌륭한 개발자, 디자이너, 기획자와 함께 일하고 있다. 일을 하기 위해서, 그리고 대화하기 위해서 간단한 내용들은 직접 찾아보기도 하고, ‘정말 간단한 작업’이라면 포토샵을 열고, 코드를 수정하고, 웹사이트를 만든다. 하지만 프로그래밍이라는 영역이 언제까지나 ‘듣고 말할 수 있는’ 영역이 아니라, ‘코드를 작성하고 동작하게 만들 수 있는’ 영역이 될 수 있다면 내가 하는 일이 더 즐거울 것은 명확하다.

 

무엇을 먼저 배울까?

처음 머리속에 떠올랐던 언어는 Swift였다. Xcode라는 아름다운 IDE를 사용할 수 있고, iOS앱과 Mac 프로그램을 만들 수 있다. 또한 가장 ‘최신’의 언어라는 점과 앞으로의 확장 가능성도 매력적이다. 그래서 한 달 정도 게으르게 온라인 강의를 듣고, Xcode를 실행시키는 호사를 누렸으나 꾸준하지 못했다. 정확히는 시작한지 몇 주 되지도 않았지만 앱이라는 눈에 보이는 (그러면서도 어느 정도는 내가 충분히 예상할 수 있는) 결과물을 기대하다보니 마음이 앞섰다.

그래서 좀 더 기초적인 프로그래밍을 경험해보기로 했다. 주변의 개발자들에게 물었다. 다양한 답변이 왔지만, 공통적인 언어는 Python이었다. 일단 이름이 멋지다. ‘파이썬’이라니. 일단 첫 인상이 좋다. 그리고 Django라는 더 멋진 이름의 도구가 Python에서 나왔다는걸 안다. 갈수록 마음에 든다. 그래도 너무 덥썩 물면 맘상할 수 있으니, 몇 가지만 확인해보기로 했다.

  • 파이썬 공식 사이트는 얼마나 멋진가. 이 곳은 너무 트렌디하지도, 개발개발스럽지도 않다.
  • 누가 만들었나. 일단 위키를 보자. 귀도 반 로섬이라는 이름도 멋진 개발자가 무려 91년도에 만들었다. 구글에서 일하다, 현재 드랍박스에서 일한다. 일단 오리진이 멋지다.
  • 누가 쓰나. 우리 모두가 감사해하며 사용하는 토렌트와 구글이 파이썬으로 만들어졌다. 이 정도면 충분하지 않은가. 내가 매일 사용하는 서비스가 파이썬으로 만들어졌다.
  • 뭐가 좋은가. 일단 공부를 한 후에 얘기해보자. 하지만 구글링을 조금만 해보면 파이썬은 쉽고, 빠르게 구현할 수 있다고 누구나 말한다. 일상 생활에 필요한 간단한 프로그램을 직접 만들고 활용할 수 있다는 얘기다. 남들이 하는 얘기를 듣기로 했다.

Screen Shot 2016-08-05 at 2.33.08 PM

<올라가는 추세가 아름답다. 출처 : PYPL>

 

어떻게 배울까?

두 가지 방법이 있다. 동영상을 보거나, 책을 본다. 또는 동영상을 보면서 책을 본다. 아니면 구글링하면서 내가 만들고 싶은 프로그램을 직접 작성한다. 일단 (나중에 아니더라도) 나름의 방법을 생각해봤다.

  • 사무실에 굴러다니는 책을 기본으로 한다.
  • 간혹 시간이 날때마다 ‘재미삼아’ 동영상을 본다.
  • 책을 한 권 다 읽고나면 그 때부터는 구글링을 하면서 내가 원하는 프로그램을 만들어본다.

이 정도의 순서로 진행하기로 했다. 그러면서 한 가지 과도한 목표를 하나 설정했다. 내가 하루라도 파이썬을 학습한다면, 그 내용을 블로그와 동영상으로 만들어보려고 한다. 당연히 개발자들이 참고할만큼 의미있는 정보를 담기는 어렵겠지만, 나처럼 개발의 기본이 없는 사람에게는 도움이 될 것 같다. 다시 정리하면 다음과 같다.

  • 사무실에 굴러다니는 책을 기본으로 한다.
  • 책이 지겨우니, 세상에서 가장 유명하다는 Python 동영상 강좌를 하나 찾아서 본다.
  • 내가 배운 내용을 주 단위로 블로그, 동영상으로 공유한다.

자. 오늘을 Day1으로 하자. 계획을 세우고, 책을 정하고, 배우기로 시작한 날이니. 매일 할 수는 없겠지만 Day 10까지만 가보는걸 첫 번째 목표로 잡았다. 기대하시라.

필요한 자료들 (계속 업데이트 중)

파이썬 공식 사이트 : 버젼별 다운로드, 웹 기반 IDLE 제공

 

 

 

 

 

앱스토어 승인 거절 사유들, 앱스토어 리뷰 관련

사실 iOS 앱을 수년간 만들어왔지만 아직도 Review 후 거절당하는 경우들이 있다. 대부분 첫 번째 등록이 성공적으로 진행된다면 이후의 업데이트는 무난히 진행되곤 했다. 그래도 예상치 못했던 ‘거절’이 발생했기 때문에 이에 대해 정리해보았다.

 

1. 애플의 iOS 리뷰 가이드라인 준수

애플은 자사의 가이드라인을 매우 중시한다. iOS Review Guideline라는 문서를 한 번 정도는 정독할 필요가 있다. 이 가이드라인에 위배되는 사항이 있다면 당연히 승인 거절될 수 있다. 사실 한글로 정리된 블로그 문서들도 많다. 모두다 읽기 어렵다면 간단한 방향성만 알아두자.

앱의 완성도

애플의 앱스토어 담당자와 대화를 나눠본 결과, 이들은 ‘아이폰을 사야할만큼 좋은 사용자 경험’을 제공할 수 있는 앱을 원한다. 앱을 사용하는 사람이 불편함을 느끼는 수준의 앱이라면 승인 거절 사유가 될 수 있다. 대략적인 내용은 다음과 같다.

  • 버그가 있는 경우 승인이 거절된다.
  • 모든 버튼은 동작해야 한다. 아직 기능이 구현되지 않은 버튼이 있으면 안된다.

테스트 경로

담당자가 테스트할 수 있도록 테스트 ID를 정확하게 전달한다. 스토어에 심사를 요청해놓고, 미리 작성해놓은 테스트 ID가 동작하지 않아 (개발 DB를 변경하면서 발생) Reject을 당했던 적이 있다. 이 경우 앱이 지나치게 어렵거나, 테스트 가능하지 않다고 판단해도 Reject 될 수 있다.

 

메타 정보의 적절성 – #2017.07 업데이트

가장 최근에 Reject되었던 사유는 스크린샷에 있는 이미지에 안드로이드 Status Bar가 포함되어 있었기 때문이었다. 하이브리드의 앱의 특성상 대부분이 웹으로 구현되었기에 무심코 지나쳤던 부분인데, 매우 정중하지만 기분 나쁘다는 어투로 Reject 하였다. 사실 가장 많이 경험하는 사유인데, 이 경우 Binary를 새로 올리지 않아도되기 때문에 비교적 쉽게 해결된다.

  • 메타정보에 베타/알파/테스트 버젼 같은 문구는 들어갈 수 없다.
  • 메타 데이터의 설명 문구, 스크린샷, 기타 정보와 실제 앱이 다르면 안된다.

2. HealthKit, GPS, Bluetooth 등의 기능 사용시 주의

애플은 하나의 앱이 다른 앱 사용을 통제하거나, 아이폰이 제공하는 리소스에 접근하는 상황을 매우 주의깊게 관찰한다. 특히, 하나의 앱이 스마트폰 리소스를 과도하게 사용하거나, HealthKit 처럼 개인 정보를 다루는 경우라면 더욱 그렇다.

  • Apple Healthkit을 사용한다면 메타데이터에 사용을 ‘반드시’ 명시하고, 앱 내에는 데이터 사용에 대한 문구가 반드시 약관과 함께 들어가야 한다. 특히, Healthkit을 연동하는 버튼이 있다면 버튼 근처에 Healthkit의 정보를 어떻게 사용한다는 사실을 문구로 명시해야 한다.
  • Background GPS 기능을 사용하거나, Geo-fence와 같이 베터리를 소모하게될 기능들은 세부 항목들을 꼼꼼히 살펴야한다. 잘 모르겠다면 해당 기능을 구현한 후에 한 번 정도 미리 심사를 받아보는 것도 좋다. (아마 한두번은 어떤 이유에서든 거절될 가능성이 있다.)
  • 혹시라도 외부 디바이스와 직접 연결되는 앱이라면 디바이스를 애플 본사에 보내야 한다. 예를 들어 웨어러블 디바이스와 연동되는 앱이라면 당연히 해당 디바이스를 미국 애플 본사로 보내야 한다. (우리는 배송하다가 UPS의 배송 사고가 발생해서 거의 한 달이 걸리기도 했다.)

 

3. 완성도에 대한 이슈들

명확히 거절 사유가 아니더라도 완성도가 떨어지는 경우 거절될 수 있다.

 

#2017.07 업데이트

정상적으로 동작하지만, 앱이 지나치게 느린 경우 거절될 수 있다. 이번 케이스는 하이브리드앱으로 특정 고객사 내부에서 사용하는 앱으로 만들었다. 내부 ERP에 있는 기능을 모바일/타블렛으로 옮겨오는 작업이라 클라이언트 DB를 어마어마하게 검색해야하는 앱인데, 이게 매우 느리다. 국내 또는 클라이언트 내부망에서는 ‘어느정도’ 정상 속도가 나오지만, 앱스토어 리뷰어가 경험하는 속도는 이보다 훨씬 느렸던 것 같다.

Screen Shot 2017-08-07 at 10.26.59 AM.png

 

4. 기타 몇몇 특수한 상황들

정확히 ‘왜’인지는 이해하기 어렵고 가이드라인에도 없지만, 거절 사례들이 있다.

  • 자동 업데이트 알림 팝업 : “4. DESIGN: PREAMBLE” 위반으로 거절
    • 구현 방식 : 앱스토어 버젼과 현재 버젼을 비교해서 서로 다르면 (또는 앱스토어 버젼보다 현재 버젼이 낮다면) 팝업을 띄우고 업데이트를 유도함. 단, 취소 시 강제하지 않음

Design Preamble

Your app includes an update button or alerts the user to update the app. To avoid user confusion, app version updates must utilize the iOS built-in update mechanism.

Next Steps
Please remove the update feature from your app. To distribute a new version of your app, upload the new app binary version into the same iTunes Connect record you created for the app’s previous version. Updated versions keep the same Apple ID, iTunes Connect ID (SKU), and bundle ID as the original version, and are available free to customers who purchased a previous version.

  • 단순 스크래핑/웹 링크만 붙이는 앱 : “12. SCRAPING & AGGREGATION” 위반으로 거절
    • 구현 방식 : 웹 상의 다양한 사이트 및 컨텐츠를 링크하여 보여주는 앱으로 구현

We found that the experience your app provides is not sufficiently different from a web browsing experience, as it would be by incorporating native iOS functionality.

While your app content may differ from your web site or other existing sites, the experience it provides does not differ significantly from the general experience of using Safari, as required by the App Store Review Guidelines.

  • 그리고 가장 당황스러웠던 경험 중 하나는 (#2015년) 기기를 본사로 보내달라는 요청이었다. 특정 웨어러블 디바이스를 연동하는 앱이었는데, 해당 디바이스가 B2B용으로 중국에서 제작된 물건이었다. 이걸 수령해서 페덱스로 쿠퍼티노까지 날렸다. 운이 없게도 처음 보낸 물건은 캐나다를 헤메다 잃어버렸고, 두번째 보낸 디바이스가 배송되었다. 담당자의 얘기로는 ‘잘 보관하고 있다가 다음 업데이트때도 써볼께’라고 했지만, 아무도 모른다.

 

5. 몇 가지 대처 방식

거절을 당하거나 거절로 인해 앱스토어 업데이트를 급하게 진행해야 하는 경우 등 리뷰와 관련한 몇 가지 옵션들이 있다.

거절 사유에 대한 해명

거절을 당하면 그 이유를 명시해준다. 그리고 답변을 달 수 있다. 납득할만한 수준이면 받아들여지지만 대부분의 경우 사실 모든 경우 무시된다. 다만 질문/답변을 함으로서 무엇을 어떻게 수정해야하는지 알 수 있다는 점에서 손해볼 일은 없다.

긴급 업데이트 요청

정확히는 Expedited Review라는 절차가 있다. 구글에 검색하면 해당 내용이 친절하게 나온다. 보통은 1) 이전 버젼이 치명적인 오류로 인해 사용자가 불편을 겪고 있거나, 2) 박람회, 컨퍼런스 등 시일이 정해진 행사로 인해 ‘반드시’ 업데이트되어야하는 경우 이를 반영해주고 있다. Expedited Review를 요청하게되면 그 이슈가 정말 중요한지 판단하고, 과거에 요청한 이력이 있는지를 반영하여 결정한다. 경험적으로는 2~3번에 한번 정도 받아들여졌으니, 나쁘지 않은 확률이다.

 

6. 앱스토어 리뷰부터 출시까지

리뷰는 일반적으로 일주일 이상 걸린다. 경험적으로는 Business Day 기준으로 7일 이상이었다. 이에 대한 불만은 Appstore가 생겨나고서부터 계속 있어왔고, Google Play Store와의 경쟁으로 인해 리뷰 시간은 계속 줄어들고 있다. 최근에는 2일 이내에 처리를 완료한다고 발표했고, 실제 이와 유사한 일정으로 리뷰가 진행되고 있다.

 

앱 스크린샷 정책 변경

2016.08 즈음에 변경되었다는 이메일을 받았다. 이제 앱스토어도 조금씩 사용자 편의를 생각하기 시작한 느낌! 안드로이드라는 강력한 경쟁자가 있다는게 이런 변화를 만들어낸듯 싶다.

Screen Shot 2016-08-10 at 2.53.15 PM

앱스토어 리뷰 일정 단축

(2017.01 업데이트) 확실히 Business Day로 2~3일이면 처리된다. 심사 프로세스가 어떻게 변경되었는지는 정확히 모르지만, 이젠 하염없이 일주일 이상 기다리는 사태는 벌어지지 않는 것 같다. 단, 크리스마스 연휴처럼 본사가 쉬어버리는 시즌에는 어떻게 처리되는지 확인이 필요하다.