Main

August 30, 2008

Ubiquity

"Today we’re announcing the launch of Ubiquity, a Mozilla Labs experiment into connecting the Web with language in an attempt to find new user interfaces that could make it possible for everyone to do common Web tasks more quickly and easily."

.. interesting .. check out the screen-cast ..

December 18, 2007

Google Developer Podcast about Android

"Podcast Episode Twelve: Android with Dianne Hackborn and Jason Parks."

.. they talk about some interesting concepts that are part of the UI architecture of Android; like "activity" or "intent" ..

November 05, 2007

Processing

"Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool. Processing is developed by artists and designers as an alternative to proprietary software tools in the same domain."

.. by far the most sophisticated domain language .. and the results artists and designer "program" with that IDE are just beautiful ..

November 03, 2007

I almost forgot about Objective-C

"The introduction of automatic memory management is the most significant change to the Objective-C 2.0 runtime."

.. an overview of different interesting new features in Objective-C 2.0 .. too bad the language is only "accepted" on OS X ..

July 01, 2007

Enunciate

"Enunciate is a Web service deployment framework. It is not another Web service stack implementation. Rather, Enunciate leverages existing Web service technologies to provide a mechanism to build, package, deploy, and to clearly, accurately deliver your Web service API on the Java platform."

.. looks promising ..

May 24, 2007

Scratch

"Scratch is a new programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share your creations on the web.

Scratch is designed to help young people (ages 8 and up) develop 21st century learning skills. As they create Scratch projects, young people learn important mathematical and computational ideas, while also gaining a deeper understanding of the process of design. "

.. I want to be a young again! ..

March 30, 2007

Introducing the Yahoo! Mail Web Service

"The Yahoo! Mail Web Service is a big release for Yahoo! and the Internet, and it's only the beginning of what you'll be seeing from Yahoo!. Jump into our code samples for Java, .NET, PHP, Perl and Python, and build your dream mail app today, then be sure to give us feedback on your experience so we can continue to make the API even better. Be sure to leverage the online Yahoo! Mail Web Service support group where you can get help from the Yahoo! Mail Web Service team and your fellow developers. We can't wait to see what applications you will build when you add your imagination to the platform. Maybe you want to build an application that backs up Yahoo! mail targeted at a large number of Yahoo! users, or maybe you just want to add a niche feature that makes Yahoo! Mail better for your mom. For inspiration, we've gathered a few applications:

You can watch a short screencast here (or download the full video) with Ryan Kennedy as he explains more about the Yahoo! Mail Web Service in detail.

And Hack Day hacker Leah Culver demonstrates her Flickr Postcard hack which uses Yahoo! Mail Web Service too (full download here):

Chad Dickerson, Head of Yahoo! Developer Network"

(Via Yahoo! Web Services blog.)

.. interesting .. new-world access to old-world-mail-technology .. will be interesting to see what people will build with it ..

March 22, 2007

A demo of Pipes

"Pasha Sadri and Ed Ho gave YDN a complete walk-through of Pipes. Ed first showed us how to create a Pipe and shared some examples of clever ways to use it. Pasha then explained some of the thinking behind Pipes and how it was conceived.

The demo is also available on Yahoo! Video here."

(Via Yahoo! Web Services blog.)

March 19, 2007

First Alpha Version of Adobe Apollo available

"Apollo is the code name for a cross-operating system runtime being developed by Adobe that allows developers to leverage their existing web development skills (Flash, Flex, HTML, JavaScript, Ajax) to build and deploy rich Internet applications (RIAs) to the desktop.

Apollo enables developers to create applications that combine the benefits of web applications – network and user connectivity, rich media content, ease of development, and broad reach – with the strengths of desktop applications – application interactions, local resource access, personal settings, powerful functionality, and rich interactive experiences."

.. finally, they made an early alpha version available :-) .. lets play ..

March 15, 2007

XULRunner

"XULRunner is a Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications that are as rich as Firefox and Thunderbird. It will provide mechanisms for installing, upgrading, and uninstalling these applications. XULRunner will also provide libxul, a solution which allows the embedding of Mozilla technologies in other projects and products."

.. I completely forgot about Mozilla XULRunner, a runtime environment for smart clients, until I heard that Joost seems to be based on it ..

February 25, 2007

Web 2.0 ... The Machine is Us/ing Us

A Kansas State anthropology professor, Michael Wesch put together a great video describing the meaning behind Web 2.0.

Free Hosting of YUI Files from Yahoo

Free Hosting of YUI Files from Yahoo: "Coinciding with this week’s release of YUI version 2.2.0, the one year anniversary of the YUI open-source release, and as announced at the YUI Party just moments ago, we’re opening up free YUI hosting from the Yahoo! network to all YUI implementers. If you’re using YUI for your own project, we’ll serve the files for you — gzipped, with good cache-control, using our state-of-the-art network, for free. You can count on these files being continuously available because they’re the same files, served by the same source, that we use for most YUI implementations at Yahoo!."

(Via Yahoo! User Interface Blog.)

.. another interesting Yahoo announcement .. don't know yet, how that all fits together .. what is Yahoo's strategy? ..

January 10, 2007

Goodbye Google SOAP API

Goodbye Google SOAP API: "Radar blog pointed out that Google deprecated their SOAP search API (see also Philipp Lenssen). If you go to the SOAP Search API homepage you’ll see the message ‘As of December 5, 2006, we are no longer issuing new API keys for the SOAP Search API. Developers with existing SOAP Search API keys will not be affected.’ Instead, Google is recommending that developers use their Ajax Search API (an example of which is shown below)."

(Via programmableweb.)

.. don't exactly know what to take out of this ..

November 24, 2006

Open source hardware, software and more for the holidays

The Open source gift guide:

"There are hundreds of gift guides this holiday season filled with junk you can buy - but a lot of time you actually don't own it, you can't improve upon it, you can't share it or make it better, you certainly can't post the plans, schematics and source code either. We want to change that, we've put together our picks of interesting open source hardware projects, open source software, services and things that have the Maker-spirit of open source. Some are kits, some are open software projects that you'll need to build hardware for before gifting, and some are just support for the projects/groups that do open source. Included in this guide are things you can get from the MAKE store too (we try and have as many open source goods as possible)."

(Via MAKE Magazine.)

.. simple hardware + internet .. definitely a powerful combination ..

November 11, 2006

Grails

"Grails aims to bring the 'coding by convention' paradigm to Groovy . It's an open-source web application framework that leverages the Groovy language and complements Java Web development. You can use Grails as a standalone development environment that hides all configuration details or integrate your Java business logic. Grails aims to make development as simple as possible and hence should appeal to a wide range of developers not just those from the Java community."

.. pretty impressive "competitor" to Ruby On Rails! .. and it's all Java, easy deployable on any JavaEE server, like Tomcat .. I started by reading the excellent introduction by Harshad Oak ..

October 11, 2006

Konfabulator for TV

"YBox is a prototype/proof-of-concept for an ultra-cheap, always on, internet appliance that attaches to a standard TV set. The YBox is like Konfabulator for TV, turning TV into a platform for helpful, easy-to-read, live internet "channels". It was created for Yahoo's first open "hack day", Hackday 2006, where it took 2nd place."

.. just an interesting "client" .. I'm pretty sure, we will see more of those "things" connected to the internet .. another example: chumby ..

.. by the way, the YBox is a project of a company named Uncommon Projects .. cool name ..

September 22, 2006

Social networks and phishing

Social networks and phishing:

"This 'Social Phishing' paper (PDF) that will appear in an upcoming issue of Communications of the ACM is frightening. It describes very successful phishing attacks using information pulled off social networking sites.

From the paper:
The question we ask here is how easily and how effectively a phisher can exploit social network data found on the Internet to increase the yield of a phishing attack. The answer, as it turns out, is: very easily and very effectively.

Our study suggests that Internet users may be over four times as likely to become victims if they are solicited by someone appearing to be a known acquaintance.

To mine information about relationships and common interests in a group or community, a phisher need only look at any one of a growing number of social network sites, such as Friendster (friendster.com), MySpace (myspace.com), Facebook (facebook.com), Orkut (orkut.com), and LinkedIn (linkedin.com). All these sites identify 'circles of friends' which allow a phisher to harvest large amounts of reliable social network information.

The experiment spoofed an email message between two friends, whom we will refer to as Alice and Bob. The recipient, Bob, was redirected to a phishing site with a domain name clearly distinct from Indiana University; this site prompted him to enter his secure University credentials. In a control group, subjects received the same message from an unknown fictitious person with a University email address.

The 4.5-fold difference between the social network group and the control group is noteworthy. The social network group's success rate (72%) was much higher than we had anticipated.
When they received the e-mail to go to this non-University website, 349 of the 487 students targeted provided their University username and password. Remarkable and frightening.

The paper contains other interesting details such as differences in success rates according to field of study and gender of sender and receiver.

See also a Google Tech Talk on Google Video, 'Badvertisements: Stealthy Click Fraud with Unwitting Accessories', by Markus Jakobsson, one of the authors of the paper, that discusses this phishing study and some of his other work on click fraud.

Update: If you liked this, don't miss Markus' demonstration of a crafty CSS/Javascript hack that reveals parts of your browser history. To see it, click on the 'View' link on the right side of his page."

(Via Geeking with Greg.)

.. once again an interesting posting by Greg .. thanks! ..

September 13, 2006

New Paper about AppleScript

AppleScript - a story worth telling (.pdf)

"... On a technical level, its model of pluggable embedded scripting languages has become commonplace. The communication mechanism of Apple Events, which is certainly inferior to RPC mechanisms for single-machine or in-process interactions, may turn out to be a good model for web services. Many of the current problems in AppleScript can be traced to the use of syntax based on natural language; however, the ability to create pluggable dialects may provide a solution in the future, by creating a new syntax based on more conventional programming language styles...."

(Via Lambda the Ultimate - Programming Languages Weblog.)

