구글에서 몇가지 소식이 있습니다. 첫째는 Gears 0.3이 릴리스 되었다는 것입니다. Firefox3 를 지원합니다! Firefox 3 정식버전(6월 17일 예정)에 맞춰서 출시하려고 했다는군요. Gears와 같은 플러그인은 브라우저 내부에 깊이 다가갈 수 있으므로 베타판의 API 변경덕분에 날짜를 지키는 것이 큰 도전이었다고 합니다. 결국은 훌륭하게 수행해냈습니다.

Gears 0.3은 Firefox 3 지원 이외에도, 다음을 포함하고 있습니다:
그리고, Google I/O 세션들의 모든 동영상의 공개되었습니다.

Ajax와 Gears와 관련된 컨텐트들을 정리해두었습니다:

Gears

GWT

General Ajax



from Gears 0.3 Released, and Google I/O videos on Ajax related content available
Posted by 행복한고니 트랙백 0 : 댓글 0

Gears, 첫 돌을 맞다

2008.06.06 13:55 from [IT] Web Tech
Chris Prince 씨가 Gears가 첫 돌을 맞았다는 글을 작성하셨습니다. 지난해 Google Developer Day에서 런칭되었었는데, 1년뒤 Google I/O에 있게 되었습니다.

어제 Gears와 관련된 몇 개의 재밌는 소식이 있었습니다. 첫째는, MySpace가 Gears를 이용해 사용자들이 MySpace 메시지를 검색할 수 있도록 했다는 것입니다.

이것은 "오프라인"만을 뜻하는 것이 아닌 Gears의 또 다른 사용법입니다. 사실, Chris Prince씨는 어제 사람들이 찾아볼 Gears의 프로토타입과 예제들을 보여주었습니다. 거기에는 아래와 같은 흥미있는 것들이 있었습니다:
  • 멀티파일 업로드: File System API를 사용해서, Chirs씨가 멀티파일 업로드를 시연했습니다. 여러개의 파일을 선택하면, 끝입니다!
  • 파일업로드 이어하기: 그는 그 뒤 YouTube 예제를 보여주었습니다. 이 예제는 다중 파일 업로드와 업로드 상태 보기를 포함하고 있으며, 또한 Blog API와 HttpRequest를 기반으로 작성된 ResumableRequest를 이용해 접속이 끊긴 후 파일 업로드를 재개해 0% 부터 시작하지 않는 예제를 보여주었습니다.
  • 주변지역을 찾아보세요! 다음 데모에서 Chris 씨가 맥주 마실 곳을 찾았고, 결과로 Moscone Center 주변의 장소가 나왔습니다. 이 예제는 여러분의 위치를 알기 위해 GPS, Wifi IDs, Cell IDs, IP 주소를 사용하는 Geolocation API를 사용했습니다.
  • 알림기능: Windows 토스터나 Mac의 Growl을 좋아하세요? Chris씨가 알림기능의 예를 보여주셨습니다
사용자 삽입 이미지

from Gears turns one; Old enough to power MySpace message search on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0
사용자 삽입 이미지
워드프레스 팀에서 어마어마한 작업을 하고 있다고 합니다. 이미 꽤 진행이 된 것 같은데, Google Gears를 이용해서 워드프레스가 오프라인에서도 동작하도록 하고 있답니다.

James 씨의 글에 따르면 이와 같은 Gears 지원이 몇몇 기쁜 선물을 가져다 줄 것이라고 합니다. 예를 들면, 남아프리카처럼 속도가 좋지 않은 곳에서는 상당한 속도 향상 효과를 볼 수 있다는 것이 그의 주장입니다(우리나라 상황과는 별 상관없겠네요.. 남아프리카라니...).

