clearboth 정규식 스터디 후기

최근들어 가볼만한 소규모 스터디가 참 많이 생겨나고 있다고 생각이 들어서 좋은 현상인것 같아 기분이 좋다.
한편으로는 관심이 있는 것을 다 참여하지 못해 어떤 것을 참여해야 할까 웃으면서 고민하지 않을까 싶기도 하고.. 시간만 허락된다면 되도록 다양한 종류의 스터디에 많이 참여해보고 싶은 마음이다.
최근에 참여했던 스터디는 clearboth.org에서 주최했고 rootbox님이 진행했던 정규식 스터디였다.

rootbox님이 진행하는 정규식 스터디

정규식은 문자열의 패턴을 분석하고 약속된 규칙으로 검색과 치환을 할수 있는 표현 방식이다.
HTML과 CSS를 다루는 UI개발과는 어찌보면 전혀 연관되지도 않고 실제로 활용할 수도 없지만 이번 스터디의 대부분 참여자는 모두 현업을 HTML과 CSS로 하는분들이였다.
그만큼 HTML과 CSS 이외에도 점차적으로 관심과 개인 역량의 범위를 넓히려는 모습들이라고 생각이 들고 스스로 발전하려는 모습이 너무 좋아 보였다.

정규식 스터디 참여자들

첫 시간을 가진 이 스터디는 문자와 숫자를 어떻게 다루는지 각자 직접 실습을 해 보면서 진행되었다.
나는 30분 정도 늦게 도착을 해서 앞 부분을 듣지는 못했는데 처음 정규식을 접하는 사람이였다면 이 스터디가 어떤 느낌이 들었을지 궁금하다.
정규식이 어떤 것이고 무엇 때문에 그렇게 동작하는지에 대해 제대로 맥을 짚어주고 진행 했다면 첫 시간의 진행으로는 너무 어렵지도 않고 괜찮았던것 같았다.

다만 내용 보다도 내가 느꼈던 이번 스터디는 보통 스터디 인원은 작으면 작을 수록 좋은데 이번 스터디 인원은 크지는 않지만 그렇다고 작지는 않은 규모로 진행되다 보니 분위기가 어느쪽인지 약간 알기 힘든감이 있었고, 자원봉사(?)식의 도우미가 두명 있었는것 같았는데 이런 인원들은 실제로 돌아다니면서 일일히 알려줄 필요까지는 없을 것 같다는 생각이 들었다.
실제로 서서 이리저리 돌아다니며 자유롭게 말을 하다보니 주변이 너무 산만했고 그로 인해 분위기는 자연스럽게 소란스러워 질 수 있기 때문이다.
스터디는 진행자가 있다면 다른 멤버들은 스터디 내용을 미리 예습하거나 파악해오는 것이 당연한 것이다.
거기서 진행자 외에 별도의 도우미가 서서 돌아다니며 일일히 알려주는 행동은 그다지 좋지 않다고 생각되었다.
진행 도중에 물어본다면 오히려 진행을 못 따라갈 수도 있을테고, 필요하다면 메모를 했다가 휴식시간에 모르는 부분을 질문 하는 것이 더 좋을것 같기 때문이다.

정규식의 활용 범위는 정규식을 잘 알면 알 수록 다양해 질 수 있고, 실무에서 복잡한 코드를 자동화 하기 위해 사용될 수 있도록 응용해서 많이 다루고 있는 부분이기도 하다.
나는 개인적으로 이 스터디가 UI개발자들을 대상으로 진행 하는 것이 어찌보면 이것으로 인해 javascript나 다른 서버 언어들에 다가갈 수 있는 아이템을 한가지는 얻을 수 있는 기회여서 매우 좋다고 생각하며, 앞으로 더 진행되는지에 대한 계획은 알 수 없었지만 다양한 부분으로 확장되어 진행되었으면 하는 바람도 가져보고 싶다.

더운날 스터디 진행을 해주신 장기웅(rootbox)님 고마웠습니다.

네번째 웹 표준의 날 과 발표 내용 정리

지난주 토요일(5월 29일), 한국정보화진흥원에서는 CDK가 주최하는 제 4회 웹 표준의 날 이 있었다.
제 4회 웹 표준의 날

2006년에 처음 생겨났던 이 모임은 1회, 2회, 3회를 거쳐 올해 4회를 진행하고 있는 CDK 공식 행사이다.

