HTML5, XHTML2 새로운 표준은?

웹, 인터넷 2009. 7. 21. 13:15 posted by 무병장수권력자



HTML5가 차세대 웹 표준 마크업이 될 가능성이 높아졌네요. 아직은 2010년 권고 계획이라고 하니 곧 시장에 풀리게 될 듯 합니다.


하지만 이미 각종 프레임워크에서 지원하는 확장 태그들이 만연해 있어서 아주 신기하게 다가오지 만은 않습니다. 아직 자세히는 못 보았지만 당연히 semantic web 세상에 대한 준비도 되어 있으리라 생각됩니다.

HTML의 진화는 사람 세상으로 치면 언어의 진화와 같습니다. 새로운 표준어 사전을 계속 발행하고 있는 것이지요. 그런데, 우리네 세상도 그렇지만 수많은 방언이 존재하지요~ 속어, 은어 ^^
음음...그래서, 웹표준화라는 것은 여전히 쉽지 않은 숙제일 듯 합니다.


관련 글

[출처: KISTI, 2009. 7. 4]


Web 기술 표준화 단체인 W3C(World Wide Web Consortium) 7 2, 마크업 언어 “XHTML 2”의 표준개발을 중지하고, HTML 5”의 표준화에 힘을 쏟을 것이라고 밝혔다.

W3C XHTML 2 워킹그룹의 작업은 2009년 말까지로, W3C는 이번 이를 갱신하지 않을 것이라고 결정했다. 그 대신 W3C HTML 5 워킹 그룹에 집중하여 자원을 늘리는 것으로 HTML 5의 표준 개발을 가속하는 것과 동시에, HTML 5를 중시하는 방향을 명확히 하고 있다.

현재 드리프트(초안) 단계에 있는 HTML 5 Web 어플리케이션 개발을 중점적으로 하여, 멀티미디어 어플리케이션을 Web 브라우저에서 직접 재생할 수 있는 기능 등을 제공한다. 이 기능은 미국 Adobe Systems Flash 등 기존 브라우저 플러그인 기술의 강력한 라이벌이 될 가능성이 있다. HTML 5 Web 페이지 언어”라고 W3C의 담당자 이언 제이콥스(Ian Jacobs)씨는 말했다. XHTML 1990년 대 후반에 나와, 당시 XML Web의 미래 포맷이라는 생각이 있었다라고 한다.

HTML
의 역할을 중시하는 사람들이 W3C의 조직 WHATWG(Web Hypertext Application Technology Working Group)를 결성하여 HTML의 강화를 위한 활동을 계속했다. 현재는 W3C에서도 HTML 5의 표준 개발이 진행되어 HTML의 기능을 확장하는 개발이 W3C WHATWG에서 동시에 행해지고 있다. “우리는 2년 전, 같은 활동을 하는 워킹그룹의 설치를 인정했다. 그 결과, 시장에서 혼란이 생겨 버렸다”고 제이콥스씨는 말했다.

W3C
에서 HTML 5 XHTML 2의 각 워킹 그룹은 2007 3월에 발족했다. 제이콥스씨에 의하면, Web 개발을 지원하는 목적으로 XHTML 2 HTML 5의 개발이 병행되어 진행되었지만, XHTML 2의 시장은 HTML 5에 비해 매우 작은 것이 밝혀졌다고 한다.

최종적으로 XHTML 2 W3C 규격이 되지 않을 것이라고 제이콥스씨는 보고 있다. “우리는 향후, HTML 5에 투자해 나간다”고 제이콥스씨는 말했다. XHTML 언어에 관한 개발이 중지되지만, W3C HTML 5 XML 형식화를 계획하고 있고, 그 작업은 HTML 워킹 그룹에서 이루어질 전망이라고 한다.

AJAX
Web 개발 전문가로 알려진 Web 사이트 “Ajaxian”의 공동 편집자인 미국 Mozilla의 개발툴 담당자인 디온 알머(Dion Almaer)씨는 W3C의 이번 결정을 환영하고 있다. XHTML의 개발은 쓸데 없었다. 이번 결정으로 HTML 5가 보다 좋은 방향으로 될 것을 기대하고 있다”고 말했다.

W3C
HTML 5의 표준화 작업을 연내에 “라스트 콜” 단계로 진행하여 커뮤니티에 확인을 요구하는 것을 계획하고 있다. 그 후, 권고 후보 단계로 진행하고 테스트 패키지가 개발될 것이다. XHTML 1.1의 경우 버그 수정이 지속적으로 이루어질 예정이다. XHTML에 관한 FAQ의 페이지도 W3C에서 제공되고 있다



자바스크립트로 동적으로 css 변경하기

개발 노트 2009. 7. 12. 22:51 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009. 7.12

<link id="cssTest" rel="stylesheet" type="text/css" href="/stdtheme.css" />
<div id="divTest" class="old_class"></div>



방법 1

style class를 바꾸어 줍니다.
document.getElementById("divTest").className = 
“new_class";

방법 2

css
파일 자체를 변경합니다.
document.getElementById("cssTest").href = “css/new.css”;


DDoS 대응법 (Distributed Denial of Service)

보안, 암호화 2009. 7. 9. 12:22 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009. 7. 9

