Planet Sun
September 08, 2008
A couple of weeks ago I attended the second Semantic Bar Camp which took place at the Orange research labs at Issy les Moulineaux, near Paris. This was a great opportunity to meet many of the French researchers in the Semantic Web space, to take part in the French debate, and to help convince interested parties of the reality of the technology.
Jean Rohmer of the large French defense group Thales played the role of the devil's advocate, arguing that the Semantic Web was just pie in the sky theory without practical applications. We delved into various aspects of the theory of the Semantic Web, and I underlined how the biological/evolutionary aspect of language, the Academie Francaise notwithstanding, was a key aspect in understanding the evolution of the web of data. But the best argument was a simple demonstration of the Beatnik Address Book, which showed how hyperdata could solve the serious problem of 2008: the growing number of closed social networks. At the next camp I hope we will be able to delve much more deeply into how to build real practical applications.
Many thanks to Karima Rafes for organizing this well attended bar camp ( pictures ). Stephane Lauriere from XWiki and who is on the Nepomuk Semantic Desktop project, also posted some photos. And I would like to recommend Alexandre Passant's blog to all french speaking readers.
Update
The talk I gave is now available online with audio as "Building Secure, Open and Distributed Social Network Applications".
Following on the success last year, JavaOne 2008 has lined up three talks on the Semantic Web, a 200% increase. The program should be an excellent way for Java enthusiasts to get a feel for how the Semantic Web is getting used in real application making money for real start ups, how to develop such apps in Java, how to build open social networks that bridge the social networking data silos, and with the help of Dean Allemang cover some theoretical grounds from a practical perspective .
Here is the timetable of the sessions at JavaOne. Highlighted in green are the three semantic web sessions. Highlighted in gray are 4 of the 5 sessions on Google's Open Social API, which reveals the importance social networks are taking in development. I don't think though that that API solves the real problem of current social networks: The Data silo problem. Only Semantic Web technologies can do that.
Update Sept 2008: Two of the talks are now available online:
Below are the details of the sessions in tabular format. I believe they should complement each other very well.
| Session Title: |
Developing Semantic Web Applications on the Java™ Platform |
| Session Time: |
Thursday - 05/08/2008 - 1:30 PM-2:30 PM |
| Session ID: |
PAN-5542 |
| Session Description: |
The semantic web is nearing the point of widespread practical adoption:
• The core specifications have stabilized.
• Tools and frameworks implementing key features have been through several development cycles (for a listing see http://esw.w3.org/topic/SemanticWebTools).
• An increasing number of major software companies have developed semantically enabled products or are actively researching the space.
As companies start to translate theory into real Java™ technology-based applications, they are confronted with a host of practical software engineering issues:
• What is the standard or recommended functional architecture of a semantic application?
• How does that architecture relate to the semantic web standards?
• Which of those standards are stable, and which can be expected to evolve in ways that would significantly affect prior applications?
• What types of tools/frameworks exist that can be leveraged to help implement semantic applications on the Java platform?
• How mature are the various categories of semantic web tools/frameworks?
• Can API standardization be expected for certain tool/framework categories?
• What best practices exist for the design and implementation of Java technology-based semantic applications?
• What best practices exist for the deployment of Java technology-based semantic applications?
• What future trends in Java platform support for semantic application development can be expected?
This panel session gathers together semantics experts from the software industry to address these and other practical issues relating to the development of semantic applications on the Java platform.
|
| Track: |
Next Generation Web |
| Session Type: |
Panel Session |
| Duration: |
60 minutes |
| Speaker(s): |
Jans Aasman, Franz Inc; Dean Allemang, TopQuadrant Inc. ; Brian Sletten, Zepheira, LLC; Henry Story, Sun Microsystems, Inc.; Lew Tucker, Radar Networks |
| Session Title: |
Beatnik: Building an Open Social Network Browser |
| Session Time: |
Thursday - 05/08/2008 - 7:30 PM-8:20 PM |
| Session ID: |
BOF-5911 |
| Session Description: |
The recent growth of social networking sites is revealing the limits of the current ad hoc data architecture used by Web 2.0 sites. A typical example is that you cannot link to a person in a Facebook account from a LinkedIn account. What is needed to solve these problems is hyperdata, the ability to link data universally.
Hyperdata is to data what hypertext is to text. Where hypertext enables text to link up to other text, hyperdata enables data to link up to other data globally. Where HTML enables open, distributed hypertext, the semantic web enables open, distributed hyperdata. Anybody can publish data that then becomes reachable by any tool crawling the web of relations.
To illustrate the power of hyperdata, this session presents Beatnik, a social network browser and editor written entirely in the Java™ programming language that consumes any of the millions of available friend-of-a-friend (FOAF) files already published on the web and enables users to publish information about themselves and their own social network. It shows how you can drag and drop a FOAF URL onto Beatnik and start exploring a web of relations and find up-to-date information about where your friends live, who their friends are, and where people are currently located. With a click of a button, Beatnik will publish all your own relations to your web server in a nonintrusive way to make you part of the first globally available open social network.
After a quick overview of the semantic web and FOAF, the presentation takes a detailed look at how the Beatnik client is built. This involves digging into one of the many Java technology-based semantic web frameworks, such as Sesame, and its APIs; a Java-platform-to-RDF mapper, such as so(m)mer or Elmo; and how this enables inferencing on the Java platform.
On the server side, the presentation looks at how you can easily publish the contents of an LDAP database into any of the numerous RDF formats using JSR 311, the Java API for RESTful Web Services. It also covers the use of the Atom Publishing Protocol as a publication mechanism and discusses various security techniques for limiting the view of a personal graph of information by using OpenID and distributed-web-of-trust techniques.
|
| Track: |
Cool Stuff, Cool Desktop; Cool Stuff, Cool Next Gen Web; Open Source, Open Source Next Gen Web; Cool Stuff; Desktop; Next Generation Web; Open Source |
| Session Type: |
Birds-of-a-Feather Session (BOF) |
| Duration: |
50 minutes |
| Speaker(s): |
Tim Boudreau, Sun Microsystems, Inc.; Henry Story, Sun Microsystems, Inc. |
| Session Title: |
Semantic Web for the Working Ontologist |
| Session Time: |
Friday 05/09/2008 - 1:30 PM-2:30 PM |
| Session ID: |
TS-5555 |
| Session Description: |
This session presents the basics of practical semantic web deployment using standards-based tools on the Java™ platform. It covers the Resource Description Framework (RDF) as the fundamental mashup language of the web; SPARQL, the query language for RDF; and RDFS and OWL, which provide simple inferencing capabilities.
In the distributed world of the web, information is moving from a hypertext paradigm to a hyperdata paradigm--the web today is not just a web of documents but also a web of data. But that data is available on the web and in the enterprise in a wide variety of forms: HTML, XML, RSS, spreadsheets, databases, and so on. RDF provides a uniform way to identify information in a distributed setting to form a web of data.
The session demonstrates a Java technology-based platform (built on Eclipse) that uses RDF as an interlingua for merging information from multiple web sources. Java technology plays a key role in the success of the system in several ways. First, it uses the large variety of public domain semantic web software available on the Java platform as the basis of interoperability at the API level. Second, it uses the Eclipse framework as a visual editing environment for the ontologies. Finally, it uses the modularity of the Eclipse plug-in environment to enable a sort of plug-and-play architecture among semantic components.
One of the basic ideas of the semantic web is that semantic models, or “ontologies,” can be used to describe how data fits together. In the context of the web of hyperdata, an ontology can describe how data in one source relates to data from another, or even which sources of data should be merged to answer a particular question or support a particular application. The idea is that, armed with these tools, a working ontologist can describe hyperdata applications without resorting to a general-purpose programming language.
TopQuadrant has used these standards to construct a workbench for building semantic applications. Semantic mashups can be built by use of RDFS and OWL. TopQuadrant has also developed a visual flow editor for describing how distributed data can be merged in novel ways; it calls this editor SPARQLMotion, because it extends the standard query language SPARQL with intuitive information flow diagrams modeled in OWL. SPARQLMotion modules can be connected with a simple point-and-click interface to create novel arrangements.
|
| Track: |
Next Generation Web |
| Session Type: |
Technical Session |
| Duration: |
60 minutes |
| Speaker(s): |
Dean Allemang, TopQuadrant Inc. |
Following on my previous post RDFAuth: sketch of a buzzword compliant authentication protocol, Toby Inkster came up with a brilliantly simple scheme that builds very neatly on top of the Secure Sockets Layer of https. I describe the protocol shortly here, and will describe an implementation of it in my next post.
Simple global ( passwordless if using a device such as the Aladdin USB e-Token ) authentication around the web would be extremely valuable. I am currently crumbling under the number of sites asking me for authentication information, and for each site I need to remember a new id and password combination. I am not the only one with this problem as the data portability video demonstrates. OpenId solves the problem but the protocol consumes a lot of ssl connections. For hyperdata user agents this could be painfully slow. This is because they may need access to just a couple of resources per server as they jump from service to service.
As before we have a very simple scenario to consider. Romeo wants to find out where Juliette is. Juliette's hyperdata Address Book updates her location on a regular basis by PUTing information to a protected resource which she only wants her friends and their friends to have access to. Her server knows from her foaf:PersonalProfileDocument who her friends are. She identifies them via dereferenceable URLs, as I do, which themselves usually (the web is flexible) return more foaf:PersonalProfileDocuments describing them, and pointing to further such documents. In this way the list of people able to find out her location can be specified in a flexible and distributed manner. So let us imagine that Romeo is a friend of a friend of Juliette's and he wishes to talk to her. The following sequence diagram continues the story...
The stages of the diagram are listed below:
First Romeo's User Agent HTTP GETs Juliette's public foaf file located at http://juliette.net/. The server returns a representation ( in RDFa perhaps ) with the same semantics as the following N3:
@prefix : <#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix todo: <http://eg.org/todo#> .
@prefix openid: <http://eg.org/openid/todo#> .
<> a foaf:PersonalProfileDocument;
foaf:primaryTopic :juliette ;
openid:server <https://aol.com/openid/service>; # see The Openid Sequence Diagram .
:juliette a foaf:Person;
foaf:name "Juliette";
foaf:openid <>;
foaf:blog </blog>;
rdfs:seeAlso <https://juliette.net/protected/location>;
foaf:knows <http://bblfish.net/people/henry/card#me>,
<http://www.w3.org/People/Berners-Lee/card#i> .
<https://juliette.net/protected/location> a todo:LocationDocument .
Romeo's user agent receives this representation and decides to follow the https protected resource because it is a todo:LocationDocument.
- The todo:LocationDocument is at an https URL, so Romeo's User Agent connects to it via a secure socket. Juliette's server, who wishes to know the identity of the requestor, sends out a Certificate Request, to which Romeo's user agent responds with an X.509 certificate. This is all part of the SSL protocol.
In the communication in stage 2, Romeo's user agent also passes along his foaf id. This can be done either by:
- Sending in the HTTP header of the request an
Agent-Id header pointing to the foaf Id of the user. Like this:
Agent-Id: http://romeo.net/#romeo
This would be similar to the current From: header, but instead of requiring an email address, a direct name of the agent would be required. (An email address is only an indirect identifier of an agent).
-
The Certificate could itself contain the Foaf ID of the Agent in the X509v3 extensions section:
X509v3 extensions:
...
X509v3 Subject Alternative Name:
URI:http://romeo.net/#romeo
I am not sure if it would be correct use of the X509 Alternative names field. So this would require more standardization work with the X509 community. But it shows a way where the two communities could meet. The advantage of having the id as part of the certificate is that this could add extra weight to the id, depending on the trust one gives the Certificate Authority that signed the Certificate.
-
At this point Juliette's web server knows of the requestor (Romeo in this case):
- his alleged foaf Id
- his Certificate ( verified during the ssl session )
If the Certificate is signed by a CA that Juliette trusts and the foaf id is part of the certificate, then she will trust that the owner of the User Agent is the entity named by that id. She can then jump straight to step 6 if she knows enough about Romeo that she trusts him.
Having Certificates signed by CA's is expensive though. The protocol described here will work just as well with self signed certificates, which are easy to generate.
- Juliette's hyperdata server then GETs the foaf document associated with the foaf id, namely
<http://romeo.net/> . Romeo's foaf server returns a document containing a graph of relations similar to the graph described by the following N3:
@prefix : <#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix wot: <http://xmlns.com/wot/0.1/> .
@prefix wotodo: <http://eg.org/todo#> .
<> a foaf:PersonalProfileDocument;
foaf:primaryTopic :romeo .
:romeo a foaf:Person;
foaf:name "Romeo";
is wot:identity of [ a wotodo:X509Certificate;
wotodo:dsaWithSha1Sig """30:2c:02:14:78:69:1e:4f:7d:37:36:a5:8f:37:30:58:18:5a:
f6:10:e9:13:a4:ec:02:14:03:93:42:3b:c0:d4:33:63:ae:2f:
eb:8c:11:08:1c:aa:93:7d:71:01""" ;
] ;
foaf:knows <http://bblfish.net/people/henry/card#me> .
- By querying the semantics of the returned document with a SPARQL query such as
PREFIX wot: <http://xmlns.com/wot/0.1/>
PREFIX wotodo: <http://eg.org/todo#>
SELECT { ?sig }
WHERE {
[] a wotodo:X509Certificate;
wotodo:signature ?sig;
wot:identity <http://romeo.net/#romeo> .
}
Juliette's web server can discover the certificate signature and compare it with the one sent by Romeo's user agent. If the two are identical, then Juliette's server knows that the User Agent who has access to the private key of the certificate sent to it, and who claims to be the person identified by the URI http://romeo.net/#romeo, is in agreement as to the identity of the certificate with the person who has write access to the foaf file http://romeo.net/. So by proving that it has access to the private key of the certificate sent to the server, the User Agent has also proven that it is the person described by the foaf file.
- Finally, now that Juliette's server knows an identity of the User Agent making the request on the protected resource, it can decide whether or not to return the representation. In this case we can imagine that my foaf file says that
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
<http://bblfish.net/people/henry/card#me> foaf:knows <http://romeo.net/#romeo> .
As a result of the policy of allowing all friends of Juliette's friends to be able to read the location document, the server sends out a document containing relations such as the following:
@prefix contact: <http://www.w3.org/2000/10/swap/pim/contact#> .
@prefix : <http://juliette.org/#> .
:juliette
contact:location [
contact:address [ contact:city "Paris";
contact:country "France";
contact:street "1 Champs Elysees" ]
] .
Todo
- Create an ontology for X509 certificates.
- test this. Currently there is some implementation work going on in the so(m)mer repository in the misc/FoafServer directory.
- Can one use the Subject Alternative name of an X509 certificate as described here?
- For self signed certificates, what should the X509 Distinguished Name (DN) be? The DN is really being replaced here by the foaf id, since that is where the key information about the user is going to be located. Can one ignore the DN in a X509 cert, as one can in RDF with blank nodes? One could I imagine create a dummy DN where one of the elements is the foaf id. These would at least, as opposed to DN, be guaranteed to be unique.
- what standardization work would be needed to make this
Discussion on the Web
To give everyone a chance to try out the So(m)mer Address Book, I have made it available via Java Web Start: just click on the picture to the right, and try it out.
The Address Book is currently demoware: it shows how one can build virally an open distributed social network client that solves the social network data silo problem (video). No need to have an account on every social networking site on which you have friends, and so maintain your data on each one. You can simply belong to one network and link to all your friends wherever they are. With one click of a button you can publish your social network to your own web server, using ftp, scp, WebDAV, or even Atom. You can then link to other people who have (or not in fact), a foaf file. By pressing the space bar when selecting a friend, the Address Book with then GET their file. So you can browse your social network.
To get going you can explore my social network by dragging my foaf file icon
onto the first pane of the application.
In BOF-5911 which I will be presenting on Thursday at 7:30pm I will be presenting the social networking problem, demonstrating how the So(m)mer Address Book solves it, and showing in detail how it is build, what the problems are, and what work remains. I will also discuss how this can be used to create global single sign on based on a network of trust.
Update
An improved version of the presentation I gave is now available online with audio as Building Secure, Open and Distributed Social Network Applications
The upcoming semantic conference in San Jose, is getting going tomorrow, with an excellent list of speakers and subjects. Here are some highlights of the sessions relating to topics on which I blog regularly.
- The Future of Social Networks: The Need for Semantics, Monday, May 19, 2008 from 08:30 AM - 12:00 PM, will be hosted by John Breslin, Prof Stefan Decker and Uldis Bojars.
- The Semantic Web, Social Graphs and Social Verification Tom Ilube, Chief Executive Officer, Garlik Limited will present on
Monday, May 19, 2008 at 05:00 PM - 06:00 PM
- Semantic Wikis: Boosting Collaborative Technology will be presented by Juergen Angele on Monday, May 19, 2008 at 05:00 PM - 06:00 PM clashing with Tom Illube's talk, sadly.
- Data Portability Interest Group will take place on Tuesday, May 20, 2008 at 07:15 AM - 08:15 AM. A bit early but well worth it. John Breslin will be hosting it.
- Linked Data Panel with Danny Ayers, Giovanni Tummarello, Nathan R Yergler of the Creative Commons, and Ralph R. Swick from the w3c will be speaking about this essential topic on Wednesday, May 21, 2008 at 08:30 AM - 09:30 AM.
- Data Availability at MySpace Jim Benedetto, Senior Vice President of Technology will explaining the Data Availability initiative.
- Developing Semantic Web Applications: Current Tools, Best Practices and Future Directions on Wednesday, May 21, 2008 at 09:45 AM - 10:45 AM, Eric Miller, Jaans Aasman, Jeroen Wester, Dean Allemang and I, will talk about various semantic web applications, the technologies needed to build them and more. In particular I will be demonstrating the Semantic Web Address Book
- Semantic Markup of Java Source Code Brian D Eubanks
will talk on Wednesday, May 21, 2008 at 05:30 PM - 06:30 PM
Many more interesting talks will make sure I will spend another packed week. The full program is available online.
Update
My presentation is now available online with audio as part of the longer Building Secure, Open and Distributed Social Network Applications
I am in the Bay Area about to start my third week of conference/workshops with the combined themes of Java, identity, semantic web, and data portability.
The first week at JavaOne went very well. The Semantic Web Panel attracted way over 500 people by my guesstimate (no official figure yet), and Dean Allemang's talk "Semantic Web for the working Ontologist", that took place on the last day attracted well over three hundred attendees. My BOF, happened late at night at the same time as a big party, and only attracted 30 or so attendees. But on the whole JavaOne proved a great success.
Speaking to members of the liberty group at Sun, I discovered the existence of the Internet Identity Workshop in Mountain View, and decided this would be a good opportunity to learn more about this space. This was a very good use of my time, as it helped me get more familiar with many of the problems and technologies in this space. I put forward some of the ideas I had been discussing here relating the semantic web and distributed web of trust ideas using OpenId and foaf+ssl, which seemed to hold up quite well under the close scrutiny of the community. A few fun conversations with Eve Maler (aka xmlgrrl) on the relations between the semantic web and XML nicely spiced up the evenings :-)
That workshop was closely followed by a one day Data Sharing Summit, addressing issues raised by the Data Portability group, which I have been following relatively closely. This one day session was very helpful for my understanding of the types of problems that need solving. An ontology for what can be done with information in a foaf file would indeed be very helpful. This would have to allow one to specify in simple terms what relations could be republished or which ones should not be.
So next on the list is the Semantic Technology Conference in San Jose, which will bring all these threads together. For more on that see see my post on the Semantic Tech highlights.
Update
The presentation I was giving is now available online with audio as Building Secure, Open and Distributed Social Network Applications
Harry Lu pointed out that bug #1 in Ubuntu is:
"Microsoft has a majority market share in the new desktop PC marketplace. This is a bug, which Ubuntu is designed to fix."
Should I log a similar bug in defect.opensolaris.org?
Defect #1: "Users of the global internet should not be locked into mediocre excessively loved closed source software products of a single company."
Note that this bug is slightly different from Ubuntu's bug #1, I don't mention new hardware because I'm just as concerned with the fact that existing desktop users are stuck in a quagmire they don't know how to get themselves out of. We have made some progress in fixing this bug:
- Java (now opensource) prevented the internet from becoming a Microsoft only domain.
- StarOffice/OpenOffice helped reverse lock-in caused by Microsoft Office.
- Firefox/Mozilla didn't win the browser wars, but smart web designers now have to consider the possibility of non Microsoft browsers which again prevents lock-in.
- Java will continue to provide an alternative to Silverlight and slow the lock-in which could be caused by this framework which ignores the Linux/Solaris/FreeBSD communities.
- VirtualBox gives people an alternative of running a more cost-effective, stable, secure and scalable OS on their hardware and put instances Microsoft Windows on top only to run whichever applications are locked to Windows and haven't yet been ported to the 21st century.
- ZFS Provides the first scalable multi-platform alternative to NTFS (Fat32 of course, has good multiplatform support but isn't scalable)
If Microsoft isn't afraid of Free and Open Source Software, why not open source and release patents on all of Silverlight and Windows (or whatever infrastructure is required to run Silverlight.) Sun is a much much smaller company and we released Java and our crown jewels O.S. to the community.
I should thank the sponsors and organizers of the Irish OpenSource Technology Conference (IOTC) for giving me the opportunity to present OpenSolaris as an Open Source Developer Tool to some of Ireland's brightest and most energetic open source developers. There were quire a few university attendees and Barry was able to bring in people from small and midsized Irish companies such as openApp and hosting365 as well as multinationals such as Microsoft, IBM, RedHat, Sun and AIB (more about this later!)
My talk seemed to be well understood by the audience and I managed to empty out a heavy backpack full of ¨Free as in Free" OpenSolaris 2008.05 CDs afterwards. I didn't have enough time to talk about SMF or PKG(5) in detail, but I did spend some time on ZFS and Dtrace; both of which I'm certain would be useful to any Open Source developer. Even if your pointy-haired boss demands that you must code your application in VisualBasic and deploy on Redhat 3.5 via Wine, you can sneak OpenSolaris onto one of your QA department's test boxes and run your software in a zone where you can dtrace it. Or you could set up an OpenSolaris file server with ZFS snapshots as frequently as necessary (perhaps every keystroke for some UIDs?) I won't tell anyone... honest ;-)
One gentleman grabbed a CD and asked me if OpenSolaris 2008.05 was available on Sparc. Another asked whether zones could be Opensolaris as well as linux and whether you could have hundreds of copies of apache running independently in hundreds of zones each with its own isolated ports. One of the attendees had used dtrace before log ago, but he didn't know it could do so much. (Remind me to blog about my "anti-destruction, destructive dtrace script later!) A couple of university students spoke of Sun's mistakes in the past, were surprised that Sun was so involved with FOSS software. They said they didn't see much Solaris or OpenSolaris for years, but they're starting to see it more often again. Fantastic, the spark (if not Sparc) is back!
I caught the tail end of a RedHat talk on LVM2 later. I admire anyone with the Red Hat certified expertise required to do old-style volume management, but to see the amount of effort that goes into what anyone (including me) can do with a couple of ZFS commands makes me want to burn a stack of punched cards!
View Larger Map
Google's GPS equipped cars visited Southeastern Wisconsin last summer, during some of the best weather Wisconsin has to offer. They visited my home town during one of the brightest days. It's amazing how thoroughly they've covered southeastern Wisconsin, practically every road and even the blue sky above in photos that are much sharper than those I've seen taken nearer to Google's California headquarters.
It's strange to be sitting over 3000 miles away and see neighborhoods I never visited while growing up there. I understand the privacy concerns. When virtually touring narrow streets in Racine such as Gideon Ct., you almost expect people to come out and yell at you for stepping on their flowerbeds. It is useful to see a destination before driving there for the first time and it's nice to be able to show friends the house I grew up in and also the brick houses overlooking Lake Michigan that my Pomeranian ancestors built when they emigrated to the U.S. in the mid 19th century.
I wonder if the fact that thousands of sub $200k houses are unsold in decent neighborhoods throughout the midwest might bring back a sense of reality to real-estate markets which seem to have lost the plot for a while. Compare the zillow.com price estimates for victorian houses on College Avenue, or anything near Racine's zoo or Wind point... to almost anything in Las Vegas or California and you'll wonder whether someone has their decimal point in the wrong place. But then Google might contribute to the problem of wealthy remote holiday homeowners driving local prices beyond the reach of police, firemen, teachers...
Taxes, lack of good jobs and weather are the three biggest problems with living in the "rust belt." Those of us from the upper midwest should thank Google for showing our part of the world in a good light.
Sun is
participating in Software Freedom Day on Saturday September 20th. See Glynn Foster's notes to the OpenSolaris User Groups, and also
in the OpenSolaris Advocacy Community. Should be cool to see this all come together around the world.
While visiting family in Wisconsin last summer, I learned that a Sun Ray client attached to servers more than 3500 miles away performed at least as well as a client at my home 8 miles away and nearly as well as clients right in the Dublin office. So, I was able to use Irish wind energy while working in a coal powered corner of Wisconsin. I wondered if this technique could be formalized into demand side transcontinental IT energy load balancing GRID? I wrote up the idea and with Sun's help, it was published in the September issue of Research Disclosure. At a time when oil prices are soaring and some are predicting that up to 50% of electricity load might eventually be devoted to IT, I can think of quite a few possibilities for this kind of grid system:
- Efficient alternative to carbon tax and trade:Wisconsin and many other parts of the world is not suitable for solar, wind, tide, hydroelectric or geothermal energy. When carbon taxes are enacted, places such as these could be at a severe economic disadvantage compared to Nevada, California and other places where carbon neutral energy sources are abundant. Industries in these places have few alternatives. They could wait for superconducting electricity grids and buy energy from elsewhere, they could pay the carbon tax and buy credits from other states, they could send jobs and industry to where energy is cheap and clean, or they could use demand load balancing to keep jobs and outsource the energy demand.
- Failsafe UPS:When I worked in South Florida, we could almost set our watches by the daily summer thunderstorms. Sometimes it would knock our power out five times a day. Even if the power glitch lasted only one second, it took the DEC servers a half hour to reboot and certainly disrupted our work day. Ideally, our servers would have been hosted somewhere where electricity was more reliable. A small solar panel (~3500 Watts) on the roof would have been sufficient to power 150 Sun Ray clients and their monitors. The lack of servers in our office would have also made it easier for our HVAC system to cope with the Florida heat.
- Shifting peak demand: Our least efficient, most expensive and most polluting power plants usually come on line during periods of peak demand. I've heard that some utilities paid as much as $0.45/kWh for peak electricity transferred over the conventional "supply side" electricity grid.
Ever since air conditioning became popular, Wisconsin electricity demand peaks during late afternoon on the hottest days of summer. By contrast, Florida power demand peaks during the coldest winter nights because thats the only time of year when simple but inefficient electric heating systems are necessary. While there may be some occasions when both Florida and Wisconsin are at peak demand, IT demand load grid balancing could transfer load between northern and southern hemispheres if necessary. Use Australian solar energy to power your data center during a cloudy Irish winter night. Use Irish wind to power your Australian data center during a windless day.
- Optimizing peak load across timezones:One of the reasons Dublin's Sun Ray servers seemed faster to me when I was working from Wisconsin is that by noon Wisconsin time, many of the local users in the Irish timezone would have gone home. If the global grid load balancing system were smart enough, it could predict when and where server resources would become available. As timezones approach the end of their workday, they would advertise that resources are becoming available for timezones to the west. This could help flatten the daily energy demand peaks and allow us to use more efficient power sources.
.
If anyone has suggestions or alternative ways of using energy, I'm open to comments. Or you might want to consider writing up the idea and submitting it for possible publication at Research Disclosure. This is a useful publication service which allows the free exchange of ideas, while discouraging patent trolls.
Light pollution is one of my pet peeves. For example, excessively bright and misdirected "security lights" illuminate some barns and gas stations to a level where dentistry and brain surgery could be performed. There seems to be an assumption that doubling the illuminated wattage per square meter halves the crime rate. I find that nighttime light pollution continues to grow worse in the U.S. Many children born east of the Mississippi have never seen more than a couple hundred stars. When an earthquake knocked out the lights in Los Angeles, 911 operators were flooded with calls wondering what that glow in the sky was... it was the Milky way. People had never seen it before!
But night time light pollution is only half of the problem. I intended to post a photograph of an Racine gas station which makes use of RUUD lighting's innovative new efficient LED canopy lights but the lights were burning in broad daylight which makes no sense at all! Even if LEDs use 1/10th the energy of metal halide or mercury vapor bulbs, why use them on a bright sunny day?
I find that this daytime "light pollution" is far more common in Dublin Ireland than any place I've lived in the U.S. Even today, summer solstice when Dublin enjoyed almost 20 hours of bright natural daylight, you'll find hundreds of outdoor lights burning all day long. Many of the "dawn to dusk" lights here seem to use timers instead of photoelectric daylight sensors, so they're also burning in broad daylight along with the 24hour lights. Sun is doing our part to save electricity with thin clients and efficient servers. I do my part by turning off appliances, hanging out laundry and using CF and LED lights in my home where I can. I only wish that the electric rate were scaled up with the wastefulness of the usage patterns. Maybe more people would do the right thing. I've heard that gas stations in the U.S. aren't profiting from drastic (400%) increases in the cost of gasoline in the past 10 years. But as long as these companies insist on using excessive wattage and glare to attract customers, I'm going to assume they have some room left in their profit margin.
We had about three minute long cloud break during Saturday's lunar eclipse. The photo shows the moon rising in partial earth shadow. Malahide's St. Sylvester church is in the foreground. Moments later the clouds closed in and the mosquitoes descended upon us. It was time to go home.
Many thanks to the organizers, volunteers and Gnomers who helped make GUADEC 2008 possible! There were a few glitches (please open up SSL and VPN ports next time!), but overall it was a success. I also appreciate being able to present my talk on measuring the GNOME footprint. If I'd anticipated the interest, I would have gone into more detail regarding the extensive use of dtrace in this study, but John Rice covered that well in his talk. I'll try to post the details here as soon as possible. I also appreciate the fact that my friend Andrei, a Google Summer of Code student, is eager to use some of my techniques in his memory profile study. It was great to see my friends again and I look forward to seeing them again at a future GUADEC!
The attached photo is an QtpfsGUI tonemapping of a RAW image I took from the roof of our hotel one night. Istanbul is truly an amazing city and though this image doesn't exactly capture the experience of being there, I hope it captures something of the mood.
Imagine you have some Sun Ray[tm] clients and you'd like to use them with some hardware which doesn't support Solaris. Or maybe you're running OSX, Windows or Ubuntu on some hardware which has some spare cycles but isn't running an OS which is supported by SRSS.
- Download a copy of VirtualBox for your operating system.
- Download a copy of Solaris 10 which is supported by SRSS3 and SRSS4.
- Download a copy of Sun Ray Server Software. I used SRSS 4.0 09/07. Note:Some GNU/Linux distributions are also supported, and SRSS can be forced to work with some unsupported Linux distributions and versions of OpenSolaris. But I'll stick with Solaris 10u5, it's reasonably lightweight and solid.
- For Solaris Nevada build 85 I ran
/usr/sbin/ifconfig -a
to get the name of the network interface and make sure networking is working.
- Launch VirtualBox.
- Use New to Create a virtual machine.
- Go to settings and network for this virtual machine and set the networking Attached to: Host Interface and type the interface name from the ifconfig -a you just ran. Note:I found that using this "Host Interface" setting requires that you launch VirtualBox as root, though I'm sure there is a better way using RDAP profiles or something.
- Boot your VirtualBox and navigate to your Solaris 10 media. Install Solaris 10 (arguably the most challenging step, S10 installs are ugly and slow compared to any of the more recent OpenSolaris distributions.
- Login to your new Solaris 10 virtual machine.
- Make sure networking is working and that the virtual machine knows its own hostname.
- Get or set the virtual host's IP address {it will be used later}
- Copy the Sun Ray software into the virtual host environment. You may find that the virtual host can't ping its "Dom 0" parent, so copy to another machine or download SRSS from within the virtual host.
- Unpack the Sun Ray software and run
utinstall
. I usually go with all defaults but I leave the DHCP server turned off since there is usually a DHCP server on my network.
- Configure the Sun Ray server:
/opt/SUNWut/sbin/utadm -c
/opt/SUNWut/sbin/utadm -A 192.168.1.0 # {allows you to server Sun Ray over this network }
/opt/SUNWut/sbin/utadm -L on # {enable LAN connection from Sun Ray}
/opt/SUNWut/sbin/utadm -n # {bring server online}
/opt/SUNWut/sbin/utrestart
- Now connect your Sun Ray client to the network or if you're already connected to another Sun Ray server, do this:
/opt/SUNWut/sbin/utswitch -h {your VirtualHost's IP address"
Once you have the environment set up. You can shutdown (or better yet, snapshot) the VirtualBox environment and next time you start it, run:
VBoxHeadless -startvm {your vmname}
You can also access this headless virtualbox by using rdesktop:
rdesktop {parent host's IP}
It seemed to me that the responsiveness of the JDS desktop environment on the remote Sun Ray client was at least as good as the performance of the VirtualBox display on the local laptop.
Limitations: This does not allow you to display the MS Windows or Ubuntu environment on the Sun Ray client. For that you're better off running rdesktop on a real (not virtualized) Sun Ray server and running Windows in headless mode inside the VirtualBox.
I've been experimenting with tone mapping RAW images with the Qtpfsgui OpenSource tool. It's always difficult to get the sky and foreground things (like spring tree leaves or cherry blossoms) to be simultaneously exposed properly. In the chemical photography days, you'd have to dodge and burn in tiny areas of the photo to properly compress reality's tonal range onto the limited dynamic range of paper prints. I'd like to build Qtpfsgui for OpenSolaris, but it looked like the GNU/Linux versions depended on a particular development environment. Now I see that some versions seem to have been built with cmake which is portable to OpenSolaris. I'll let you know if I figure out how to build it.
It isn't always obvious to people outside of the U.S. why Joe-sixpack seems to have such a powerful allergy to conservation, efficiency and sensible environmentalism. The reason is that pseudoenvironmentalists have tried to pull the wool over his eyes many times in the decades since the first earth day, and because of the abysmal level of Joe-sixpack science literacy, they've usually succeeded. Wisconsin's Bill Proxmire was known as the founder of Earth Day and for his "golden fleece" awards for wasteful Congressional spending. In his honor, here are my nominations for the all time greatest environmental boondoggles:
- Magnetic gasoline mpg enhancers. (Add to this the German device which detects the "tachyon signature" of nuclear generated power and stops such energy at your outlet.)
- 1970s rooftop solar heating. Perhaps I'm being a bit unfair here. Some of these actually did produce heat, some even produced enough to pay for themselves over a decade or two. But because the qualification standards for President Carter's eco-subsidies weren't well enforced, many hideously inefficient devices were constructed. Sometimes the cost of the electricity to run the water pumps, the leakage of home heat on winter nights and other issues caused these devices to waste more energy than they saved and gave solar a bad name which hasn't yet been overcome in many parts of the U.S.
- "Clean" coal. Clean coal as currently defined releases exactly the same tonnage of CO2 per ton of coal burned as dirty coal did 100 years ago. Call me a skeptic but to date "carbon sequestering" may eventually also fall into the boondoggle category. Almost 1000 train cars full of coal enter a typical 1000 Megawatt coal power plant every day. Whether the CO2 created is compressed or converted into a carbonate, it would have more mass than the coal it came from. If you think looking for burial sites for nuclear waste is an unsurmountable problem, try to figure out where to hide 1000 train cars full of carbonate rock every day for each of the thousands of coal power plants all over the world.
- 21st century CF light laws. Like ethanol fuel, this can be a useful energy efficiency technology when used properly. I've used compact florescent lights since the early 90s when they were relatively reliable. But incandescent light bans and other misguided "environmental" laws have forced these to be used where they don't belong and seem to have created incentives for cheap junk bulbs to be shipped across the ocean only to end up in landfills. In my experience, 1 out of 5 brand name CF lights made in the 21st century are defective (i.e. last no longer then 6 weeks) and in many locales there is not yet a safe way of disposing of the dead bulbs.
- California's "Zero(sic) emission" vehicle laws which effectively gave coal powered cars an advantage over those fueled by gasoline.
- MTBE. This gasoline additive was designed to help gasoline burn cleaner but it proved to be very efficient at polluting waterways.
- Corn ethanol. Even farmers here in Wisconsin's corn belt are beginning to understand this as the biggest eco-boondoggle in our generation. Massive government subsidies are rewarding a handful of corporations in an industry which burns as much oil to produce as it replaces. It effectively burns food in U.S. automobile gasoline tanks and has already caused food price inflation and job losses.
This is just my first draft list but I'm open to suggestions. I could be convinced that any of these technologies isn't a boondoggle if someone shows me the science. Unfortunately the level of science literacy amongst citizens and politicians is very low. The level of government investment in ecology and energy efficiency scientific research is also relatively low. So we are left with the questionable science funded by vested interests and the political might of a handful of powerful lobbiests running the show. As P.T. Barnum put it, "There's a sucker born every minute."
とりあえず。MA4 Casual Sessionの様子を一枚!
Google considered a move to OpenSolaris? All that glitters is not Chrome:
"Two years later, Google has yet to broadly embrace OpenSolaris. Google
isn't one to take the short-term view on performance. Linux has a
strong, vibrant community dedicated to improving its performance and
extending its reach. OpenSolaris, while a great project, still lacks
this widespread community involvement. In Linux, Google benefits from
the contributions of Hewlett-Packard, IBM, Red Hat, and others. With
OpenSolaris? It would be more of a solo act." -- Matt Asay.
I share Matt's views on the strength and value of the Linux community.
That's what we are working towards for OpenSolaris -- a global
community that contributes and thrives.
I don't at all think we'll be a solo act forever, though, and we always
knew it would be a solo act initially. But Intel is contributing to the
project now, and there are a number of individual contributors on
multiple projects from multiple regions around the world. Contributions
have been small in number for good reason, though: the project is still
young, and we've been slow in getting tools and infrastructure outside
to enable open development across the entire project. However, the
early participation we clearly see will only increase as the main
kernel gate moves outside (some other projects gates are already
outside), and as we build out the community package repositories for
the OpenSolaris distribution. This way we can engage the community at
multiple levels. Globally speaking, though, we are a small community
right now. But we are very much moving in the right direction and
especially in some emerging markets. We'll earn our way as we go.
Wouldn't have it any other way. Linux earned its way over many years,
and we should have to do the same.
先週金曜日(9/5)開催したセミナーの資料が
ここからダウンロード可能です。今回もOpenSolaris Night Seminar と同様ストリーミング映像も公開されると思いますので、参加出来なかった方は是非チェックしてみてください。
追記
舟崎さんのblogにてストリーミング映像へのリンクが公開されています。
私は一週間以上も毎晩何とかセミナーとか何とか会が続いていたのでちょっとお疲れモードでした。
セミナー後の
打ち上げ参加しなくて申し訳なかったです。
週末は久しぶりに映画館(DMC)に足を運んでリフレッシュ。グリとグラにちょっとガッカリ。大人の事情ってやつですかね。
追伸、
祝 Jeff Beck 来日決定!
Have you ever tried to customize your Sun Ray installation to display different 'things' for different Sun Rays and users' cards? HERE you'll find an info how to do so (configuration via SRSS Admin GUI only).
What can be displayed?
- full Windows/Solaris session
- single Windows/Solaris application
- menu with some Windows/Solaris applications
- wallpaper - ie. to see your girlfriend photo if card is not inserted
- images slideshow - ie. reception desk or tradeshow.
Scripts support USB storage, serial devices and printers connected to Sun Ray.
Additionally HERE you can find some instructions/scripts which can help to install, configure and connect your SGD server to Active Directory.
Hi all,
I was just reading Dana Nourie's blog again. I found some very interesting information there about plans to create a Sun Solaris Campus in Second Life. This is what Dana had to say about it:
"I'm very excited to announce that Sun is opening Sun Solaris Campus this month for developers. Don't think traditional campus - think a fun, unique and community-oriented virtual campus. At this inworld campus, you'll be able to talk with experts, listen to informative chats about Solaris, and network with other developers like yourself.
Of course, we are brainstorming for other similar campuses for Sun's various technologies, and other ways we can interact with you, the developer. One area I am looking at is our Club Java. This is a social place where people can met to chat business, or they can throw off their shoes and make use of the dance floor.
It looks like I mioght be hanging out there every now and then. So look for me (Cap Wind) and Dana (Dana Oceanlane) while you're there.
Cheers!
--James
I am very happy to announce that the Early Draft of the Java
TM
EE Connector Architecture 1.6 specification is
available now.
We started to work on an update to the earlier Connectors specification
(
J2EE
Connector Architecture 1.5) in the Expert Group of
JSR 322
in January this year. The Expert Group has been working very hard on
the Early Draft and we are looking forward to hear your feedback.
Please send your feedback and comments to
jsr-322-comments@jcp.org.
The purpose of the Java EE Connector Architecture 1.6 specification is
to address some areas in the earlier specification, where further
support has been requested by the developer/user community and the
expert group. Some of the important features that are being planned to
be addressed in this release include:
- Generic
Inflow Context: a mechanism for enabling a resource
adapter to provide additional contextual information while a Work
gets
executed by the application server's WorkManager
- Security
Inflow: enabling a resource adapter to propagate security
identity information during Work execution and delivery to
MessageEndpoints(MDBs)
- General
improvements to the specification: in the areas of
handling connection failures, inbound and outbound configuration
consistency, better configuration property processing (ability to
specify better validation rules etc) and clarifications around the
classloading of standalone resource adapters.
- Focus on
ease-of-development of resource adapters. Aligning with
common programming
model of Java EE by defining helper classes and
annotations for the Connector API wherever applicable.
As a general reminder, since we're still relatively early in the
process, the exact feature set is subject to change (for instance, the
contracts have already gone through a lot of change since our
JavaOne
2008 BoF presentation a couple of months ago

).
Here is a brief overview of the features that have been discussed and
made it to the early draft. This is not a comprehensive list and so
please see the Change History (Section I.1) for more information on all
the changes made to the specification, in this early draft.
- Generic
Inflow Context: Certain Enterprise Information System
(EIS) integration usecases requires the propagation of contextual
information from the EIS to the application server. For example, a
resource adapter may want to flow-in Security context information, (or
in the case of an EIS that deals with conversational messaging,
correlation information that might be necessary to recreate a
conversational session state in the container) from the EIS to the
application server during inbound message
delivery. The resource adapter may also want to run a particular Work
instance in the context of the "flown-in" Security
information.
The Generic Inflow Context
is a new system contract that enables a resource adapter to
control the execution context of a Work instance that it has submitted
to the WorkManager for execution. The Generic inflow contract provides
the mechanism for a resource adapter to augment the runtime context of
a Work instance with additional contextual information flown-in from
the EIS.
Inflow Contexts for
propagating in transaction and security information from the EIS into
the application server during the execution of a Work instance have now
been standardised via the TransactionInflowContext
and
SecurityInflowContext
interfaces. An application server must support
both these inflow contexts and therefore a portable resource adapter
can assume an application server’s support for both these inflow
contexts. Since the Inflow Context contract has been defined to be
generic and
extensible, the Connectors specification or other Profiles may define
additional context types in the future.
For more information on
this new system contract, its API and an illustrative example of how a
resource adapter can pass in (say) Transactional information along with
a Work instance during Work submission, please refer "Chapter 11.
Generic Inflow" of the
Early
Draft.
- Security
Inflow Context: It is critical, in EIS integration
scenarios, that all interactions between an application server and
resource adapter are secure.To achieve end-to-end application security,
it is important that all activities that a Work instance performs,
including delivering messages to a MessageEndpoint (MDB) happens in the
context of an established identity.
The Security Inflow
Context is a new standard contract that enables a resource adapter to
control and establish security information during the execution of a
Work instance. This contract provides a mechanism to support the
execution of a Work instance in the context of an established identity.
It also supports the propagation of user information/Principal
information from an EIS to a MessageEndpoint(MDB) during Message Inflow.
For more information on
this new system contract, its API and an illustrative example of how
(say) a XMPP resource adapter can deliver a message with appropriate
security information, please refer "Chapter 16. Security Inflow" of the
Early Draft.
- Other changes:
In addition to the two new changes discussed above, a suite of new
features/changes have also been discussed in the early draft. A few of
them are:
- a definition of minimum set of requirments that must
besupported by a compliant Java EE Connectors Architecture 1.6
container within an implementation of any subset of the Java EE Full
Profile (like a
Web Profile). Refer Section 3.5
- an ability to specify the transaction support level of a
resource adapter at runtime. Refer Section 7.13
- ClassLoading requirements for standalone resources
adapters. Refer Section 19.3
Checkout http://kenai.com - Developer Collaboration Platform just released!
Built using JRuby, Deployed on Glassfish V2, using MySQL - all on Sun Technologies and Products
Email me, if you would like an invite to be able to create projects there
It can house subversion and Mercurial repositories for your projects
You can have bugzilla, mailing lists, forums and wiki's for your project
You could use your Sun Developer Network account to login there
You could email to users@help.kenai.com and or post your comments/issues you might have at: http://kenai.com/projects/help/lists
Being a photo of a cluster of small white flowers against a leafy
backdrop.
I’ve started cropping a lot of pictures into a 1:1, i.e. square, shape.
It’s probably just a phase I’m going through.
既に
developers.sun.comをチェックしている人は気がついているかもしれませんが、今年も Sun Tech Days 2008 Tokyo が 12/2 - 4 東京ミッドタウンにて開催が決定しました。今年も James Gosling が来日します。
もちろん Java だけでなく、OpenSolaris も盛りだくさんの内容を考えています。
みなさん忘れないようにカレンダーにマークですよ!
ここのところ
OpenSSO絡みの話が多いので、
もう少し詳しく勉強してみようと
SDCで工藤さんが書いた記事を参考に、OpenSSOのアイデンティティ・サービスを
利用したカスタムのログイン処理を実装してみました。
工藤さんはRuby on Railsでやってましたが、私はJavaer (Javaistではないです...) なのでServletフィルタで
ログイン処理を実装し、NetBeansで作成したVisual Webアプリにセットするという
アプローチです。
で、実装ですが、まずは工藤さんの記事で紹介されている
OpenSSOFilter.javaと
OpenSSOUtil.javaの中身を眺め、今回は超お手軽に実装ということで、
OpenSSOUtil.javaをほぼそのまま使ってフィルタ本体を以下のように簡易実装しました。
private String serviceUrl = "http://sp.example.net:9090/opensso-sp";
public void doFilter(ServletRequest xRequest, ServletResponse xResponse,
FilterChain chain)
throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) xRequest;
HttpServletResponse response = (HttpServletResponse) xResponse;
if (isAuthenticated(request)) {
try {
chain.doFilter(request, response);
} catch (Throwable t) {
problem = t;
t.printStackTrace();
}
} else {
response.sendRedirect(serviceUrl + "/UI/Login?goto=" +
request.getRequestURL().toString());
}
}
内容は簡単なので特に説明は不要だとは思いますが念のため書いておくと、
isAuthenticated()でクッキーからトークンを取得してバリデーションする
処理が走り、認証されればWebアプリ本体へ処理を渡し、認証されなければ
gotoで戻り先を指定してOpenSSOにリダイレクトします。文章でさらっと書いて
しまいましたが、isAuthenticated()の中身は
OpenSSOUtil.javaを見てください。
NetBeansのVisual Webアプリケーションのプロジェクトでアプリとフィルタを
作っていったのですが本当に簡単ですね。
今回は
OpenSSOUtil.javaからアイデンティティ・サービスをRESTで使ってみた
のですが、NetBeansでアイデンティティ・サービスのWSDLを読み込んでWebサービス
クライアントを自動作成し、さらにソースコードエディタ上で右クリックして
Webサービス呼び出し部分のコードのテンプレートを自動作成してしまえば
SOAP呼び出しも簡単に実装することができます。
後でSAML 2.0のフェデレーションも試してみたかったので、工藤さんの
こちらと
こちらの
記事を参考にOpenSSOの環境を事前にセットアップし、完成したWebアプリをデプロイして動作を確認します。
NetBeansを使えばビルドからデプロイもとても簡単です。
ブラウザでURLを入力すると、OpenSSOのID/パスワード入力画面が表示され、
認証された後にWebアプリにアクセスが可能になります。認証されなければ
Webアプリにアクセスできません。更に、別のWebアプリを作って、こちらにも
フィルタをセットしてデプロイすれば、お手軽シングルサインオン環境が完成です。
あたりまえの動作ですが、こんな簡単でいいの?というのが実感ですね。
通常のWebアプリではOpenSSOが提供するポリシーエージェントを使えば
カスタムな認証部分を作らなくて済むケースがほとんどだと思いますが、
例えば、これまでの社内標準化の取り組みで認証基盤を独自に手作りして使ってきたような
ケースでは、OpenSSOのアイデンティティ・サービスをうまく使って既存の
認証基盤をOpenSSO配下に統合していくようなアプローチは有効だと思います。
一旦、OpenSSO配下に入ってしまえば、OpenSSOが提供する機能を利用して、
他のIDPとのフェデレーションであったり、WindowsログオンでのSSO、
いわゆるWindowsデスクトップ・シングル・サインオンの機能を実現したり、
今後の展開の可能性を大きく広げることができます。
OpenSSOが機能を提供している認証/認可の技術エリアは、アイデンティティ情報を管理する側と、
管理されたアイデンティティ情報をベースにサービスを提供する側の接点となり、
両側の思惑がぶつかる部分ですので、将来的に柔軟な対応が可能な作りにしておくことが
とても重要だと思います。
最近、認証/認可に関するエリアの話が多くなってきているのですが、時々、
OpenID vs OpenSSO (正確にはOpenID vs SAML 2.0だと思いますが...) のような
話され方をしてしまうのは残念に思います。決して相反するものではなく、
互いに補完しあえるものだと思います。RubyとJavaのように。事実、OpenSSOでは
OpenIDのextentionでOpenIDのOPを実現することも可能になっていますからね。
さぁ、次はフェデレーションにチャレンジだ。
「Mashupの現在と今後」と題して、CodeZineに記事を執筆しました。よかったら読んでやってください。Codezineへの掲載が確定後に執筆した訳ではないので
もしかしたらCodeZineの読者には内容がGeneral過ぎかもしれませんが、感想等コメント頂けると嬉しいです。
|
All open databases are equal in front of the developers community. This is the message launched by Baron Schwartz in his announcement of the first Open SQL Camp.
After the last MySQL Users Conference, there were some talks of alternative conferences organized by the users for users. This is the first such event. It will be held in Charlottesville, VA, USA, November 14-16, 2008.
|
Users, in the context of databases, especially open ones, means developers. Do you feel like hacking some database project? If your database of choice is open (MySQL, PostgreSQL, JavaDB, SQLite, Firebird), you may give the OpenSQLCamp a try!
Eve Maler's latest
Venn diagram highlights a crucial characteristic common to the disciplines of Digital Identity Management, Social Networking and VRM - that "differentiated app behavior" depends on "special aspects of you."
Although Eve mentions personalization only with regards to Digital Identity Management, I propose that the Venn intersection indeed represents personalization for all three disciplines - making the functionality and performance of network applications highly personalized - responsive to and adapted to individual attributes, context, preference and permission.
Technorati Tags:
Identity,
Identity Management,
Digital Identity,
Social Networking,
VRM,
Eve Maler
NetBeans 6.5 で詳細オプションはなくなるの?というのを以前書いたのですが、バグレポートをいろいろ調べてみるとこの詳細オプションをなくす計画はずいぶん前からあったのですね。アンブレラバグとして以下が登録されていました。このバグが依存するバグはバグレポートの「
依存ツリー」をクリックすると見ることができます。
NetBeans のモジュールが詳細オプションを使わずに新しいオプションを使うようにすべて変更されたのですね。「詳細オプション」がなくなった、というのは正確には間違っていて現在インストールされているモジュールには詳細オプションで設定する項目がない、ということですね。プラグインなどによっては詳細オプションを使う場合にはこのボタンが復活するようです。
以下は NetBeans 6.5 の開発ビルドに
jVi プラグインをインストールしたときのオプション画面です。左下に「詳細オプション」ボタンが復活していますね。これを押すと…

このように詳細オプションに jVi プラグインのオプションのみ表示されここで設定できるようになります。
I recently purchased a
finch feeder and hung it on the railing
of our upstairs deck - well above where the neighborhood cats lurk. Living on
the
Guadalupe River in San Jose, California, our yard is home to wild birds of
all kinds. This is at least the third finch feeder in our immediate neighborhood -
Jamie has one and Linda does too - but there seem to be more than enough little
birds for everyone.
The lady in the shop where I bought the feeder said there are seven types
of finches in California. She recommended Nyjer Thistle (or black thistle)
seeds as a favorite food. No finches showed interest when we first put up the
feeder; however, a month later the little greedy guts are going through a full
tube of seed every few days. The brick walkway below the feeder is black with seed
chaff.
The finches constantly squabble and peck and peep at each other when not
actually eating. They do not seem to care whether they are up, down, or sideways
when eating. They look around and shift position regularly and all flit off at any
danger sign. (We slowly sneak up on them to take pictures.) I feel peaceful watching
these lovely little birds.
Images Copyright 2008 by Katy Dickinson and John Plocher
私事ですが、勤務地が大阪から東京に変わりました。
せっかくなので、大阪勤務時に見つけたお気に入りを
少しだけアップしておきたいと思います。
ペリーのいくら丼 :
結構頻繁に行ってました。価格がお手頃でおいしい。
夏前の時期限定でウニ丼が食べれるのですが、これが非常に良いです。
この時期になるとかなりの頻度で通ってたような…。^-^;
河童ラーメン(とんこつ醤油系)と四川辣麺(担々麺):
河童ラーメンは自分にとって便利な場所にあったので、たまに行ってました。
四川辣麺は新味が好みかな。オプションのタマゴがおすすめ。
脇田屋:焼き肉です。ここの味噌だれがおいしい。
炭火ですが、カルビ系を焼くを火を噴きます(汗。
おまけ:奈良の地酒だったかなぁ? スパークリング日本酒というやつです。
甘いのでアルコール系はそれほど飲めない私でも飲みやすかったです。
#次回以降はもうちょっとちゃんとした更新できれば…と思ってます。
In my last entry, "CL" posted a comment wanting more to see more examples of Windows media redirection. Here's another video showing a variety of clips. Talking heads, animation, a couple of VC-1 live streams. Enjoy. Still have the dog barking at the tripod problem, so I apologize for some of the shaky parts. Take a Dramamine if you get queasy. If you want to watch this in a bit better quality, follow this link and click on the "watch in high quality" link once you get into YouTube (right under the "Views" number).
It's been over a month (and three hurricanes in America) since I've posted a blog. More than a few of you've noticed - thanks for the prodding...
It's been a busy summer, on nearly every front. Customer activity hasn't slowed down, and the good news surrounding the (otherwise unfortunate) economic crisis embroiling many customers (especially those in the financial services industry, a heavy concentration for Sun) is that it's whipping up the winds of change. Customers facing spending pressure, or tiring of vendor price increases have new options, and there's a new appetite to explore those options (nothing like mandates from the CEO to reduce spending by 50%).
One of my more interesting recent meetings wasn't with a customer, though, it was with an equity analyst from a global financial institution. Equity analysts publish research that feeds the investment community - their (free) research and financial analysis accompanies buy/hold/sell recommendations to investors (who hopefully generate trading fees for the analyst's employers).
This one analyst hadn't historically followed Sun, and was in the process of developing his first rating. He wanted to focus on our storage plans - more and more of the customers whom he interviewed were focused on storage, and many were talking up a specific open source software technology: ZFS. (Before meeting with me, he'd talked to colleagues in his own IT shop, and was impressed to find some who admitted to running ZFS at home - nothing like touching your customers where they live... if you'd like to have ZFS sent to you, click here or on the LiveCD shown at right.)
Granted, you can see an increasing focus on storage at Sun - the acquisition of MySQL is as much a storage acquisition, as an enhancement to Sun's developer offerings. Discussions of flash memory, the economics of archiving, the Lustre parallel file system, all point to an increasing focus on what Sun sees as an exceptional opportunity for customers (and thus, investors). Storage and computing are converging - and we're about to bring the trends that transformed the server industry a few years ago (mass engagement in open development communities, and scale achieved via clusters of commodity parts vs. proprietary technologies) to the historically closed and proprietary storage industry.
Now, the notion of "engaging customers in open development communities" doesn't sit well among some traditional storage analysts (or our competition) who believe "Storage is too mission critical to tolerate open source software." Although I appreciate that wisdom and experience, I think the market's more nuanced than that - mission critical environments don't tolerate unsupported software, true, which is why we offer 24x7 commercial support for ZFS (on Sun hardware, and Dell, even). But broad global adoption of key open source projects will continue to drive change deep into the world's datacenters. Gartner's prediction that 90% of world's companies will run open source software didn't specify where they'd be running it - "everywhere" is the safest bet.
But back to the equity analyst - he patiently asked, "Great theory, but when will you see revenue results?"
"Last year," I responded. "You're seeing it accelerate."
As many folks know, we shipped our first ZFS based storage systems in 2007 - known as Thumpers. Thumpers finished up this last year generating around $100m in billings, up 80% year over year. From a capacity perspective, we delivered roughly 90 petabytes of Thumper storage in FY2008, to some of the most demanding storage installations on earth (up ~200% y/y). What's fueling the growth? Adoption of ZFS is a clear driver (this chart gives you a sense of where we're seeing adoption - thus revenue opportunity). But ultimately, customers are recognizing they can save money, space and power. Thumpers are roughly twice the capacity in half the space at half the cost of the competition - $1.20/Gigabyte. (They also run Windows and Linux with the same hardware economics).
Now, our view is "OpenStorage" (systems built from commodity parts and open source software) will grow far faster than the proprietary storage market. We plan on driving that growth, and over the next few months, you'll see a tremendous amount of storage innovation targeting the growing breadth of customers wanting better/faster/cheaper/smaller options. Expect to see flash, zfs, dtrace, and good old fashioned systems engineering play a very prominent role in an aggressive push into the storage market.
And in case you missed our announcement last week, our progress was validated by industry analysis - IDC said customers are growing their disk storage business with Sun far faster than with any of our proprietary competition. And at three times the rate of the overall market's growth. A great place to start.
If you'd like to know more, and might be interested in taking a Thumper system for a free trial run, just click here and pick the country in which you're located. We supply most systems at Sun for free trials across the globe (yes, we even cover shipping to you). If you like the system, please buy it. If not, we'll take care of getting it returned to Sun, you owe us nothing. (That's the closest we can get to free hardware downloads...)
As I said to the analyst, you need only look to the results we're already delivering to see the linkage between open innovation and revenue growth. ZFS won't transform demand for our legacy products, but it'll certainly transform the opportunity and industry unfolding before us. But don't just get our opinion, the best folks to validate our approach aren't at Sun, they're among the storage buyers finally feeling the winds of change - at their backs.
The folks at BackfencePDX published one of my stories for their event theme of "Just Can't Get Enough."
So, I called it Seven Meals from Chaos, which is kind of a take-off on a newspaper story I read called "Nine Meals from Anarchy." I think it turned out well and I got some good comments already. Enjoy!
http://backfencepdx.wordpress.com/2008/08/27/just-cant-get-enough/
I am discussing how to run a translation project for OpenSolaris community. The target is manual pages. It may sound strange, but I like the manual pages very much. They serve as the quick reference as well as the most detailed dictionary of commands. As a technical translator, this is so challenging because it is a summary of that command's function and written with an assumption that the user already knows the related commands. When translating manual pages, I have to use all of my brains and imagine what they are all about. If I do not understand one sentence, usually, the next one will illustrate or expand it's meaning, but in a manual page, the next one almost always tells another story... That's why I like them! It's like an exam to check how much I know about the software and how it works; as if it challenges me "You may not know, but this command works this way...", then, I feel I have to answer "Oh, I know!!! "
I know OpenSolaris manual pages have lots to be translated. I looked for the possibilities to translate them internally at Sun, but it turned out not promising for resource limitations. Then I thought, how about translating them with community ? I want to translate and read them in my language!
Now I am working with Japanese OpenSolaris engineer, Takeshi Asano, who is in the same organization (Globalization) to determine the project's basics. What should be the source format ? How to translate them ? How can we share the accomplishment ? Can we include them in OpenSolaris build ?
The possible choice is to convert .roff format into .po format and translate .po. We confirmed it is possible but we have not reached how we can share the translation. .po can be converted back to .roff, and .roff can be viewed by catman. The concern is the way to view .roff in a printable format. Yes, we can convert them manually in "our" environment, but I want that be possible by "externally" by anyone of the community. I know I know, it is not so easy.
Another option is to convert .roff into the text (wiki) format. It is easy to translate and share/view the translation in a manual page format (catman).
Advantage of Option 1 is that the translated roff can be integrated into the build easily and that translated po can be converted into translation memory (TM). It would be great if a translator uses translation memory tool, such as OmegaT, but even if she/he does not use it, we can generate "alignment TM" from po files. Advantage of Option 2 is off course the ease of use (translation and view). Disadvantage of Option 2 is, if we try to integrate them in the build and create a memory, we have to do them all manually...
Well, I will wait for the reply from Takeshi, and decide which way to go this week or the next. If anybody comes up with another idea, please let me know !
日本語:
今、OpenSolaris の翻訳プロジェクトをどう進めるかを話し合っています。翻訳対象は、マンページ! (ドキュメントでは「マニュアルページ」と書いていますが、話すときは絶対! 「マンページ」ですよねぇ。) こう言うとちょっとヘンかもしれませんが、わたしはマンページ大好き! ユーザーとしては、困ったときにぱっと man コマンドで見ることのできる辞書といった頼れる存在で、翻訳する者としては、闘志をかき立てられる手強い存在です。だってマンページって、読む人は関連するコマンドは知っているものとしてどんどん話を進めていくんですもの。訳すときは、これまで学んだことを総動員して想像力を使いまくって挑みます。普通、ひとつの文がわからなかったら、その次の文で説明するなり関連のある内容を書くなりしているものですが、マンページは「ところで」っていうかんじで次の文章が始まるんですよね... だから好きなんだけど。そのクールさが。まるで「こんなこと知ってる?」と試されるようで、「ええ、知ってますとも!」と受けて立ちたくなってしまいます。
OpenSolaris のマンページはまだ訳されていないものがたくさんあります。最初、社内で訳す方法がないか調べてみましたが、リソースが足りなくて、難しそうです。ならば、コミュニティーで訳せないかな!? と思ったのでした。マンページ訳したいし、日本語で読みたいんだもの。
そこで、日本語 OpenSolaris のエンジニア、浅野剛さんと、どうやってプロジェクトを進めるかを話し合っています。どのフォーマットの英語ファイルを対象にするか ? 翻訳するのはどのフォーマットで ? どう翻訳するか ? 成果はどう共有するか? OpenSolaris のビルドには入れられないか ? などなど...
一つめの方法は、.roff フォーマットを .po に変えて、.po を翻訳するというもの。変換自体は成功することを確認済みなのですが、翻訳成果をどうやって共有 (参照可能に) するか、まだ道が見えていません。.po を .roff に戻して、catman で表示させたものをテキストにしてアップロードしたいんだけど... この作業は社内の環境で人が手でやるなら可能です。でも、それだとタイムリーにできないしねぇ。わたしは、翻訳したらすぐに catman でフォーマットしたものを見たいんですよ。。。そのための仕組みが必要になるんだけどね。
もう一つの方法は、.roff を wiki に変えて翻訳するというものです。翻訳も参照もしやすい (表示形式で訳すから) から、いいよね。でも、その後、どうやってビルドに入れるか、どうやって翻訳メモリーを作るか、が課題です。
一つめの方法のいいところは、翻訳した po を roff に戻せば、その roff はビルドに入れられること、翻訳した po からはメモリーが作りやすいことです。翻訳にメモリーツールを使ってもらえればいいけど、そうでなくても、翻訳結果から alignment TM というメモリーを作ることができます。
こんなことを浅野さんと話し合っているのです。今週か来週には、どうするか決めようと思っています。もしほかにアイデアがあったら、是非教えてください!
This week I attended the 3GSM World Congress (usually just called "3GSM") in Barcelona, Spain. 3GSM bills itself as "the most important gathering for the mobile industry" and it's pretty hard to argue with that. Most of my time was spent meeting with partners, customers, potential partners, and potential customers, but I did have some time to explore the exhibit halls. That exploration was constrained to be cursory as the exhibits covered four floors in three large and separate buildings and housed several hundred vendors. Even if I had made it a full time job for the three days I was there I could hardly have made a thorough investigation. However, zooming through quickly does offer an opportunity to do some visual integration of what's on display and from that I extracted a few observations to share.
First and foremost, I'd say the Age of Entertainment is upon us thanks to a happy convergence of relatively recent progress on three fronts. Handset manufactures are now producing mobile phones with sufficient multimedia capabiliites and on-board storage that they can run engaging games, receive captivating video streams, and play CD-quality music. Our cellular networks now have the bandwidth to drive that volume of information to devices at a price point that people will find acceptible. And there's enough motivation among game, video, and music creators to begin capitalizing on the opportunity by creating content well suited for delivery and consumption by mobile consumers. Better still, it's a win-win-win-win situation for everyone involved. Device manufacturers offer these features as enticements to trade in last year's cell phone, carriers thrill in the increased consumption of billable connect minutes, content providers have sufficient markets to generate positive return on their creative investment, and humans in general have the ability to be truly and affordably entertained any time, anywhere.
It seems to me the key concept here is "entertainment". It's what binds all these communities together and creates the ecosystem that can sustain them. Yes, there are some other active and interesting markets - one oft-cited example being mobile enterprise applications such as corporate email, group scheduling, and document sharing - but I think the practical maximum demand in that market pales in comparison to entertainment.
3GSM was awash in folks offering to contribute to the entertainment ecosystem. I was pleasantly surprised at the number of new and speculative device manufactures. Little companies were everywhere offering interesting alternatives to the traditional phone vendors, in some cases banding together to form groups around common platforms like Linux. And the established heavy hitters weren't resting on their planet-sized laurels either. Sony Ericsson seems to have become a veritable volcano of devices, erupting new ones almost continuously. Models that premiered last November are now being swept aside by new versions both major and minor, with obvious emphasis on combining phone, digital camera, music player, and TV. I had the pleasure of borrowing a Sony W900i (new at Thanksgiving but now surpassed) for my time at 3GSM. It has a high quality 240x320 display with powerful on-board graphics controller, 2 megapixel camera, built in music player with a separate control panel spliced into the headset cable, 470Mb of storage for music & media, Bluetooth, Java ME support, Memory Stick slot for accessing all your media, and it still fit comfortably in my pocket.
The producer end of the ecosystem was also present in force. Most of them were concentrated in a special "Content Zone", largely because a thriving subsegment is populated by "adult entertainment" and let's just say their booths were not the kind of thing you wanted people to accidentally wander into. Games were everywhere. Serialized content was hot as well, with many companies specializing in animated episodic entertainment built around characters like "Cat Bastard" and "Suicidal Squirrels". (Think of it as if new "Itchy and Scratchy" cartoons were pushed out to your phone every two weeks.). Vendors specialize in helping content creators package their media so as to reach the largest possible range of devices and carriers, and extend thriving mainstream developer tools like NetBeans to serve the mobile market.
Carriers get he