Today’s my opened tabs on Firefox

I was surprised it, if I say so myself…

From left, “mixi Developer Center”, “DeNA Developer’s site” and “GREE Developer Center”.

It became the big market…

Versioned Core Gadget Features

The feature you want to use in your OpenSocial application (“opensocial”, “minimessage”, etc.) is declared by using Require element or Optional element. Then, the way to specify the version you want to use the feature was vague until now. To specify the version definitely, “Versioned Core Gadget Features” specification is added to OpenSocial specification 1.0.

The abstract of this specification is below:

The OpenSocial features (as used in gadget or elements) were defined with the version number as part of the name (“opensocial-0.7″, “opensocial-0.8″, etc.)

This lets them evolve from one version to the next without breaking backwards compatibility, and allows gadgets to clearly declare which version of the API they require.

This convention should be formalized in an explicit version attribute on the and elements, with versions defined for all of the features described by the OpenSocial specification.

As a special case, the core gadget spec format and rendering process should be versioned, with gadgets requesting a specific version of the specification using an attribute on the root element.

For instance, the following two point is added as the format for gadget xml file:

  • Added @specificationVersion attribute to Module root element.
  • Added @version attribute to Require and Optional elements.

For example, the usage is the following code:


  
    
  
  ...

If the specificationVersion or version attribute is omitted, it is regarded as the version 1.0 is specified. Each values can be ordered three numbers by divided using period.

MajorVersion.MinorVersion.PatchVersion

PatchVersion and MinorVersion can be omitted. In the above example, PatchVersion is omitted from the specificationVersion. This thinking about each item is same of the thinking for the general it of the versioning.

Based on this specification, the version number for all features included a name space called “gadgets” are basically 1.0.0.

The unclear point like “The feature called “opensocial” has the version number “opensocial-0.8″. Why is there no version number for osapi?” will be think once more based on this specification.

My ankle was broken?

It was raining last night. And, a entryway of a drinking spot I went yesterday was very slippy. Of course, we enjoyed, but I went to the station hastily, because I had to get a last train for going my home.

What was happen?

I slipped on the entryway, and my ankle was twisted… Then, I had a big pain.

Now, I can’t walk. I have a swelling in a left ankle. This is terrible.

I hope my bone is not broken…

To compile package-info.java

In Java, the package allows you to specify some annotations. To do this, you have to create a package-info.java file to have the package definition only. For example:

/**
 * This package includes ... classes.
 * @author Yoichiro Tanaka
 */
package jp.eisbahn.foo.bar;

The package-info.java file can be compiled. But, in the case above, the file will not be compiled unfortunately. The reason is that a javac decide to not need it at runtime. Therefore, if you want to get the package-info.class file, you must put any annotation with RUNTIME value.

/**
 * This package includes ... classes.
 * @author Yoichiro Tanaka
 */
@RuntimeAnnotation
package jp.eisbahn.foo.bar;

import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Retention;

@Retention(RetentionPolicy.RUNTIME)
@interface RuntimeAnnotation {}

In the same file, you can define an annotation with a RUNTIME attribute of a RetentionPolicy class. As adding the annotation to your package, the package is needed at runtime. As the result, the file will be compiled by javac.

Set Plugin and Feature file freely

Basically, if you put a plugin and feature jar files into your update-site, you must follow a rule defined by a specification of Eclipse update-site. Its rule is the creating a site.xml file, putting the plugin jar file into a sub directory named “plugins” and putting the feature jar file into a sub directory named “features”. When an user accesses to this update-site and install your plugin, Eclipse can find these files by the rule.

However, if you want to create your update-site, you wil not be able to create these subdirectories because of some reasons. Then, you will think that you want to set these files freely.

In this case, you can use a <archive> tag in your site.xml file. By specifying the tag, your update-site allows you to put your plugin jar file to any place. Of course, your feature jar file ca be set to any place, because you can specify the place by writing URL.



  
    
  
  
  ...