요즘 DDoS 때문에 난리 입니다. 2000년도 초반에 인터넷 및 일반 네트워크를 강타했던 Nimda 바이러스가 생각납니다. 이번 DDoS 공격의 경우에는 일반 PC를 숙주로 삼아서 수많은 일반 PC에서 특정 사이트로 무한 접속 시도를 보내는 네트워크 공격 방법입니다.

따라서, 근본적인 해결책은

당신이 백신을 설치하고 본인의 PC를 확인해 보아야 한다는 겁니다.

다음의 스텝을 따르세요. 
백신이 안 깔려 있다면 당장 까세요. 그리고, 백신을 최신 업데이트 받으시고!
만일 감염되어 있다면 대한민국아 미안해! 한번 외치시고 치료하세요.

*안철수 연구소 전용 백신 다운받기
http://kr.ahnlab.com/dwVaccineView.ahn?num=81&cPage=1
*하우리 전용 백신 다운받기
http://hauri.co.kr/customer/download/vaccine_view.html?%20uid=69&page=1
*다음 자료실
http://file.daum.net/pc/list.html?f=detail&cat=31

그 다음은 외부 해커의 침입을 최소화 하기 위한 10계명입니다.

1. 윈도 운영체계는 최신 보안 패치를 모두 적용한다.

2. 인터넷 로그인 계정의 패스워드를 자주 변경하고, 영문/숫자/특수문자 조합으로 6자리 이상으로 설정한다. 로그인 ID와 패스워드를 동일하게 설정하지 않는다.

3. 웹 서핑 때 액티브X `보안경고` 창이 뜰 경우에는 신뢰할 수 있는 기관의 서명이 있는 경우에만 프로그램 설치에 동의하는 '예'를 클릭한다. 잘 모르는 프로그램을 설치하겠다는 경고가 나오면`예` `아니오` 중 어느 것도 선택하지 말고 창을 닫는다.

4. 이메일 확인 시 발신인이 불분명하거나 수상한 첨부 파일이 있는 것은 모두 삭제한다.
5. 메신저 프로그램 사용 시 메시지를 통해 URL이나 파일이 첨부되어 올 경우 함부로 클릭하거나 실행하지 않는다. 메시지를 보낸 이가 직접 보낸 것이 맞는지를 먼저 확인해본다.

6. PtoP 프로그램 사용 시 파일을 다운로드할 때는 반드시 보안 제품으로 검사한 후 사용한다. 또한 트로이목마 등에 의해 지정하지 않은 폴더가 오픈되지 않도록 주의한다.

7. 정품 소프트웨어를 사용한다. 인터넷을 통해 불법 소프트웨어를 다운로드해 설치하는 경우 이를 통해 악성코드가 설치될 가능성이 높기 때문이다.

8. 외부 침입자가 나의 시스템을 불법적으로 사용하지 못하도록 공유 권한은 '읽기'로 설정해 놓고 사용한 후에는 공유를 해제한다.

9. 안철수연구소의 V3 제품군을 설치하면 모든 악성코드를 예방/진단/치료할 수 있다. 네트워크로 드나드는 사용자 시스템의 모든 트래픽 현황을 한눈에 볼 수 있어 웜 등 비정상적인 트래픽을 유발하는 악성코드의 접근 상태를 확인하여 신속하게 차단할 수 있다.

10. 보안 제품은 설치 후 항상 최신 버전의 엔진으로 유지하고 부팅 후 보안 제품이 자동 업데이트되도록 하고 시스템 감시 기능이 항상 작동하도록 설정한다.

원문 참조 :
http://www.edaily.co.kr/News/Enterprise/NewsRead.asp?sub_cd=HC11&newsid=01538326589752880&clkcode=&DirCode=00402




작성자 : 김문규
최초 작성일 : 2009.6.17

이렇게 완벽한 가이드 문서는 못 보았습니다.
굳이 다시 정리할 이유를 못 느껴서 그대로 옮겨 담습니다. 와우~ 짱!

원본 출처
http://jsguide.net/ver2/articles/frame.php?artnum=006

개 요

웹 환경에서 게시판 류의 프로그램을 만들 때 프로그래머를 가장 괴롭히는 문제는 아마도 게시판 목록을 보여줄 때 사용자가 입력한 길고 긴 제목을 적절히 잘라서 한 라인에 표시하는 문제일 것이다. 이러한 문제를 전통적인 방법이 아닌 스타일시트 기능을 이용하여 깔끔하고 간편하게 처리하는 방법에 대해서 알아본다.

왜 이런 기능이 필요한가?

아마도 게시판이나 방명록 등의 프로그램을 직접 만들어 본 사람들은 누구나 비슷한 경험을 가지고 있으리라 본다. 다음의 게시판 예시를 보자. 별다른 점이 보이지 않는가? 그렇다. 사실, 초창기 게시판들은 대개 이런 식이었다. 게시판에 글 제목을 아무리 길게 적더라도 몇라인에 걸치든지 무조건 다 보여주는 방식이다. 다음의 테이블에는 제목이 길어서 두 라인에 걸쳐서 표시된 게시물이 3건이 보인다. (참고로 소스도 함께 표시했으니 같이 비교해보면서 확인하기 바란다.)

