'2008/07'에 해당되는 글 15건

  1. 2008/07/31 회의실의 열기 그리고 위(Wii)기
  2. 2008/07/30 FLICKLOCK이 silverlight.net Gallery에 등록되었습니다. (8)
  3. 2008/07/30 Elevator Pitch (2)
  4. 2008/07/28 물결기호(~)를 영어로 (2)
  5. 2008/07/27 Deep Zoom Composer Online (PHP 버전) 제작기 (4)
  6. 2008/07/24 Namespace와 LINQ to XML
  7. 2008/07/24 MouseWheelHelper.cs (Ver. 휴즈플로우)
  8. 2008/07/20 FLICKLOCK?! - Flickr + Clock (Silverlight) (3)
  9. 2008/07/20 FLICKLOCK (플리클락) ?! - Flickr + Clock을 소개합니다. (16)
  10. 2008/07/09 UserControl 부모, 자식이 같은 이름의 스토리보드를 가지고 있을 경우, '간혹' 발생하는 에러 (2)
  11. 2008/07/03 [SL2 B2] Socket 사용을 위한 Policy Server 만들기
  12. 2008/07/01 [Remake] MediaElement 동시사용의 한계는 123개다.
  13. 2008/07/01 Remix Korea 2008 - 피그맵 시연 동영상
  14. 2008/07/01 Microsoft MVP Offline 모임 (06/30) (10)
  15. 2008/07/01 MSDN Premium Subscription + VSTS 2008
2008/07/31 20:12

회의실의 열기 그리고 위(Wii)기

 

여름, 여름이죠...
요즘 날씨가 정말 덥습니다.

회의를 하다가도 중간중간 아이스크림도 먹으면서 휴식을 취해주는
센스가 필요하겠습니다.

사진 : PeterC

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 0

Trackback : http://gilverlight.net/trackback/2911 관련글 쓰기

2008/07/30 15:53

FLICKLOCK이 silverlight.net Gallery에 등록되었습니다.

제가 이런 스크린샷을 보내진 않았던 것 같은데...
이런 이미지로 등록이 되었습니다. ㅜ_ㅠ

지금 Silverlight Gallery에서 확인 가능하십니다.
자세한 내용은 제가 예전에 작성했던 포스트(아래)를 참고하실 수 있습니다.

FLICKLOCK을 소개하는 포스트
FLICKLOCK을 소개하는 포스트 (영문)

 

View It 버튼을 누르시면 위와 같은 Live Demo 페이지로 링크가 됩니다.

운좋게 초기 평점이 좋아서 Top Rated 상위에 등록이 되었습니다만,
시간이 지날수록 떨어질 것으로 보입니다. ^^;;


 

샘플을 보는 외국인들의 마음 속에 은연중 DOKDO가 한국땅으로 자리잡기를
바라는 마음에 페이지 여기 저기에 DOKDO / SOUTH KOREA를 넣었습니다.

그리고 사진대신 시간이 표시되는 5초 동안은 FLICKLOCK을 클릭 했을 때,
독도와 동해 홍보사이트로 이동되게 하였습니다.

FLICKLOCK을 통해 실버라이트에 관심 갖는 외국인들 중 몇몇이라도
독도를 한국땅으로 바로 아는데, 보탬이 되었으면 좋겠네요.

감사합니다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 8

Trackback : http://gilverlight.net/trackback/2910 관련글 쓰기

  1. BlogIcon HOONS 2008/07/30 15:57 address edit & del reply

    멋져요~
    별점 러쉬 ㄱㄱ

    • BlogIcon 길버트 2008/07/30 16:28 address edit & del

      감사합니다!
      이따 7시에 햄버거 먹나요?

  2. 태디 2008/07/31 01:48 address edit & del reply

    짝짝짝

    • BlogIcon 길버트 2008/07/31 09:20 address edit & del

      이것은 불꽃 싸다구 맞는 소리는 아니겠죠??
      *^^* 감사합니다.

  3. BlogIcon 김기석 2008/07/31 18:34 address edit & del reply

    장한 일을 하셨네요~ ^^!
    저도 빨리 별점을~!

    • BlogIcon 길버트 2008/07/31 20:18 address edit & del

      감사합니다!
      기석님은 무엇을 하셔야 하는지
      잘 알고계시는 군요!
      ㅎㅎ

  4. BlogIcon 황정현 2008/08/01 15:42 address edit & del reply

    정말 멋지세요!!

    • BlogIcon 길버트 2008/08/03 22:48 address edit & del

      감사합니다.
      더욱 더 노력하겠습니다! ^^

2008/07/30 13:29

Elevator Pitch

