loading

플러터플로우로 앱 하나 만들어보려다 노트북 에러만 실컷 구경했다

코딩을 전혀 모르던 중에 접하게 된 플러터플로우

요즘 워낙 코딩에 대한 이야기가 많다 보니 나도 내 손으로 직접 서비스를 만들어보고 싶다는 생각이 불쑥 들었다. 그렇다고 해서 전공자처럼 깊게 파고들거나 당장 웹개발자나 프론트엔드개발자 같은 직군으로 취업 교육을 알아볼 수준은 아니었다. 그저 간단한 안드로이드 앱 하나를 띄워보고 싶었을 뿐이다. 코딩이란 무엇인지도 잘 모르는 상태에서 무작정 자바나 코틀린 책을 샀다가 작심삼일로 끝날 게 뻔해 보였다. 그러다 우연히 화면 구성 요소들을 마우스로 배치하기만 하면 자동으로 코드가 짜인다는 플러터플로우(FlutterFlow)라는 도구를 알게 되었다. 안드로이드 스튜디오를 무겁게 깔고 알 수 없는 외계어 같은 코드와 씨름하는 것보다 훨씬 직관적이고 쉬워 보였던 것이 시작이었다. 하지만 막상 화면을 켜고 나니 복잡한 속성창과 낯선 용어들 때문에 시작부터 삐걱거렸다.

개발자 등록 비용 결제와 생각보다 까다로웠던 본인 인증

기본적인 화면 구성을 대충 얼버무려 완성하고 나니 실제 휴대폰에 올려서 작동하는 모습을 확인해 보고 싶었다. 제대로 테스트를 거쳐 나중에 구글 마켓에 출시라도 해보려면 구글 플레이 콘솔에 등록해야 했다. 개발자 계정 등록 비용으로 25달러를 내야 했는데, 매년 갱신 비용이 나가는 애플에 비하면 한 번만 결제하면 되니 훨씬 합리적이라는 생각이 들었다. 신용카드로 결제를 마쳤을 때만 해도 모든 준비가 끝난 줄 알았다. 그러나 뒤이어 요구하는 본인 인증 단계가 문제였다. 여권 사진을 찍어 올렸는데 빛 반사 때문에 글자가 잘 보이지 않는다는 이유로 거절당했고, 주소를 증명하는 서류 양식이 맞지 않아 또 반려되었다. 주말이 겹치는 바람에 이 검토 과정을 통과하고 메일로 최종 승인을 받기까지 이틀이 꼬박 걸렸다. 시작도 하기 전에 서류 작업에서 힘이 빠졌다.

갤럭시북4에서 앱 화면을 띄우려다 마주친 먹통 현상

겨우 개발자 계정을 활성화하고 테스트를 하기 위해 노트북을 켰다. 내가 사용 중인 갤럭시북4에서 가상 안드로이드 환경을 만들어 화면을 띄우려고 시도했다. 그런데 에뮬레이터를 켜는 과정에서 노트북 팬이 거세게 돌기 시작하더니 프로그램이 완전히 멈춰버리는 현상이 발생했다. 윈도우 환경설정에 들어가서 개발자 옵션을 켜고 디바이스 가상화 권한을 조절해 보아도 화면은 검은 상태에서 넘어가지 않았다. 인터넷을 뒤져보니 윈도우 서드파티 앱 간의 드라이버 충돌이거나 가상화 설정 문제일 수 있으니 공식 지원 환경이 아니면 호환성 오류가 날 수 있다는 설명이 있었다. 성능이 떨어지는 노트북도 아닌데 왜 이런 자잘한 시스템 세팅 때문에 몇 시간씩 허비해야 하는지 짜증이 밀려왔다. 결국 에뮬레이터를 띄우는 것은 포기하고 케이블을 연결해 실기기에 직접 패키지 파일을 전송하는 방식을 택해야 했다.

구글 플레이를 둘러싼 뉴스들을 보며 들었던 묘한 생각들

답답한 마음에 모니터 앞에서 잠시 눈을 식히며 인터넷 기사를 훑어보았다. 마침 구글이 유럽연합에서 디지털 경쟁법 위반 혐의로 1조 5천억 원대 과징금을 부과받았다는 뉴스가 떠 있었다. 안드로이드라는 강력한 운영체제를 쥐고서 앱 개발자들이 외부 구매 경로를 안내하지 못하게 막고 수수료를 챙겼다는 내용이 핵심이었다. 거대 테크 기업들의 법적 공방은 나 같은 초보 개발자 지망생에게는 아주 먼 세상 이야기 같았지만, 방금 전 구글에 25달러를 내고 그들이 정한 깐깐한 규칙을 통과하려 며칠간 진땀을 흘렸던 경험과 겹치며 묘한 기분이 들었다. 우리가 당연하게 다운로드받아 쓰는 앱들이 얼마나 철저하게 통제된 생태계 안에서 만들어지고 배포되는지 비로소 실감이 났다.

제대로 돌아가지 않는 에뮬레이터를 붙잡고 보낸 주말

결국 주말 내내 방구석 책상에 앉아서 해결되지 않는 에뮬레이터 호환성 문제와 씨름하는 데 시간을 다 썼다. 코드 한 줄 짜지 않고 화면만 배치하는 노코드 툴이라고 해서 쉬울 줄 알았는데, 실제로 부딪혀 보니 개발 외적인 환경을 설정하고 규정에 맞추는 과정이 훨씬 더 진을 빼놓았다. 전문적으로 일하는 프론트엔드개발자나 안드로이드개발자들은 이런 자잘한 하드웨어 충돌과 플랫폼 규제 변화를 매일 겪으며 일할 텐데, 참 대단하다는 생각이 절로 들었다. 아직도 내 노트북에서는 왜 가상 환경이 멈추는지 원인을 정확히 찾지 못했다. 일단 폰에 직접 빌드해서 올리는 방식으로 타협은 했지만, 앞으로 더 복잡한 기능을 넣었을 때 매번 이렇게 테스트를 해야 할지 생각하면 눈앞이 캄캄해진다.

댓글 남기기