<style type="text/css">
th,td { font-size: 9pt; line-height: 160%; }
</style>
<table width=500 border=1 cellspacing=0 cellpadding=2>
  <tr><th>No</th><th>Subject</th><th>Name</th><th>Date</th><th>Hit</th></tr>
  <tr>
    <td>5</td>
    <td>제목 길게 쓰면 누가 알아나 주나? 제발 좀 제목은 간단하게 쓰라구! 누가 본다고.. 쯧쯧</td>
    <td>짜증남</td>
    <td>2001.10.17</td>
    <td>2</td>
  </tr>
  <tr>
    <td>4</td>
    <td>짧게 좀 씁시다. 잘 안보이자나여.</td>
    <td>딴지남</td>
    <td>2001.10.17</td>
    <td>8</td>
  </tr>
  <tr>
    <td>3</td>
    <td>나도 길게 쓸래. 짧게 쓰면 뭔가 허전해서 말이쥐, 왜냐구? 내맘이지 모야!</td>
    <td>졸라맨</td>
    <td>2001.10.17</td>
    <td>19</td>
  </tr>
  <tr>
    <td>2</td>
    <td>이렇게 짧게 써도 되는데</td>
    <td>낙천맨</td>
    <td>2001.10.17</td>
    <td>7</td>
  </tr>
  <tr>
    <td>1</td>
    <td>꼭 이렇게 제목을 길게 써야지만 직성이 풀리는 유별난 사람들이 많은 모양이예요.</td>
    <td>순진녀</td>
    <td>2001.10.17</td>
    <td>26</td>
  </tr>
</table>

사실 본인 개인적인 입장으로서는, 이렇게 표시하는 것 또한 한가지 훌륭한 표시방식이라 생각하며, 이렇게 보인다 하더라도 하등의 문제가 없다고 생각한다. 그러나, 문제는 그렇게 생각하는 사람들이 그리 많지 않다는데 있다. 최근의 게시판 동향을 보면, 정해진 레이아웃에서 한 픽셀이라도 벗어나거나 글 내용에 따라 레이아웃이 깨지는 것을 몸서리 칠 정도로 거부하고 있다. 현재 많이 사용되는 유명 오픈소스 게시판과, 상용 커뮤니티 서비스에서의 게시판에서는 위와 같은 제목의 Word-Wrap을 허용하지 않는다. 긴 제목을 잘라버리는 한이 있더라도, 정해진 영역 이외에 표시되는 것을 두고 볼 수 없다는 입장이라는 얘기다.

전통적인 해결방법

그렇다면, 기존의 각종 게시판에서는 이러한 문제들을 어떻게 극복하고 있는가? 가장 쉽게 머리 속에 떠오르는 방법은 바로, 긴 문자열 자체를 일정 글자수 만큼 잘라내서, 이러한 현상이 발생하지 않도록 적당한 길이의 제목 만을 표시하는 방법일 것이다. 실제로 유명 게시판 소스에서는 이러한 방식을 사용하고 있다.

그러나, 이러한 방법을 구현하는 데에는 심각한 문제점이 몇가지 있다. 몇가지 나열해 보면 다음과 같다.

  • 가변폭 글꼴을 사용하는 경우, 정해진 너비에 해당하는 문자열 길이를 정확히 유추할 수 없다.
  • 한글이 포함된 제목의 경우, 단순한 바이트 단위의 잘라내기는 적합하지 않다.
  • 해당 기능을 위한 추가적인 프로그램 코딩과 서버 수행이 필요하다.

가변폭 글꼴

글꼴에는 크게 두가지 종류가 있다. 하나는 글자마다 그 폭이 달라지는 가변폭 글꼴과 모든 글자가 같은 폭을 갖는 고정폭 글꼴이다. 대부분의 트루타입 영문글꼴은 가변폭 글꼴이며, 시스템에서 사용하는 기본 글꼴(System, Terminal, FixedSys 등)과 한글글꼴 중 굴림체, 돋움체 등과 같이 "체" 자가 붙는 글꼴은 고정폭 글꼴이다. 아래의 예시는 가변폭과 고정폭 글꼴이 전체 문장의 너비에 어떠한 영향을 미치는지 가시적으로 보여주는 예시이다. 위의 문장은 가변폭 글꼴인 영문전용 글꼴(Arial)을 사용한 문장이고, 아래쪽은 고정폭 글꼴(돋움체)을 사용하여 표시한 것이다. 보이는 것과 같이, 똑같은 문자열이라도 사용된 글꼴과, 어떠한 내용이냐에 따라서 그 전체 너비가 달라질 수 있다.

Welcome to JavaScript Guide

Welcome to JavaScript Guide

이를 다르게 표현하자면, 정해진 너비에 몇글자가 들어갈 것인지를 미리 유추한다는 것은 매우 힘들다는 얘기가 되겠다. 따라서, 눈대중으로 이정도면 몇글자 정도 들어갈테니 대충 20글자 까지만 쓰도록 문자열을 잘라낸다고 하더라도, 가변폭 글꼴을 사용할 경우, 사용자가 꽤 넓은 폭을 가진 W 글자만으로 제목을 채운다면 자칫 넘어가 버릴 수도 있다는 뜻이다.

한글 제목

