전체 글
-
[사이드프로젝트] Reptily 를 운영하며...일상/Everything 2026. 7. 16. 13:55
2026년 3월부터 Reptily라는 이색 애완동물 사육 및 관리 앱을 만들어 운영하고 있습니다.시작 자체는 AI 에이전트를 이용해서 빠르게 앱을 만들고 결제까지 유도해서 수익을 내자는 것이었지만, 결국 어떤 앱을 만들지도 중요하잖아요? 그래서 평소에 관심이 있었고 불편하다고 느꼈던 문제를 해결하는 앱을 만들고자 했습니다. 저는 집에서 호그노즈 두 마리와 슈퍼 마호가니 볼파이톤(뱀입니다) 한 마리를 키우고 있는데, 이렇게 작은 규모로 키워도 생명을 돌본다는 건 생각보다 신경 쓸 게 많고, 조금만 소홀해지면 건강 문제가 생기거나 심하면 생명을 잃을 수도 있습니다. 개나 고양이처럼 사람과 교류하며 지내는 동물들이 아니다 보니, 사육하는 사람이 하나하나 신경을 써야 합니다. 저는 계획형 인간이 아니라서 먹이 ..
-
개인 블로그가 Beta 버전으로 오픈되었습니다일상/Everything 2026. 1. 5. 23:46
그동안 제 개인 블로그를 오롯이 처음부터 끝까지 제가 만들고 운영하고싶은 생각이 있었는데, 최근에야 어느정도 작업이 되었습니다.프론트는 CMP wasm 을 사용했고 서버 및 인프라는 Ktor, Android OS 기반 Termux 를 사용했습니다.티스토리에 있는 포스트들도 어느정도 이주를 해놨고, 글 작성, 수정 기능들도 별도 admin 웹에서 가능하도록 만들어 놓았습니다.뿌듯하네요 당분간은 티스토리와 함께 운영을 할 예정이고 완전히 이주를 할 수 있겠다라고 판단이 되면 그때 정말로 이주를 하겠습니다한번 방문해주셔서 CMP 로도 나름 깔끔한 웹을 만들수 있구나 라는걸 느끼고 가셨으면 좋겠습니다. 감사합니다.https://sejun2.dev/
-
CMP Wasm 으로 블로그 개발 - 1 - Android Termux 로 서버만들기IT 2025. 12. 29. 00:38
요즘 CMP 에 관심이 많이 생겼습니다. 그리고 조만간 회사에서도 CMP 로 신규앱 개발을 할 예정이기도 해서 미리 경험을 해보기위해 사이드프로젝트를 하나 시작하게 되었습니다. 지금 운영하고있는 tistory 블로그를 CMP 로 새롭게 만들고 서버환경도 구성해서 운영을 해보는것으로 결정이 되었는데요, 예전부터 블로그는 플랫폼을 이용하는게 아니라 제 스스로 만들고 운영해보고 싶은 생각이 있었습니다. 마침 지금이 좋은 시기인것같아 시작을 하게 되었습니다. 이글을 작성하는 동안 front 쪽은 계속해서 작업 중에있고 CMP ktor 웹서버를 올리고 .dev 도메인을 구입하여 https 까지 적용해 놓은 상태입니다. 또한 간단하게 github action 을 이용하여 현재 운영중인 서버에 웹서버와 프론트의 CI..
-
[Android] WorkManager 을 테스트 해볼까요IT/android 2025. 12. 23. 03:12
현재 작업중인 사이드프로젝트에서 WorkManger 을 이용하여 Periodic work 를 주기적으로 실행하는 로직이 있었습니다. 오전 8시 근방으로 한차례 Notification 을 띄워주는 기능을 하는 친구인데 실제로 이것이 올바르게 동작하는지 매뉴얼로 확인하기 번거로워서 테스트 할수있는 방법을 찾아 공유하려합니다. 안드로이드 테스트는 항상 느끼지만 설정이 참 복잡합니다. 그럼에도 불구하고 설정만 잘 해놓는다면 Junit 을 활용해서 빠르게 테스트를 작성할 수 있습니다. + AI를 잘 활용합시다 Hilt 통합테스트 설정 테스트하려는 Worker 은 @HiltWorker 으로 의존성이 관리되고 있습니다. 따라서 WorkManager 테스트 전 Hilt 관련 설정을 먼저 진행해야 합니다.@HiltWor..
-
YAGNI 원칙의 모호한 경계에 대한 빛 같은 답변IT/[짧 but 좋] 2025. 5. 20. 14:04
질문: 이건 “미래를 위한 설계”가 아니라, “지금 해결해야 할 문제인가?” 라는 질문으로 판단하면 쉬워. 라고 이야기 해줬는데 그렇게따지면 맨처음 내가 이야기한 멀티모듈 및 패키지 구조도 같은 의미 아니야? 왜냐하면 모놀리식으로 프로젝트를 구성하더라도 사실동작은 하거든. ChatGPT의 말:너무 좋은 질문이야. 맞아, **“모놀리식 구조로도 동작한다”**는 말은 사실이야.그래서 이 부분이 YAGNI 원칙을 적용할 때 자주 나오는 **“설계적 판단의 회색 지대”**야.그럼 왜 멀티모듈 및 패키지 구조는 괜찮고, 의존성 공통화는 YAGNI로 미루자고 말하는 걸까?🔍 핵심 차이: "설계의 무게"와 "지금 당장의 가치"구분멀티모듈 구조의존성 공통화✅ 지금 도입하면 얻는 가치- 빌드 속도 최적화- 병렬 개발 ..
-
코드 작성 가이드 - 가독성 높은 코드를 작성하는 방법IT/책 2025. 5. 5. 04:13
코드의 가독성을 높이기 위해서는 한가지 지표에 집착하지 말고 여러관점에서 코드의 가독성을 평가해야 합니다. 예를들면 코드의 길이라는 지표는 가독성과 관련이 있지만 이것에 집착해서는 안됩니다. 덩치가 큰 함수가 읽기 어려운것은 당연하지만, 그렇다고 너무 세분화하면 오히려 전체구조를 파악하기 어려운 코드가 될 수 있습니다.즉, 가독성을 평가하려면 여러 추상도를 결정하는 다각적인 지표를 활용해야 합니다.[단순함, 명확한 의도, 독립성, 구조화] 네가지 지표로 살펴보겠습니다. 1. 단순한 코드코드 자체가 단순하면 동작을 쉽게 이해할 수 있습니다. True/False 값 연산을 예로 들어보면 isA && isB , !(!isA || !isB) && isB 는 둘다 결과는 동일하지만, 전자가 어떤 조건에서 True..
-
[GDG Korea Android] Build with AI on Android 후기카테고리 없음 2025. 4. 27. 20:19
이번 GDG Korea Android 에서는 AI 와 안드로이드 개발에 대한 주제로 진행이 되었습니다. 실습위주로 참여할 수 있어서 지루함 없이 재미있게 참여할수 있었습니다. 세션들은 1. 온디바이스 AI 모델 사용해보기 - 배필주2. Gemini 와 페어코딩을 통해 Compose UI 및 테스트 코드 작성해보기 - 김수현3. 앞으로 AI 와 개발자의 미래 - 이현우 순으로 진행되었습니다. 첫 시간인 배필주님의 온디바이스 AI 모델 사용의 경우 Google 에서 제공하는 다양한 AI 모델들을 디바이스 상에서 다운로드 받고 실행까지 해보는 시간이었습니다. 실습은 요즘 유행하고있는 지브리 스타일로 사진을 변경해주는 것과 비슷하게 이미지의 텍스쳐를 다양한 느낌의 이미지로 바꿔주는 AI 모델을 사용하였습니다.한..
-
TypeSafe navigation 에서 '/' 을 포함할 수 있는 객체의 직렬화 시 주의해야합니다IT/android 2025. 3. 4. 17:10
Android navigation 시스템에서 TypeSafe 를 정식으로 지원하게 되면서 현재 진행중인 사이드프로젝트에도 도입을 해보았습니다.그런데 Route 객체 내부에 Primitive 타입이 아닌 Object 를 넣고 라우팅 처리를 할때 특정상황에서 오류가 발생하였습니다.오류문구는 다음과 같았습니다java.lang.IllegalArgumentException: Navigation destination that matches route com.lanpet.free.navigation.FreeBoardCommentDetail/01JNFSERY5NJAVR9JZNKNSBYHW/{"id":"01JNG2R9XJDZANT33HCV2E1JA5","profile":{"nickname":"gpffh1","profil..