CSS Playground.net

역시나 웹 표준 지인들과 술을 먹다가 CSS Zengarden에 대한 얘기가 나왔고, 우리도 이런게 있으면 좋겠다고 얘기했었어요.

그 담날부터 바로 만들기 시작했는데  3년이 지나고 나서야 그나마 좀 볼 수 있는 상태가 되었네요. 그 간에 만드는 도중에 황송하게도 일몰님이 디자인을 주시기도 하셨고, 여러분들이 격려를 해주시기도 했습니다.원래 기획시에 CSS Quiz도 하려는 계획이 있었는데 이건 이미 정찬명님께서  진행하고 계시네요:)

CSS 놀이터는 기본적으로는 CSS의 위대함을 알리는것이 목적입니다. 세상은 계속 창조적인 디자인이 나오고 있습니다. 웹 표준이 창조적인 디자인과 잘 어울린다는것을 알리는데 조금이나마 도움이 되었으면 하는 바램입니다.

또한 많은 디자이너가  웹 표준을 어려워 하는데, 디자인을 해보면서 또한 CSS를 다뤄보면서 CSS와 친숙해지는 진정한 웹 디자이너가 되는데 도움이 되는 계기가 되었으면 하는 바램도 있습니다.

공개된지 얼마 되지않았는데 벌써 4분이 자신의 창작물을 제출해 주셨습니다. 하나하나 고민을 거듭한 CSS 코드가 돋보이는 작품입니다. 조만간 작은 이벤트를 진행해볼까 합니다.

많은 분이 CSS 의 위대함과 즐거움을 CSS 놀이터에서 느끼실 수 있으면 좋겠습니다. 좋은서비스가 되도록 저도 노력하겠습니다.

CSS 놀이터Css Design korea의 서비스로 귀속 하겠습니다.(운영자맘 캬캬캬)

이직, 근황

글을 세달이나 넘게 안쓰다보니 글을 쓰기도 두려워 집니다.

요즘 신종플루가 유행이라던데.. 저는 감기에 걸려서 고생중입니다. 체온이 그리 높지 않은걸로 보아 별일은 없는것 같습니다. 환절기다보니 여기저기 감기 소식이 들려오는데 다들 감기조심하세요…
참 저는 4년 반 동안 다니던 넥슨을 그만두고 회사를 옮겼습니다. 아시는분들도 꽤있습니다만 제가 다니게된 회사는 Opera Software ASA라는 회사입니다. 저는 신현석님과 함께 QA Engineer로 일하게 되었습니다.
이 회사는 제가 너무나도 가고 싶었던 회사였고, 또한 마음이 잘맞는 사람과 일을 하고 싶다는 생각을 계속 해왔는데 이번에 좋은 기회가 와서 덥썩 물었습니다. 예상대로 참 훌륭한 마인드를 가진 회사라는것과 구성원들이 하나같이 배울점이 정말 많다는 생각이 드는 회사였습니다. 넥슨에서도 참 배울점이 많았었는데 저는 직장운이 참 좋은것 같아요.

Opera는 노르웨이에 본사가 있는 회사인데요. 웹 표준이 너무나도 당연시 되는 그런 회사입니다. 구성원 모두가 opera에 대한 자긍심이 크고 꿈이 느껴지는 그런 회사였습니다.
저도 회사 수준에 맞는 능력을 빨리 갖춰야 할텐데 말이죠. 큰일입니다. 일에 대한 실력말고도 언어의 장벽이 크게 느껴집니다. 회사 자체가 글로벌 기업이다 보니 당연히 모두들 영어로 대부분의 일을 처리하더라구요. 그 덕분에 영어 공부 안한 저를 한스럽게 하더군요. 늙어서 영어공부 하려니 이만저만 힘든게 아니네요.(영어공부하는데 초천재님이 많은 도움을 주고 있는데 정말 고맙더라구요.)