Dion씨는 이 같은 움직임에 대해서 Gears팀을 자랑스러워하는 한편, Gears가 오프라인만이 아닌 그 이상이라고 말했습니다. Gears는 웹 개발 모델의 간극을 채우기 위해 노력 중이고, HTML5 기능을 브라우저에서 사용할 수 있도록 하고 있다고 합니다. 그 외에도 재밌는 요소는 많죠. 내장 데이터베이스, 로컬 서버 스토리지, 데스크톱 API 등등.

뭐... 여하튼 재밌는 소식이네요. 국내에선 어디서 가장 먼저 Gears를 도입하게 될지 기대됩니다.

from Speed Up! with Wordpress and Gears on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0
Dion씨와 Ben씨가 Google I/O 행사 중 State of Ajax 세션에서 사용한 예제 중 하나라고 합니다. 폼의 이력(history)를 해결해주는 것이라고 합니다.

Aza Raskin씨가 제안한 대로 Web에서 Undo를 구현할 수는 없을까라고 생각하다가 폼 데이터의 사용 패턴에 대해 생각했다고 합니다.

실제 동작하는 것을 보시고, 전체 코드도 살펴보세요. 아래 동영상을 보시면 실제 작동하는 부분을 더 잘 이해하실 것 같습니다.

Addressbook: Form History Pattern from Dion Almaer on Vimeo.

from Addressbook: An example of the Form History Pattern on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0

그림1 MSN 알림창

그림1 MSN 알림창

웹에 Notification API가 있으면 좋을 것 같습니다. Notification API가 뭔지 잘 이해가 안간다면 간단하게는 그림 1과 같은 형태의 MSN 알림창을 떠올려 볼 수 있을 것 같습니다. 지정한 API를 호출하면 그림과 같은 알림창이 나타나는거죠. 맥 사용자라면, JavaScript에서 Growl을 볼 수 있으면 더 좋을텐데, 이미 protoGrowl이라는 라이브러리가 있습니다.

차이점이라면 데스크탑에서 알림창을 보여주는 JavaScript API와 브라우저 창 내부에서 사용자가 정의한 조그만 알림창을 시도했던 것입니다. 이 글에서 다룰 것은 전자입니다.

Brian Dunnington 씨가 Windows용 Growl을 개발했고, 최신 버전에서는 JavaScript를 통해 시스템과 통신할 수도 있습니다.

growl.js 라이브러리를 한번 살펴보세요.

관심을 끄는 것은 구현한 부분과 이 작업을 진행한 과정입니다. Dion씨가 그의 생각을 물어봤고, 그래서 그가 다음과 같은 글을 썼습니다:

Windows용 Growl(v1.2 alpha)의 최신 버전의 가장 큰 새로운 기능 중 하나는 브라우저에서 실행하는 웹사이트로부터 알림 메시지를 받을 수 있다는 것입니다. 이 기능을 다루기 위한 최선의 방법을 작업하는데 꽤 많은 시간을 썼습니다. 그리고, 제 사고의 흐름을 공유해야겠다고 생각했습니다.

Growl은 이미 네트웍을 통해 알림메시지를 받을 수 있기 때문에, 네트웍상에서 웹기반 알림 기능을 작성하는 것이 가장 쉬울 것이라고 생각했습니다. Growl은 UDP 상의 단순한 프로토콜을 사용해 네트웍 알림 메시지를 받습니다. 첫번째 장애물이 나타났습니다: 브라우저와 JavaScript는 UDP를 사용할 수 없습니다. 그래서 저는 부가 기능을 만들어야겠다고 생각했습니다. 크로스-브라우저가 되는 해결책을 원했기 때문에, Firefox 확장기능과 ActiveX 플러그인은 제외했습니다. 또한 많은 사람들에게 적용할 수 있는 해결책을 원해서 커스텀 부가기능(Gears같은 것이죠)을 작성하고 싶지는 않았습니다. Flash나 Silverlight이 네트웍을 지원한다는 것은 알고 있었지만, 둘 다 UDP 지원이 되지 않아 제외시켰습니다.