한글은 영문과는 달리, 한 글자를 나타내는데 2 Byte를 필요로 한다. 불행스럽게도 일반적인 프로그래밍 언어에서 기본적으로 제공하는 문자열 잘라내는 함수들은 이러한 한글의 특성을 배려해 주지 않는다. 따라서 무작정 이러한 함수들을 사용하여 정해진 바이트 단위로 잘라버리게 되면, 한글이 중간에 잘려서 엉뚱한 글자로 깨지는 현상을 접할 수 있다.

이러한 문제를 극복하기 위해서는, 잘라내는 처리를 할 대상 문자열 중에 한글이 포함된 경우, 한글의 경계를 파악하기 위해 일일히 문자열을 바이트 단위로 검사하여, 잘라낼 위치가 한글의 경계가 아닌 중간에 위치한 경우 그 경계를 피하여 잘라내도록 별도의 알고리즘을 적용하여 처리해야 한다. 이러한 처리과정이 뭐 그리 복잡한건 아니겠지만, 그렇다 하더라도 프로그래머 입장에서는 번거로운건 사실이다.

추가적인 프로그램 코딩과 서버 수행

어찌보면 "별것도 아닌" 효과를 위해 숱한 사람들이 지속적으로 들락날락 하는 게시판 같은 프로그램에서 이러한 처리과정을 일일히 적용하여 수행한다는 것은 추가적인 코드를 작성해서 기능연결을 해야 하는 프로그래머의 수고 뿐만 아니라 이러한 처리를 사용자가 게시판을 조회할 때마다 일일히 수행해야 하는 서버의 자원낭비도 무시할 순 없다. 사실, 조그만 개인 홈페이지나 기껏해야 동시 접속자 100명 안쪽의 소규모 게시판에서는 이러한 요소가 고려할 필요조차 없을지도 모른다. 하지만 대규모 사용자를 서비스하는 게시판의 경우에는 작은 성능 향상이 엄청난 효과를 발휘할 수도 있다.

스타일시트를 이용한 레이아웃 정의

스타일의 속성 중에는 overflow라는 속성이 있다. 이 속성은 정해진 영역 이상으로 포함된 내용이 많을 경우 그 내용 표시를 어떻게 처리할 것인지를 정하는 스타일 속성이다. 기본값은 auto이며, scroll, hidden 등으로 지정할 수 있다. scroll로 정의하면 내용이 많을 경우 스크롤바를 표시하여 처리한다는 의미이고, hidden으로 지정하면 영역을 벗어난 내용을 표시하지 않는다는 뜻이다. 이 기사에서는 바로 이 overflow라는 스타일을 이용하여 위에서 열거한 문제들을 해결하는 또다른 해법을 제시하고자 한다.

맨 처음에 봤던 그 테이블에서 제목란을 이제 너비 320 픽셀과 높이 18 픽셀로 고정시키려고 한다. 그리고 지정된 영역 이상으로 넘어가는 내용(Word-Wrap에 의해)을 화면 상에 표시하지 않기 위해서는 overflow:hidden 이라는 스타일 지정을 사용하여 처리하도록 한다. 그리고, Netscape에서는 display 속성을 block 또는 inline-block 으로 지정하지 않으면 이 효과를 확인할 수 없으므로 함께 추가한다.

<style type="text/css">
th,td { font-size: 9pt; line-height: 160%; }
.shorttitle { width: 320; height: 18; display: block; overflow: hidden; }
</style>
<table width=500 border=1 cellspacing=0 cellpadding=2>
  <tr><th>No</th><th width=320>Subject</th><th>Name</th><th>Date</th><th>Hit</th></tr>
  <tr>
    <td>5</td>
    <td>
      <span class=shorttitle>
        제목 길게 쓰면 누가 알아나 주나? 제발 좀 제목은 간단하게 쓰라구! 누가 본다고.. 쯧쯧
      </span>
    </td>
    <td>짜증남</td>
    <td>2001.10.17</td>
    <td>2</td>
  </tr>
  <tr>
    <td>4</td>
    <td>
      <span class=shorttitle>
        짧게 좀 씁시다. 잘 안보이자나여.
      </span>
    </td>
    <td>딴지남</td>
    <td>2001.10.17</td>
    <td>8</td>
  </tr>
  <tr>
    <td>3</td>
    <td>
      <span class=shorttitle>
        나도 길게 쓸래. 짧게 쓰면 뭔가 허전해서 말이쥐, 왜냐구? 내맘이지 모야!
      </span>
    </td>
    <td>졸라맨</td>
    <td>2001.10.17</td>
    <td>19</td>
  </tr>
  <tr>
    <td>2</td>
    <td>
      <span class=shorttitle>
        이렇게 짧게 써도 되는데
      </span>
    </td>
    <td>낙천맨</td>
    <td>2001.10.17</td>
    <td>7</td>
  </tr>
  <tr>
    <td>1</td>
    <td>
      <span class=shorttitle>
        꼭 이렇게 제목을 길게 써야지만 직성이 풀리는 유별난 사람들이 많은 모양이예요.
      </span>
    </td>
    <td>순진녀</td>
    <td>2001.10.17</td>
    <td>26</td>
  </tr>
</table>

생략 표기 (IE 전용)