제 자신의 이런 저런일 때문에 해야하는 커뮤니티 활동을 잘못하고 있는데요. 웹 표준 경진대회도 얼릉해야 할텐데 말이죠. 제 능력이 미천해서 진행하기가 쉬운게 아니네요.. 도움 주실분 있으면 언제든지 환영합니다. 저 또한 열심히 하겠습니다.

아 그리고 한국형 CSS Zengarden을 표방한 CSS Playground도 오픈이 되었습니다. 여러가지 마무리지어야 할일이 많이 있지만, 사용하는데는 무리가없습니다. 조만간 이벤트도 할 예정이니 많은 관심 가져주세요.

7년만의 장기 휴가

2001년 일을 시작하고 나서(그 당시에는 알바)처음으로 아무 계획 없는 휴가를 지내게 되었습니다. 원래 휴가를 받으면 뭐도 하고 뭐도 하고, 이런저런 계획이 많기 마련인데, 저는 뭐 하루 종일 만화보기, 카레만들어 먹기, 운동하기 등등 일상적인 목표를 만들어놓고 잠만 퍼질러 잤지요:) 뭐 나쁘지 않네요.

원래 일을 계속하는 사람은 좀만 쉬어도 좀이 쑤신다는데 저는 잘 놀 수 있는 팔자인가 봐요.. 여친님께 “나 완전 잘 놀아 계속 놀 수 있을것 같아!!”라고 말했더니 4주 연속 로또1등 당첨되면 그렇게 하라더군요………….

로또나 사러가야 겠습니다.

에디터 만들기! 1부

요즘 대부분의 게시판이나 블로그툴에는 HTML에디터라고 불리우는 Online Rich Text Editor(이하 RTE) 가 사용되고 있지요.
우연히 허접한 실력으로 만들 기회가 생겨 회사 게시판에 사용되는 에디터를 만들게 되었고 만들면서 느낀점들을 한 두개 정도 공유하려 합니다. 에디터를 만들어 보신분이라면 볼필요도 없는 내용이 될것이고, 저처럼 온갖 삽질을 하던사람에게는 조금 도움이 되지 않을까 생각해 봅니다.

일단 작업을 시작했을때 생각보다 자료가 별로가 없었고, 그 마저도 크로스 브라우징 논의 자체가 없었습니다. 그와중에도 이미 XquaredSmart Editor 같은 훌륭한 에디터가 나와 있었으나, 소스가 너무 어려웠어요 =_=;;;;

  • openmaru의 Xquared 는 깔끔한 코드를 산출해준다는 장점이 있었습니다. 기존의 에디터는 대부분 HTML4.01를 기준으로 태그를 생성해 주거든요. 그런데 Xquared의 경우는 상당히 깔끔한 XHTML 1.0 베이스의 코드를 만들어주는데 그 장점이 있었습니다. 별것 아닌것처럼 보일지 모르겠지만 저는 아직 그 방법을 완벽히 찾지는 못했거든요. 그외에도 여러 좋은 기술들이 있지만 일단 그 당시 생각한건 저정도…;
  • NHN의 Smart Editor는 지도나 책 같은 다양한 부가 기능 지원과 레이아웃 지원등 최고의 서비스 회사답게 에디터에 많은 서비스를 담아내었습니다.
  • 외산 에디터도 많습니다만 뭐 FCK Editor가 제일 좋다는 얘기만 들었는데 저는 정이 안가더라구요..(English………….)

첫번째 제 목표는 크로스 브라우징이 었습니다. 마침 4대 브라우저에서(IE5.5, Opera 9.5, Firefox 2+ and Safari 3) 모두 에디터를 만들 수 있다는 소식을 들었거든요.
firefox 에서는 midas라는 코드네임을 가진 프로젝트의 형태로서 지원을 했습니다. 저는 데모화면을 보면서 희망을 가지기 시작했어요.