널리 설치되어있고, 크로스 브라우저 확장기능이 되는 유일하게 남은 것이 Java 였습니다. Java는 분명 UDP를 포함한 굳건한 네트워킹을 지원하므로, 저는 그것을 사용하기로 했습니다. 이제 가장 큰 문제는 제가 한번도 Java 애플릿을 만들어 본적도 없고 심지어 Java 코드 한 줄 작성해본 적조차 없다는 것이었습니다. 하지만 문법은 충분히 익숙했고 UDP 패킷을 보낼 작은 애플릿에 넣을만한 좋은 예제 코드도 몇 개 찾아냈습니다. 실제로 꽤 잘 동작했고, 문제를 쉽게 해결한 것 같아서 기분이 몹시 좋았었습니다.

하지만, 물론 그렇게 쉬울 리가 없죠. '동일근원정책(Same-Origin Policy)' 이라는 제약에 부딪히고 말았습니다. 제 로컬호스트에서 잘 작동하던 애플릿이 다른 곳으로 가져가면 바로 보안 예외오류(exception)를 내버리는 것이었습니다. file://url과 data:uri로 인코딩된 애플릿 코드까지 포함해서 CODE와 CODEBASE 속성을 이리저리 조합하는 갖은 노력을 다 했지만, 매번 부딪혔습니다.

애플릿 아이디어를 포기하기 직전에, 만약 로컬 호스트에서 애플릿을 제공할 수 있다면 나중에 로컬호스트와 통신할 수 있을 거라는 사실을 깨달았습니다. 하지만 애플릿을 제공 전용의 간단한 웹서버를 설정하고 설치하는 일은 상상 이상이었습니다. 아아, 그렇게 Java 아이디어는 끝났습니다.