제목의 표시는 원하는 만큼의 분량만 표시한다고 하더라도, 이것이 제목 전체가 아닌, 잘라진 문자열일 경우 원래 내용이 더 있다는 표시를 해야 할 필요가 있을 수 있다. 보통 이런 경우에는 해당 문자열 뒤에 "..." 을 표기하여 생략되었다는 의미를 나타낸다.

이러한 생략 표시를 위의 해법에 적용하기 위해서는 각각의 문자열이 원래 2라인인지 아닌지를 판단해야 한다. 그것을 알아내려면 해당 태그의 scrollHeight를 조사하면 판단할 수 있다. 이러한 내용을 적용하여 생략된 제목 뒤에 생략 표시를 나타내는 테이블은 다음과 같다.

<style type="text/css">
th,td { font-size: 9pt; line-height: 160%; }
.shorttitle { width: 300; height: 18; display: inline-block; overflow: hidden; }
</style>
<table width=500 border=1 cellspacing=0 cellpadding=2>
  <tr><th>No</th><th width=320>Subject</th><th>Name</th><th>Date</th><th>Hit</th></tr>
  <tr>
    <td>5</td>
    <td>
      <span id=line1 class=shorttitle>
        제목 길게 쓰면 누가 알아나 주나? 제발 좀 제목은 간단하게 쓰라구! 누가 본다고.. 쯧쯧
      </span>
      <span id=line1ellipsis style="height:18;display:none">...</span>
    </td>
    <td>짜증남</td>
    <td>2001.10.17</td>
    <td>2</td>
  </tr>
  <tr>
    <td>4</td>
    <td>
      <span id=line2 class=shorttitle>
        짧게 좀 씁시다. 잘 안보이자나여.
      </span>
      <span id=line2ellipsis style="height:18;display:none">...</span>
    </td>
    <td>딴지남</td>
    <td>2001.10.17</td>
    <td>8</td>
  </tr>
  <tr>
    <td>3</td>
    <td>
      <span id=line3 class=shorttitle>
        나도 길게 쓸래. 짧게 쓰면 뭔가 허전해서 말이쥐, 왜냐구? 내맘이지 모야!
      </span>
      <span id=line3ellipsis style="height:18;display:none">...</span>
    </td>
    <td>졸라맨</td>
    <td>2001.10.17</td>
    <td>19</td>
  </tr>
  <tr>
    <td>2</td>
    <td>
      <span id=line4 class=shorttitle>
        이렇게 짧게 써도 되는데
      </span>
      <span id=line4ellipsis style="height:18;display:none">...</span>
    </td>
    <td>낙천맨</td>
    <td>2001.10.17</td>
    <td>7</td>
  </tr>
  <tr>
    <td>1</td>
    <td>
      <span id=line5 class=shorttitle>
        꼭 이렇게 제목을 길게 써야지만 직성이 풀리는 유별난 사람들이 많은 모양이예요.
      </span>
      <span id=line5ellipsis style="height:18;display:none">...</span>
    </td>
    <td>순진녀</td>
    <td>2001.10.17</td>
    <td>26</td>
  </tr>
</table>
<script language="JavaScript">
function showEllipsis() {
  for (i = 1; i <= 5; i++) {
    if (eval("line"+i+".scrollHeight") >= 24) {
      ellipsis = eval("line" + i + "ellipsis");
      ellipsis.style.display = "inline-block";
    }
  }
}
showEllipsis();
</script>

간혹, 레이아웃이 로딩 중에 달라지도록 구성된 웹 페이지에서는 각 제목의 스타일 속성이 로딩이 완료되기 이전까지는 결정되지 않아서 생략표시를 처리하는 자바스크립트 함수가 제대로 동작하지 않을 수 있다. 이런 경우에는 이 함수의 실행을 BODY 태그의 onLoad에 이벤트 핸들러로 연결하거나, 적절한 실행 지연시간(setTimeout() 이용)을 지정하여 호출하면 해결할 수 있다.



웹조각 (Web Slice)

Microsoft 2009. 6. 16. 22:46 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009.6.16



IE8을 사용하고 계신가요?
그렇다면, 최근에 마우스오버 시에 위의 그림처럼 초록색으로 마킹되는 지점이 가끔 보이실 겁니다. 

이것을 웹조각이라고 부릅니다.
저는 이 기능을 RSS iframe 으로 부르고 싶어요. ^^;

뭐 말은 안되지만 의미는 비슷한 것으로 생각하셔도 되지 않을까 합니다.
해당 조각은 마치 별도의 페이지처럼 즐겨찾기를 통해서 따로 볼 수 있습니다. 즉, 위의 예시는 다음에서 캡쳐한 것인데 해당 웹조각을 즐겨찾기에 추가하면 굳이 다음에 접속하지 않아도 해당 웹 조각을 바로 볼 수 있다는 거지요.
게다가, RSS처럼 자동으로 업데이트도 된답니다. 그야말로 RSS iframe 아니겠습니까?

마이크로소프트의 도움말이 정의한 웹조각입니다.

 내용 숨기기 웹 조각이란 무엇입니까?