.. that paper provides a perfect overview of AppleScript .. it's not just an extensible language, but also an interesting architecture .. I own different AppleScript books .. just to sometimes "borrow" some of its brilliant ideas and concepts ..

August 24, 2006

Amazon EC2

"Amazon Elastic Compute Cloud / EC2 is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers."

"...Amazon EC2 allows you to set up and configure everything about your instances from your operating system up to your applications. An Amazon Machine Image (AMI) is simply a packaged-up environment that includes all the necessary bits to set up and boot your instance."

.. I know, again Amazon, but they are doing quite fancy stuff .. I definitely have to check this out, the whole concept of deployable "AMI"s sounds pretty interesting .. technical documents can be found here ..

August 04, 2006

Amazon: monetizing Web 2.0 with … money

Monetizing Web 2.0: "I've often complained that the business model of most companies publishing Web 2.0 APIs — even Google — is generally, 'Let's put it out there, we'll figure out how to make money from it later on.' The exception is Amazon Web Services. All its API services are designed from the outset to make money."

.. I probably repeat myself .. but I just like that business model just better than some fancy advertisement based model or some everything is free thinking .. but unfortunately that doesn't necessarily mean, that it will be successful ..

August 03, 2006

Multi-Touch Interaction Research

Multi-Touch Interaction Research: "While touch sensing is commonplace for single points of contact, multi-touch sensing enables a user to interact with a system with more than one finger at a time, as in chording and bi-manual operations. Such sensing devices are inherently also able to accommodate multiple users simultaneously, which is especially useful for larger interaction scenarios such as interactive walls and tabletops"

.. definitely the UI everyone of us wants to get, everyone is dreaming of .. additional to the video on the research page above, check the video from a presentation from Jeff Han at the recent TEDTalks conference .. unbelieveable cool ..

August 02, 2006

Welcome to Distributed Systems Engineering at Amazon.com

Welcome to Distributed Systems Engineering at Amazon.com: "Amazon.com's website is the front-end to one of the world's largest service-oriented architectures. As a member of Distributed Systems Engineering (DSE) you will push the envelope with a mixture of forward-looking and tactical projects that span Amazon's systems and push the boundaries of distributed systems for scope, size, and scale. DSE programs and teams include Data Persistence, Messaging, Discovery, Request Routing, Caching, Log Architecture, Work Flow, Rendering, Modelling and Effective Service Patterns."

.. that now looks much more professional ..

June 30, 2006

Openfount

"Openfount supplies the tools to make it easy to develop and deploy an Ajax application to Amazon S3. The trick is how to process requests from clients.

The Queued Server solves this problem by using S3 as a queue to process requests. When the Ajax client requests a service, instead of contacting the service directly, the request is written to S3. The client then polls S3 for the response. A server is started up anywhere on the internet to process the requests, and to write the responses to S3, which the Ajax client then picks up."

.. another interesting use-case for S3 ..

June 27, 2006

Fjax

"Fjax is the lightweight, cross-browser, rapid-development methodology for Ajax-style web 2.0 development that puts a Flash engine under the hood (not in the presentation layer – read on) to handle realtime XML/HTML content updating."

.. an interesting combination of "competing" technologies ..

May 23, 2006

Another It - Sphere It

Another on of those "It"s .. but this one seems to be worth checking out .. go to the sphere website and drag the "sphere it" button to your browser toolbar .. now every time you read something interesting on a web page, just click on "sphere it" and see what bloggers write about that in their blogs .. pretty cool .. a nicely integrated blog search engine! .. wake up technorati ..

May 13, 2006

Wow: 3D operating system, Open Croquet

Wow: 3D operating system, Open Croquet: "Were getting a demo of Croquet from Julian Lombardi and David Smith of Open Croquet, which is a 3D world. Something like Second Life, but runs P2P.

We have just seen a new world. You have just witnessed' one of the first public demos of a 3D hyperlink in the system. You can walk from world-to-world. You can collaborate with people in new ways.....

This is funded by Alan Kay, by the way. Should tell you something about the vision behind this. The company is Qwaq."

(Via Scobleizer - Microsoft Geek Blogger.)

.. just to keep the whole 3D world thing going .. and it's P2P ..

BBC starts to rock online world

BBC starts to rock online world: "The BBC has staked a claim to a virtual tropical island where it can stage online music festivals and throw exclusive celebrity parties.

The rented island exists in online game Second Life and will hold its first event this weekend with bands including Muse, Razorlight and Gnarls Barkley.

The virtual party will mirror BBC Radio 1's real-world, One Big Weekend event, being held in Dundee from 12 May.

Radio 1 plans to use the island to debut new bands over the next year."

(Via BBC News.)

Another article about that event (Via Wonderland).

.. the whole virtual world business is getting serious .. those Second Life developers put some fascinating, extendable technology in place .. I still haven't tried out Second Life yet .. I probably should ..

May 03, 2006

Swing Application Framework JSR

Swing Application Framework JSR: "A new JSR aims to define a standard application framework for rich-client and desktop Java applications. JSR 296 'will define infrastructure common to most desktop applications. In so doing, Swing applications will be easier to create.'"

(Via Artima Developer Spotlight.)

April 26, 2006

Glimpse Inside a Metaverse: The Virtual World of Second Life

A video of a recent TechTalk at Google by Philip Rosedale and Cory Ondrejka from Linden Lab, the makers of Second Life.

April 12, 2006

Paying For Web Services

Paying For Web Services -- Easier Than You Think?: "Amazon's new S3 service is available on a pay-as-you-go basis. This is commonly called utility computing; it is totally analogous to the way in which you pay for the water, electricity, and natural gas that you use in your home."

.. interesting post .. it just shows one of the most important assets of Amazon: the technology, including processes, they accumulate in the huge space of Web Services .. the book store, just a cool test-case for their technology ..

April 02, 2006

Alexa Web Search Platform

"The Alexa Web Search Platform provides public access to the vast web crawl collected by Alexa Internet. Users can search and process billions of documents -- even create their own search engines -- using Alexa's search and publication tools. Alexa provides compute and storage resources that allow users to quickly process and store large amounts of web data. Users can view the results of their processes interactively, transfer the results to their home machine, or publish them as a new web service."

.. an other interesting WebService-offering from Amazon .. too bad, it requires C .. but definitely have to read the manual ..

March 29, 2006

goowy

goowy: "Manage your personal communications including advanced email, contacts, calendar, and integrated instant messaging (coming soon) all from one place anytime, anywhere.

Organize your digital content using our virtual file storage (coming soon). Upload your music, pictures, documents and more. Access and share your files from any computer.

Get all of your information from across the web in one place by using our Minis for weather, news, rss, flickr, itunes, audio, video, bookmarks, to dos, stock quotes and more!"

.. pretty impressive set of features .. and nicely made, based on FlashPlayer .. how long does it take until Google buys them? .. would definitely be a nice platform for a Web-based Operating System ..

March 14, 2006

Amazon Web Services Store: S3

"Amazon S3 is storage for the Internet. It is designed to make web-scale computing easier for developers.

Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. The service aims to maximize benefits of scale and to pass those benefits on to developers."

.. that is a pretty cool thing .. a platform for innovation .. you can store up to 5 GByte per object .. it even offers Bit-Torrent access .. pay as you go .. offered by Amazon Digital Services ..

March 09, 2006

Ning Developer - Screencast

"In 6 minutes, we go from scratch to a simple Photo Sharing App: with photo uploading, display, and a content manager interface. Then we'll show you how easy it is to add photo feeds from Flickr right there on the page."

.. quite interesting demo, interesting approach .. but is it a killer-app? .. don't really know ..

MoMB

MoMB, "The Museum of Modern Betas" the perfect place to get an overview of all the new web-based applications. Cool!

Writely uses .NET

Congrats to Writely: "Congrats to the team who made Writely for getting acquired by Google. They built it in .NET. It used to be uncool to startup a company with Microsoft technologies, but I’ve seen more and more .NET stuff being done in the Valley. Who’s next?"

(Via Scobleizer - Microsoft Geek Blogger.)

.. who have thought .. and it proves that .NET doesn't necessarily mean IE-only ;-) ..

February 15, 2006

7 Ways to Limit API Use

"Nearly all API providers place some sort of usage limits on their APIs. While not getting into the reasons why they do this — be it controlling costs, preventing abuse or other — it wasn’t until this week while updating the API database that I realized just how many ways this can be done. Here’s a sampling that shows the types and some representative examples:

  • Time based limits: 1 call per second (Last.fm)
  • Call Volume by Address: 5,000 queries per IP per day (Yahoo! Image Search)
  • Call volume per-application: 10,000 queries per application per day (MSN Search)
  • Return results volume: 10 results per query (Google Search), 100 items returned per call (Tailrank), 100 blogs per map (FeedMap)
  • Data Transmission Volume: 120 packets of 1.6KB per minute (MSN Messenger)
  • Formula: Monthly quotas based on various factors (Google AdWords)
  • Kindness of strangers: ‘Please be gentle with Simpy’s server’ (Simpy)

The above can, and are, used in combination. And there’s probably more ways than these. Of course arrangements can be made with API providers to work around these limits. But that’s a different discussion. Maybe one for MashupCamp."

(Via ProgrammableWeb.)

February 14, 2006

Welcome to the Yahoo! User Interface Blog

"Let us be the first to welcome you to the brand new Yahoo! User Interface Blog. We’re excited to be here, and thrilled to have you with us.

This blog is the companion blog for two libraries we’re proudly releasing today. The new Yahoo! Design Pattern Library offers our thinking on common interface design issues for traditional and rich Internet applications. The new Yahoo! User Interface Library is a collection of industrial-grade JavaScript utilities and widgets that enable you to efficiently get the most out of today’s powerful browsers. In both cases, these are the exact same things that power Yahoo! today."

(Via Yahoo! User Interface Blog.)

.. the Design Pattern Library is definitely worth checking out .. thanks Jim for the pointer ..