이제 에디터가 무엇이라는것은 알았으니 맨땅에 헤딩만 하면되겠죠? 자 이제 삽질 시작됩니다.
제가 좀 찾아보니 에디터는 자바스크립트를 이용하여 페이지의 designmode 라는 속성으로 출발을 하게 됩니다.
쉽게 말해서  문서를 직접 디자인 할수있게 만들어 주는 속성이 랄까요? designmode는 HTML의 속성은 아닙니다. 표준속성도 아닐거구요. 그래서 스크립트로 접근을 해주어야 합니다.
iframe을 designmode 로 변경을 해줌으로써 iframe내의 문서를 편집 할 수 있게 되는거죠. 자바스크립트를 잘 모르시는분들도 차근차근 따라하면 쉬울것이라 생각되는데요?
만약에 iframe의 id속성 값이 “editWindow” 라고 한다면, 일단 iframe에 접근을 해야하니 제일많이 보는 getElementById()를 이용하는게 속편하겠죠?

document.getElementById(“editWindow”) //iframe으로 접근!

iframe 안에 우리는 글을 쓸것이니 프레임내의 document 부분으로 접근을해야겠죠? iframe내의 document는 접근하는방법이 약간다릅니다. 아래의 코드가 정답이라고 보시면됩니다.

document.getElementById(“editWindow”).contentWindow.document.designMode = “on”;

로 지정을 해주면 해당 iframe은 수정 할 수 있는 iframe, 즉 에디터가 됩니다. 쉽죠? 에디터가 이렇게 완성되었습니다. =_=/
참고로 풀소스를 한번볼까요?

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”    “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html>
<head>
<title>에디터 만들기</title>
<style type=”text/css”>
iframe { width:500px;height:400px; }
</style>
</head>
<body>
<iframe id=”editWindow”></iframe>
<script type=”text/javascript”>
document.getElementById(“editWindow”).contentWindow.document.designMode = “on”;
</script>
</body>
</html>

아 진짜 간단합니다.

참고로 contentWindow는 frame이나 iframe의 window를 나타나는 개체입니다. IE의 경우에는 생략이 되어도 상관없지만 기타 브라우저에서는 꼭 필요한 속성 입니다. 이걸 몰라서 에디터는 IE만 된다고 하는사람도 있었을 정도니까요:)

이제 에디터 영역은 만들었으니 각종 스타일이나 이런것을 넣을수 있어야 겠죠?
그건 다음시간으로 넘어갑시다~ 캬캬캬캬캬캬캬캬

참고로 이글은 에디터를 만드는데만 포커스가 맞춰져있습니다. 에디터에 대한 즐거운 생각, 더나은 에디터의 컨셉 등은 다음글을 보시는게 도움이 될듯합니다.

  1. [2008년 3월 13일] 웹 에디터, 어떻게 만들어야 할까 III
  2. [2007년 9월 20일] 웹 에디터, 어떻게 만들어야 할까 II
  3. [2007년 8월 22일] 웹 에디터, 어떻게 만들어야 할까 I

’09 CSS naked day

CSS Naked Day '09
CSS Naked Day '09

벌써 세번째 참여하는 CSS naked day 입니다.

매년 4월9일에 자신의 웹사이트의 CSS를 꺼놓는 이 행사는 CSS가 없더라도 HTML 만으로  콘텐츠를 인식하는데 아무 문제 없음을 알리기 위해서 기획된 행사 입니다.
일몰님은 작년에 트래픽 감소로 인해 탄소 발생량이 줄고 지구의 환경이 좋아진다는 설도 얘기 하셨었네요:)

뭐 이제 웹 페이지도 구조와표현이 분리가 잘 되고 있다라는 얘기를 많이 들어서 이캠페인이 필요할까라는 생각도 들긴합니다. 하지만 아직은 CSS의 위대함과 html 마크업의 구조적 작성이 얼마나 중요한지 좀더 알리고 싶습니다.

참여방법

그냥 단지 자신의 웹 사이트(블로그, 홈 페이지등등)의 CSS 를꺼두면됩니다. 그리고

CSS naked day페이지의 하단의 폼에 자신도 이 캠페인에 참여한다는 폼을 전송하면 됩니다.

올해 우리나라에서는 얼마나 많은사람들이 참여할까요? 다 같이 벗어보아요:)

닥치고 웹 표준