-
Scrappy는 비전문가도 손쉽게 직접 작은 앱을 만들 수 있도록 돕는 홈메이드 소프트웨어 제작 도구
- 대형 상용 앱이나 엔터프라이즈 앱과 달리, 개인적이고 창의적인 소규모 문제를 자유롭게 해결할 수 있음
-
캔버스 기반 UI와 간편한 코드 편집, 실시간 협력 및 공유 기능을 제공해 비프로그래머도 활용 가능함
-
모든 앱(스크랩) 은 기본적으로 멀티플레이어 환경이며, 계정 생성 없이 즉시 사용과 협업이 가능함
-
AI 코드 생성이나 기존 도구와 달리, Scrappy는 사용자 직접 조작과 소유권을 강조함
소개 및 배경
- 대부분의 소프트웨어는 대중 시장 판매용이거나 대규모 맞춤형 앱이 중심임
- 그러나 실제 개개인의 필요를 채우는 소규모, 개인 맞춤형 앱은 매우 드묾
- Scrappy는 누구나 친구 및 가족을 위해 간단하고 창의적인 앱을 직접 만들 수 있도록 돕는 연구 프로토타입
- Scrappy의 목표는 프로그래밍 전문성이 없어도, 더 많은 사람들이 창의적이고 개인화된 소프트웨어를 만들 수 있는 비전을 구체적으로 제시하는 것
Scrappy란 무엇인가
- Scrappy에서 만든 앱은 Scrapp이라 부름
- 대표적인 예시:
-
초등학생을 위한 산수 연습 앱: 난이도 조절 가능
-
지역 행사 참석자 카운터: 여러 입구에서 참가자 출입 관리
-
회의비용 계산 시계: 실시간 회의 비용 산출
-
주간 집안일 관리: 구성원별로 일정 유연 관리 가능
Scrappy에서 앱을 만드는 경험
- Scrappy는 Figma, Miro, Google Slides와 유사한 무한 캔버스에서 버튼, 텍스트필드 등 오브젝트를 배치함
- Inspector 패널에서 속성을 직접 수정할 수 있으며, 버튼 등에는 JavaScript 코드도 연결 가능함
- 앱 제작은 드래그/드롭, 속성 수정, 코드 삽입을 단계적으로 반복하며 완성
주요 특징:
-
기본 동작 구성: 필드와 버튼을 놓고 즉각적인 동작 연결 가능
-
반응형 수식: 특정 조건에 반응하는 실시간 속성 변경 구현
-
멀티플레이어 동기화: 상태가 항상 실시간으로 저장, 동기화됨
-
라이브 편집: 실행과 편집 구분 없이 항상 실시간 수정 가능
-
선택적 공유: 앱의 특정 일부분만 별도로 공유 및 연결 가능
-
가시적 데이터 조작: 스프레드시트처럼 데이터를 보면서 디버깅 및 수정 가능
Scrappy를 개발한 이유
- Scrappy는 사용자 주도의 프로그래밍을 실현하는, “small computing”, “casual programming”, “home-cooked software”같은 트렌드와 관련됨
- 기존의 시각적 프로그래밍(블록, 노드-와이어 기반)과는 다른 길을 택해, 직관적 조작과 스크립팅을 결합
- HyperCard, Visual Basic, 동시적 온라인 미디어 등에서 영감을 얻었으며, 생산성 캠퍼스 도구와 실시간 협업(구글 독스, Figma 등)의 경험을 중요하게 삼음.
- Scrappy는 대규모 상용 앱이나 AI 자동 생성방식과는 달리, 사용자가 직접 제어하며, 개인화·재미·창의성을 극대화함
- 코드를 직접 생성하지 않고도, 더 쉽고 인간친화적인 앱 제작 경험을 제공함.
Scrappy의 대상 사용자
-
업무 프로세스 최적화자: 복잡한 업무 흐름을 전문가 도움 없이 개선하고 싶은 사람
-
교사와 학생: 부수적 기술(커맨드라인, 환경설정) 없이 프로그래밍 본질에 집중 가능
-
취미 개발자: 대중 앱의 복잡함을 벗어나 빠르게 여러 프로젝트 탐구 희망자
-
DIY 지향자: 집, 취미처럼 자신만의 앱을 직접 만들고 싶은 사용자
현재, Scrappy로 완전 초심자가 앱을 만드는 것은 아직 어려움(일부 JavaScript 지식 필요), 하지만, 공유와 리믹스는 비프로그래머도 가능함.
Scrappy에서 만들기 좋은 앱은?
-
친구/지인과 공유: 대다수 Scrapp은 여러 사용자가 실시간 공동작업에 적합함
-
지속적 수정 및 개선: 앱 실행 중에도 즉시 수정 가능, 배포/빌드 과정 없음
-
소규모 계산 또는 조작: 복잡한 시스템보다는 공유 문서+약간의 컴퓨팅에 효과적임
-
사용자 마찰 최소화: 계정 만들기 등 불필요한 과정 없이 링크만으로 접근 및 사용 가능
-
신뢰할 수 있는 소수 사용자: 권한 제어나 미션 크리티컬이 필수라면 적합하지 않음
앱 아이디어 예시: 맞춤형 플래시카드, 회의 아젠다, 온라인 워크숍 관리, 가족 게시판, 여행 계획표 등
Scrappy vs 대중 앱
대중적인 앱을 찾을 수 없거나 적합한 것이 없는 경우, Scrappy로 직접 만들어 공유할 수 있음. Scrappy의 이점:
-
필요한 기능만 가짐: 불필요한 요소 없음
-
개인적인 정성: 직접 만든 앱은 의미와 애착 높음
-
재미있게 수정 가능: 색상, 레이아웃을 자유롭게 꾸미고 유머도 추가 가능
-
쉬운 리믹스/공유: 다른 사용자가 쉽게 수정 및 재활용 가능
-
협업 중심 설계: 다수 사용자가 동시에 조작 및 편집 가능
-
즉시 사용: 계정 가입 없이 링크 클릭만으로 바로 사용 가능
-
데이터 소유권 명확: 데이터는 로컬에 저장되어, 온전히 사용자가 제어함
Scrappy vs AI 기반 앱 생성
AI가 앱을 자동 생성할 수 있지만, Scrappy의 장점은 이해 용이성, 실시간 협업, 창의적 소유감에 있음
-
쉬운 이해 구조: 복잡한 코드 없이 시각적 오브젝트 기반
-
실시간 협력 지원: 여러 사용자가 동시에 협업 및 수정 가능
-
더 많은 재미와 창의성: 즉각적인 피드백, 능동적 수정의 즐거움을 제공함
Scrappy vs HyperCard 및 후속 도구
- 인터넷 친화적 공유: Scrappy 앱은 링크만으로 온라인 공유 가능
-
실시간 협업 환경: 동시 편집/실행 지원
-
현대적 UI 및 인터랙션: 무한 캔버스, 다양한 오브젝트 지원
-
JavaScript 스크립팅: 현대적이며 보편적인 언어로 동작
-
더 다양한 인터랙티브 오브젝트: 문자열, 숫자, 날짜, JSON 등 지원
-
반응형 수식 및 상태 연결: 스프레드시트와 비슷한 동적 관계 설정 가능
향후 계획
-
프로그래머가 아닌 사용자를 위한 진입장벽 낮추기
- 코드 자동완성, 더 쉬운 디버깅, 관계 시각화, 이해하기 쉬운 에러 메시지, AI 기반 어시스턴트
- 쉽고 빠른 공유, 공개 갤러리, 모바일 지원 강화
-
기능 강화 및 확장
- 컬렉션 및 데이터 처리 기능 강화, 반복적인 오브젝트 관리, 리유저블 컴포넌트 도입
- Scrappy 확장성(새 오브젝트 지원), 개념적 일관성 개선 등