웹표준의날 후기는 1회부터 작성했던지라 후기를 적기 전에는 항상 지난 모임 후기 글(1회, 2회, 3회)을 한번 씩 읽어보곤 하는데 매번 후기를 볼 때마다 마치 그 글이 어제 일 처럼 떠오르면서 “벌서 이렇게 시간이 흘렀구나..” “몇몇 보이지 않는 분들의 소식도 궁금하네..” 라는 생각이 들곤 한다.

이번 네번째 웹 표준의 날은 “본격! 웹 표준” 이라는 주제로 웹 표준과 UI개발이 이제는 대중적인 단어로 사용될 만큼 웹 서비스 사이에서 자연스럽게 나오는 이야기가 된 것에 대해, 그렇다면 이후에 준비해야 할 것들이 무엇인지에 대해서 알아보고자 했던 자리라고 생각한다.

발표에는 현석님이 다양한 브라우저 이야기와 생각들을, 찬명님이 CSS3에 대해 예제와 생각을 전달해주셨고, 조훈님이 휴대기기와 디바이스 독립적인 환경에서 웹의 무한한 가능성에 대해, 백남중님이 RIA 환경에서의 접근성과 HTML5에서 생각해볼 접근성에 대해서, 그리고 내 발표현준호님이 웹 콘텐츠 접근성 지침 2.0에 대한 소개를 재미있게 해주셨다.

이후 한동안 활동이 없었던 KWAG에 대한 부활과 활동 예고에 대해 장성민님이 해주셨는데 개인적으로도 많이 기대가 되는 부분이여서 다음 KWAG모임이 기대가 되었었다.
모임의 모든 발표가 끝난 후 웹표준경진대회가 있었는데 운영진들과 문제를 출제 하면서 많은 고민을 했었지만 이날 경진대회를 하면서 나름 얻는것도 많았고 생각할 것들이 많았던것 같아 의미있었던 프로그램이였다고 생각이 든다.
항상 모임이 있을때마다 자발적(?)으로 도와주시는 자원봉사자 분들과 사진을 공유해주신 현진님, 그리고 운영에 힘쓰시는 윤표님께 감사드리고 이날 발표하신 모든 분들과 참석하신 분들께도 고맙다는 말 전해드리고싶다.

나는 이번 모임에서 처음으로 발표를 했다.
여러 같은 UI개발자들과 함께하는 자리에서 발표를 해야 하는것이 떨리기도 했지만 평소에 잘 지켜지지 않고 있는 고질적인 문제들을 함께 공유하고 스스로가 고치기로 마음 먹는다는 다짐을 하는 취지에서 발표를 하게 되었다.
미투데이 웹 접근성 발표

처음엔 행사 후기만 기록하려고 했으나 내 발표 내용을 자료로 활용하기에는 이미지 위주이기 때문에 이해하기가 힘들것 같아 간략히 정리해서 공유를 하려고 한다.
이날 내가 준비한 발표는 내가 UI개발을 하고 있는 서비스인 미투데이에 대한 웹 접근성에 대해 다루었고, 미투데이라는 서비스가 얼마나 웹 접근성을 잘 지키고 있으며, 지키지 않는 부분이 있다면 어떤부분이고 왜 지키지 못하고 있는지에 대한 내용이다.

발표 내용 요약

미투데이는 블로그와는 조금 다른 가볍게 한마디 정도의 말을 기록하며 사람들과 소통하는 공간이다.
무조건 공개가 목적이고 누구든지 볼 수 있고 누구라도 사용할 수 있는 공간이기 때문에 어느서비스보다도 접근성과 사용성이 좋아야 할 공간이기도 하다.
W3C의 WCAG2.0에 나와있는 기준대로 접근성을 준수하기란 어려울 수도 있지만 한국에는 K-WAH3.0과 같은 접근성 평가 도구가 있기 때문에 어느정도 최소한의 접근성을 준수 하기 위해 도움을 받을 수 있다.
또한 이전 버전인 KADO-WAH2.0 과 최신 버전인 K-WAH3.0에는 도움말이 포함되어 있는데 WCAG1.0과 2.0 그리고 인터넷 웹 콘텐츠 접근성 지침에 대한 내용을 볼 수 있어 많은 도움이 된다.
실제 실무에서 웹 접근성을 지키자고 하면 많은 부서들과 커뮤니케이션이 필요하다. 왜냐하면 웹 표준과는 또 다르게 웹 접근성은 아직까지 일반인들에게는 생소한 느낌일 것이기 때문이다. 그렇지만 적극적으로 이해를 도와주고 설득해서 주변에 많은 동료를 만든다면 웹 접근성을 잘 준수시키는 사이트를 만드는데 그리 외롭거나 어려움은 없을거라 생각한다.
미투데이는 실제로 K-WAH3.0으로 검사를 하면 그다지 좋은 결과를 확인하지 못한다. 많은 사이트에서 비슷한 문제가 있을거라 생각되지만 일단은 UI개발자들이 조금 더 부지런해야 할 것 같다는 생각이 든다.
다음 세가지는 특히 준수하기 위해서 노력을 하도록 하자.

  1. 이미지의 대체텍스트 준수 같은 경우는 반복되는 이미지가 많기 때문에 자칫 한가지를 못지켜도 마치 준수율이 많이 떨어지는 느낌을 주기 때문에 반드시 지켜야 할 것이다.
  2. 서식과 label의 연결은 사용성과도 연관되기 때문에 개발자에게도 전달이 되어야 하며 서비스가 되기 전까지 점검을 해야 할 필요가 있는 항목이다.
  3. 링크와 form의 action URL은 Javascript를 이용한다고 해도 대체 페이지로 이동할 수 있도록 마련해 줘야 하며, 이것은 기획단계에서부터 먼저 준비가 되어야 하며 그렇지 않으면 서비스에서는 잘 적용하기가 힘들다.