웹 조각은 사용자가 가입할 수 있는 웹 페이지의 특정 부분으로 즐겨찾기 웹 사이트에서 업데이트된 콘텐츠—현재 온도 또는 경매 가격 변경과 같은 콘텐츠—를 사용할 수 있을 경우 사용자가 이를 볼 수 있도록 합니다. 웹 조각에 가입하면 즐겨찾기 모음에 링크로 표시됩니다. 웹 조각이 업데이트되면 즐겨찾기 모음에 있는 링크가 굵은 글꼴 형식으로 표시됩니다. 그런 다음 링크를 클릭하여 업데이트된 콘텐츠를 볼 수 있습니다.


뭐 실시간 성, 독립성이 강한 데이터의 모음을 제공하는 웹 페이지의 특정 부분 정도로 해석하면 될까요?

이전에는 RSS라는 기술이 우리에게 비슷한 정보들을 전달해주고 있었습니다.  좋은 기능이자 서비스 입니다. 하지만, 뭐 저같은 IT 인력 및 그에 친화적인 사람들을 제외하고 얼마나 RSS를 사용하고 있을까요? 의문입니다.

하지만, 웹조각이 이 부분에 대해서는 확실히 모어 유저 프랜들리 (More User Friendly) 해진 것은 사실입니다. 훨씬 쉽고 보기가 훨씬 편합니다. 아쉽다면 IE8에서만 지원되기 때문에 최신의 슈퍼 스피드 브라우져에서는 당분간은 이런 기능을 쓸 수 없다는 것입니다. 뭐 표준이 된다면야~

여튼 오랜만에 MS가 인터넷 관련 쓸만한 아이디어를 내놓지 않았나 합니다. ^^
근데 서비스라기엔 너무 사이즈가 작아서....

여튼 환영합니다. MS~!




 

'Microsoft' 카테고리의 다른 글

Microsoft OneApp 을 소개합니다.  (2) 2009.08.25
윈도 7 열풍!  (0) 2009.07.30
마이크로소프트가 생각하는 미래의 홈  (0) 2009.05.20
WWT, WorldWide Telescope  (0) 2009.03.31
Windows Rally Program - Web Service on Device  (0) 2008.07.09


Tmax의 위대한 도전

운영체제 2009. 6. 15. 22:38 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009.6.15

티맥스 소프트를 아시나요? 뭐 IT에 입문자시라면 모를 수도 있겠지요.

미국에 MS가 있다면, 한국에는 티맥스가 있습니다.

라고  해도 될까요? (아시는 분은 아시겠지만, 전 티맥스 직원이 아닙니다.)

직원수 10만이 되는 회사에서는 수지에 맞지 않는다는 이유로 남의 OS를 사다가 덕지덕지 붙여서 제품을 뿜어내고 있지만, 티맥스는 그 어떤 한국 기업도 하지 않은 길을 홀홀단신으로 걸어가고 있습니다.

웹로직이라는 강자가 버티고 있는 시장에 제우스라는 출사표를 던졌고,
이번에는 티맥스 윈도(www.tmaxwindow.co.kr)라는 감히 상상조차 못했던 위대한 도전을 시작하려 하네요.

정말 소프트웨어 업계의 일원으로써 찬사를 보냅니다. 당장 성공이 아니더라도 한국 소프트웨어 역사상 길이 남을 겁니다.

티맥스소프트 문진일 대표님는 "티맥스 윈도 발표는 한국 SW 산업의 자존심을 보여주는 역사적인 계기가 될 것으로 기대한다"며 "MS윈도를 대체할 수 있는 토종 OS 발표라는 위대한 도전을 반드시 성공시켜 한국을 대표하는 글로벌 SW 기업으로 도약하겠다"고 말하셨다고 합니다.

꼭 그래주세요~ 기대하겠습니다.




Google Wave

Google 2009. 6. 11. 10:38 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009.6.11

최근 구글 Wave의 관련글이 쏟아지고 있지요? 구글의 신제품은 항상 관심을 끌지만 이번 역시 세간(?) IT좀 하시는 분들에게는 관심의 대상입니다.
그래서, 저도 여기에 짧은 제 생각을 적으려 합니다.


1. Google Wave는?
이메일 + 메신져 + 블로그 툴 + 트위터(?) + (Gmail, Google talk)
위의 웹 응용 서비스들이 하나로 멋지게 녹아든 서비스라고나 할까요?

2. 어떻게 동작하나요?
뭐 실은 동영상을 보는 것이 가장 좋습니다. 1시간 20분짜리 컨퍼런스 녹화분입니다.
실은 한 30분정도만 보시면 주요 기능에 대해서는 감 잡으실 수 있을 겁니다.



3. 눈에 띄는 것들
1) email thread 관리
저의 경우에는 이메일을 효과적으로 관리할 수 있다는 점이 가장 멋졌습니다.

지금 당신의 이메일 받은 편지함을 한번 보세요.

Re:Re:Re:........

대체 추적하기 쉽지 않은 Re의 연속입니다. 조금만 정신줄을 놓고 있으면 그대로 놓치기 일 수 입니다.
포럼(forum)등 게시판에 보면 깔끔하게 Thread(쓰레드, 글타레) 단위로 분리되어 있지요? 이슈를 이해하기도 편하고 그 흐름도 파악하기 편하고....

Google Wave는 이메일에 이 개념을 아주 멋지게 도입했답니다. 현재 오픈되지 않아서 스냅샷이 없어요~ 동영상을 보시길 바래요~
Wave는 이것만으로도 충분하게 협업툴로서의 큰 의미를 가지기 않을까 합니다.

