Apple Developer Academy

[NC1] 꽤 고생했던 혼자만의 여정

Jade-Lee 2024. 4. 21. 17:12

 

MC1을 지나 어느덧 2주간의 NC1 여정도 마무리가 되었다.
Nano Challenge는 개인 작업으로 진행했고, '나만의 다이어리 앱 만들기'라는 주제를 가지고 이후 챌린지를 위한 기본기를 다지는 2주였다.
달리 말하면 내가 MC1을 하면서 부족하다고 느꼈던 부분들(디자인, 테크 등)을 학습하거나, 내가 새롭게 학습하고 도전해 보고 싶은 것들을 공부하고 적용해 보는 챌린지였다.

 

'나만의 다이어리 앱' 기획하기

어떤 주제를 가지고 기록을 할까 생각을 했을 때, 오랜 시간 고민을 하지 않고 개발 관련해서 학습했던 내용들을 기록해 보기로 했다.

그리고 내가 학습했던 기록들을 Github의 contribution(a.k.a. 잔디)처럼 날짜별로 표시해서 내가 얼마나 꾸준히 학습했는지를 표시해 보기로 했다.

(나는 Github의 잔디들을 보면 꾸준함이 보여 뿌듯함을 느끼기 때문이다.)

 

그런데, iOS 개발을 생각하고 있었는데 개발 학습 내용들을 모바일에 기록하기가 쉽지 않을 것 같다고 생각이 들었다.

단순히 글만 적어도 그 내용이 되게 많을 텐데 거기에 코드까지 기록해야 된다면 그것들을 일일이 타이핑하기가 쉽지 않기 때문이다.

그래서 생각한 방법이 '기록은 기존 블로그 플랫폼을 이용하고, 이후 블로그 글의 링크만 앱에 등록하자'였다.

블로그에서는 Github의 contribution처럼 날짜별로 언제 기록했는지를 시각적으로 보여주지는 않기 때문에 이 기능만 추가해도 나에게 있어서는 의미가 있다고 생각했다.

 

그런데, 여기서 또 다른 고민이 생겼다.

링크를 앱에 등록하는 것은 좋은데, 링크를 복사해서 앱에 등록하는 과정이 꽤나 번거로우면서 길다고 느껴졌기 때문이다.

왜냐하면 블로그 글은 Desktop에서 작성하는데, 링크 등록은 모바일을 통해 이루어져야 하기 때문이다.

두 기기를 이용해야 한다는 것이 번거롭다고 생각해서 MacOS App, 그중에서도 MenuBarApp을 만들어보기로 했다.

 

사실 MacOS App을 개발해 본 적이 없어서 고민하고 있었는데, MC1 때 같이 했던 러너(나인)가 옆에서 '할 수 있다'라는 용기를 줘서 자신감을 갖고 도전하게 되었다.

그리고 지금 내가 애플 아카데미가 아니면 MacOS App을 만들어보지 않을 것 같다고 생각이 들어서 도전을 결심하게 되었다.

 

NC1에서 가장 힘들었던 첫 주

이번 NC1에서 대부분의 러너들은 Core Data나 SwiftData를 이용해서 데이터를 저장했는데, 난 CloudKit을 사용하기로 했다.

왜냐하면, MacOS App 개발 후 시간적 여유가 있으면 iOS App으로도 개발을 해볼 생각이었기에 iCloud를 이용하면 두 기기간 데이터를 공유하기 원활하다고 생각했기 때문이다.

 

그런데 CloudKit을 처음 사용하다 보니 내가 원하는 방향대로 데이터 저장이 잘 안 되기도 했고, Github contribution 기능을 위해 달력을 구현해야 했는데 날짜를 다루는게 쉽지 않다는 것을 알았다.

그러다보니 조금 더 쉽게 구현하려고 디자인을 수정하게 됐는데, 개발을 어느정도 하고나서 결과물을 봤는데 디자인이 너무 맘에 들지 않았다. (-_-;;)

 

그렇게 앱 만들기에 의욕을 조금씩 잃어갈 때 쯤 NC1 종료 4일을 앞두고 MC1에서 같은 팀 디자인 파트 러너(이수)에게 달려가 조언을 구하게 됐다.

대화를 나누다가 너무나도 맘에 드는 컨셉(= iTerm)이 나와서 그날 바로 피그마로 디자인을 다시 그리고 다음날 바로 새로운 디자인으로 적용하게 되었다.

러너의 도움이 없었더라면... 나는 NC1에 흥미를 잃어버린 채 마무리를 할 수도 있었다.. (감사합니다..!! 🥲)

 

 

NC1을 마무리하다.

처음으로 도전한 MacOS App이었는데, 다행히 성공적으로 마무리 할 수 있어서 다행이었다.

그리고 결과물을 보고 몇몇 러너분들이 칭찬을 해주셔서 너무 뿌듯했다!

애플 아카데미가 아니었다면 MacOS App을 만들어 볼 생각을 안 했었을 텐데, 이런 경험을 해볼 수 있어서 아카데미에 잘 왔다는 생각이 들었다.

처음 아카데미에 들어왔을 때는 iOS App만 만들 생각이었지만, 문제를 해결하는데에 iOS App이 아닌 다른 OS App이 적절하다고 판단되면 기꺼이 도전을 해볼 생각이다.

다음주부터는 Bridge가 진행되고 금요일부터 바로 5주동안의 여정인 MC2가 진행된다.

오랜만에 돌아온 팀 활동이기에 설레는 마음을 가지고 남은 기간동안 준비를 잘 해볼 것이다.

 

 

 

 

아래는 제가 작업했던 결과물이랑프로젝트 Repo입니당~

 

GitHub - ljdongz/NC1-iLearned: 내가 작성한 개발 블로그 글 링크를 모아 날짜별로 작성 여부를 표시하는

내가 작성한 개발 블로그 글 링크를 모아 날짜별로 작성 여부를 표시하는 다이어리 앱. Contribute to ljdongz/NC1-iLearned development by creating an account on GitHub.

github.com

 

 

 

(마지막으로 다시 한번 MacOS App을 만들 수 있다는 자신감을 준 나인, 그리고 디자인 컨셉에 도움을 준 이수 감사합니당 ^_^)