February 03, 2006

Web 2.0 Mashup Matrix

"An experimental matrix of Web 2.0 mashups."

.. that's ueber-ueber-cool! .. want to know what site combines "GoogleMaps" with "BBC" .. just check that matrix ..

By the way, I just found some other map, the Web 2.0 innovation map. That map shows the location of Web 2.0 services worldwide.

February 01, 2006

Prototype JavaScript Framework

Prototype JavaScript Framework: "Prototype is a JavaScript framework that aims to ease development of dynamic web applications. Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around, Prototype is quickly becoming the codebase of choice for web application developers everywhere."

.. interesting .. different people pointed me to that library .. always a good sign to start checkin into it ..

.. and by the way, Rico, another fancy Rich-Client-Library, is built on Prototype ..

January 25, 2006

javadesktop

"Welcome to the JavaDesktop Project Home Page. Here you'll find a growing collection of rich Java client projects, from libraries you can use in your own app, to full end user applications."

.. forgot about Swing and it's community ..

January 19, 2006

Strmz.com

JotSpot-Powered Video Clip Sharing Service: "Mandalan Media recently launched the beta of strmz.com (pronounced 'streams'), a JotSpot-powered video clip-sharing destination. Strmz.com features up-to-the minute videos from major media outlets such as NBC, HBO, and Comedy Central, along with popular video blogs and top-rated content from video upload services like Google Video."

(Via JotBlog.)

.. interesting Video portal .. definitely much nicer UI than Google Video .. have to check if I can integrate the RSS feeds with iTunes ..

January 08, 2006

computational information design

"The ability to collect, store, and manage data is increasing quickly, but our ability to understand it remains constant. In an attempt to gain better understanding of data, fields such as information visualization, data mining and graphic design are employed, each solving an isolated part of the specific problem, but failing in a broader sense: there are too many unsolved problems in the visualization of complex data. As a solution, this dissertation proposes that the individual fields be brought together as part of a singular process titled Computational Information Design. "

.. there is even such a thing as a cool looking dissertation ..

January 01, 2006

Yahoo Travel Web Services

"Travel Web Services enables you to plan your trips, explore destinations, find airfares, get ratings and reviews for hotels, find things to do, and share your plans with others. The Yahoo! Travel web services enable you to build applications that use the trip plan data from the Yahoo! Travel Trip Planner. You can also place a Yahoo! Travel FareChase search form on your web site using our HTML templates."

... again an interesting API from Yahoo .. still have to figure out for what to use it .. think, think ...

December 21, 2005

Yahoo! Maps Web Services

JavaScript™-Flash® API Getting Started Guide: "The Yahoo! Maps JS-Flash API lets developers add embedded Yahoo! Maps to their web sites. In the JavaScript version, maps are generated by Yahoo! servers and placed into a generic Flash SWF (ShockWave® Format) container that developers can manipulate using the JavaScript programming language."

Flex™ API Getting Started Guide: "Macromedia Flex is an application server and framework that addresses the requirements of enterprise programmers who want to develop rich Internet applications. Developers can use Flex to create data-driven applications that harness the power of both XML and Flash. The Yahoo! Maps Flex API is a component that lets developers add customizable Yahoo! Maps to their Flex applications."

.. again a cool idea of Yahoo .. I definitely like their JavaScript to Flash approach! ..

December 20, 2005

Web 2.0 Services

I just came across some nice / interesting services:

  • Protopage = personalized news + sticky notes + bookmarks, all on one page.
  • Writely = powerful Word Processor + Collaboration + Export/Import + Blog Editor.
  • Blinksale = easiest + nicest way to send invoices online.

.. pretty impressive ..

December 19, 2005

Using JSON with Yahoo! Web Services

Yahoo and JSON: "JSON (JavaScript Object Notation) is a lightweight data format based on the object notation of the JavaScript language. It does not require JavaScript to read or write; it is easy to parse by any language and libraries and tools exist in many languages to handle JSON. Many of the Yahoo! Web Services provide JSON as an alternate output format to XML."

.. don't know where to put this .. it reminds me a lot of good old "Anythings" .. therefor it could be an interesting alternative to XML ..

December 07, 2005

Simple Sharing Extensions for RSS and OPML

"SSE: The objective of Simple Sharing Extensions is to define the minimum extensions necessary to enable loosely-cooperating apps

  • to use RSS as the basis for item sharing – that is, the bi-directional, asynchronous replication of new and changed items amongst two or more cross-subscribed feeds.
  • to use OPML as the basis for outline sharing – that is, the bi-directional, asynchronous replication of outlines, such as RSS aggregators subscription lists"

.. interesting .. but probably a little bit too open source for Microsoft ..

Alex Bosworth: 10 Places You Must Use Ajax

"Here are places Ajax should now be required in a web application"

.. it just makes sense .. a must read for overly motivated AJAX-freaks ..

November 28, 2005

Verosee

"Verosee extends Skype to provide free workspaces that synchronize files and chats. This eradicates the inherent disorganization of trading email attachments and exchanging portable media. Verosee enables teams to have contextual awareness of each other's activities bringing convergence and continuity to the project life cycle. As a result, teams become more effective before, during, and after project meetings."

.. sounds very interesting .. can't install it right now, because of firewall issues :-( ..

November 10, 2005

buzztracker

buzztracker: "World News, Mapped", a nice visualization of locations of current news reports .. cool .. finally everyone can see where the city of Amman is .. but I don't really know what that disabled link "tomorrow" should be for ;-)

November 07, 2005

Sun Grid

Sun Grid: "Sun is changing the very nature of utility computing with the new Sun Grid utility offerings, enabling you to purchase computing and storage power as you need it, without the long-term lifecycle costs related to capital, management, depreciation, and floor space. Sun Grid radically simplifies the way you select, acquire, and use next generation IT infrastructure. "

.. sounds boring at first .. but it's not .. Sun is up to something .. check the reference guide and the press releases ..

Amazon Mechanical Turk

"Amazon Mechanical Turk provides a web services API for computers to integrate Artificial Artificial Intelligence directly into their processing by making requests of humans. Developers use the Amazon Mechanical Turk web services API to submit tasks to the Amazon Mechanical Turk web site, approve completed tasks, and incorporate the answers into their software applications. To the application, the transaction looks very much like any remote procedure call - the application sends the request, and the service returns the results. In reality, a network of humans fuels this Artificial Artificial Intelligence by coming to the web site, searching for and completing tasks, and receiving payment for their work."

.. interesting .. but what da heck is this .. think, think ..

October 24, 2005

Flock

"Here's a list of thirteen things you really should try with Flock. We're bragging, of course, but at the end of the list you'll also find a few warnings about things we're still working on."

.. that could become big .. still a little bit buggy .. but it shows how a WWW-browser could look and act like in the not so far future .. an interesting front end to your blog, to del.icio.us, and your bookmarks .. and it's all based on the Mozilla/Firefox platform, therefor it runs on Windows, OS X, and Linux .. cool ..

October 19, 2005

information aesthetics

information aesthetics: "inspired by Manovich's definition of information aesthetics, this weblog explores the symbiotic relationship between creative design and the field of information visualization, in an emergent multidisciplinary field what could be coined as 'creative information visualization'."

.. cool blog! .. many interesting examples of information visualization ..

October 13, 2005

User-Centric Web Addressing

User-Centric Web Addressing: "The User-Centric Web makes this distinction (between location-aware and location-agnostic resources) very clear so as to take advantage of swarming (or pooling) of resources. Take, for example, a document or blog posting published in a Shared Space. It would be too limiting to restrict the document source to a single URL (pointing to the originator) when perfectly good copies of the document probably exist on other member nodes. This is where a location-agnostic URI that is resolved in real time to one or more physical nodes makes a lot of sense. Decentralized file sharing networks already do this type of swarming through the use of magnet URIs."

.. good idea .. but who will set the standard? ..

R.I.P. WYSIWYG

R.I.P. WYSIWYG - Results-Oriented UI Coming: "The next version of Microsoft Office (code-named 'Office 12') will be based on a new interaction paradigm called the results-oriented user interface. As the demos show, the most obvious departure from the past is that menus and toolbars are all but wiped out. The focus is now on letting users specify the results they want, rather than focusing on the primitive operations required to reach their goals."

.. interesting .. have to think a little bit more about it ..

October 08, 2005

Google's RSS feed reader

Google's RSS feed reader: "This would have been much bigger news a year ago, but Google finally has a Bloglines-like, MyYahoo-like RSS reader. It was introduced today at Web 2.0. You can get to it here."

(Via SiliconBeat.)

.. no comment for now, have to test it first .. update: fancy reader, lot of DHTML .. another update: very cool PodCast integration, including MP3 player ..

October 02, 2005

Writeboard - Write, share, revise, compare.

Writeboard: "Write a business letter, copy for your website, a marketing brochure, or a product description, or a weblog post, or a song, or a poem, or an idea, or an essay, or a book chapter, or whatever else you might normally write in your email program, text editor, or word processor."

.. another interesting example from the 37signals people .. still like their ideas, but not the fact that all the information gets just stored on their servers, no local replication ..

October 01, 2005

IBM Cloudscape Workbench

"The Cloudscape Workbench is a tool for connecting to Derby and DB2 databases, and performing common tasks such as browsing schemas, altering database objects, and working with SQL scripts and table data."

.. interesting Eclipse Plugin for database development with the powerful open source database Apache Derby (Cloudscape) ..

September 28, 2005

PocketMod: The Free Disposable Personal Organizer

"PocketMod is a new way to keep yourself organized. Lets face it, PDAs are too expensive and cumbersome, and organizers are bulky and hard to carry around. Nothing beats a folded up piece of paper."

..what a cool idea :-) .. and a nice implementation with Flash .. try it out!..

Zimbra

Zimbra - Downloads: "Zimbra Collaboration Suite 2005 Beta open source software is now available. Download our AJAX web client and server and migrate your existing accounts."

