web2010. 1. 3. 12:32
2009년은 HTML5가 대중적으로 많이 알려진 해였다.

1. 히스토리
히스토리를 간단히 보면,
- 1998년 HTML4가 나온 이후로 W3C에서는 전혀 HTML이 업데이트하지 않고 있었음 (xHTML를 밀고 있었던 시기)
- 2004년 WHATWG community (Google, Apple, Opera 등에서 주도함)에서 "HTML5"를 자체적으로 스펙 정의하기 시작함 (W3C는 계속 xHTML...)
- 2006년 이후 xHTML은 업데이트되지 않고 있음 (xHTML cancelled).
- 2008년 결국 W3C에서 HTML5를 규정하기 시작함 (WHATWG에서 규정한 것들을 가져옴).

여기까지 보면 결국 W3C는 너무 학술적이었고 웹은 급속히 발전했기 때문에 구글과 같은 인터넷 회사가 주도하게 된 것을 알 수 있다.

2. HTML5의 주요 특징
아래와 같이 5가지 특징으로 설명될 수 있다.
2.1. Vector Graphic (Canvas, SVG)
 - HTML, Javascript와 함께하면 그래픽을 마음대로 주무를 수 있음(Interactive).
 - SVG는 High-level: Import/Export, Easy UIs, Interactive, Mediudfm Animation, Tree of objects
 - Canvas는 Low-level: No mouse interaction, High animation, JS centric, More Bookkeeping, Pixels
 - Chrome, FF, Safari, Opera 이미 지원

2.2. Video (HTML5 standard)
 - <video> as easy as <img> (Flash와 같은 Plugin 불필요)
 - Chrome, FF, Safari, Opera 지원