접근성 준수를 위해 올바른 마크업을 사용해야 하는 것이 기본이겠지만 만약 이미 서비스 되고 있는 것을 마크업 구조까지 변경하기란 쉽지가 않을 것이다. 구조 변경으로 인해 다른 문제가 발생할 수도 있기 때문이다.
그렇기 때문에 접근성 준수를 HTML과 CSS만으로 해결하기보다 최소한이지만 조금이라도 더 배려할 수 있는 방법을 찾는 것도 하나의 방법이라 할 수 있다. 예를들면 입력 폼의 fieldset 제공이나 컨트롤러에 title만이라도 제공한다면 최고는 아니지만 최소한의 접근성은 배려할 수 있기 때문이다.
웹 접근성은 사람이 사람의 생활을 편리하게 하는 행위중에 하나이다. 누구도 쉽게 할 수 없는 일을 할 수 있다는 것에 전문의식과 자부심을 가지고 좋은 사이트가 많아질 수 있도록 모두 힘 내주었으면 좋겠다.

발표 자료 – 미투데이 웹 접근성

Flickr 에서 생각하는 web2.0이란 뭘까?

me2DAY 지금무슨생각해?

이번 me2day flickr 연동 문제와 관련해서 flickr의 web2.0이란건 어쩌면 달면 삼키고 쓰면 뱉는게 아닐까 싶은 생각이 든다.

flickr라는 서비스는 웹을 통해 사진을 업로드 하는 온라인 디지털 앨범이라는 서비스로 전세계의 사용자와 다양한 사진을 업로드하고 공유하자는 취지가 담긴 서비스라고 생각된다.

미투데이 flickr 사진 연동

미투데이 서비스는 이런 flickr을 통해 사진업로드를 제공받고 등록된 사진데이터는 미투데이 서비스를 거치지 않더라도 flickr 서비스에서 다른 사용자들이 구경할 수 있고 의견도 달수 있는 장점이 있어 그로 인해 다른 네트워크가 형성되고 관심사가 추가되면서 발전되는 형태로 나아갔고, flickr서비스가 추구하는 방향 역시 flickr웹사이트를 통해서만 사진 데이터를 이용할 수 있는 것이 아니라 공개된 API를 통해 다양한 방법으로 활용이 가능하도록 제공했고 지금도 달라진 것은 없다고 생각된다.

이런 서비스에 집단지성이라는 개념을 적용하면서 사진이라는 하나의 주제(데이터)에 대해 여러 종류의 태그가 붙게 되고 이 데이터에 여러 사람들이 연관된 태그를 연결시켜 다른 사람들과 데이터를 공유하는 방식을 적용하고 있으며, 이런 점이 Flickr가 생각하는 web2.0 이라고 생각 되지만 Web2.0 서비스의 참여, 공유를 바탕으로 생각해본다면 자발적인 참여와 활발한 활동을 추구하는 flickr에서 미투데이 계정 차단 이라는 결론을 보고있자면…
매우 유감이라고 표현하고 싶네..

Flickr의 황당한 대응에 모든 상황에 확신이 없어진다..내가 뭘 잘 못 알고 있는걸까..
난 그저 몇일전 flickr 프로 계정 결제가 아까울 뿐이다…에라이..
오늘을 기억해야지..

windows firefox3 1px 버그