..looks like some interesting stuff .. not the functionality itself, but the architecture .. the whole thing including server seems to be Open Source :-) .. and there are some interesting looking whitepapers ..

September 10, 2005

WiredReach

"The WiredReach Platform allows users to selectively share content with others in a completely decentralized and secure manner. That means your content does not have to be uploaded to any central servers but rather can be shared right from your desktop or device. We use the term 'content' very loosely to include things like presence, blogs, bookmarks, documents, calendars, music, photos... virtually any type of social media."

.. an interesting use-case for Eclipse RCP ..

September 07, 2005

fac.etio.us

fac.etio.us a search engine / portal based on del.icio.us.

.. good idea .. cool starting point for daily surf-tours ..

August 24, 2005

XUL:Xul Runner

XUL:Xul Runner: "XULRunner is a single 'gecko runtime' installable package that can be used to bootstrap multiple XUL+XPCOM applications that are as rich as Firefox and Thunderbird. It will provide mechanisms for installing, upgrading, and uninstalling these applications. XULRunner will also provide libXUL, an embedding framework which provides an embedding mechanism suitable for each platform."

.. not the most hype stuff anymore .. but still ..

GoogleOS? YahooOS? MozillaOS? WebOS?

So who's going to build these WebOS applications? An interesting article from Jason Kottke.

August 13, 2005

IBM Workplace Managed Client Developer Toolkit

"IBM Workplace Managed Client (formerly IBM Workplace Client Technology, Rich Edition) delivers server-managed collaboration to the user's desktop. This collaboration is 'managed' from the server where an administrator decides which applications and content are suitable for each user. The client is maintained through provisioning, where application components (such as plug-ins and features) are downloaded to a client machine from an administrative server as required. The Workplace Managed Client is based on the Eclipse architecture, which serves as a framework on which to build customizable and extensible applications."

.. have to check it out ..

August 03, 2005

Telescript

Messaging may not be the way to Build a Distrbuted System: "The idea of moving code isn't new. Back in 1993 and 1994 General Magic carved out a nifty idea of having a scripting language regular users could use to help organize their personal communication."

.. completely forgot about that Telescript approach .. I like it, it's powerful, guess why? .. has something to do with today's WebService offerings of Amazon, Yahoo, Google, eBay .. mmhhh .. thinking ..

Yahoo! to release Shopping API

Yahoo! to release Shopping API: "By tim From Jeff McManus in email: ' Just wanted to drop you a quick note to let you know that this morning Yahoo is releasing a new product for developers/web site owners, the Yahoo! Shopping API. The idea is to let folks use Web services calls to pull data from our comparison shopping database to republish on their Web sites or within software applications. More info will be posted soon on the Y! Search blog (http://www.ysearchblog.com/) and the Yahoo! Developer Network blog (http://developer.yahoo.net/blog). The main product page containing documentation and other resources will be located at http://developer.yahoo.net/shopping/. This should all be available on the site by 10:30AM Pacific this morning.' "

