Friday, July 31, 2009

Mobile share

"Mobile Share seems like a simple but potentially handy new service. It lets you create a personal online contact page, a simple mobile formatted web page containing your name and phone number. A link on the page lets you share it by sending the URL in a text message. Another link lets the recipient add your name and number to their phone’s contacts with a single click." - Dennis Bournique from wrote about our address share service. Thank you Dennis for the testing as well as for the previous remarks. Your writing actually gives us some new ideas. In particularly, iPhone will be supported too in the nearest time.

Thursday, July 30, 2009

Google + Twitter

Google + Twitter search mashup has been updated. See Got here.

Wednesday, July 29, 2009

Tomcat as a foaf+ssl server

foaf+ssl is a standards based protocol enabling one click identification/authentication to web sites, without requiring the user to enter either a username or a password. It can be used as a global distributed access control mechanism. It works with current browsers. This article describes how to setup this option for Tomcat 6

Tuesday, July 28, 2009

Coldtags suite ver. 3.75

Coldbeans Software announced the major new release of Coldtags suite. This suite provides over 375 JSP custom tags for common programming tasks faced by JSP (and/or Coldfusion) developers.

Coldtags suite comes with a wide range out of the box ready-to-use the most common control components that are repeatedly required for the development of JEE applications. They include standard user interface components like buttons, lists, edits, grids, menus, tables, tree views, calendars, ajax etc. With this suite developers and web designers no need to worry about writing browser-specific HTML or JavaScript.

All controls are carefully written and tested to operate equally well on major Internet browsers as well JEE servers.

Monday, July 27, 2009

Sunday, July 26, 2009

Automagically automated

How the SpinVox (automated voice to SMS translation) really works :-)
Interesting, on Mobile World Congress in Barselona they told about API. Is it real?

Saturday, July 25, 2009

vCard in JSP

Just one tablib from Coldtags suite: vCard. Lets you directly present contact information in your JSP (and/or Coldfusion) page.

Friday, July 24, 2009

About cache

As per HTTP basic user-agent should not cache URL's with query string. In the latest firefox browser you can very easy check out the current cache. Just use the following URL: about:cache And what can I see for example

Data size: 371 bytes
Fetch count: 1
Last modified: 2009-07-22 14:51:00
Expires: 1970-01-01 03:00:00

And by the way the picture will be the same not only for firefox. Always make unique URL's if cache is an issue for your application. E.g. link taglib lets you add an unique query string attribute in order to avoid client-side cache

Thursday, July 23, 2009

Wednesday, July 22, 2009

Twitter Search API

A practical work with Twitter Serach API (PHP + JQuery). Another example (pure JavaScript) you can see here - Google blogs + Twitter

Friday, July 17, 2009

Local twitter

Local twitter mashup has been updated. Lets you see (right from the Google Map) who is writing to twitter from nearby. As well what do they write about. Local trends in the real time

Thursday, July 16, 2009

Proxy server

Traffic Server fills a need for a fast, extensible and scalable HTTP proxy and caching. We have a production proven piece of software that can deliver HTTP traffic at high rates, and can scale well on modern SMP hardware. We have benchmarked Traffic Server to handle in excess of 35,000 RPS on a single box. Traffic Server has a rich feature set, implementing most of HTTP/1.1 to the RFC specifications - from Yahoo

P.S. check out by the way Proxy servlet from JSOS.

Wednesday, July 15, 2009

Real time data from Google

A simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom.

Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (Atom URL) they're interested in is updated. Here is the reference implementation.

Smart idea - request Atom feed only once and after that instead of repeated polling register your own callback that will get notifications as soon as new data is published. And data feed supports such feature could be provided via Feedburner.

Saturday, July 11, 2009

Free SMS

Email to SMS gateways:

send SMS to mobile users via email. For free. And probably could be useful for some notification applications like Twitter 411

Friday, July 10, 2009

Annotated links

Our mashup Annotated links has been updated. Lets you pack any link (group of links) and your own text comment (in post-it style) into one short URL. The final pack could be shared via email and twitter. So you can threat it as yet another way for link sharing in Twitter for example – your comment could be much more than 140 chars.

Provides HTTP API and own bookmarklet too. See the previous announces here.

Thursday, July 09, 2009

Twitter bots

We wrote already about our Twitter mashup – Twitter 411 service. It is a web application lets you easily create your own Twitter bots. Bot here is an application that receives some requests via Twitter and responds with your own data. You define a form for the request as well as the content for the response. Here is an example for such a bot (stock market).

As a response for the bot within t411 service you can provide any CGI script (e.g. jsp, java servlet, php etc.) on your own site. See again here a complete example (JSP) for stock market bot.

And now let us see a yet another example. Now it is a weather bot.
How does it work? The source data provided by the site This site contains weather forecast around the world. And what is important, you can pickup weather data in XML or RSS format. So it is a quick deal to build some automation processing. We create a new bot for t411 service – code for the request is w

As a reaction for this bot we've set a JSP file that obtains RSS data from, presents them in mobile ready form and responds back with a link to the requested forecast. Here is a part of that file:

<div class="content">

<%@ taglib uri="/WEB-INF/taglib374.tld" prefix="w" %>

<w:setLocation url="" ttl="36000" id="A"/>

<w:forEachDay feedId="A">

<img src="<%=itemImage%>" style="border:0;float:left;padding-right:5px" alt=''/>