그래서 다시 칠판앞에 돌아왔습니다. 브라우저가 그 간격을 메울 권한을 가지게 할 수 있는게 없을까? 저는 iTunes Music Store(itms://)와 같은 커스텀 프로토콜 핸들러를 시도해보기로 했습니다. 몇 개의 간단한 레지스트리 항목으로 growl:// 프로토콜을 작동하게 할 수 있었습니다. 백그라운드에 상주하는 보조 프로세스가 있어, growl:// URL 링크가 클릭될 때마다 브라우저는 그것을 제 핸들러로 보내주었습니다. 저는 url 정보에 JSON 형태의 문자열로 가능한 어떤 정보든 보낼 수 있게 하기로 했습니다. 다시 한번, 그것은 훌륭히 작동해주어서 좋은 해결책인 것 같았습니다. 하지만 그것은 약점을 가질 수 밖에 없었습니다. 이번 경우의 약점은 사용자의 PC에 프로토콜 핸들러가 설치되었는지 브라우저가 알 방법이 없다는 것이었습니다 - 프로토콜 핸들러가 설치되어있다면 브라우저가 훌륭하게 전달할 것이고, 다 좋습니다. 하지만 프로토콜이 설치되어있지 않으면, Firefox는 '프로토콜 xx는 어떤 프로그램과도 연결되어있지 않으므로, 주소를 열 수 없습니다'와 같은 대화창을 나타낼 것입니다(IE와 Safari는 404 페이지를 보여줍니다). 제가 원한 것은 Growl이 설치된 사용자라면 웹사이트가 통신 기능을 사용할 수 있도록 하는 것이었지 설치가 되어있지 않다고 사용자 경험을 엉망으로 만들어버리는 것은 아니었습니다. 따라서, 이 약점은 치명적이었습니다.

이 부분에서 그 아이디어를 그만두려고 했는데, Java 애플릿을 로컬처럼 제공하는 아이디어가 기억났습니다. 그 해결책을 세세하게 심사숙고하는 동안, '만약에 애플릿을 제공할 로컬 서버를 가지게 된다면, 로컬 서버와 애플릿간의 통신을 생략하면 어떨까?'라고 생각했습니다. 그래서 http://localhost:9889와 같이 접근할 수 있는 Growl이 실행될 때 작동하는 매우 단순한 서버를 구현했습니다. JSON을 전달하는데 url을 사용하자는 아이디어를 다시 떠올렸고, 곧 JSON 형태의 JavaScript 객체를 데이터를 파싱하고 이를 실제 응용프로그램 코드에서 다루는 로컬 서버에 전달할 수 있었습니다. 로컬 서버와 통신하는데 ajax를 쓸 수는 없었습니다(동일근원 정책이 또 걸리더군요), 그래서 감춰진 iframe 기술을 이용하기로 했습니다. 모든 것을 추상화한 작은 js 라이브러리를 작성했기때문에, 응용프로그램 코드에 Growl 라이브러리를 포함했다면 아래와 거의 유사한 JavaScruot 코드를 작성할 수 있게 되었습니다:

[code:js]
Growl.NotificationType someKindOfNotification = new Growl.NotificationType("some kind of notification", true);
Growl.register("Website Name", [someKindOfNotification]);
Growl.notify(someKindOfNotification, 'Notification from the web', 'this is the description', Growl.Priority.VeryLow, false);
물론, 웹 사이트로부터 알림을 받는다는 것은 스팸과 다른 소음의 가능성을 열어두는 것입니다. 그래서 웹 사이트로부터 등록된 응용프로그램들은 알림을 할 수 없도록 기본값을 정했습니다(따라서, 알림을 받겠다는 사용자의 명시적인 허가를 얻어야 합니다). 하지만, 그 부분은 나중에 다룰 다른 주제인 것 같습니다.
from Growl for Windows and Web Notification API on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0

구글의 Location API

2008.05.15 00:50 from [IT] Web Tech
Gears 커뮤니티에서 Geo Location API에 대해 논의중입니다. Aaron Boodman씨에 따르면 이 API는 "W3C WebAPI 그룹에 최근에 제안되었다"고 합니다.

Aza Raskin씨는 오늘 API에 대한 자신의 생각을 다룬 Firefox에서의 지리좌표와 그 너머라는 글을 썼습니다.
제안된 API를 살펴보는 것도 꽤 재밌을 것 같습니다:

Gears 예제
[code:js]
var geo = google.gears.factory.create('beta.geolocation');

// Get the position.
geo.getCurrentPosition(function(position) {
 updateMap(position.latitude, position.longitude);
});

// Watch the position over time.
var watchId = geo.watchPosition(function(position) {
 updateMap(position.latitude, position.longitude, position.accuracy);
});

geo.clearWatch(watchId);

// Only get the position if the last known position is more than a minute old.
var now = new Date().getTime();
var threshold = now - 60000;

if (geo.lastPosition &&
 geo.lastPosition.timestamp.getTime()> threshold) {
 updateMap2(geo.lastPosition);
} else {
 loc.getCurrentPosition(function(position) {
 updateMap2(position);
 });
}
Aza 예제
[code:js]
var geolocator = new navigator.GeolocationRequest();
geolocator.request(function(location) {
  alert( location.latitude + ', '+ location.longitude + ", " + location.accuracy );
});

var geolocator = new navigator.GeolocationRequest();
geolocator.request({
  success: function(location) { /* We've got the location! */ },
  error: function(err){ /* There was an error getting location. */ },
  accuracy: "neighborhood"
});
개인정보보호나 정확성에 관한 토의도 많습니다. Apple도 자신들만의 위치 관리자를 가지고 있다고 하는군요.

이들 중 어느 하나로 통합이 되어, 브라우저에서 지리좌표 API를 사용할 수 있었으면 좋겠습니다. 한 개의 단순한 추상 객체가 수많은 훌륭한 응용프로그램으로 되는 법이죠.

from Location APIs: The Discussion on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0

Adobe의 Ryan Stewart 씨와 구글의 Dion Almaer씨가 Adobe AIR와 Gears 그리고 오프라인/데스크톱 응용프로그램 작성법에 대해 토의했다고 합니다. 당연한 말이겠지만 Ryan씨가 AIR에 대해, Dion씨가 Gears에 대해 설명하는 형태였고요.

이런저런 얘기를 했는데, 슬라이드를 공유해달라는 요청이 있어 공개한다고 합니다. 하지만 슬라이드만 봐서는 잘 모를거라고 하는군요 -_-a



from Taking Web Applications Offline, to the Desktop, and beyond on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0

Yahoo! BrowserPlus에 대한 글 이후, 많은 문의가 있었나봅니다. 그래서, strings 명령을 이용해 몇가지 사실을 밝혀낸 모양입니다:

  • 컴포넌트는 Corelets라고 불리는 것 같습니다.
  • Corelets를 제공하는 배포 서버가 있습니다. 기본값은 browserplus.yahoo.com 이지만 아무 것이나 가능합니다.
  • "동적 Corelets" 라는 개념이 있습니다. 이는 시스템에 새로운 Corelets 를 가져오거나 시스템을 프로그램하는데 동적 언어를 사용할 수 있는 것 같습니다.
  • OpenSSL이 포함되어 있고, 올바른 코드가 실행중인지 검증할 것으로 보입니다. SSL primitive를 이용할 수 있는지는 모르겠습니다.
  • 네이티브 JSON 구현체가 포함되어있습니다. 아마도 config 파일을 해석하는 용도인 것 같은데 개발자들에게는 노출되어있지 않습니다.
  • "업로드 Corelte"이라는 개념이 있습니다. 시스템에 새 Corelet을 업로드 하거나 (제발)파일 업로드를 개선하는 방법일 것 같습니다.

또한, 설치 디렉토리를 보신다면 시스템이 Netscape Portable Runtime을 사용한다고 알려주는 NSPR을 보실 수 있습니다. Netscape Portable Runtime(= NSPR)은 지원하는 모든 운영체제를 Mozilla와 같아 보이게 하는 플랫폼 추상 라이브러리입니다.

Netscape Portable Runtime(이하 NSPR)은 지원하는 모든 운영체제를 Mozilla와 같아 보이게 하는 플랫폼 추상 라이브러리입니다. NSPR은 GUI가 아닌 운영체제 기능에 플랫폼 독립성을 제공합니다. 이러한 기능에는 스레드, 스레드 동기화, 일반 파일과 네트웍 I/O, interval timing과 달력 시간, 기본적인 메모리 관리(malloc과 free), 공유 라이브러리 링크 등이 있습니다.
from Yahoo! BrowserPlus: Why wait for the news when you have strings? on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0
Yahoo! 에서 "Gears 비슷한" 프로젝트를 진행했다가 취소했다는 소문이 돌았었나봅니다. 소문은 사실이라, 취소되기는 했는데 다른 방식으로 돌아왔습니다. Brickhouse의 Skylar Woodward씨가 그의 블로그에서 이것에 대해 조금 말했었군요.

Skylar 씨에 따르면, BrowserPlus 라는 이름의 이 결과물은 개발자들에게 브라우저 프로그래밍 환경(DHTML, JS)에서 다양한 컴포넌트(VoIP, 이미지 관련, 데이터 캐싱, 기타 등등)를 사용할 수 있게 하는 프레임웍이자 소프트웨어가 될 것이라고 했습니다. 1.0 버전에서는 일단 Yahoo! 사이트에서만 쓸 생각이지만, 조만간 다른 사이트에서도 이용할 수 있도록 할 생각이라고 합니다. PhotoDropper 모듈이 탑재되고, PC에서 바로 설치가 가능하다고 합니다.

글쓴이가 오랫동안 바래왔다는 <input type="file" multiple="true"> 와 같은 식의 멀티 파일 업로더도 가능한 모양입니다. 하지만, 아마도 웹 개발자면 누구나 원하지 않았을까 싶습니다.

from Yahoo! BrowserPlus: The rumour is true on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0
from Joose expands with new ORM on Ajaxian

Malte 씨가 JavaScript의 메타 객체 시스템인 Joose의 작업을 계속해 상당한 양의 문서를 추가했다고 합니다

Joose는 예제 섹션에 Gears 데이터베이스의 간단한 객체 관계 매퍼를 포함합니다. Gears가 설치되어있다면 실행해보세요.

테스트 수트가 실행되고나면 데이터베이스 테이블을 나타내는 클래스들의 목차가 있는 클래스 브라우저가 보입니다. 예제는 두 개의 엔티티를 포함하고 있습니다(MyEntities 모듈에 있는 Car와 Person).

다음과 같이 컨셉 증명 OR 매퍼로 엔티티를 정의하세요:
Module("MyEntities", function (m) {
   Class("Car", {
       isa:  ORM.Entity,

       has: {
           owner: {
               metaclass: ORM.HasOne,
               isa:       function () { return m.Person }
           }
       },

       classMethods: {
           tableName: function () {
               return "car"
           }
       }
   })

   Class("Person", {
       isa:  ORM.Entity,

       classMethods: {
           tableName: function () {
               return "person"
           }
       },

       has: {
           mother: {
               metaclass: ORM.HasOne,

           isa:       function () { return m.Person }
           },

           cars: {
               metaclass:  ORM.HasMany,

               isa:        function () { return m.Car },

               foreignKey: "owner"
           }

       }

   });
});

사용예는 이렇습니다:
// Create the mother
var mother = new MyEntities.Person();

mother.name("elke");
mother.city("Elmshorn");
mother.save();

// Create the son
var person = new MyEntities.Person();

person.name("malte");
person.city("Hamburg");
person.mother(mother); // set the mother
person.save();

// Give the son 10 cars :)
for(var i = 0; i <10; i++) {
    var car = new MyEntities.Car();

    car.model("3."+i);
    car.brand("bmw");
    car.owner(person);
    car.save();
}

// refetch the person from the db
var personFromDb = Entities.Person.newFromId(person.rowid());

alert(personFromDb.mother().name()) // will alert 'elke'
alert(personFromDb.cars()[0].brand()) // will alert 'bmw'


Posted by 행복한고니 트랙백 0 : 댓글 0
from Gears and Web Standars on Ajaxian

Gears 팀의 공동대표인 Aaron Boodman 씨가 다양한 웹 표준과 Gears와의 관계에 대한 글을 썼습니다:

Gears는 오프라인 웹 응용프로그램 이상입니다. 예로, 우리는 최근에 바탕화면 바로가기 기능을 추가했고, 이어 보내기Geolocation API, 그리고 앞으로의 수많은 재밌는 것들을 작업중입니다.

최근에 이것이 W3C에서 제안한 HTML5 등과 같은 웹표준과 어떻게 관련되는지에 대한 몇몇 질문을 받았습니다. 몇몇 분들은 Gears가 웹과 경쟁할까봐 걱정되나 봅니다.

그런 두려움은 떨처버리세요: Gears 팀은 웹 표준을 사랑합니다. 우리 중 일부는 브라우저 전쟁의 집중 포격지에 있던 웹 개발자입니다. 우리는 지난 10년간 엡의 생산성과 창조성에서 중요한 역할을 한 표준에 대해 깊이 이해하고 있습니다.

우리는 병행할 플랫폼을 만들어 웹과 경쟁하고픈 마음이 없습니다. 만약 그런다면 그건 제정신이 아닌 거겠죠. 웹은 자연의 멈추지 않는 힘입니다. 그것과 경쟁한다는 것은 바람과 말싸움하자는 것과 같습니다: 절대로 이길 수 없고 정말 바보같아 보일겁니다.

대신, Gears는 최신 웹 표준들이 가능한 빨리 가능한 많은 디바이스에 적용되는 것을 목표로 하고 있습니다.

Some History

Gears 프로젝트는 Google의 개발자들이 웹 브라우저의 느린 행보에 좌절한 덕분에 시작되었습니다. 경쟁과 표준은 멋진 결과물을 만들어내지만, 모든 브라우저에서 구현되기까지는 시간이 너무 많이 걸립니다. 어떤 경우에는, 표준이 확정된지 몇년이 지난 아직까지도 호환되는 구현 결과물이 없기도 합니다. 우리의 첫번째  프로젝트는 오프라인 웹 응용프로그램이 가능하게되는 API를 구현하는 것이었습니다.

현재, Gears Database와 LocalServer 모듈은 HTML5 제안과 기능면에서 완전히 호환하지는 않습니다. 그것은 Gears가 릴리스 된 후에 작성된 스펙이 있기 때문이지 차이를 두고자 의도했기 때문이 아닙니다. 사실, 우리는 HTML5 스펙의 설계에 참여하고 있으며, 현재 데이터베이스 접근에 대한 제안 사항을 구현하고 있습니다.

Going Forward

여러 면에서, Gears는 UI가 없는 웹브라우저 같습니다. 그리고 다른 브라우저처럼, Gears는 현존하는 표준을 구현하고 그들이 필요로하는 변경사항과 추가분을 모읍니다. 예로, 우리는 최근에 W3C WebAPI 그룹에 우리의 geolocation API 작업을 제안했습니다.

하지만, Gears와 다른 브라우저 간에는 세가지 중요한 차이가 있습니다:

  1. Gears의 개선 사항은 즉시 개발자들이 사용할 수 있습니다. Gears는 Firefox (Windows, OS X, Linux), IE와 IE Mobile에서 사용 가능합니다.
    더 많은 브라우저와 플랫폼에 대한 지원은 진행중입니다. 개발자들은 더이상 새 표준을 적용하기 위해 사용할 수 있을 때까지 기다릴 필요가 없습니다. 기다려야 할 것은 표준이 Gears에서 사용가능하게 되는 것뿐입니다.
  2. 대부분의 브라우저 벤더들은 두 개의 소비자 그룹이 있습니다: 사용자와 개발자. 사용자와 직면하는 기능들은 다양한 이유로 보통 개발자와 부딪히는 API 보다 더 많은 주의를 필요로 합니다. 하지만 Gears에서는, 개발자들은 소비자일 뿐입니다. 우리는 웹 개발을 위한 최적의 플랫폼을 만드는 데 완전히 집중할 수 있습니다.
  3. Gears는 다른 브라우저에서 살아가는 웹 표준의 구현체입니다.예를 들자면, 개발자들은 HTML5 Database API google.gears 객체와 전통적인 window 객체 둘 다를 통해서 사용할 수 있습니다. 괜찮아요, 어떤 점에선 좋습니다. 개발자들은 Gear의 조각들과 브라우저 구현체들을 뒤섞고 맞출 수 있습니다.

The Pitch

최신의 웹 표준을 구현함으로써, Gears는 미래의 웹이 어떻게 보이고 작동하는지에 영향을 끼칩니다. Gears가 오픈소스 프로젝트이기 때문에 누구나 참여할 수 있습니다.

참여하세요. C++ 로 코드를 작성할 필요는 없습니다. 필요한 것은 약간의 자유 시간과 웹의 발전을 향한 욕구뿐입니다.

Posted by 행복한고니 트랙백 0 : 댓글 0
원본글 : Google Docs now runs offline with Gears


구글 기어스를 이용해서 구글 닥스를 오프라인으로도 사용할 수 있게 되었습니다. 구글 기어스가 뭔지 궁금하신 분들은 Ben Lisbakken 씨의 튜토리얼 동영상을 참고하세요.


Posted by 행복한고니 트랙백 0 : 댓글 0

티스토리 툴바