(Via O'Reilly Radar.)

August 02, 2005

EverNote

"With EverNote you can easily store and quickly access typed and handwritten memos, webpage excerpts, emails, phone messages, addresses, passwords, brainstorms, sketches, documents and more!"

.. sounds promising .. lets give it a try .. Windows only :-( .. and there is something else they are missing .. some important thing .. but still a good try :-) ..

One Login to Bind Them All

Wired News: One Login to Bind Them All: "Between Friendster profiles, Flickr photo streams, LiveJournal blogs and del.icio.us bookmarks -- not to mention e-mailing, instant messaging and Skyping -- the much-ballyhooed 'social web' can feel like a slippery slope to multiple personality disorder. But if a still-under-development service called the GoingOn Network lives up to its hype, our online selves may soon enjoy a long-overdue digital reintegration."

.. who will own the central social network directory .. the fight is on ..

July 18, 2005

Marrying Maps to Data for a New Web Service

Marrying Maps to Data for a New Web Service - New York Times: "In 1991, David Gelernter, a computer scientist at Yale, proposed using software to create a computer simulation of the physical world, making it possible to map everything from traffic flow and building layouts to sales and currency data on a computer screen.

Mr. Gelernter's idea came a step closer to reality in the last few weeks when both Google and Yahoo published documentation making it significantly easier for programmers to link virtually any kind of Internet data to Web-based maps and, in Google's case, satellite imagery."

.. the whole map/web-services frenzy got picked up by the New York Times .. an interesting statement from Mr. O'Reilly made in this article: "It's a classic example of this thesis that hackers show us the shape of the future." .. how right he is :-) ..

.. by the way .. the geeks even have a web-site: Google Earth Hacks ..

July 12, 2005

Fridge as Philosophy

..don't know if I completely get it .. have to "consume" it some more ..

Fridge as Philosophy:

Chris Dent posted a Manifesto: Fridge as Philosophy of Everything

Architect your hardware, your software and your life so your environment helps you out and you don't have to waste your brain deciding on things that shouldn't need deciding.

A nice read that ties in system architecture, personal productivity, simplicity and Engelbart.

(Via Ross Mayfield's Weblog.)

June 30, 2005

Google Maps API Documentation

Google Maps API Documentation:   The Google Maps API lets you embed Google Maps in your own web pages.

June 29, 2005

Microsoft Atlas: Response to AJAX

Microsoft Atlas: Response to AJAX: From O'Reilly editor John Osborn: 'For more information on the Microsoft Atlas Project -- a response to the growing enthusiasm for AJAX -- see the blog posted yesterday by Scott Guthrie, who heads up the web team at Microsoft.'

(Via O'Reilly Radar.)

June 17, 2005

"Hannover" screen shots

Screenshots of the next version of Lotus Notes, code-named "Hannover" .. pretty cool looking and all built based on the Eclipse/SWT platform

June 16, 2005

Scripting Web services with E4X

Scripting Web services with E4X, Part 2: E4X, ECMAScript for XML, a simple extension to JavaScript that makes XML scripting very simple. In Part 1, we demonstrated a Web programming model called AJAX, Asynchronous JavaScript and XML, and showed how some new XML extensions to JavaScript can make it very simple. In this second article, we use E4X to build the server side of this interaction, and we show how to implement simple Web services in JavaScript.

June 14, 2005

The Axis of Alteration: Greasemonkey, Aardvark, and Platypus

The Axis of Alteration: Greasemonkey, Aardvark, and Platypus:

Recently, I’ve been playing with Aardvark, Greasemonkey, and Platypus. These are all Firefox extensions for the user to manipulate webpages.

Aardvark allows for transient modifications of your current page. You can mouse over the ‘objects’ on the page, like tables, to delete them, isolate them, change their width functions, and more. This is useful for making bad pages printable and making really bad pages legible. It’s also useful for killing that one really annoying ad, but I’ve got a more specific extension for that.

Greasemonkey adds Javascript and DHTML to a page. It is also capable of making HTTP and XML requests of its own and injecting those results into the page. These scripts consistently add functionality to a page, instead of the transient editing of Aardvark. There are scripts for anything as simple as taking out the text adds in Google, or doing picture lookups on LiveJournal, to tricky stuff, like adding an MBTA overlay to Google Maps, and implementing a Javascript drag and drop interface to your Netflix queue.

There are nerds that write these Greasemonkey scripts. However, Platypus’s goal is to create a front end for simple user webpage manipulation, and to save those actions as a Greasemonkey script. Basically the rapid editing of Aardvark, and the consistent application of Greasemonkey.

These extensions are a really fascinating way to quickly add power user features to webpages and also to add functionality to pages that are unlikely to ever implement these modifications.

(Via N I V I.)

June 13, 2005

Choosing a Java scripting language

This article describes some of the issues that come with supporting a scripting language in your Java application and compares Groovy, JudoScript, Pnuts, JRuby, Jacl, Jython, Rhino, and BeanShell in a variety of ways to help you make the right choice.

June 10, 2005

A tribute to one of Silicon Valley's most influential and forgotten researchers at Xerox Parc event

A tribute to one of Silicon Valley's most influential and forgotten researchers at Xerox Parc event: "The tributes to Mr Engelbart went on and on, long after the allotted time for the event, with many stories told publicly for the first time. It was priceless material for future archaeologists exploring this fascinating spot on earth."

June 03, 2005

Socialtext Appliance

.. I like appliances ..

Socialtext -- Enterprise Social Software: "The Socialtext Appliance provides all of the capabilities of the Socialtext Workspace in a hardware appliance designed for minimum administration and maximum security."

June 02, 2005

SWT custom widgets summary

SWT custom widgets summary:

There are a few SWT custom widgets available over there. Not as much as Swing, but the number is increasing as the number of developers that adopt SWT is growing. Here are some of them:

  • Novocode SWT controls: Includes a balloon toolip, hyperlinks, internal frames, and dragabble separators. Open source.
  • SWTworkbench controls: Data aware controls and a powerful virtual table that claims to be better than SWT's one. Open Source.
  • KPrint: Print layouts on SWT.
  • KTable: Powerful SWT table replacement.
  • SWTCalendar: Calendar widget. Free.
  • SWT Date Picker: Another calendar widget. Open Source.
  • SWT/AWT Layouts: Layouts based on Swing's ones.
  • Eclipse Colorer custom components: Including a custom table, calendar and splitter. Open Source.
  • SWTPlus components: Custom expandable groups and hyperlinks. Free but not Open Source.
  • Mathias Muller gives some more links:

  • SWTForms, jGoodies forms layout manager. Free, source available.
  • SWT Binding. Not just a custom component but a binding framework for jGoodies. It could be also helpful.

Not very sure if I have forgotten something. Please, let me know about it and I'll update the summary.

(Via Martin Perez's Weblog.)

June 01, 2005

Web Application Solutions: A Designer’s Guide

..nice presentation comparing the different client approaches..

Web Application Solutions: A Designer’s Guide: "Web Application Solutions is a guide that helps designers, product managers, and business owners evaluate some of the most popular Web application presentation layer solutions available today."

May 27, 2005

Haystack, the universal information client

Haystack: "Haystack is a tool designed to let individuals manage all their information in ways that make the most sense to them. By removing arbitrary barriers created by applications that handle only certain information 'types' and that record only a fixed set of relationships defined by the developer, we aim to let users define whichever arrangements of, connections between, and views of information they find most effective. Such personalization of information management will dramatically improve everyone's ability to find what they need when they need it."

AWS Java DAO Integration Project

AWS Java DAO Integration Project:

There's a new AWS Integration project on sourceforge.net. Here are the goals:

The AWS Integration project provides a Java DAO layer to client applications making the Amazon Web Services (AWS) even easier to use, especially for J2EE developers.

Using the integration API, you don't have to work with the web services directly, or even through the Axis generated API, you access the Amazon data seamlessly using simple DAO and JavaBeans.

Qualified developers are invited to join the project and to contribute code. They are planning to cover ECS and AWIS.

(Via Amazon Web Services Blog.)

May 26, 2005

Ajax Mistakes

..other people seem to have similar "feelings" about Ajax..

Alex Bosworth's Weblog: Ajax Mistakes: "Ajax is an awesome technology that is driving a new generation of web apps, from maps.google.com to colr.org to backpackit.com. But Ajax is also a dangerous technology for web developers, its power introduces a huge amount of UI problems as well as server side state problems and server load problems. "

(Via Alex Bosworth's Weblog.)

May 25, 2005

UI Patterns and Techniques: Introduction

UI Patterns and Techniques: Introduction: "If you've done any Web or UI design, or even thought about it much, you should say, 'Oh, right, I know what that is' to most of these patterns. But a few of them might be new to you, and some of the familiar ones may not be part of your usual design repertoire."

AJAX encapsulation with TIBCO General Interface

..check the screencast, pretty impressive, but I'm still not convinced that AJAX is the next major UI-technology..

AJAX encapsulation with TIBCO General Interface: " With all the recent AJAX buzz, there's renewed interest in toolkits that can abstract away the inherent nastiness of that style of development. TIBCO's General Interface is one such toolkit, and today's 8-minute screencast excerpts highlights from a demo shown to me yesterday by Kevin Hakman. He's a founder of General Interface, which TIBCO acquired last fall. ..."

(Via Jon's Radio.)

Tools for dynamic languages

Tools for dynamic languages: "I met Paul Kedrosky for the first time last week and we had a great conversation. We share a connection through ActiveState: Paul was a member of the board of directors and I was on the technical advisory board. (We've both since resigned those positions.) It occurred to us that, ironically, the original mission of ActiveState -- to create professional tools for open source programming languages -- may now be more relevant than ever. ..."

(Via Jon's Radio.)

May 18, 2005

Backpack becomes a web service

..that's the way to do it..

Backpack becomes a web service:

Backpack is not just for you to love, but for machines too. The brand new Backpack API makes it possible for other programs to easily talk to your backpack. That opens the door to Dashboard widgets, weblog integration, command-line tools, and much more.

We’ve created a forum to go with the API, too. Let us know of your creations and share them if you can. The API is not all finalized, so hold off with the nuclear reactor integration for a couple of weeks. But have fun experimenting today.

If you’re working with Ruby, have a look at this sample wrapper for the API.

(Via Backpack Weblog.)

May 15, 2005

Backpack Examples

An excellent list of use-cases for the Backpack service .. quite fancy .. perfect for borrowing some ideas.

May 14, 2005

How To Roll Out An Open API

How To Roll Out An Open API:

I've met a lot of companies working on web services APIs while I've been working on Where 2.0. These companies want to reach programmers like me, the ones who will play with something, build a cool app or two, then promote it within their company if they like it. They want to know how to make their service attractive to these Internet programmers.

I always tell them, 'Make it useful and easy.' All too often the company is so tied up in its existing business that its idea of an 'open API' is 10 hits/day, strictly non-commercial use, SOAP-only, with fax-in paperwork only downloadable with the latest version of IE on Windows. They're looking at the API purely from the point of view of the provider. But if you want me to use this API, you'd better start thinking about it from my side: I want something that's easy to start using and that will scale with the coolness of the apps I build.

(Via O'Reilly Radar.)

May 06, 2005

Effective desktop applications

Effective desktop applications:

Some months ago I wrote an article in Spanish called Aplicaciones de escritorio eficientes, that could be translated as Effective Desktop Applications. I wrote this article because this is a very important topic forgotten by the common biliography. It's very easy to found information about EJB best practices, Servlet/JSP/JSF best practices, persistence best practices, web services bestpractices, interoperability best practices, but what about the desktop?

Even it seems that Sun is planning with Mustang some type of swing blueprints - correct me if I'm wrong, I think I have read this somewhere just today. That would be a great thing!

Well, in this article I talk about different best practices I found during my last +5 years of Swing programming and =2 years of SWT programming. I planned to translate it to English, but it's very very difficult to find some time to translate -my English isn't specially good, so I need a lot of time :-). But today I decided to post here the best practices summary. You can contribute and if people is interested, we could talk about some point in a different weblog entry.

So here we go:

  • 1 - Leverage UI frameworks. Take in count frameworks like jGoodies, Foxtrot, JNDC, or even rich client platforms like Spring RCP, Eclipse RCP or NetBeans Platform
  • 2 - Show your UI interface as fast as possible. If your applications starts in few seconds, then you have earned a point to success.
  • 3 - Use threads extensively. The key is asynchronous operation. The user shouldn't wait for long running tasks. Here SwingWorker or Foxtrot have a key rol.
  • 4 - Always show progress feedback to the user. Do you like when you push a button in a program and there is no messages, no status bar text, no progress bar, ... ?
  • 5 - Don't load information that it won't be needed. Lazy load all the information that won't be used.
  • 6 - Prefetch all the useful information as soon as possible. Eager load all the information that will be used. This load is related with item (3) as should be performed with background tasks.
  • 7 - Avoid to load huge amounts of data. Do you know any person able to digest a 10.000 rows table? Restrict queries. Show information in pages, or in structures easy understabke.
  • 8 - Minimize external resource access. The network doesn't come at zero cost. Every remote access has cost in terms of time and CPU compsumption.
  • 9 - Know your framework as you know yourself. Are you sure that your framework doesn't have any memory leaks? Do you know that with option XXX you can get a 50% performance boost? ...
  • 10 - Leverage operative system resources, if possible. If you don't have platform compatibility as a mandatory requisite, then probably you can leverage operating systems tools and resources, like embedding internet explorer in your UI, leveraging system tray, using JNI calls, etc.

I think that to work developing healthcare systems has helped me a lot to understand the great importancy of the items above. For example, when a cardiologist is doing some operation, and has to check some information on the patient clinical history, the last thing he want to do is waiting some minutes for that information to be downloaded. So in this job, you're encouraged to do very responsive UIs; to lazy and eager load data in a smartly way; to offer the possibility of offline working - imagine, that you're being operated, and suddenly the network adapter goes down, etc.

Well, do you have any other suggestion to this list? Do you like to talk about any special item?

(Via Martin Perez's Weblog.)

April 30, 2005

Designing from the outside in

Jason Fried believes that contrary to the normal expectation that applications are built on top of frameworks, applications should always be designed "from the outside in."

April 26, 2005

Amazon RSS Feed Generator

Amazon RSS Feed Generator:

The Amazon RSS Feed Generator at oxus.net is very simple to use, and quite handy.

(Via Amazon Web Services Blog.)

April 23, 2005

jLibrary, your desktop CMS (1.0 beta2 released)

jLibrary, your desktop CMS (1.0 beta2 released):

Yes, finally jLibrary 1.0 beta2 has been released. jLibrary is a new kind of CMS tool. Based on Eclipse Rich Client Platform, jLibrary is a rich client application that allows you to work with your documents, and media, in a very easy way, allowing categorization, export/import operations, cut/copy/paste, drag&drop, favorites, security constraints, etc. etc. etc.

-martin

(Via Martin Perez's Weblog.)

April 22, 2005

Simple Queue Service Beta 2

Simple Queue Service Beta 2:

The Simple Queue Service has been updated with performance and bugs fixes, most of it driven from the developer community that has helped shape it since its introduction in November, 2004.

The Amazon Simple Queue Service Beta 2 provides a means for web service applications to quickly and reliably queue resources generated by a component to be consumed by another component. A queue can serve as a buffer for data flowing from one component to another even when the producer is generating output faster than the consumer is retrieving it. Also, a single queue can be used simultaneously by many distributed application components with no need for those components to coordinate with each other to share the queue.

The following new features are available:

  • Improved Error Reporting and Handling - A new XSD along with more descriptive and complete error messages has been added.
  • Random Access to Queue Entries - A new operation has been added which allows the Queue API caller to read up to 25 queue entries using an entry.s ID value.
  • Entry-Specific Read-Lock - The ReadLock call enables locking on a specific set of entries.
  • API for Number of Entries in a Queue - Returns the estimated number of entries present in a specified queue.

To learn more and get started today, visit the Amazon Simple Queue Service page.

(Via Amazon Web Services Blog.)

April 21, 2005

Software as a service: have it your way

Software as a service: have it your way:

Last week I mentioned Greasemonkey, a Firefox extension that enables scripts to run in the context of web pages. Since then I've written a few of my own Greasemonkey scripts. The first, which I've shown in a screencast, is a next-generation LibraryLookup. Originally you had to click a bookmarklet in order to jump from an Amazon page to a book's record in your local library. Now, if the book is available in the library, the Greasemonkey script automatically inserts an alert into the Amazon page. As I discuss in the screencast, page rewriting is a hot topic that's about to go nuclear.

Two components make this possible. One is the scriptable DOM (document object model), which enables in-situ alteration of web pages. The other is the XmlHttpRequest object which is now available in all the major browsers, and which supports asynchronous interaction with remote services.

Combine the two and you get a powerful system for delivering realtime alerts in the context of web pages. AJAX (Asynchronous JavaScript and XML) is the new name for this strategy. But it's an old idea, and XML is optional. At its core this is about web pages that communicate autonomously and update themselves dynamically. You'll soon see a lot more of these, and you may well find yourself creating some too. [Full story at InfoWorld.com]

(Via Jon's Radio.)

April 15, 2005

Corporate IM

Some recent news from the Corporate IM sector:

"Worm attack forces Reuters IM offline" .. that is a big one!

"AIM knocks on offices' doors" .. that will be a hard sell.

"Jabber, Inc. and AOL announced today that they are going to be doing Server-to-Server (S2S) interoperability" .. don't exactly know, what the benefit for Jabber is .. AOL isn't used for "between-company"-IM, thats usually done via Yahoo and MSN.

"IM specialist Jabber gets new CEO" .. it really sounds like the IM Market is going thru some shake-up phase.

April 14, 2005

Object Centered Sociality

Object Centered Sociality: "Wow. I just read this mind-blowing post by Jyri Engeström in response to my post about leaving Linked In. It's very well thought out and opens a whole new perspective to social networking for me that I completely, 100% sign on to:

Basically I'm defending an alternative approach to social networks here, which I call 'object centered sociality' following the sociologist Carin Knorr Cetina. I'll try to articulate the conceptual difference between the two theories and briefly demonstrate that object-centered sociality helps us to understand better why some social networking services succeed while others don't.

Russell's disappointment in LinkedIn implies that the term 'social networking' makes little sense if we leave out the objects that mediate the ties between people. Think about the object as the reason why people affiliate with each specific other and not just anyone. For instance, if the object is a job, it will connect me to one set of people whereas a date will link me to a radically different group. This is common sense but unfortunately it's not included in the image of the network diagram that most people imagine when they hear the term 'social network'. The fallacy is to think that social networks are just made up of people. They're not; social networks consist of people who are connected by a shared object. ...

This is one of those days when I love blogging. I thought when I wrote the Linked In post that it would spur discussion and it did. First, it was just people defending various social networking engines, telling me that I used it incorrectly or somehow misunderstood the function of the network. But this post is exactly what I was looking for, it explains in an obvious, yet insightful way why Linked In didn't work for me, and the reason most social networks don't make sense to me.

Having objects be at the center of your connection with others is exactly what people do when they try to 'categorize' their contacts. I know some people from work. These other people are my family. These people are my friends because I went to school with them, these others are my friends because of some shared interest. There's always something tying us together. And the cool thing is you can look at your contacts by other ways such as a date and location as well.

Basically what Jyri has done has added the 'there' to the social network which I said was missing. I think this is what my initial reaction to Yahoo 360 was as well. By making the contacts the primary focus, to me there is no 'meat.' By making blogs the primary focus, you add that artificial object which can then tie people together. Not just a relationship which stands on its own, but a real relationship based on some actual object: a blog post, a photo, a forum, etc.

Very cool. Sign me up to this way of thinking from now on. It just makes sense.

-Russ

(Via Russell Beattie.)

April 12, 2005

RSDP: A Really Simple Proposal

RSDP: A Really Simple Proposal by Brian McConnell -- Anybody who has written software knows that communicating with databases is a nettlesome task because of difficulties with installing and configuring them. Brian McConnell proposes a Really Simple Database Protocol (RSDP) that would provide developers with a way to prototype and build database-driven applications that are more independent of back-end systems. Weigh in with your thoughts on his proposal via the Talkback section at the end of the article.

April 11, 2005

BlackBerry 7270 for Enterprise WLAN

BlackBerry 7270 for Enterprise WLAN: "The long awaited BlackBerry 7270, which features 802.11b wireless access for companies that have deployed BlackBerry Enterprise Server 4.0 is in customer trials as we speak. If you're interested (and you presumably meet the requirements), you can fill out this..."

(Via Blackberry Blog.)

April 03, 2005

The Best Kept Secret : NetBeans' Successful (Rich Client) Platform

The Best Kept Secret : NetBeans' Successful (Rich Client) Platform: "Alot of the focus has been on the IDE portion of NetBeans, but there is a powerful NetBeans Platform framework that many have used to create rich client applications."

(Via cld.blog-city.com.)

March 29, 2005

JotSpot Is Free for Open Source Projects

JotSpot Is Free for Open Source Projects: "JotSpot is now free for open source projects! We've been wanting to offer this for a while now, but we've been waiting for guest user (i.e. anonymous) support, which just arrived with the latest update. Jot benefits greatly from open source software, and this is one way we can give back. And because a JotSpot wiki is provided as a hosted service, open source projects not only get the bits free, they get the server hosting and management free as well -- the whole enchilada. (Note that we're still in beta, but this offer is through GA and beyond... ) You can go here and get your site in a minute or two. Just be ..."

(Via JotBlog.)

MoinMoin

MoinMoin is a nice and easy WikiEngine with advanced features - said in a few words, it is about collaboration on easily editable web pages. MoinMoin is Free Software licensed under the GNU GPL.

March 25, 2005

On the Death of SOAP

On the Death of SOAP: "

Link: On the Death of SOAP.

I just put up a post at Between the Lines on the death of SOAP.

The challenge for the RESTful crowd is to create a well-thought out transport alternative to SOAP. HTTP is the basis for that transport, but it's not enough. The place to start is with service description and data binding so that RESTful Web services can enjoy the same kind of discovery that possible with SOAP. Paul Prescod made a start with his WRDL proposal, but it hasn't really taken off.

From » On the death of SOAP | Between the Lines
Referenced Fri Mar 25 2005 09:32:37 GMT-0700 (MST)

"

(Via Venture Chronicles by Jeff Nolan.)

March 18, 2005

Google Code

Google Code, Google's place for Open Source software.

March 11, 2005

Peer-to-peer movies with Peerflix

Peerflix, a young Menlo Park company that we profile in today's Mercury News. It's a valley start-up that is hoping to build a business around the idea of peer-to-peer DVD sharing.

(Via SiliconBeat.)

March 07, 2005

Speirs.org :: Appcasting

Speirs.org :: Appcasting

using RSS 2.0 enclosures to deliver application updates.

(Via Venture Chronicles by Jeff Nolan.)

March 04, 2005

Bluebottle OS

Bluebottle is a powerful operating system based on the Active Object System (Aos) kernel. It provides a compact runtime environment for the Active Oberon language, which supports active objects directly, and enables the construction of efficient active object-based systems that run directly on the hardware. Above this layer is a flexible collection of modules providing generic abstractions for devices and services, e.g., file systems, user interfaces and TCP/IP networking.

SAJAX: Simple Ajax Toolkit

Six Apart Professional Network: SAJAX: Simple Ajax Toolkit: "

Sometimes development trends are worth the hype. If you've been itching to play around with the AJAX approach to web applications, you'll want to grab the SAJAX Toolkit. It's PHP-only for right now, but it gives you a robust set of tools for getting started with much richer web applications. SAJAX is BSD licensed, making it fair game for your apps even if you want to charge for them, and there's a donation link so you can support its further development.

If you do dig into AJAX functionality, be sure to check out these XMLHttpRequest usability guidelines for some best practices on how to make sure your gee-whiz features meet your users' expectations.

"

(Via Six Log.)

March 03, 2005

Review: VIA Epia MII-12000 motherboard

Review: VIA Epia MII-12000 motherboard: "It's quiet, it's small, it's powerful enough for everyday desktop use and versatile enough to be a set-top media device or small home server. It takes PCMCIA cards, IDE drives, DDR memory, and a standard ATX power supply, yet it's smaller than a laptop computer. It has a built-in DVD decoder (no more DeCSS!) and with its built-in AES chip it can encrypt and decrypt data faster than the most powerful Athlon 64 system. The question isn't, 'What can you do with the Epia MII-12000?' The question is, 'What can't you do with the Epia MII-12000?'"

(Via NewsForge.)

March 02, 2005

Day 3: Packaging, Deploying and Running Rich Client Apps

Day 3: Packaging, Deploying and Running Rich Client Apps: "Thanks to everyone who came to my talk this morning. The final slides and examples now available. Slides: http://www.eclipsepowered.org/files/presentations/EclipseCon2005 Examples: http://www.eclipsepowered.org/files/presentations/EclipseCon2005_6.2.zip"

(Via eclipsepowered.)

March 01, 2005

Major news: Yahoo Has an API...

Major news: Yahoo Has an API...: "Major news: Yahoo Has an API. Coool!"

(Via Scripting News.)

February 28, 2005

Eclipse RCP Slides at EclipseCon 2005

Eclipse RCP Slides at EclipseCon 2005: "EclipseCon 2005 will be without any doubt the Eclipse event of the year, and also one of the most important Java events this year. But the greatest thing is that those of us that cannot be there, there is some slides available.

You can check the full program in the main event page. In the Eclipse RCP section, there are several very interesting slides:

  • End-to-end Rich Client Platform Solutions, by David Orme (download)
  • Developing for the Rich Client Platform, by Nick Edgard and Pascal Rapicault (download)
  • Developing Eclipse Rich-Client Applications, by Frank Gerhardt, Christian Wege (download)
  • Creating, Packaging, Testing and Deploying Features in Eclipse 3.0, by Pat McCarthy, Sandy Minocha (download)
  • Workbench and JFace Foundations, by Tod Creasey, Michael Van Meekeren (download)
  • Introduction to SWT, by Grant Gayed, Carolyn MacLeod (download)
All are very interesting, but I must say that Nick Edgard and Pascal Rapicault's one is really, really great!"

(Via Martin Perez's Weblog.)

February 17, 2005

RCP Installer

RCP Installer: "I've created an example RCP Installer using NSIS and the RCP Mail example from the most recent 3.1 Integration build. Give it a try, see if it installs ok on your Windows box, and give me your feedback. This will be one of the examples used in my EclipseCon2005 presentation. ..."

(Via eclipsepowered.)

February 14, 2005

Nomad PIM

Nomad PIM: "Nomad PIM is an Eclipse rich client platform based personal information manager (PIM). Currently, there are modules for notes, diary, money management, and contacts, in addition to a basic workarea where a text can be written. All data is automatically saved and internally available in an 'object space'. The intention is to make all 'space objects' available to other plugins, so extensions of modules themselves will be easy, too. The personal data is stored in several (unicode) xml files and can be used in all supported operation systems, so it will be easy to work with the same data in Linux and Windows, for example. This is important if multiple operation systems are installed on one pc and the user often switches between them."

(Via EclipsePlugins: new and updated plugins.)

February 10, 2005

First Look: Ubergroups

First Look: Ubergroups: "I was turned onto Ubergroups yesterday (having completley missed other commentary on the product). In a nutshell, it is a social tools space for team-based project work, supporting real-time (IM, Chat, file transfer) and slow-time (blogs, file repository, Chat history,..."

(Via Get Real.)

February 02, 2005

Eclipse RCP installer tools

Eclipse RCP installer tools: "A good thread about installers on RCP applications has been started at Eclipse RCP newsgroup.

In addition to known products like NSIS, izpack or BitRock InstallBuilder, the one which called my attention was XtremeJ RCP Builder

XtremeJ RCP Builder, based on SIS, it's integrated on your Eclipse environment as a plugin, and it seems that automatizes very well the installer creation task. There is a free edition available as an Eclipse feature. These are the steps:

1. Select the menu 'Help > Software Updates > Find and Install'.
2. Choose 'Search for new features to install'
3. Click 'New Remote Site', and enter the XtremeJ update site URL 'http://www.xtremej.com/updates/'
4. Select the 'XtremeJ RCP Builder Feature' and proceed to finish the installation.

And here is the User's guide.

It seems interesting."

(Via Martin Perez's Weblog.)

August 19, 2004

Introducing the Reflexive User Interface Builder

The IBM Reflexive User Interface Builder (RIB), a new technology available from alphaWorks, is an application and toolkit for building and rendering Java AWT/Swing and Eclipse SWT GUIs. RIB specifies a flexible and easy-to-use XML markup language for describing Java GUIs and provides an engine for creating them. You can use RIB to test and evaluate basic GUI layout and functionality, or to create and render GUIs for an application.
[IBM developerWorks Java technology zone]

August 03, 2004

Jackito

Jackito, the first Fingertip-Touchscreen PDA .. interesting concept.

June 26, 2004

XML user interface language examples

XUL Grand Coding Challenge 2004 - Counter Sample Showcase.

May 06, 2004

May 4th, 2004: Mono Beta 1 available

Mono Beta 1 has been released. See our Release Notes, or go directly to the download page.
[Monologue]

April 08, 2004

The Cocoa Controller Layer

Mike Beam, O’Reilly: “By Apple’s reckoning, the controller layer potentially allows 90 percent of Cocoa applications to replace custom-developed glue code with the components of the controller layer.” [ranchero.com]

March 25, 2004

OpenOffice API

It sounds like OpenOffice offers quite a sophisticated communication based API.

March 02, 2004

EclipseCon Presentations

Presentations of EclipsCon are now available online.

November 18, 2003

Macromedia goes XUL

Macromedia announced Flex today. This is their XML based user interface language for building rich client applications that previously was known as Royale. I think this looks pretty cool. What's interesting about it is that it's actually a server side piece that generates a .swf file from the XML interface... [Inspirational Technology]

June 10, 2003

NewsGator

NewsGator is a news aggregator that runs in Microsoft Outlook. It allows you to subscribe to various syndicated news feeds (such as weblogs, news sites, etc.) and have news from these sites be delivered right into your Outlook folders. There are thousands of sites that syndicate their content - and more are added every day.

NewsGator will periodically check all of your subscriptions to see if any content has been added or updated, and put the new articles in your designated news folders. From there, you can leverage the powerful organizational capabilities of Outlook to organize, search, sort, and archive your news, as well as leverage NewsGator's complete e-mail integration.

[InfoWorld]

June 06, 2003

Macromedia Flash Player for PhonesMacromedia Flash Player for Phones

MacromediaFlash is not just for desktop computers anymore. It's actually for a wide variety of devices, including the Pocket PC, Symbian OS devices, WebTV, Sony PS2, ATMs, and others.

June 03, 2003

Finding Open Source Java in a Haystack

Haystack project at MIT. The project's objective is to be a "universal information client", the same motivation as the CleverCactus product and the Chandler open source project. It's a pretty ambitious project and has a lot of innovative features.

The most striking feature is the fact that almost everything is represented in RDF. The data from information sources, the layout of the visual parts, the programming language and even the "bytecode" is encoded in RDF! In short, instead of Lists in Lisp you've got RDF everywhere!

Fortunately, the project has adopted a variant of N3 instead of the overly verbose and complicated XML rendition of RDF. One of the biggest misconceptions about RDF is that its a form of XML. An XML encoding is actually just one of the multiple ways of rendering RDF. A long time ago I tried to grok the original RDF specification, which happened to be presented in the XML form, let me tell you it was like trying to see the forest while staring at a tree. Reading an N3 tutorial is such a relief, it'll give you a better appreciation of RDF.

Okay, if you're thinking, "What's in it for me?". Fortunately, there's a truck load of opensource riches to be found inside Haystack. The biggest goldmine is the fact that everything is rendered using Eclipse SWT, in otherwords, its just possible to take bits and pieces of this and graft it on to Eclipse.

You may then ask, why take bits and pieces when I can take the whole thing? Well, the big problem is that the project is still in the works and has an extremely clunky feel to it. I would at least say that its farther ahead of Chandler, but CleverCactus is definitely more usable today. (Note: CleverCactus is written in Swing and it's more responsive, it only proves that there's more to building a responsive GUI than choosing a native GUI framework).

Haystack also has a unique approach to building interfaces, it has something called "User Interface Continuations" and it allows end users to define their own views of RDF. This stuff is extremely promising, matter of fact a lot of stuff that nakedobjects can learn from.

[::Manageability::]

May 19, 2003

No More Cocoon For Me

Well, I've spent the last week or so working with Cocoon and I give up. I can't get any real work done with it, so I'm moving on. This isn't an attack on Cocoon but the whole idea was that it was supposed to help my productivity, not make me insane. Part of the problem is XML, of course, which is relatively picky and XSL is another pain in the ass, but I was sort of expecting that. Cocoon, however, adds its own peculiarities and wraps all of these things up into a big black box which hides waaay too much stuff from me. After a week of dealing with it, I'm going back to basics.


I OBVIOUSLY just don't know how to use Cocoon properly, but the fact is that after absorbing two big-ass books and spending a hell of a lot of time on it, if I'm not getting any work done, then it's not the right technology for me. Cocoon generally goes against my way of thinking about things anyways. To me all this stuff we spend so much time doing is very, very simple: There's data in the database. You need to grab it and show it to someone so they can do something with it. They read, they write, they delete. That's it. The more crap you put between you and the database is just bad... for each layer, there better be a damn good reason for it.


Actually, I swear, I'm an inch away from scrapping all this Java crap on the server and using Python. I mean it. If no one's paying me for this then life's too freakin' short. I've been meaning to pick Python up for a while now - it seems like such a more productive tool than Java. Especially since I rarely get past the prototype stage in the first place, I really should use the right tool for the right job.


Honestly, I really like Cocoon's philosphy a lot. I LOVE the pipeline - especially the mappings. I wish there was a Java server-side bit out there just for that piece because it's so freakin' useful. In fact, I'd say that JSP should work like that right out of the box - the URL and the processing that responds to it should have NOTHING to do with each other in a dynamic application. I should be able to map an arbitrary URL to any JSP or servlet I want without having to resort to hacks and custom written code like I have on this server code now. Right now I just pass the request to the appropriate JSP page, which may or may not respond. Cocoon's pipeline is so much more detailed and clear (unlike Strut's actions) - you can define multiple processing points, and then at the end define one of a serializer to respond back to the user. It's incredibly intuitive (if you've been doing server-side dev for more than 3 minutes). However, beyond that, it gets REALLY complicated and I've found it difficult to be productive.


Urgh. Specifically, what I was doing was using this blog's data (all 3000+ posts and comments) as a sample test bed for Cocoon. I figured the first thing I would do is rework my weblog code as a Cocoon App so I could learn the ins and outs before delving into a brand new somewhat undefined project. Now, anyone who's seen the original MiniBlog code knows that it's just a big hack and the current version is only marginally better. It took me a day to write and probably several days over the past year to work out the issues. But that's about it. Using Cocoon, I should be able to grab the contents from the db, make it into XML and then transform it for the Web and for Mobile devices (or anything else I want to write an XSL transformation for) all in one big swoop. It should be simple - and I should've moved on by now. But instead I got caught playing entities and transformation games.


Basically, the markup that's in my DB is horribly hacked HTML. It's sort of like pseudo HTML it's so bad, and nothing like XHTML. So in the generator step, I first got the data out of the DB and into an XML format by using HTML Tidy, which does its best to well-form your document (works really, really well, actually). Then after it's well-formed XML, I go to transform it. But something is up and Cocoon didn't like some of the entities in the original document. First it was the € sign, then it was a random ó, then it game me weird ass errors about using the original "e; mark and more. I have no idea what the hell it's talking about. The generator produces valid XML which can be transformed on the command line, but when using Cocoon, it just freaks out. I give up messing with it.


Basically it's like this - I NEED to be able to be sure that whatever CRAP I have in my db is able to be presented to the user. I need to be able to filter and tweak it, without errors. I NEED to be able to do this without emailing the Cocoon Dev list every 5 minutes and waiting for an answer. I'm afraid that Cocoon is just this enormous Black Box with a learning curve like an upside down hockey stick, so it's time to move on. Besides... Right now I'm only targeting one platform - the 3650's XHTML browser, which I've found out is quite forgiving of bad XHTML code (I'll write about this in a bit). So if an extra € slips by, I'm not going to worry too much about it. What counts now is productivity, not having the cleanest XML that's ever been produced by man.


Urgh. Pure frustration right now, can you feel it?


-Russ

Comment

[Russell Beattie]

February 21, 2003

Jon Udell lists ten things we...

Jon Udell lists ten things we should know about Microsoft's InfoPath. Here's what it looks like. [Scripting News]

February 19, 2003

NewsMonster

Kevin Burton's NewsMonster is apparently an advanced weblog manager, reputation system, micropayment economy, and semantic web application. Or you could use it as an RSS aggregator. [Hack the Planet]

February 12, 2003

Proteus Multi-IM-CLient

Proteus offers an elegant interface, an open-sourced backend, and an insanely customizeable user experience, Proteus 2.2 lets you easily manage your multiple instant messaging accounts in an environment that bleeds OS X.

Proteus Multi-IM-CLient

Proteus offers an elegant interface, an open-sourced backend, and an insanely customizeable user experience, Proteus 2.2 lets you easily manage your multiple instant messaging accounts in an environment that bleeds OS X.

January 14, 2003

Mozilla Safari Apple

Interessanter Artikel(pdf) ueber Apple und den Entscheid mit KHTML anstelle von Gecko/Netscape zu gehen.

December 21, 2002

JellySWT

JellySWT is a simple Jelly library which can be used to create SWT user interfaces. It allows XML documents (Jelly scripts) to be used to define the layout and rendering of SWT front ends which avoids lots of mundane Java coding, using markup to define the view of your front end and allowing you to bind to Java code for the business objects and models.

December 03, 2002

RhymBox and Tipic

RhymBox an Jabber client based on the Tipic Library.

November 26, 2002

Sprint's IM Solution

Sprint (pdf) bietet neuen Service - perfekte Symbiose von Wireless und IM.

The e-mail scandal

November 22, 2002 01:01 PM PST

The e-mail scandal
Brian Livingston

A NEW STUDY shows that 11.7 percent of messages that were requested by an e-mail subscriber never reached the recipient's inbox. Six percent were incorrectly routed to a junk mail folder, and 5.7 percent never arrived in any form.

The problem is faulty spam filters put in place by major ISPs such as Earthlink, MSN, and AOL. In their attempts to reduce UBE (unsolicited bulk e-mail, or spam), these services appear to be whacking many messages people actually want.

The author of the study, George Bilbrey, used a simple method. He obtained several e-mail accounts from each major ISP. He then subscribed to 20 companies' e-mail alerts and watched his inboxes for three months. The result? Almost one in eight messages didn't make it.

Of course, this study is small and a bit subjective. Bilbrey is CEO of Assurance Systems (www.assurancesys.com), a new service that tracks whether or not your messages are arriving. We desperately need a large, academic study to give us hard numbers. If you're a researcher who's done such a study, fax me at (206) 282-6312.

The findings lend weight to a growing scandal I've been investigating. You can no longer rely on e-mail delivery. With UBE nearing 50 percent of all e-mail traffic, crude spam filters are the rage. Online billing, order updates, and other messages crucial to business can't be counted on.

In the latest development, AOL's new 8.0 version provides a Report As Spam button. One legitimate e-mail service says 99 percent of its spam complaints now come from AOL (www.dmnews.com/cgi-bin/artprevbot.cgi?article_id=22101).

That's because end-users have redefined spam to include "anything I signed up for that I no longer want." They've been told, "Never click Unsubscribe or you'll get more spam." This advice is dead wrong; spammers don't care who unsubscribes and don't value tiny opt-out lists. But users now think crying "spam" is unsubscribing.

I sympathize with people who are desperate to stop the flow. But spam filters put a Band-Aid on the wrong end of the problem. When a broken pipe is filling your basement with water, bailing away with a bucket does little good. The only solution is to find the intake valve and shut it off.

I wrote seven months ago that UBE was quadrupling annually. (See "You can stop spam".) In two years, 16 times more spam will hit your router. This spells gridlock.

Junk faxes and automated telemarketing calls are already against federal law. Adding "unsolicited bulk e-mail" to the act would be a big help. But it's strongly opposed by the Direct Marketing Association (DMA), a lobbying group for 4,700 companies.

"We don't think an opt-in regime has economic viability," says DMA Senior Vice President Jerry Cerasale. "If you go with opt-in, you foreclose the economic viability of this as a marketing channel."

It's insane for DMA members to send e-mail to people who didn't request it. Thanks to this lunacy, soon only HALF your e-mail will get through.

November 19, 2002

Zippy

Zippy: Groove-like Client based on central service infrastructure.

November 18, 2002

PicoGUI

PicoGUI: Another UI-Engine.. looks kind of C-ish.

November 15, 2002

Jigsaw

Vielleicht koennte man Jigsaw auf dem Client als WebDAV Server gebrauchen?

Scopeware Vision

Scopeware Vision Beta is available for download.

November 14, 2002

IM - Boss is watching

Artikel (pdf) zum Thema IM-SpyTools.

November 12, 2002

spaces

Spaces: Ein Outlook-Rivale, in Java entwickelt mit Support fuer Collaboration?

Plaxo

Plaxo: Ein P2P Service zum Abgleichen von Outlook-Adressen?

Zoot

Zoot: What is this??

October 24, 2002

The publish/subscribe Internet

The publish/subscribe Internet
By Jon Udell

If Web services were just "CORBA with angle brackets," there would be nothing revolutionary about the idea. Don't get me wrong, remote procedure calls over the Internet -- using HTTP as a universal transport and XML as a universal data representation -- beat the pants off CORBA, RMI (Remote Method Invocation), and DCOM (Distributed Component Object Model). I never accomplished much with those earlier technologies. Using XML-RPC and then SOAP, I've cooked up simple but useful applications based on a witch's brew of operating systems, application servers, and scripting languages. So I'm the last guy to kick sand in the face of SOAP as an RPC protocol. It's easy, universal, and productive. What's not to like?

Well, as much as we pretend otherwise, the Internet isn't one giant LAN. It works remarkably well much of the time, but variable latency and sporadic failures are no longer exceptions, they are the rule. HTTP's statelessness was the first major adjustment to this new reality. Hit the InfoWorld home page, and your browser will make a dozen separate requests of our server. If a few of those fail, it'll keep trying until it finally assembles the whole page.

Of course, why were you hitting our site in the first place? Presumably to find out about topics that interest you. Since you've got better things to do than poll the site to find out what's new, we publish feeds that you can subscribe to in order to be notified when updates occur. If you're reading this column, you've subscribed to one of those feeds, in the form of an e-mail newsletter. (There are others[1] as well.) You might also be using an RSS (Rich Site Summary) newsreader to follow one of our syndicated XML newsfeeds[2,3,4,5]. These are all simple examples of a publish/subscribe services architecture. As pub/sub and asynchronous messaging get baked into the Web services stack, things are going to get a whole lot more interesting.

For example, Radio UserLand -- the software that powers my InfoWorld Weblog[6] -- has pub/sub capability. The Radio UserLand newsreader can register an XML-RPC callback procedure with a newsfeed-publishing server. Thereafter, the server notifies the newsreader when it has new items, so the newsreader need not poll the server.

The pub/sub idea was also woven deeply into Microsoft's HailStorm. The .Net My Services (now back-burnered, but not forgotten) are really just network-based data stores -- My Lists, My Categories, My Contacts. Each offers an XML-based API that supports registration for change alerts. A developer would use an XPATH expression to define the set of elements in a HailStorm document that would trigger alerts if changed. Any authenticated user of the document would then be automatically notified of the changes.

Pub/sub is standard fare in the world of message-oriented middleware. Tibco was an early innovator, but with IBM's MQSeries, Microsoft's MSMQ, and the Java Message Service (supported by IBM, Sonic, Sun, BEA, and others), pub/sub is now routinely offered as an alternative to point-to-point messaging.

Meanwhile a new generation of middleware vendors -- such as Kenamea and KnowNow -- have brought pub/sub messaging down to the desktop. Using their kits you can subscribe a cell in a spreadsheet, or a paragraph of an HTML document, to a topic that's managed somewhere out in the cloud. When an event is posted to that topic, such as a stock ticker update or the approval of part of some business process, it routes directly to the hotspot in the spreadsheet or document. Macromedia's Flash Communication Server MX makes Flash clients capable of the same kind of thing.

Queued messaging, also known as store-and-forward, is part of the "loosely coupled" architecture now envisioned for Web services. Pub/sub is based on queues, but it's not just about point-to-point communication. Events published to a topic may fan out to many recipients. And those events can be almost anything you can think of: a user clicking a button, a temperature rising above a limit, an appointment landing in a calendar.

The Web services stack doesn't yet prescribe a standard way to implement pub/sub. But Microsoft's proposed WS-Routing and Sonic Software's plan to weave JMS support into the Apache Axis engine are a step along the road. Meanwhile, there are lots of ways to skin the cat, and it's a good idea to get familiar with them. Remember when GUI programming came along, with its notion of an event loop that didn't really control anything but reacted to everything? Programming in a world of distributed Web services is going to be a lot like that.

1. http://www.iwsubscribe.com/newsletters

2. http://www.infoworld.com/rss/news.rdf

3. http://www.infoworld.com/rss/columnists.rdf

4. http://www.infoworld.com/rss/webservices.rdf

5. http://weblog.infoworld.com/udell/rss.xml

6. http://weblog.infoworld.com/udell

October 23, 2002

Mozilla Development Projects

Eine Liste aller Mozilla Projects.

Mitch Kapor

Mitch Kapor ist an der Entwicklung eines Open Source Clients fuer Desktop Collaboration.
Sein WebLog
Seine Technolgie
Seine Multiplattform Umgebung: wxPython