<br/>&copy; <w:getChannelCopyright feedId="A"/>
<w:getChannelLink feedId="A" id="url"/>
<br/><a href="<%=url%>">Original data</a><br/>


code uses the Weather taglib from Coldtags suite. Tag setLocation requests rss feed (and caches it for 10 hours. Tag forEachDay outputs data. And finally we prints a copyright information as well as the back link (as it is required by

The rest of the deal is standard. Follow to user @t411 and send him a direct message for the weather forecast you are interested in.

Here are examples (what the bot recognizes and what you have to send as direct message to @t411):

w london get forecast for London
w paris get forecast for Paris
w msk get forecast for Moscow
w spb get forecast for Sankt-Petersburg

And the result (you will get a direct message back) is a link to the mobile site with the forecast. Because it is a mobile site you will be able to open it right from your mobile phone.

The direct messages from Twitter could be delivered by SMS to user's mobile. And so – the mobile link will be delivered too. That was the original idea for t411 service – Twitter could be used as an alternative model for SMS services programming. Twitter is a transport here.

Wednesday, July 08, 2009

Mobilize your data

Our mashup QR code maker has been updated. It is getting closer and closer to the state he was originally assigned to. From the day one we saw it as the tool for the content mobilizing.

Mashup QR-code maker is an easiest way (as we wrote already – well, yet another attempt to present an easiest way) for the mobilizing of user-defined content. Here are two tasks at least. At the first hand we need to create a mobile view for user-defined data. And what is important of course we need to do that very simply. After that we have to present by some way this view for our mobile users. Actually, QR code generator mashup solves these tasks exactly.

As soon as the web user types (or copy-pastes) some content the relevant mobile web page will be created automatically. Btw, mashup automatically recognizes links in your text and converts them into hyperlinks too.

The latest version of QR-code mashup lets you add some local document to the content (e.g. photo, video, data files etc.). So you can share for example some local saved video data for the mobile users.

And a reference (URL) for this fresh mobile web page will be presented as a QR-code. So as soon as mobile user scans this code, he/she will get your info (an appropriate web page) automatically.

One new element – mobile users can share created mobile pages over plain old SMS. So it is very easy to create some viral distribution.

E.g. the simplest use case: just type (paste) as a content some URL (link) to the page/file (e.g. video, presentation, sales materials etc.) you need to share right from your mobile phone. Mashup creates for you a mobile web page with this link. You can bookmark this created mobile page right in your mobile browser and simply send it by SMS to your friends / partners etc.

All in all it is a simplest way for the content mobilization. As you can see it is just a copy/paste process. There is no need in programming/developing skill at all. And QR-codes solve the distribution problem.

Tuesday, July 07, 2009

Firebug guide

"But how do you trace, track and debug client-side code interactively? The use of alerts has been useful but does not support an interactive way for you to interact with the web-page on the fly. To make matters worse, even if you place some traces into your js code to help find the slow functions, etc, network latency may be another cause of slow response. Or maybe the order your files are loaded is an issue? Or maybe their are caching issues. Well, Firebug to the rescue." - from a more than useful guide for Firebug usage

JSON for phone

A reverse engineering for MobileMe application from Apple. Author restores / simulates data exchange protocol. Could be useful learning if you are involved into some phone – web server data exchange projects. Source code is here.

Monday, July 06, 2009

Food mashup

Take an idea about your next lunch right from Twitter. A new mashup Food from Twitter shows you the live stream of food pictures just published in Twitter. See what other people are eating. Crisis-time food replacement :-)

Sunday, July 05, 2009

Not the same origin

By the way, Firefox 3.5 allows you to make XMLHttpRequests cross domain (in other words code loaded from some domain can make XHR requests to domain Mozilla's spec suggests a special HTTP header for that:

Access-Control-Allow-Origin: *

with this header your server informs client that cross domain request is Ok from any domain. Instead of * you can use there a name of domain allowed to perform cross domain requests.

And here is Java servlets filter from JSOS lets you add such a header to your site so cross domain requests could be allowed for existing web applications - Cross domain Ajax filter.

Saturday, July 04, 2009

Photo from Twitter

Real time data stream mashup pictures from Twitter has been updated. Time killing application :-)

Friday, July 03, 2009

Math captcha

Web component describes a different kind of captcha system - one that asks the user questions in plain text. The trick is to use mathematics questions with a variety of forms and varying numbers, so that it should be difficult to write a bot to parse them. See it here: Math question taglib.

Thursday, July 02, 2009

Shared sessions

Technical info: how to share sessions and implement cross context applications on Tomcat

P.S. and Session administration taglib from Coldtags suite lets you perform administrative tasks for your session scope.

Wednesday, July 01, 2009

Contact info

Let us present a new way for sharing your contact info. You can publish your data right on your site (blog) in the form allowed one click transfer to phone address book. A simple JavaScript widget lets you do that (see MECARD widgets).

Widget presents a QR-code that could be scanned by the visitors. After that it is just one click (confirmation) for adding your contact. Now more manual typing and your data will be always correct. For example, add the following fragment to your HTML code:

<script language="JavaScript">
 var qr_shareName = 'Coldbeans';
 var qr_shareEmail = '';
 var qr_shareURL = '';

<script type="text/javascript" src=""></script>

and you will get this:

Coldbeans contact

Of course, you can set more details (phone, address) as well as a new size for QR-code image. See MECARD JavaScript widget for more details.