플래시를 페이지에 보여주기 위해 javascript를 이용하거나 object나 embed태그를 이용해서 표현을 한다.
그러나 z-index 때문에 혹은 다른 개발 사정으로 인해 iframe을 이용해서 표현 할 경우가 있는데 이럴때 firefox3에서는 일부 경우에 따라 플래시 좌측 1px을 표현하지 못하는 버그가 발생한다.
이 버그의 공통된 원인은 플래시를 감싸는 박스가 margin:0 auto;의 속성으로 가운데 정렬이 된 경우 발생하며, 박스의 width 값이 홀 수이거나 짝수 일 경우 발생하게 된다.
여기서 width값이 홀 수 이거나 짝수일 경우라는 것은 브라우저의 세로 스크롤 때문이다.(어쩌면 브라우저의 가로사이즈가 홀수이냐 짝수이냐의 문제일 수도 있다.)
감싸는 박스란 플래시에서 바깥의 어떤 박스든 플래시가 포함되어 있다면 어느 박스이던지 해당되며, 플래시와 가장 가까운 박스가 플래시에게 최종적인 영향을 가할 수 있다.
말이 어렵다면 그림으로 다시 확인 해 보자.
플래시 박스 예제1

위 그림을 보면 D를 제외한 A,B,C,F 박스에 어떤 박스이던지 margin:0 auto; 속성이 들어갈 경우 발생하게 된다.
문제는 박스의 가로 사이즈가 홀수, 짝수 모두 발생할 수 있기 때문인데 스크롤이 항상 있는 경우라면 가로 사이즈는 홀 수로 설정되어야 하고 스크롤이 항상 없는 경우라면 짝수로 설정되어도 된다.
하지만 이럴 경우는 거의 없다. 그리고 window XP의 테마가 고전이냐 XP테마 이냐에 따라서도 홀수, 짝수 기준이 달라지고 브라우저의 전체 가로사이즈가 홀수 이냐 짝수 이냐에 따라서도 달라지게 된다.

이 문제를 해결하기 위해서 현재까지 해결 방법으로는 플래시의 wmode를 window로 설정하는 것이 유일한 대안이지만 wmode의 window는 기본값이고 성능이 가장 좋다고는 하지만 플래시위에 레이어를 띄울 수도 없고, 아래쪽의 배경이나 요소가 보여지지도 않기 때문에 상황에 따라서는 해결방법으로 적합하지 않을 수 도 있다.

지금까지 왠만한 가운데 정렬되는 사이트에서 사용중인 iframe을 이용한 플래시가 눈으로 봤을 때 1px이 보이지 않는 불편함이 느껴지지 않았다고 생각되어, 특별한 경우가 아니라면 수정하지 않아도 문제는 없겠지만 분명한 것은 Firefox3 브라우저의 버그이기 때문에 이후 버전에서나 현재 버전 업데이트를 통해 수정 되었으면 하는 바람이다.

webkit계열 브라우저의 입력폼 outline, resize제어

미투데이 서비스는 글쓰기를 개편하면서 처음 글을 쓰려는 사용자의 사용성을 더 편하게 하고, 접근성을 높이기 위해 노력중이다.
개선사항 중 입력폼의 비쥬얼 적이면서도 실용도를 높일 수 있는 기능들을 탑제하다 보니 작게 만들어 놓거나 기능이 사용되고 실체는 드러나지 않게 배경색 위에 위장해 놓은 부분이 Webkit 계열(safari, chrome)브라우저 에서는 포커스가 위치하면서 실체가 들어나 버리게 된다…
(이런 테두리의 압박이…)

outline 예제

그래서 뭔가 저런 시스템 적인 기본기능처럼 보이지만 없앨 방법이 있지 않나해서 찾아보니 이런 경우엔 css2 스팩에도 있지만 IE에서는 지원하고 있지 않는 속성인 outline 속성으로 간단히 없앨 수 있었다.
코드는 아래와 같다.

textarea, input {
outline-color:-moz-use-text-color; outline-style:none; outline-width:medium;
}

참고로 위 속성을 사용하면 outline 속성이 firefox 에서도 적용되기 때문에 outline-color:-moz-use-text-color; 속성으로 색상을 지정해 줘야 한다.

그리고 추가로 사파리나 크롬에서 textarea 의 사이즈를 사용자가 마음대로 조절할 수 있는데 만약 이 기능을 막으려면 아래 코드를 넣어 간단히 제어할 수 있다.

textarea {
resize:none;
}

입력 폼 컨트롤러에 대한 제어는 일부 사용자의 입장에서는 다소 민감한 부분일 수 있다. 어떤 곳에서는 오히려 좋은 기능이 될 수 있으니 서비스에 맞게 사용하면 좋을 것 같다.