쎈과 서연이의 행방불명 난 이런 사람이야. 지금 이 시간에는 말이지…

29/100

Stutter Web Out

http://ssen.name/docs/?id=68

대충 web site out 기능을 만드는 중... 기본적인 원리는

http://ssen.name/docs/?id=67

이렇다...

아 졸라게 할 거 많다... 에러도 졸라 많고... 힘들어서 못해 쳐먹겠네... SQLite 에 Actionscript 에, PHP 에, CSS, Cross Browser 이슈들 까지 한꺼번에 덤비니깐 이 언어 하다, 저 언어하다 헷갈려 미쳐버릴 것 같다. AS 랑 JS 는 그럭저럭 비슷해서 할만한데, PHP 랑 같이 하니깐 뇌가 흔들흔들... AS 에다가 this-> 를 쓰고, PHP 에다가 $this. 를 쓰고...

대충 기본적인 web out 뼈대는 만들었기 때문에 이 기능들을 활용해서 기존의 내 홈페이지 구성들을 죄다 갈아치울 생각이다. 포트폴리오 데이터도 몽땅 옮겨놨기 때문에 옮기는데는 큰 무리가 없을듯...

문제는 IE 라는 이 빌어쳐먹을 브라우저인데... 다른 브라우저들하고 이 새끼만 차이가 나니... 아주 미쳐버릴 것 같다. 지금까지 한 작업들보다 이놈의 크로스 브라우저 맞추는게 더 짜증나...

아... 어쨌든 일단 뭐가 나오긴 나오는 시점이니 조금만 더 힘을 내자...

268/101

Stutter 1차 완성

아직 지뢰밭 상태일 것 같다는 느낌이 좀 들긴 하지만... 대충 쓰는데는 무리가 없어진지라 1차적인 완성을 해놓고, 현재 기존 컨텐츠들을 옮기는 중이다.

기본적인 프로그램의 목적은

  1. 위키언어를 통해서 프리젠테이션 양식과는 별도의 데이터를 구성한다.
  2. HTML, Flash, mobile HTML 등 어떤 플랫폼을으로든 파서를 구현한다. (그래서 다른 위키 언어들에 비해서 심각하다 싶을 정도로 단순하다는게 문제...;;;)
  3. 데이터는 하나의 폴더에 sqlite db 파일 하나와 첨부파일이 되는 폴더들로 구성되고, 이 데이터는 웹에 올린 다음 PHP 나 JSP 등의 서버 모듈과의 결합을 통해 보여질 수 있도록 한다.
  4. ===plugin=== 문법을 통해 javascript, actionscript 등으로 위키 언어를 확장시킬 수 있다.

뭐 대충... 위의 것들을 합치면 지금까지 내가 경험했던 "아 썅! 이놈의 글들은 써놓으면 플래시에 올리기도 애매하고, 홈페이지 리뉴얼 할때마다 스타일 수정하느라고 졸라 피곤해!" 가 될 것 같다... ㅡ ㄴ ㅡ;;; 애초에 홈페이지 만들다가 글관리가 왜이리 빡센가... 라는 짜증으로 부터 시작한 글관리 프로그램 이니깐... 뭐...

어쨌든 글의 원론적인 데이터를 아주 단순한 위키 문법을 써서 관리하고, 위키 언어의 불편함을 극복시키기 위해서 전용 프로그램을 만들었고, 데이터는 sqlite + 첨부파일이라는 단순한 형태로 존재하기 때문에 뭘로든 결합시켜가지고 view 를 다양하게 만들 수 있다... 는게 이 프로그램의 목적...

원노트나 에버노트와 같은 프로그램들이나 블로그툴 같이 졸라 좋은 프로그램들 보다 쬐끔 좋은 점은 프리젠테이션 서식에 독립적이라는 점과 데이터가 단순해서 간단한 프로그래밍으로도 다양한 활용을 할 수 있다는게 아닐까 싶다. (그거 하나 바라보고 몇 달동안 이 개고생을 해서 만든거니... 원 글 관리하기가 이렇게 힘들어서야... ㅜ ㄴ ㅜ)

뭐 아무도 참여할 것 같진 않지만... 어쨌든 소스가 공개되어 있는 프로그램...