2) Playback, Rewind
그런데도, Google은 항상 플러스 알파가 있지요. 그건 바로! Playback, Rewind 입니다.
기존의 이메일은 본문에 지금까지의 관련 메일 쓰레드가 주렁주렁(이 표현이 딱 맞는 듯) 달려 있지요. (짜증나지요..)
히스토리 파악하려면 맨 아래로 가서...하나씩 위로 올라가면서...(사용성 제로 입니다.)
Google Wave는? 마치 개발툴의 디버거처럼 스텝스텝을 넘어가면서 그간의 커뮤니케이션을 확인 가능합니다. (아 말로 표현하려니...^^ 역시 동영상 참조요)

이를 뒷받침하는 기술은 실시간 커뮤니케이션 기술이라고 합니다. 실은 웹에서 Ajax의 발달로 이러한 방식이 가능해진 지는 좀 되었지만 본격적으로 상용 서비스에 도입된 경우는 많지 않았습니다. 동영상만 볼때는 아주 멋지게 잘 동작하고 있는 듯 합니다. 물론 실제로 10명, 20명이 사용해 보아야 그 평가가 정해지겠지만요.

뭐 그외에 스펠 체커, API 제공 등이 있지만... 이건 뭐 그리... ^^

4. 생각
생각컨데 Wave는 Google의 복안을 간파하는 것이 중요해 보입니다. 그간 의미있는 행보들을 많이 보여왔지만, 유독 SNS 관련된 부분에서는 약세를 면치 못했던 것이 사실입니다.
기억하시나요? 이메일과 메신져가 세상을 지배했던 시절을? 실은 그 당시에는 그것들이 SNS 수단이었다고 할 수 있습니다.
최근 기존의 SNS에 흥미들이 급감하고 있는 이 시점에 구글 Wave와 Orkut를 이용한 데모를 Google I/O 2009의 대부분의 시간에 할애한 이유가 뭘까요? 제 짧은 생각으로는 SNS 시장에 새로운 방식으로 진입하고 고지에 오르겠다는 것이 아닌가 합니다. 현재로서는 그 가능성이 충분해 보이기도 합니다.
오픈 소스, 오픈 API의 입장을 고수한 것 역시 현재 기반이 약한 서비스를 널리 널리 퍼뜨려 중생들을 이롭게 하겠다는 의도가 깔려 있어 보이기도 하구요. 여기저기 Wave 세상! 뭐 이런거?

5. 마치며
해외에는 SNS 시장이 저물어 감에도 불구하고 다양한 시도들이 끊임 없이 진행되고 있습니다. 뭐 실은 우리가 싸이의 열풍이 먼저 불고...지금 시들했던 것들이 이제 서방 세계에 불고 있는 것일지도 모릅니다. 하지만, 아쉽네요. 우리 토종 서비스들은 점점 그 무게가 가벼워 지고 있지 않나는 느낌이 듭니다. 따라하기 싸이트 들만 즐비하고요.
인구의 부족, 언어의 한계를 탓할 수도 있겠지만... 좀더 새롭고 도전적인 시도들을 보고 싶을 따름입니다. 저도 노력하겠습니다.

6. Google Wave 관련 글들
공식 홈페이지 : http://wave.google.com/
공식 블로그 : http://googleblog.blogspot.com/2009/05/went-walkabout-brought-back-google-wave.html
비공식블로그(후글) : http://www.hoogle.kr/1344

'Google' 카테고리의 다른 글

Google의 On2 Technologies 인수!  (0) 2009.08.07
시덥잖은 Google App Engine 튜토리얼  (0) 2008.08.21
Google App Engine 계정을 드디어 받았습니다.  (2) 2008.08.20
Google's Master Plan  (0) 2008.07.24
Google Code Jam  (0) 2008.07.09


HSQLDB 사용

개발 노트 2009. 5. 26. 15:08 posted by 무병장수권력자


HSQLDB 간단한 사용법

작성자 : 김문규
최초 작성일 : 2009.5.26

HSQL DB는 자바 기반의 개발자용 DB 입니다. 어플리케이션 개발 시 간단한 테스트 용으로 매우 유용합니다. mysql과 비슷한 느낌입니다. 하지만, 설치할 것은 달랑!
hsqldb.jar
하나 뿐입니다.

사용법
1. 적절한 path에 설정을 하고
2. 스크립트를 2개 만듭니다. (classpath의 위치만 본인에 맞게 변경합니다.)
startdb.bat
java -classpath ..\war\WEB-INF\lib\hsqldb.jar org.hsqldb.Server -database test

db-manager.bat
java -classpath ..\war\WEB-INF\lib\hsqldb.jar org.hsqldb.util.DatabaseManager
3. startdb.bat를 실행하면 DB 서버가 동작합니다.
4. 간단한 매니져 프로그램을 띄우려면, db-manager.bat를 실행합니다.

물론 제약도 많지만 설치하지 않고 간단하게 테스트 가능하다는 장점이 있습니다.





[C/C++] 변수 선언의 기본

개발 노트 2009. 5. 22. 16:15 posted by 무병장수권력자


C/C++ 변수 선언의 기본

작성자 : 김문규
최초 작성일 : 2009.5.21

