EveDrop 개발기1
개발/개발 일기2024. 4. 15. 06:36EveDrop 개발기1

Compose Desktop 자체로만 본다면 기능적 한계(제공되지 않는 기능, 제한된 커스텀)이 명확하지만 기존 Swing, AWT를 그대로 사용할 수 있기에, 그리고 이전부터 만들어졌던 Java 라이브러리를 사용할 수 있기에 해당 문제를 해결할 수 있지 않나 싶습니다. 상호운용성 하나만큼은 정말 뛰어나기에 AWT와 Compose를 엮어서 간단하게 자유롭게 커스텀이 가능하다는 점이 정말 좋은 것 같습니다. 그렇지만 이는 AWT 지식이 있어야만 자유로운 데스크탑 개발이 가능하다는 것... 또한 이외의 기능들도 Flutter의 경우 이제는 수많은 라이브러리를 통해 네이티브 개발 없이도 구현 가능한 기능들이 많지만, Kotlin Multiplatform은 출시된지 얼마안됐기에 황무지인데... 과연 개척에 성공..

Native vs Flutter 그리고 KMP 행사 발표
일상2024. 4. 8. 15:08Native vs Flutter 그리고 KMP 행사 발표

지난 4월 6일, 마루180에서 '코틀린으로 멀티플랫폼 만들기' 주제로 발표를 진행하였습니다. 행사를 간단하게 소개하자면 Flutter와 KMP에 대한 약팔이(?)를 진행 후 결국 Native가 필요한 이유에 대해 이야기하고 이후 크로스플랫폼이 가진 한계에 대한 라이트닝 토크, 마지막으로 참가자들의 질문을 통한 Flutter, KMP, Native 사망 토론이 진행되었습니다. Futter에 대한 약팔이(?)는 수장님께서 맛깔나게 진행해주셨고, KMP는 팡무가 마지막으로 Native는 상권님께서 진행하셨습니다. KMP 발표에서는 이미 수장님께서 크로스플랫폼 이야기를 진행해주셨기에 KMP만이 가진 차별화된 점과 특징 위주로 각 예시에 빗대어 설명하였습니다. 처음 안드로이드를 개발하면서 막히는 부분이 있을 때..

GDG Incheon&Songdo HelloWorld 24 행사 발표 및 팡무의 생일
일상2024. 4. 5. 15:11GDG Incheon&Songdo HelloWorld 24 행사 발표 및 팡무의 생일

