전체 글

· 개발
MileTodo라는 iOS 투두 어플리케이션을 출시하였다. 영어, 중국어(간체), 베트남어로도 출시하려고 하는데, iOS 15부터는 String Catalog를 통해 Localization을 진행하여야 했다. 굉장히 간편하게 Localization이 가능하기 때문에, 앞으로도 String Catalog를 많이 사용하게 될 것 같아 정리해둔다. Localization할 언어 선택하기 앱 설정에 들어가서 Target -> Localization 항목의 + 버튼을 누르면 원하는 언어를 추가할 수 있다. String Catalog 생성하기 String Catalog를 생성하는 방법은 이전의 String파일 생성과 동일하다. String Catalog를 생성하면 이름이 자동으로 Localizable로 생성되니, ..
· 개발
Swift로 로컬 푸시 알림을 구현하는 중에 문제가 발생했다. 알림을 매주 특정 요일에 반복하게 하기 위해서 다음과 같은 코드를 작성했었다. func makeTriggerForNoti(hour: Int, minute: Int, dayidx: Int) -> UNCalendarNotificationTrigger { var tTimeInt = hour * 60 + minute let tDuringInt = Int(sleepTime)/60 var dateInt = dayidx print(tTimeInt, tDuringInt) tTimeInt -= tDuringInt if tTimeInt < 0 { tTimeInt += 1440 dateInt -= 1 if dateInt < 0 { dateInt += 7 } } ..
· 개발
프로젝트 개발을 하다보면 Contacts(연락처)를 사용하게 되는 경우가 꽤 있다. 이를 위해서 Apple에서는 읽기에 조금 더 최적화된 Contacts라는 패키지를 제공한다. 오늘은 읽는 기능에 집중하여 Contacts의 사용법을 정리하고자 한다. 1. Privacy - Contacts Usage Description 설정 우선, Contacts를 사용하기 위해서는 Info.plist에서 해당 권한을 설정을 해야한다. 필자는 SwiftUI를 통해 개발을 진행하고 있으므로, 어플리케이션 정보 > Info로 들어가서 plist를 수정해주도록 하자. 여기서 Key 중 Privacy - Conatcts Usage Description 항목을 만들어 주면 된다. 해당 항목의 Value 값은 어째서 이 어플리케이..
구글 애널리틱스가 최근에 업데이트를 진행했다. 이전의 Universal 버전에서, 23년부터 Analytics 4로 넘어왔는데, 다양한 부분이 변경되었다. 특히, '이벤트' 적인 측면이 강화되어 만들어졌다. 그럼 어떤 부분이 변경되었고, 어떤 부분이 더 좋아졌는지 정리해보도록 하자. 메인 화면(홈) 기존에 비해서 많은 부분이 사라진 상태라, 각 항목이 어떤 역할을 맡고 어떤 요소들이 있는지 확인해보고자 한다. 우선 홈에서는 보고서 스냅샷, 실시간 보기, 최근 접속 목록, 통계 및 추천 항목이 전달된다. 보고서 스냅샷 보고서 스냅샷은 보고서의 가장 기본적인 옵션을 한눈에 볼 수 있도록 전달한다. 지난 7일 간의 사용자 수, 전환 수, 이벤트 수, 세션 수를 제공하고, 이를 시각적으로 보여준다. 실시간 보기..
· 개발
서비스 프로젝트라면 나올 수 밖에 없는 단어가 있다. 바로 API인데, 검색해보면 Application Programming Interface(응용 프로그램 프로그래밍 인터페이스)라는 이름의 어려운 용어가 나오게 된다. API는 에이피아이라 읽고(애피!가 아니다), 폭넓은 의미를 가지고 있다. 하지만, 개념적으로는 굉장히 쉽고, 이해만 한다면 이를 고려하며 기획이나 디자인에 긍정적인 영향을 줄 수 있다. 서비스는 최소 2개 이상의 프로그램으로 이루어져있다 이전 포스팅인 클라이언트/프론트엔드, 서버/백엔드의 그림을 다시 한번 보자. IT 서비스를 만들기 위해서는 프론트와 백, 즉 최소 두 개 이상의 컴퓨터가 필요하다. 이 말은 곧 컴퓨터와 컴퓨터가 서로 소통을 해야만 서비스가 정상적으로 작동하고, 우리가 ..
· UIUX
UI와 UX를 기획 할 때 가장 많은 시간을 쓰는 작업 중 하나는 바로 레퍼런스 참고일 것이다. 우리는 왜 레퍼런스를 참고하고자 하는가? 사용자는 당신의 사이트가 다른 사이트와 동일하게 작동하기를 원한다. 존 야블론스키가 도서 [UI/UX의 10가지 심리학]에서 이야기한 내용을 간추리면 다음과 같다. 제이콥의 법칙을 한 마디로 정리한다면 다음과 같다. 사용자는 대부분의 시간을 다른 사이트에서 보냅니다. 이는 곧 사용자들은 당신의 사이트가 다른 사이트와 동일하게 작동하기를 원한다는 뜻 입니다. - Jon Yablonski 결국, UI/UX의 새로움의 정도가 지나칠 경우 사용자는 해당 부분에 에너지를 더 사용해야 하고, 이는 이탈로 이어질 수 있다는 것이다. 이는 일종의 메타포의 사용이 필요하다는 것에 대한..
· 개발
기획자나 PM으로써 스크럼 등에 참여하면 많은 개발 관련 단어들을 듣고, 이해하기 위해 노력을 하는 경우가 대부분이다. 그 중, 가장 많이 듣게 될 클라이언트/프론트엔드, 서버/백엔드에 대해서 최대한 깔끔하게(?) 정리해보고자 한다. 중요한 건 '어디서 작동하는가' 우선, 각 단어에 대해서 설명하기 이전에 일반적인 IT 서비스가 어떻게 운영되고, 구조가 어떻게 되는지 이해할 필요성이 있다. 기본적으로, IT 서비스는 다음과 같이 운영된다. 예를 들어, 내가 쇼핑몰 어플리케이션의 장바구니 서비스를 기획했다고 가정했을 때, 각각 진행해야 하는 요소들은 다음과 같다. 예: 쇼핑몰 장바구니 서비스 기획자의 생각 고객이 어떤 물건 상세페이지에서 '장바구니에 추가' 버튼을 누르면 장바구니에 추가되고, 추후에 '장바..
· 후기
나는 현재 Team Shaka라는 개발자 팀의 PM/PO를 맡고 있다. 총 2개의 프로젝트를 진행하고 있고, 각각 Briefing이라는 서비스와 Treehouse라는 서비스를 각각 운영, 기획하고 있는 상황이다. 그러다가 지인의 추천으로 원하는 책을 길벗출판사의 지원으로 읽어볼 수 있게 되었고, 나는 평소에 읽고 싶었던 [해결 할 프로덕트]를 선택하였다. [해결 할 프로덕트]는 이렇게 창업가를 꿈꾸는 사람들에게 주요한 인사이트를 제공해주는데, 이러한 부분을 정리와 함께 기록해두고자 한다. 추가는 어렵게. 항상 프로젝트를 진행하고, 특히 B2C 서비스를 기획 및 진행하다보면 발생하는 문제는 기능을 추가할지 말지 고민하는 것이다. 나는 에자일 프로세스에서 '백로그'라 함은 곧 '신규 기능'을 의미한다고 생각..
Onve
개발하는 기획자