엘리베이터를 타고 있는 잠깐 동안의 시간에 핵심만 설명하는 것.

대략 이런 내용을 포함하여, 30초 이내에 100~150 단어(영단어 기준?)로 설명하는 것.

  • What the product is
  • What it does for the buyer (e.g. the benefits)
  • Who we are

    참고 : http://en.wikipedia.org/wiki/Elevator_pitch
  • 이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 2

    Trackback : http://gilverlight.net/trackback/2909 관련글 쓰기

    1. ivoryguard 2008/07/31 05:52 address edit & del reply

      프리젠테이션 젠에 나오는 내용이군요.
      좋은 책입니다^^

      • BlogIcon 길버트 2008/07/31 09:23 address edit & del

        제가 책을 접한 것은 아니고, 얼마전 회사에 TFS를 셋업해서 요즘 열심히 쓰고 있는데,
        거기서 팀 프로젝트 생성할 때, 애자일 템플릿을 쓸 수 있더라구요.
        그리고 친절하게 가이드가 나와있길래 훑어보는데,
        개념적으로 쓸만한 내용이 많이 보여서 그중 하나 정리해 보았습니다.
        [프리젠테이션 젠]이란 책도 기회되면 읽어보겠습니다.

    2008/07/28 17:52

    물결기호(~)를 영어로

    스웡대시라고 하는군요.

    ~ : Swung dash (swungdash)

    몰랐어요.
    이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 2

    Trackback : http://gilverlight.net/trackback/2908 관련글 쓰기

    1. 태디 2008/07/29 01:25 address edit & del reply

      흔히 틸드라고 많이 부르지요

      • BlogIcon 길버트 2008/07/29 22:14 address edit & del

        고맙습니다.
        가르침은 언제나 환영입니다!

    2008/07/27 17:04

    Deep Zoom Composer Online (PHP 버전) 제작기

    ScreenShot

    사용자 삽입 이미지

    사용자 삽입 이미지


    Intro

    서버호스팅 환경이 아닌, '웹호스팅 환경에서도 [딥줌 컴포저] 기능을 사용할 수 있게 하면 어떨까?'

    하는 생각에서 PHP로 딥줌 컴포저를 만들기 시작하였습니다.

    일단 목표기능은 Composition 타입의 딥줌 데이터를 생성하는 것!

    다행히 그동안 DeepView Lite 등을 개발하면서 Deep Zoom Data Structure는
    어느 정도 빠삭하게 알고 있어서 컴포징하는 Core 부분 구현은 그렇게 시간이 오래 걸리지 않았습니다.

    200라인짜리 PHP프로그램이 완성되는데, 3시간 정도 걸린 것 같습니다.
    오히려 라이브 데모 사이트 꾸미는데 시간이 더 걸렸네요. ^^;;


    Live Demo

    아래 링크를 방문하셔서
    딥줌 사진 구경도 하시고, 사진올리기도 해 보십시오.
    아참! 잊지마시고 전체화면 기능도 사용해 보십시오.
    (대형 와이드 모니터에서 보면 간지가...^^)

    http://hugeflow.com/DZCPHP/

    주의!
    현재 삭제 기능은 관리자에게만 있으므로, 잘못 올린 사진은 직접 지우실 수가 없습니다.
    '위험한' 사진은 절대 올리지 마세요. 무슨 말씀인지 알겠죠????


    Issue

    작업을 하다 보니 앞으로 넘어야 할 산들이 좀 있습니다.

    1. 업로드 용량제한

    세들어 사는 웹호스팅 환경이다 보니, 보통 10MB 정도의 Upload 제한이 있습니다.
    각자의 서버에서는 phpinfo를 수행하면 PHP Core파트의 upload_max_filesize 변수로 확인하실 수 있습니다.

    사용자 삽입 이미지

    컴포저의 작동 한계에 도달하기 전에 업로드 용량제한에 먼저 부딪힙니다.
    그래도 디카가 찍어내는 이미지들을 대상으로 해서 사용하기에는 부족함이 없어 보입니다.


    2. 축소 알고리즘이 열악함

    단계별 축소 이미지를 만들어 내기 위해
    imagecopyresampled, imagecopyresize 따위의 함수를 사용하게 되는데,
    이때 축소된 이미지에 만족할 수 없었습니다.

    Microsoft Deep Zoom Composer PHP Deep Zoom Composer
    8/0_0.jpg
    사용자 삽입 이미지
    사용자 삽입 이미지
    11/3_2.jpg
    사용자 삽입 이미지
    사용자 삽입 이미지
    12/8_4.jpg
    사용자 삽입 이미지
    사용자 삽입 이미지
    각 Composer에 의한 축소 이미지 비교

    맨 마지막의 12/8_4.jpg 파일은 원본 사이즈를 축소 과정 없이 타일링한 파일로서,
    퀄리티 차이나 느낌차이가 크게 나지 않습니다.

    나머지 축소 과정을 거친 파일들은 Microsoft의 것은 Blur를 준 느낌이 나는 반면,
    PHP에 의한 것은 Sharpen을 과도하게 먹인 느낌이 나는군요.

    두 output 모두 맘에는 딱 안들지만 PHP 쪽의 결과물이 더 눈에 거슬립니다.
    (DeepView Lite로 볼 때 느낌이 그렇습니다.)

    개선할 방법이 있는지 생각해 봐야겠습니다.


    3. Speed

    컴포징 속도는 개인 PC와 웹호스팅 환경에 따라 느낌의 차이가 많이 나실 겁니다.
    컴포징 전에 업로드하는 시간도 존재하구요.
    일단 Live Demo 사이트에서는 업로드 시간과 컴포징 소요 시간을 분리한 뒤,
    컴포징 소요 시간을 저장해 놓았으므로 열람하실 수 있습니다.

    Composition Type의 Deep Zoom Data를 얻는데 있어서는
    제 노트북에서 Microsoft Deep Zoom Composer를 통하는 것보다
    빠르게 작업할 수 있다고 느꼈습니다.

    무엇보다 그 과정의 간결함이 크게 작용하였습니다.
    사진만 선택해서 업로드 하면, DeepView Lite로 바로 볼 수 있고,
    바로 퍼가기도 가능하다는 것 말이죠.


    Epilogue

    브로드밴드 서비스를 위해서는 Deep Zoom 컴포징 서버가 따로 존재해야 하겠지만,
    개인적으로 가볍게 사용할 목적으로는 Deep Zoom은 그렇게 멀기만 한 기술이 아닙니다.
    (서버 버전의 컴포저는 이과장님이 전문이십니다.)

    위 시도를 통해서, 제로보드, 태터툴즈(or 텍스트 큐브) 등 PHP 기반의 프로그램에서도
    손쉽게 Deep Zoom 컴포징 & View 기능을 내장할 수 있다는 가능성을 확인하였습니다.

    PHP는 제가 오래 사용해 왔던 언어라서 이번 실험에 사용했습니다만,
    Image Handling이 가능한 수많은 서버 언어에서도 비슷한 시도가 가능하겠습니다.

    감사합니다.
    이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 4

    Trackback : http://gilverlight.net/trackback/2907 관련글 쓰기

    1. BlogIcon reagan 2008/07/28 11:18 address edit & del reply

      와우! 멋져요.

      • BlogIcon 길버트 2008/07/28 22:19 address edit & del

        감사합니다. 황과장님!
        샘플로 올려 놓으신 파일 해상도가 좀 안습이던데요~
        고해상도 사진 입수하시면 또 올려주세요!

    2. BlogIcon 기석 2008/07/28 18:12 address edit & del reply

      정말 멋집니다. ^^ 최근에 본 인터뷰 동영상에서 말하는것 처럼 DeepZoomalbe한 웹도 멀지 않았네요! :)

      • BlogIcon 길버트 2008/07/28 22:19 address edit & del

        감사합니다.
        요즘 하시는 작업들은 잘 되시나요?
        재미있는 거 있으시면 좀 소개해 주세요!

    2008/07/24 22:13

    Namespace와 LINQ to XML

    <Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                 x:Class="ButtonStyleSample.App"
                 xmlns:vsm="clr-namespace:System.Windows;assembly=System.Windows"
                 >
        <vsm:Application.Resources>
             <Style x:Key="myButtonStyle" TargetType="Button">
                 ...생략
             </Style>
             <Style x:Key="yourButtonStyle" TargetType="Button">
                 ...생략
             </Style>
             <Style x:Key="herButtonStyle" TargetType="Button">
                 ...생략
             </Style>
             <Style x:Key="hisButtonStyle" TargetType="Button">
                 ...생략
             </Style>
        </vsm:Application.Resources>
    </Application>

    string xml에 위의 내용이 들어있다고 가정하고,

    XDocument xDoc = XDocument.Parse(xml);

    위와 같이 xDoc을 준비해 놓고,

    XML데이터에서 Style을 돌면서 x:Key의 Value값만 쏙쏙 뽑아내는 LINQ구문을 작성한다면
    어떻게 하시겠습니까?


    오답

    첨엔 막연히 이렇게 해봤습니다.

    var result = from c in xDoc.Descendants("Style")
                    select (string)c.Attribute("x:Key").Value;

    네, 에러가 납니다.
    Attribute의 이름에는 콜론(:)을 추가할 수 없습니다.

    Attribute메서드의 파라미터는 XName이구요.
    XName을 생성할 때 콜론(:)이 들어간 문자열을 허용하지 않기 때문입니다.

    정답

    XNamespace x = "http://schemas.microsoft.com/winfx/2006/xaml";
    var result = from c in xDoc.Descendants("Style")
                    select (string)c.Attribute(x + "Key").Value;

    XNamespace + string이 XName이 되도록 연산기호 +에 대해
    오퍼레이트 오버라이딩이 잘 되어있더라구요.

    x + "Key" 이런 식으로 사용하는 것은 썩 직관적이지 않아서 맘에 안드는데,
    알고 나니까 잘 쓸 수는 있겠더라구요. ^^

    하지만 역시 LINQ는 쓰면 쓸수록 편한 것 같습니다.

    Enjoy your LINQ!



    이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 0

    Trackback : http://gilverlight.net/trackback/2904 관련글 쓰기

    2008/07/24 08:06

    MouseWheelHelper.cs (Ver. 휴즈플로우)

    Silverlight 1.1 시대의 그것과도 다르고
    DeepZoom Composer에서 자동 생성해주는 프로젝트에 들어있는 그것과도 다른...

    MouseWheelHelper.cs - Ver. 휴즈플로우

    소스가 약간 다르지만 사용방법은 다를 것이 없습니다.
    성능상의 차이도.. 글쎄요 ^^;

    정리 및 공유 차원에서 포스팅합니다.

    Usage

    MouseWheelHelper wheelHelper = new MouseWheelHelper(this);
    wheelHelper.Moved += new EventHandler<MouseWheelEventArgs>(wheelHelper_Moved);

    void wheelHelper_Moved(object sender, MouseWheelEventArgs e)
    {
        e.Handled = true;

        if (e.Delta > 0) // 휠 버튼 업!
        {
             // Zoom In 따위를 구현
        }
        else if (e.Delta < 0) // 휠 버튼 다운!
        {
             // Zoom Out 따위를 구현
        }
    }

    이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 0

    Trackback : http://gilverlight.net/trackback/2903 관련글 쓰기

    2008/07/20 01:49

    FLICKLOCK?! - Flickr + Clock (Silverlight)



    FLICKLOCK?

    FLICKLOCK is 'FLICKR + CLOCK'.
    It shows you recent photo from flickr.com using Flickr Open API

    Does it looks like something you have event seen?
    You're right!
    It's exactly is the homage to UNIQLOCK.


    SPECIFICATION

    UNIQLOCK is showing the 'Time Zone Name' under the time text.
    Butm FLICKLOCK shows 'DOKDO / SOUTH KOREA' (hard coded).

    It means 'Dokdo(=island) is absolutely Korean territory'.

    You can see clock for 5 seconds (the way UNIQLOCK does),
    then you can see 5 recent photos from flickr.com.


    1. If you click FLICKLOCK when the photos are being showed,  
    it will float new window to get the flickr.com webpage for the photo.

    2. If you click FLICKLOCK when time text is being showed,
    it will float new window to get the 'Dokdo Museum'


    Share

    Click to SHARE button to get the code for sharing.


    Source


    Silverlight 2 Beta 2
    I hope it would be helpful to you.
    이올린에 북마크하기(0) 이올린에 추천하기(0)
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    Trackback 0 Comment 3

    Trackback : http://gilverlight.net/trackback/2901 관련글 쓰기

    1. BlogIcon SadTear 2008/11/07 10:28 address edit & del reply

      Flicklock의 share 소스가 잘못 된거 같아요 .
      첫째중의 타입에 x-silverlight-2-b2 로 되어있습니다.

      <object data='data:application/x-silverlight,' type='application/x-silverlight-2-b2' width='160' height='120'>

      이렇게 수정해서 적용하니까 되더라고요.
      <object data='data:application/x-silverlight,' type='application/x-silverlight-2' width='160' height='120'>

      share 버튼 눌러서 퍼갔는데 갑자기 이전버전을 설치하라고 그래서 놀랬네요 ㅎㅎ;

      • BlogIcon 길버트 2008/11/07 11:12 address edit & del

        그렇군요! 수정하도록 하겠습니다.
        제가 정식버전 출시 후에 철저하게 대응하지
        못한 것 같네요~ ^^
        지적 감사합니다.

      • BlogIcon 길버트 2008/11/07 11:15 address edit & del

        수정완료 하였습니다.

    2008/07/20 01:33

    FLICKLOCK (플리클락) ?! - Flickr + Clock을 소개합니다.