지난 3월 30일, GDG Incheon&Songdo HelloWorld 24 행사를 주최 및 발표하였습니다. Festa기준, 467명 신청자와 함께 송도 컨벤시아에서 커리어와 자신만의 서비스 개발 이야기와 같은 General 주제와 모바일, 서버, 게임 등 다양한 테크 주제로 행사가 진행되었습니다. 그동안 많은 컨퍼런스에 참여하면서 한가지 든 생각은 '웹, 모바일, 백엔드 주제의 세션은 많지만 게임과 관련된 주제는 왜 없을까?'라고 생각하여 "10분만에 만드는 게임 with Unity"를 주제로 게임 개발은 어렵지 않다는 내용의 발표과 함께 라이브코딩을 진행하였습니다. (물론 Unity Unite, Unreal Summit과 같이 게임 엔진과 관련된 컨퍼런스는 존재하지만 이런 종합적인 컨퍼런스에서는 게..

[Compose Web] moko 라이브러리 삭제 시, Error: Cannot find module 'mini-css-extract-plugin'
개발/Compose2024. 4. 5. 02:14[Compose Web] moko 라이브러리 삭제 시, Error: Cannot find module 'mini-css-extract-plugin'

Compose Multiplatform에서 Resources를 사용할 수 있다는 소식을 듣고 마음속에 품고 살다, 이번주 열리는 상권님의 Native vs Flutter 그리고 KMP 컨퍼런스 발표 자료를 완성하자마자 신나게 달려갔습니다. 기존 프로젝트에서 이미 moko-resources 라이브러리를 사용하고 있었기에 이를 해체하기 위해 moko 관련 변수, 함수 및 dependency 등 모두 해제하고 gradle clean까지 완벽하게 한 상태에서 두근두근하게 실행을 해보았더니 다음과 같은 오류를 만날 수 있었습니다. Execution failed for task ':jsBrowserDevelopmentRun'. > [webpack-cli] Failed to load '/Users/holy-knigh..

그누보드6 최초 플러그인 개발 및 배포!
개발/Web2024. 1. 25. 14:05그누보드6 최초 플러그인 개발 및 배포!

지난주 그누보드6가 공개되었고, 엊그제 그누6 최초의 플러그인을 만들어 배포하였습니다. 공식 데모페이지에도 제가 만든 포인트 선물 플러그인이 적용되어 너무 기쁩니다. https://sir.kr/g6_plugin/1 그누보드6 포인트 선물 플러그인 > SIR 그누보드6 플러그인 최초 업로드 해봅니다 헤헤 깃허브에도 올려두었으니 편하신 방법으로 다운받으시면 될 것 같습니다. https://github.com/kisa002/g6_point_gift 추가 필 sir.kr 처음에는 이슈 제보 및 수정하면서 기여하다 문뜩 플러그인 개발도 가능하지 않을까 라는 생각에 함께 만들어봤는데, 정말 간단하게 만들 수 있도록 구성된 것 같았습니다. 중학교 때 처음 XE와 함께 가지고 놀면서 어떻게 만들었을까 신기해했었는데, ..

한 달간 1번의 해커톤 주최와 2번의 심사위원
행사 참여2024. 1. 23. 06:23한 달간 1번의 해커톤 주최와 2번의 심사위원

지난 한 달간 해커톤 행사에 3번 참여하였습니다. 정확하게는 2번의 심사위원과 1번의 주최가 있었습니다. 12월 29일 알파코와 GDSC 서울여대/연세대/한양대/성균관대 연합인 나무톤 해커톤의 심사위원으로 1월 7일 알파코와 SK플래닛 그리고 디지털 새싹이 주최한 제 24회 앱잼 해커톤의 심사위원으로 마지막으로 1월 12-13일 GDSC 16개교 연합 해커톤인 GDSC NEW YEAR HACAKTHON을 주최/운영하였습니다. 한 달간 약 300명의 해커톤 참가자들과 함께 소통하고 심사하고 운영하면서 멋진 작품들을 만날 수 있었던 기회였습니다. 2023년 마지막날부터 2024년 새해까지 좋은 아이디어와 열정을 만난 것 같습니다.

KUG Seoul 사이트를 Compose Web으로 만들면서 알게된 문제점들
개발/Compose2024. 1. 20. 06:44KUG Seoul 사이트를 Compose Web으로 만들면서 알게된 문제점들

KUG Seoul 사이트(임시)를 Compose Web으로 만들면서 알게된 문제점들... https://haeyum.dev/kug-seoul 1. 리소스가 로딩되는 과정에서 웹사이트가 멈춘다... 2. 버튼 클릭으로 Alert 발생 시 Ripple 이펙트가 중단된다. 3. 초기 별다른 기능/화면이 없음에도 600MB나 잡아먹는다. 4. Compose Multiplatform에서 대표적으로 사용되는 moko-resources를 사용하여도 초기 폰트 로딩되는 과정에서 ㅁㅁ로 한글이 깨진다... 5. 각 Weight별로 폰트가 불러와지면서 FontWeight이 적용되는게 시각적으로 보인다. (ㅁㅁ였다가 얇은 글씨가 보였다 두꺼워진다!) 6. fontFamilyResource로 폰트를 불러왔더라도, 다시 호출 ..

Devfest Songdo 2023 행사 준비 및 발표
행사 참여2023. 12. 27. 15:31Devfest Songdo 2023 행사 준비 및 발표

지난 12월 10일, 송도 컨벤시아에서 Devfest Songdo 행사를 주최하였습니다. 그동안 주로 인천 스타트업파크에서 행사를 주최하다 이번에는 멋진 분위기와 많은 참가자를 받기 위해 송도 컨벤시아로 채택되었습니다. 약 50명의 오거나이저/스태프와 함께 행사를 준비하였고, 약 50명의 스피커 분들과 3-4주간의 리허설을 거쳐 당일 행사를 무사히 시작할 수 있었습니다. 지난 Devfest 뒤풀이에서 `다음에는 500명 넘는 규모로 진행해 보자!`라고 다니엘이 이야기를 했었는데, 정말 행사 신청 페이지를 오픈하고 나니 500명 600명 700명... 결국 900명 대상으로 행사를 진행하게 되었습니다. 참가자와 오거나이저/스태프/스피커 전체 인원을 고려하면 거의 1000명에 육박하기에 제공드릴 굿즈 보관..

2023 MADC 행사 준비 및 발표
행사 참여2023. 12. 9. 17:372023 MADC 행사 준비 및 발표

지난 12월 2일(토) Mobile App Developer’s Conference(이하 MADC) 행사에서 준비 및 발표하였습니다. 행사는 다음과 같이 구성되었으며, 각 세션 별로 개인 발표, 토크패널 등 여러 형태로 운영되었습니다. 1부 모바일 개발자의 모바일 개발 여정 하나의 주제로 전하는 플랫폼 별 UI 이야기 2부 화성에서 온 네이티브 개발자, 금성에서 온 멀티플랫폼 개발자 현실적인 Compose, SwiftUI, React Native, Flutter 실무에서 사용하기 3부 무엇이든 물어 보세요 with 주니어 패널들에게 직접 듣는 다양한 개발자 이야기 저는 1-1부, 2-1부, 3-1부에 참여하여 발표를 진행하였습니다. 1-1부에서는 KMP 약팔이(?)를 2-1부에서는 Android/iOS..

안드로이드 뒤로가기 두번 눌러 종료 기능 Flow로 구현하기
개발/Android2023. 11. 28. 16:03안드로이드 뒤로가기 두번 눌러 종료 기능 Flow로 구현하기

안드로이드 앱에 없어서는 안 되는 기능인 뒤로가기 버튼을 통한 종료 기능, 일반적으로 구현할 때 크게 3가지로 나눌 수 있습니다. 즉시 종료 종료 팝업 종료 토스트 즉시 종료를 시키기도 하지만, 경우에 따라 종료 여부를 팝업으로 띄우거나 토스트/스낵바를 통해 한번 더 눌러 종료한다고 표시하기도 합니다. 이번 글에서는 작년 이 시기 쯤 Rx로 구현한 뒤로가기 기능을 Flow로 구현하기 위해 노력한 기억이 떠올라 시도하였던 경험과 함께 종료기능을 구현하기 위한 아래의 3가지 방법으로 이야기해 보겠습니다. 일반적인 방법 Rx를 사용한 방법 Flow를 사용한 방법 즉시 종료 우선 뒤로가기 버튼을 눌렀을 때 종료한다면 다음과 같이 구현할 수 있습니다. Android API 33부터 onBackPressed 방식..

image