When your feature has your plugin named “jp.eisbahn.foo”, Eclipse will attempt to find the plugin from the sub directory “plugins”. Then, a path of your plugin jar file is “plugins/jp.eisbahn.foo_1.0.0.jar” (ex. the version number is 1.0.0). So, you can replace the path by using <archive> tag to any URL. In the case above, the path is replaced to “http://www.eisbahn.jp/any/foo-plugin.jar”.

This technic was used by OSDE’s update-site. Please see the site.xml file:

http://opensocial-development-environment.googlecode.com/svn/update-site-candidate/site.xml

OSDE 0.7.0 Candidate 1 has been released

I have just released v0.7.0 Candidate 1 of OSDE. This release includes the following features:

  • The configuration to change the port number of Jetty (Issue 104).
  • Latency Reduction Tools – Evaluator for web performance (Issue 127).
  • Latency Reduction Tools – JS Compiler (Issue 180).
  • Manage/clean gadgets on iGoogle (Issue 155).
  • Support the HasApp filter and provide Application view to show the information and manage it (Issue 106).
  • Fix some bugs.

You can install this version using the following update-site for candidate versions:
http://opensocial-development-environment.googlecode.com/svn/update-site-candidate/site.xml

From v0.7.0, the feature and plugin name is changed to “com.googlecode.osde”. If you use the version 0.5.0 or lower, you can’t update OSDE automatically. Please install v0.7.0 Candidate 1 after uninstalling the old version.

Please confirm this version and feel free to feedback any problems.
Thank you for your cooperation.

Published the sequel

“Social Web in 2010″ has been published.

Social Web in 2010 (Sequel) (sorry, Japanese only)
http://gihyo.jp/dev/column/newyear/2010/socialweb-prospect-02

I have mentioned about Ad and some standard specifications in this article.

Social Web 2010

Happy new year! And thank you for your continued help!

So, I thought about how does Social Web of this year grow up. The article has already been published on gihyo.jp, and I would like you to read it.

Social Web 2010 (First) – Sorry, Japanese only.
http://gihyo.jp/dev/column/newyear/2010/socialweb-prospect-01

The second section will be published at about 10:00 on 2nd.

About 2009

There are only a few hours left this year. There was some movement for me when looking back on this year. As especially big things, they were “Job change”, “Book publication” and “Development of OSDE”.

The most big thing in them was my job change. I could not think of joining to the famous SNS site (unnecessary befog, maybe…), however, it was good to relate to making the platform of the big SNS for me. For this, there was a lot of things, but I think that I could experience important things. Of course, a platform is not only a publication, but it is also to continue to maintain its platform in many ways, and is so heavy. The next year will be an important for me.

Last febrary before my job change, I could publish my book written about OpenSocial, and it was one of big things in this year. I could not think my book publication before a few years. Currently, many developers in Japan can develop an application based on OpenSocial. I’m glad if I could contribute for it.

The OSDE had been developed by me alone. But some developers joined to the OSDE’s project, and it was one of big things in this year. Well, I’m glad that my activity was valued. OSDE has not already belonged to me only, I should have a responsibility and should continue to progress its development. I want to advance its development more than this year.

Because of the joining members, opportunities of a communication by English increased so much. To say nothing of mailing, review a code, adjustment of a specification, and English is an official language on OSDE’s project site. And, new comers came to Japan last October, and they had discussed about OSDE’s roadmap with me. Then, there was no interpreter. But we could complete to make the roadmap by English, therefore, the experience was very important for me. So, a conversation of English will work me out…

Other than these, the presentation at GDD keynote and activities of writing became a cause of sense of fulfillment. Anyway, there were a lot of movements, and I could enjoy them. And, many people helped me this year.

Well, I want to suggest various ideas, and want to occur varisou waves.

Thank you for your continued help. :)

The first skiing at this season

I went to Mt. Tanbara resort for the first skiing at this season with my wife yesterday.

The condition of the snow was very solid and allowed us to ski easily. Also, it was fine weather yesterday.

I was anxiety whether I can ski well, because last season I never went skiing. But, a new wear and boots excited me.

We could enjoy first skiing. So, a curry sold in a rest house was too expensive again this year…

Get Adobe Flash playerPlugin by wpburn.com wordpress themes