2.3. Geo locations
 - Geo관련 스크립트 클래스가 있음.
 - ex)  navigator.geolocation.getCurrentPosition(function(position)
 - 위치기반 어플리케이션은 Augment Reality과 결합해서 2010년에는 더 많은 어플리케이션이 나올 것으로 보임.
 - Mashable의 2010년 LBS 예측을 봐도 느끼지만 모든 회사들이 서로 선점하려고 할 것이고 완전히 모바일 깊숙히 자리잡을 듯 하다.

2.4. Application Cache and DB
 - App Cache는 원하는 리소스를 오프라인으로 선언하면 됨.
  CACHE MANIFEST로 선언함. cache.manifest 파일에 내용을 적으면 됨.
 - Local DB는 Google IO 개념과 거의 동일 (역시 구글!!)
var db = window.openDatabase("NoteTest", "1.0", "Example DB", 200000);
db.transaction(
 - 이로 인해 WebApplication의 weak point였던 사용자 데이터 Load/Save가 이제 가능해짐.

2.5. Web workers
 - A more powerful web = a more power ful app.
 - Javascripts가 백그라운드로 동작한다? -> Web Workers
var worker = new Worker('worker.js');
worker.onmessage = function(event) {
console.log('Results: ' + event.data);
}
// workers.js
function findPrimes() {
// ...
}

아래 HTML5 소개 동영상을 보면 더 자세히 설명하고 있다.




3. HTML5의 지원군들
현재 WebOS+WebApplication은 iPhone, Android의 OS+NativeApps과 비교해서 아래와 같은 단점이 있어 장점이 잘 보이지 않는다.
- 느리고 무겁다
- UI가 플랫폼에 최적화되어 있지 않다 
- Interactive하지 않다
- Offline에서 동작하지 않는다.
하지만, HTML5가 대부분의 단점들을 극복하고 있다.

3.1. Web OS
하지만, HTML5+α라면 달라질 수 있다. 그 알파(α)는 바로 WebOS 혹은 WOA(Web Oriented Architecture)가 될 수 있다.

위의 그림은 현재 기존 "HTTP+HTML"이라는 Web의 형태에서 얼마나 많은 기술적, 문화적 발전이 있어왔는지를 잘 보여주고 있다. 
이러한 구조는 Google Chrome 이나 Palm WebOS가 하나의 예를 보여주고 있다고 할 수 있다.
그런데 어찌됐든 느린 단점은 극복될 수 있을지 잘 모르겠다. -_-;

3.2. Mobile Web
HTML5는 MobileWeb환경에서 더욱 빛을 발할 것으로 보인다.

이유는,
 - Mobile 환경은 플랫폼이 매우 다양하다. 물론, 이 다양성으로 시장이 커지고 있지만 MobileWeb은 어떤 플랫폼이든 관계없이 탑재된 브라우저가 지원된다면 MobileWeb 기반 서비스들을 사용할 수 있다.
 - Mobile 환경 디바이스들은 PC 등의 서브로 사용되든지 아니면 동시에 사용되지 완전히 단독으로 사용한다고는 아직까지 볼 수 없다. 따라서, 다양한 환경의 디바이스들을 사용하는 사용자들은 자신의 데이터 동기화나 동일 UI를 선호할 것이다. 즉, MobileWeb은 그런 점에서 Native에 비해 우세하다 (사실, 정말 우세한건지는 잘 모르겠다. 왜냐면 Native도 이미 그런점을 다 극복하고 있기 때문에...)

그 중에서 Fennec (Mobile Firefox)브라우저가 올해 공식 출시될텐데 대략 아래와 같다 (동영상 참고).
 - Nokia가 주도하는 Maemo 플랫폼에 탑재되고 N900 출시.
 - HTML5의 offline storage 지원
 - HTML5의 Javascript, including Javascript access to device capabilities like geolocation, camera, and calling

3.3. Cloud Computing / SaaS (Software as a Service)
클라우드 컴퓨팅하면 구글이다.
Search, Gmail, Docs, Reader, Map, Picasa 등 구글의 GMS(구글 모바일 서비스)들은 모두 구글의 클라우드 서비스 안에 놓여있다. 즉, 온라인 상태에서 동작하는 어플리케이션들이다.
하지만, HTML5의 "Application cache and DB" 기능으로 인해서 오프라인에서도 동작이 가능하게 된다.
구글의 "구글 기어스"가 좋은 예이다.
아마존도 웹서비스회사라는 것은 이미 다 알고 있을 것이다.
SaaS라는 용어는 아마존에 더 어울릴 듯 하다.
2000년 초반에 MS의 닷넷이 나올 때만 해도 이 분야는 MS가 뭔가 보여주는 줄 알았는데 대중적으로는 다 구글 세상이다.


4. 정리
HTML5는 이제 거의 모든 브라우저에서 지원되고 있으며 구글 등의 메이저 회사들이 전폭적으로 지원하고 있다. 따라서, 2010년에는 HTML5를 이용한 웹어플리케이션 및 웹서비스들이 더 많이 늘어날 것으로 보인다.
특히, 아이폰, 안드로이드, 팜프리와 같은 모바일 디바이스에서 HTML5를 풀지원하게되고, Fennec과 같은 브라우저가 합세한다면 웹어플리케이션이 많아질 것으로 보인다.
하지만 웹 어플리케이션이 기존 어플리케이션을 완전히 대체하는 것은 어렵다고 본다. 
결국, 각자 용도에 맞게 어플리케이션들이 만들어질 것이며 이전보다는 웹 어플리케이션의 비율이 조금씩 늘어날 것으로 본다.

Posted by aquicker
web2009. 12. 30. 15:05
정말 유용한 사이트하나를 발견했다.
단순 서치엔진이 아니라 컴퓨팅엔진이다.

설마하는 생각으로 "y = x^2" 입력했는데 아래와 같이 다양한 분석을 해준다. 그래프까지... 대단!!


그러면 3차원에 sin까지 하면 될까? 헉 된다!!


이 밖에도 PDF로 추출할 수도 있고 환율계산이나 통계도 된다.

즉, 이 사이트의 궁극적인 서비스는 수학식만이 아니라 모든 사용자들이 지식을 체계화하고 계산할 수 있도록 해주는데 목적이 있다.

더욱 놀라운건 
- 다양한 Community를 통해 분야를 넓혀서 진행되고 있다는 점
- iPhone과 같은 모바일 디바이스를 위한 앱도 제공을 하고 있다는 것
- 그리고, API를 오픈해서 다양한 앱을 만들 수 있도록 개발자를 참여시키고 있다는 것
- 이 밖에도 다양한 도구들을 다운로드할 수 있게 해놓았다.
이다.

FAQ를 읽어보면 알겠지만,
- 완전 공짜 (비즈니스를 위해서는 contact을 하란다)
- Javascript(AJAX)만 지원되면 대부분 웹브라우저에서 동작
- 서버는 x86 PC를 클러스터링해서 유지함 (서치엔진과는 기술적으로 다를 듯 한데 궁금하다)

수학 공부하는 학생이나 선생님들한테는 정말 좋은 학습도구라고 생각된다.
내가 고등학생때 이게 있었다면 참 다양하게 활용하면서 수학적 이해를 더 할 수 있지 않았을까?
Posted by aquicker
web2009. 12. 3. 17:40


우리 회사의 Jet라는 모델에 탑재된 후 대부분의 Touch 모델에 탑재되고 있는 브라우저의 이름이 Dolphin(Dolfin이네요 스펠의 미묘한 차이가 ^^)이다

당연히 우리 회사에서 안드로이드용 웹킷기반 브라우저를 만든 줄 알았다.

그런데 모토로라 안드로이드 폰인 Verizon 사업자향 Droid에 탑재된 브라우저도 이름이 Dolphin이다.

 

특징은 아래와 같다.

 

이 브라우저는 Verizon 사업자향 Droid에 탑재가 되지만, 안드로이드 마켓에서도 공짜로 다운로드받을 수 있다고 한다.

특징을 보면 대부분 안드로이드 디폴트 브라우저 대비 사용자 편의향상과 기능확장에 촛점이 맞춰져있다.

웹킷엔진을 쓰니 코어적인 수정은 없는 게 당연할 수도...

아이폰에만 있는 멀티터치도 소프트웨어적으로 적용되었다고 하는데 아래 동영상을 봐도 제스쳐 기능 이외에는 보이지 않는다.

 

구글이 만들었는지 모토로라가 만들었는지는 잘 모르겠지만...

하필 이름이 돌핀이라니...

하지만, Feature들이 대부분 다른 회사들도 충분히 만들 수 있는 것들로 보인다.

이미 삼성 돌핀브라우저에도 이러한 SNS, RSS, Sync, FastView, Gesture, GoogleServices 등 중 몇가지는 들어가 있다.

 

 

 

Posted by aquicker
web2008. 9. 20. 09:14
소위 마이크로 블로그(Micro Blog) 혹은 소셜 메시징(Social Messaging)이라고 하는 류의 서비스들이 이제 제법 주류로 자리잡고 있다.

해외에서는 Twitter, FriendFeed가 인기가 많고 국내에서도 Me2day 등이 많이 이용되고 있다.


Posted by aquicker
web2008. 9. 11. 14:06
오늘 "History of the browser user-agent string"라는 재미있는 기사를 봤다.
평소에도 왜 IE(Internet Explorer)의 UA(User Agent)에도 "Mozilla"가 있을까 하는 의문이 있었는데 기사에서 히스토리를 잘 설명해주고 있다.

기사의 내용과 나의 경험을 토대로 정리해본다.




Posted by aquicker
web2007. 7. 1. 22:31
살며시 오페라 미니를 잊고 지냈었는데 최근에 버전 4 (Beta)가 릴리즈된 것을 알았다.
이전 버전3에 비해서 향상된 기능은 다음과 같다.



Posted by aquicker
web2007. 6. 30. 03:54
iPhone은 일반적인 스마트폰 OS(WinCE, Symbian)가 아니기 때문에, 추가적인 어플리케이션을 설치할 수 없다고 들었다. 그래서, 그것이 가장 큰 단점이라고 생각했는데...

그런데 그게 아닌가??


벌써 2개의 IDE가 개발되어서 (물론 Beta) 공개되어 있다.
MorfikAptana가 그것이다.


그중에 Aptana를 보면 아래와 같이 전형적인 IDE 환경을 보여주고 있다.



특히, 웹 표준이 되고 있는 Ajax를 임포트해서 개발에 사용할 수 있다고 하니 개발 언어도 웹 2.0에 맞게 존재할 것으로 보인다.
iPhone-specific API도 곧 선보일 예정이라고 한다.
Aptana에서 IDE를 다운로드 할 수 있고, 또한 플래시로 제공되는 IDE 개발 화면을 볼 수 있다. 플래시를 보면 마치 오페라 등에서 사용하는 브라우저 기반 위젯을 개발하는 것처럼 느껴진다. 즉, HTML/CSS로 UI를 만들고 Javascript로 컨트롤을 한다.
iPhone... 이미 모바일 폰 소프트웨어의 모든 면을 진일보시키고 있다.


아 그리고, Aptana라는 회사를 처음 알았는데, 아일랜드에 위치한 벤처기업이라고 한다.
이 회사는 동적 웹 어플리케이션을 쉽게 만들 수 있도록 IDE를 오픈 소스로 제공한다.
자세한 내용은 여기에...
Posted by aquicker
web2007. 6. 5. 18:48

며칠 전 구글 리더 화면에 "Offline"이라는 링크가 생겨서 클릭해봤더니 아래와 같은 install 화면이 나타났다.

그것은 바로 "Google Gears"였다.



Google Gears를 설치하면 실제 어디에도 EXE를 찾을 수 없고 단지 제어판의 프로그램 추가/삭제에서만 인스톨되어 있는지를 확인할 수 있었다.


"이것을 설치하고 난 후 구글 리더는 오프라인 어플리케이션이 되어 있었다. 수천개의 RSS 데이터들을 이제 오프라인에서 즐길 수 있게 된 것이다. 그것도 온라인과 완전히 똑같은 웹 UI 형태로 말이다. ^^;"



"Google Gears"

요즘의 어플리케이션들은 Web 기반으로 이동되고 있는 게 현실이다.

뿐만 아니라 기존 Stand-alone 어플리케이션들도 HTTP통신을 하면서 Web과 연동되고 있다.

하지만, 이번에 등장한 구글 기어 (Google Gears)는 전혀 다른 아이디어로 웹 어플리케이션을 진화를 보여주고 있다.


구글 기어는 인터넷이 연결되지 않은 오프라인에서도 브라우저 상에 동작되는 웹 어플리케이션을 사용할 수 있다.

얼핏 생각해보면 브라우저 상에 동작되는 웹 어플리케이션을 사용할 때, 인터넷에 연결되어 있지 않다면 그것으로 이용할 수 있는 것이 전혀 없다.


 하지만, 구글은 SQLite라는 작은 DB를 가지고 온라인 데이터 정보들을 하드디스크에 저장하고 Ajax를 이용해서 온라인과 Sync를 맺을 수 있도록 했다.

이렇게 Ajax와 같은 웹을 위한 기술을 사용함으로써 오프라인 어플리케이션의 UI를 완전히 웹 어플리케이션처럼 동작하게 만든다.


물론, ActiveX와 같은 기술로도 브라우저 상에 오프라인 어플리케이션을 구현할 수 있지만 단점들은 이제 누구나 아는 사실이고...


 구글은 이 기술은 자사의 Gmail, Calander, Doc and SpreadSheet에서 적용할 계획이다.


"구글은 이제 Google Gears라는 기술로 MS가 그나마 영역을 굳건히 하고 있는 오프라인 어플리케이션까지 손을 뻗치고 있는 셈이다."
 

Posted by aquicker
web2007. 5. 22. 23:46

바쁜 업무와 아이 돌보기(?)로 게으름을 피다가 그 사이에 웹은 더 급속하게 변하고 있다.

  • Adobe는 이미 Flash를 단순한 벡터 그래픽에 국한하지 않고, Flex라는 RIA 플랫폼으로 발전시킨 회사이다. 현재 많은 회사들의 더 화려한 기술로 인해 도전을 받고 있다.
  • MS의 WPF/e는 드디어 Silverlight로 공식 런칭되면서 그래픽 하드웨어를 사용하는 화려한 HD급 동영상과 닷넷 프로그래밍 언어와 XAML을 사용해서 기존 개발자가 쉽게 사용할 수 있도록 하고 있다.
  • Java는 뒤늦게 JavaFX라는 이름으로 RIA에 합류했다. 특히, JavaFX Mobile이 눈에 띄는데 이것은 Java ME를 포함하면서 Java 어플리케이션까지 좀더 넓은 범위의 개념으로 보인다.
  • 이렇게 3개의 진영으로 RIA를 분류할 수 있지만 웹 서비스 회사들의 경쟁도 재미있다.
    Google은 Ajax만 가지고 (물론, Flash 사용이 조금씩 늘어가고 있다) RIA를 만들어내고 있다. Yahoo도 역시 마찬가지이다.
    이들 회사는 웹 브라우저를 벗어나서 Widget을 위한 경량 플랫폼에도 경쟁을 하고 있다.

초기의 RIA는 순수 웹 표준이라고 하는 HTML, XML, CSS, Ajax 등의 기술을 사용해서 웹의 무한한 가능성을 보여줬지만 (구글이 대표적인 예), 점차 더 화려하고 강력한 UI(요즘은 UX?)를 보여주기 위해서 웹 표준을 확장한 개념들이 사용되고 있다.

결국, RIA로 인해서 다시 순수했던 웹이 메이저 급 회사들의 이상을 위해서 점점 다시 복잡해지는 것 같다.

하지만, 웹 표준이 중요하다는 것을 이미 모든 회사들이 인식하고 있기 때문에 닷컴 붕괴이전보다는 훨씬 세련되게 경쟁하고 있는 것은 분명하다.

Posted by aquicker
web2007. 4. 3. 23:15
휴대폰을 위한 모바일 브라우저 관련 개발을 하는 나로서는 요즘의 웹의 급변함에 하루하루 놀라고 있다.

예전에는 휴대폰 브라우저 하면 가장 먼저 떠오르는 단어가 바로 "WAP"이었다. WAP은 Wireless Application Protocol의 약자로 모바일의 적은 대역폭과 제한된 단말기 성능에서 단순한 무선 인터넷을 경험할 수 있는 아이디어였다. 즉, WMLWBMP 정도로 정보를 표현했으니 흑백 TV시절과 비유될 수 있다. 요즈음 모바일 웹에 이렇게 대두되는 것이 갑작스러운 것은 아니다. WAP 2.0에서는 이미 HTTPxHTML-MP등을 수용하여 WAP과 Web의 경계가 모호해지기 시작했다. 하지만, 여전히 사용자는 아래와 같은 이유로 초고속 인터넷에서 웹 경험을 모바일에서 할 수 없다.
  • 적은 메모리 모바일 단말기의 원가에서 가장 많이 차지하는 것 중의 하나가 메모리이다. 브라우저라는 어플리케이션은 다른 모바일 어플리케이션보다 훨씬 많은 메모리를 요구한다. 예를 들어 cnn.com 등을 제대로 보려면 많게는 10M까지 소요될 수 있다.
  • 화면 크기 보통 모바일 단말기에는 카메라가 내장되어 있고 카메라 해상도 비율에 맞는 화면 크기를 가지고 있다 (예를 들어 240*320). 일반 PC의 해상도가 최소 1024*768이라고 볼 때 터무니 없는 크기이다.
  • 적은 대역폭 SHOW니 3G+니 하면서 엄청난 마케팅을 하고 있지만 아직도 3G는 일반 사용자들에게는 낯설다.
  • 비싼 이용 요금 정액제가 아직 정착되지 못했기 때문에 일반 모바일 사용자들은 모바일 인터넷이 돈먹는 하마일 수 밖에 없다.
  • 부족한 컨텐츠 예전에 동생이 정액으로 KTF 무선 인터넷을 한 적이 있다. 직업상 싸이를 할 시간이 없어서 폰으로 해야 된다나... 그래서 여지껏 못해본 무선 인터넷을 마음껏 해본 적이 있다. 하지만, 내가 원하는 일반 사이트들의 접근이 용이하지 않았다. 아직 개방이 두려운가 보다. - GSM을 사용하는 곳(유럽, 미국, 동남아 등)에서는 완전히 개방이 되어 있기 때문에 어떤 사이트든 접속이 가능하다.
  • 부족한 UI, GUI의 혁명은 바로 마우스이다. 특히 브라우저는 하이퍼링크의 연속이기 때문에 더욱 마우스가 절실하다.
이러한 문제점들은 여러 계층의 회사나 단체를 통해서 다양한 해결책이 나오고 있다.
  • 브라우저 회사의 시도 (오페라, 액세스) 적은 메모리: 필요 없는 아이콘 이미지나 백그라운드 이미지 등을 생략함. 화면 크기: 프레임들을 상하로 보여줌.
  • 중간 서버 오페라 미니 브라우저의 경우 웹 서버와 브라우저 사이에 오페라 미니 서버를 두어 컨텐츠를 SSR(Small Screen Rendering)기술을 적용해서 OBML(Opera Mini Binary Markup Language)이라는 독자적인 형식으로 미니 브라우저로 내려줌. 액세스 브라우저의 경우도 유사하게 ByteMobile의 기술을 통해서 중간의 서버가 웹 서버에서 오는 컨텐츠들을 Multipart 기법 등을 통해서 ML(Markup Language)와 Inline 이미지들을 하나의 HTTP를 통해서 들어올 수 있도록 하고 있다.
  • 컨텐츠 제공자 브라우저의 User Agent를 파악해서 모바일 단말기에서 HTTP 요청이 들어오면 모바일 단말기에 최적화된 페이지를 내려준다 (보통 CSS 기술을 통해). Yahoo나 Google의 경우 이미 모바일을 위한 페이지를 위해 User Agent를 보고 있다.
  • 모바일 디바이스 모바일 단말기에서는 마우스가 도입되고 있다. 삼성에서는 이미 핑거 마우스 폰이라는 것을 국내에 출시한 바 있다. 브라우저라는 어플리케이션은 페이지 내의 링크를 클릭하는 사용자 경험이 가장 중요하기 때문에 기존 4방향 키 네비게이션을 가지고는 사용하기 매우 어렵다. 여러분 PC를 가지고 인터넷 서핑을 하는데 마우스가 없다고 상상해보라.
  • W3C Mobile Web Initiative라는 것을 만들어서 모바일 디바이스에서도 웹을 동일하게 경험할 수 있도록 각종 표준안을 만들기 시작했다.
이처럼 서로 다른 계층의 회사나 단체들이 모바일 웹을 위한 다양한 아이디어와 기술로 실현하려고 하고 있으며, 표준 단체들도 역시 기득권을 놓치지 않으려 안간힘을 쓰고 있다. 모바일 웹은 이제 시작 단계이기 때문에 다양한 아이디어가 나올 수 있을 것이다.
Posted by aquicker