http://dev.naver.com/scm/viewvc.php/trunk/?root=ssen

201008261849.jpg

최하단의 Button 부터 Scroll, ScrollPane, Selector 등 모든 기능들을 죄다 개인적으로 만든 framework 를 사용해서 만들었더만 시간이 무진장 오래 걸려버린 케이스 이긴 하지만, 만들면서 왠만한 컨트롤의 작동 구조를 파악했다는 자산은 남았다.

201008261853.jpg

201008261910.jpg

201008261911.jpg

위키언어를 새로 만들어서 진행하고 있고, 아직 파서가 Javascript 용 밖엔 없는데, 컨텐츠들에 대한 이주가 다 끝나면 Flash 와 RSS, PHP 용으로도 새로 만들 생각이다.

막상 다 만들고 나니 내가 왜 이 개고생을 했는지 의문이 드는 프로그램이기도 한데... 어쨌든 만들긴 만들었다는...

카테고리: action script 덧글: 1개
248/100

stutter

Stutter 라는 개인적으로 만드는 중인 wiki 언어의 데스크탑 관리자를 만드는 중이다.

201008241919.jpg

AIR 로 만드는 중이고, 개인적으로 만든 framework 를 사용하고 있는 중이다.

원래는 web 쪽에 데이터를 두고, 데스크탑 관리자가 서비스를 호출해서 사용하는 방식을 할까 생각했었는데, 그냥 거꾸로 데스크탑 쪽에 데이터를 만들고, (sqlite 와 각 종 첨부파일들이 있는) 데이터 폴더를 ftp 로 올리면 php 가 해당 파일들을 읽어서 웹서비스가 되도록 하는 형태로 생각을 바꿨다.

대충 쓰고, 읽고 하는 부분들이랑 카테고리 관리자 까지는 만들었는데 자잘한 부분들이 아직 많이 남아있다.

이번달 안으로 어플리케이션을 완성시키고, 다음달 부터는 지금까지 내가 제작했던 모든 컨텐츠들을 이 stutter 기반으로 옮길 생각이다.

그다지 복잡하지 않은 프로그램인데 개인 framework 의 첫 적용 사례도 되는지라 framework 의 수정이랑도 겹쳐져서 작업시간이 꽤 걸리고 있다. 하여튼... 빨리 완성시켜야지...

188/100

callback 구조 만들기

만들고 있는 framework 를 callback 구조로 변경중이다. 아무래도 event 보다는 불편한 편이지만, 테스트 돌려보니 callback 구조랑 event 구조랑 속도차이가 다섯배 정도 나더라... ㅡ ㄴ ㅡ;;; 이건 뭥미? 하면서 구조를 바꾸는 중이다.

대충 callback 구조로 변경을 하면서 multicallback 구조도 만드는 중인데, 그간 일방적인 수신구조를 가지던 event 구조에 대비해서 독점권 구조를 넣고 있다. 대단한 건 아니고, 그간 stage mousemove 와 같은 이벤트를 일방적인 수신을 함으로서 A 와 B 등의 다중 인스턴스들이 모두 이벤트를 강제로 받음으로서 발생하는 에러를 방지해보려는 것이 첫번째 목적이다.

var callbacks:Callbacks = new Callbacks();
var node1:SLLNode = callbacks.append(callback1);
var node2:SLLNode = callbacks.append(callback2);
var node3:SLLNode = callbacks.append(callback3);
callbacks.dispatch(); // 모든 callback 에 이벤트 전달
callbacks.monopoly(node1);
callbacks.dispatch(); // 독점권이 설정된 callback1 에만 이벤트 전달
callbacks.open();
callbacks.dispatch(); // 모든 callback 에 이벤트 전달

위와 같은 구조로 만들었다. 이로 인해 독점 이벤트가 발생해야 하는 일부 기능들에 대해서 비활성 상태에서 강제로 이벤트가 날아듦으로 인해 발생하던 에러를 원론적인 단계에서 거부할 수 있게 되었다.

문득 만들면서 이게 왠 삽질인가 싶은 느낌이 들고, 혹은 개발하기 졸라 불편하겠는데 싶기도 하지만... 뭐 불편하다 싶으면 다시 뒤집어 엎으면 되는거고... 인생 뭐 있나...