변수 선언, 기본중에 기본인데 의외로 헷갈립니다. 기초를 잘 정리하셔야 나중에 후환이 없습니다. 저장 위치, lifetime, linkage의 측면에서 표로 정리해 보았습니다.


(storage-class-specifier)  (type-qualifier)  type-specifier
 
  1. Storage class specifier
  • 저장 장소에 따른 분류 구분입니다.

 

저장위치

lifetime

linkage

비고

auto

stack

local

no-linkage

기본값

register

register

local

no-linkage

컴파일러에 따라서 register 저장할 수도 아닐 수도 있음

static

static data

global

내부 선언
: no-linkage

외부 선언
: internal-linkage

변수가 선언된 파일 내부로 한정되는

extern

 static data 참조

global

external-linkage

link time 동적으로 바인딩

 

  • internal level static vs. internal level auto
    • static으로 선언한 경우에는 함수를 빠져 나가도 값이 유지되며, 해당 함수를 재실행하여도 값이 그대로 유지됨
  • external level static vs. external level 키워드 생략(global)
    • static으로 선언한 경우에는 해당 파일에서만 사용 가능, global 전체 프로그램에서 사용 가능
  1. Type qualifier
  • const : 해당 변수, 객체를 수정할 없음
  • volatile : 해당 변수, 객체를 수정할 있음 (기본값)

 

  1. Type-specifier
  • void, char, short, int, long, double, struct, union, enum...

'개발 노트' 카테고리의 다른 글

[Javascript] 긴 문자열 잘라서 표시하기 (게시판 긴 제목 해결)  (0) 2009.06.17
HSQLDB 사용  (0) 2009.05.26
DB 튜닝 - INDEX 제대로 사용하기  (1) 2009.05.18
파이(pi) 값 계산하기  (2) 2009.05.13
C++ course work  (0) 2009.05.11


마이크로소프트가 생각하는 미래의 홈

Microsoft 2009. 5. 20. 16:42 posted by 무병장수권력자


최근의 각 사들이 경쟁적으로 보이고 있는 기술의 경향은
Anywhere(어디서나),
You can get the Information(정보)

으로 압축되는 듯 합니다.

모바일 인터넷이 실제로 엄청난 붐을 일으키는 것이 이런 흐름이 시작되고 있다는 것을 보여주는 한 일례이겠습니다.

현재는 움직이는 디스플레이가 휴대폰, PMP 등등 포터블 디바이스에 집중되고 있지만, 그 자리는 동작인식 카메라와 휴대용 프로젝터가 매꿀 것으로 생각되네요. 이전에 포스팅한 미디어랩의 SixthSense도 이에 해당하겠습니다. 휴대성과 스케일을 동시에 만족시킬 수 있기 때문이 아닐까 합니다.

마이크로소프트는 이런 컨셉을 꾸준히 여기저기에 적용하고 있습니다.
아래의 동영상은 이런 기술이 집에 적용된 좋은 예입니다. Future Home, 미래의 집의 그림을 그려 보겠다는 거지요. 집 전체가 음성 인식 장비, 프로젝터를 곳곳에 배치하고 필요한 정보를 필요한 순간에 보기 좋은 곳에다가 보여주고 있습니다.

아주 놀랄만한 기술이 그려지고 있지는 않습니다만, 왠지 곧 이런 집에서 살 것 같다는 생각이 듭니다. 약 5~10년전에 홈네트워킹, 홈 오토메이션이 엄청나게 뜰 것이라 생각했지만, 현재까지 분위기는 대실패인 듯 합니다. 그런데, 제 생각에는 그 이유는 그때 기술로는 실제로 그다지 편하지도 않았고 제공되는 정보들도 만족스럽지 못했기 때문입니다.

하지만, 지금은 웹 2.0을 넘어 3.0 시대에 접어 들면서 고급 정보들에 쉽게 접근할 수 있는 인프라가 잘 구축되어 있으며, 정보 기술은 그 끝을 모르고 발전하고 있습니다. 인터넷에서 구할 수 없는 정보는 거의 없다고 해도 무방합니다. 그렇기 때문에 이제야 비로소 이런 정보들을 집 곳 곳에서 효과적으로 활용할 수 있는 시스템이 필요해 질 것이라는 생각이 듭니다. (사용자들은 효과적인 장비에 대한 욕구가 아니라 고급 정보에 대한 욕구가 더 컸다고

지금까지의 실패작들이 컨셉의 검증(Proof of Concept)이었다면, 이제야 비로서 Future Home 1.0의 시대가 도래하지 않을까 합니다.

아래의 동영상은 마이크로 소프트의 Future Home 기술을 보여주고 있습니다. 일반인들이 생각하는 기본적인 욕구(basic needs)를 정확하게 구현하고 있네요.

원하는 데로만 잘 동작한다면 당장이라도 쓰고 싶습니다. 뭐 실은 감춰진 불편함이 아직 있겠지만요.


'Microsoft' 카테고리의 다른 글

Microsoft OneApp 을 소개합니다.  (2) 2009.08.25
윈도 7 열풍!  (0) 2009.07.30
웹조각 (Web Slice)  (0) 2009.06.16
WWT, WorldWide Telescope  (0) 2009.03.31
Windows Rally Program - Web Service on Device  (0) 2008.07.09