Saturday, October 31, 2009

Newspaper in Twitter

Our mashup Twitter gazeta has been updated. Lets you wrap Twitter search results and present them in newspaper style.

Friday, October 30, 2009

Real time search

Our search mashups have been updated:

Twitter links – see links published in any Twitter line. Web resources selected by the friends circle.
Twitter buzz – see hash tags published in any Twitter line. Hot topics discussed by the friends

Thursday, October 29, 2009

Social search for Twitter

Mashup Twitter info has been updated. Lets you perform search for Twitter account via Google Social API. Test your new followers for example – who they are.

Wednesday, October 28, 2009

Tuesday, October 27, 2009

Generators

55 generators for web designers. Repetitve tasks such as creating a looping background or styling a basic CSS menu etc. that actually works

Monday, October 26, 2009

Re-tweets

More real time search mashups - Retweets. Lets you see re-tweets from any timeline. You do not need even to have your own Twitter account. Just set any twitter name you are interested in and see what his/her friends retweet (actually - share with public). And of course, Twitter users can check out own friends circle with this mashup.

Sunday, October 25, 2009

Friday, October 23, 2009

Google + Twitter

Actually we add Twitter to Google search: Got mashup. And here you can see local news illustrated from Twitter: Geo Search

Thursday, October 22, 2009

Wednesday, October 21, 2009

Search engines

Search engines usage as per log from http://www.servletsuite.com (relative values):

Bing: 1
Yahoo: 1.41
Google: 94

of course, it it a technical site, so programmers, probably, are not so "bing" :-)

Tuesday, October 20, 2009

Randomization for your web

Add more dynamics and personalization to your sites with "random" components from Coldtags suite. You can, for example:

Add random file (and/or image). See random content taglib
Include (exclude) some code depends on the probability: random body component
Iterate over random elements in collections: randomize taglib

Monday, October 19, 2009

Directory of mashups

All our mashups (Twitter, Google Maps, search, mobile etc.) in one place: Directory of mashups

Sunday, October 18, 2009

Saturday, October 17, 2009

Trends in web hosting

Cloud servers are going to replace shared hosting accounts and present a good alternative to VPS and dedicated servers. They are chipper and much more scalable.

Friday, October 16, 2009

Geo search

Our mashup Geo search has been updated. It is local search from Google, illustrated by the twitter photo-stream.

Thursday, October 15, 2009

Yahoo mashups

An useful mashup from Yahoo Hack Day: http://insidertrades.org. Lets you check out once per 30 seconds insiders trading and send email alerts. Very good example of Yahoo tools power.

P.S. by the way, the following mashups use Yahoo Pipes:

Twitter links
Twitter buzz

Wednesday, October 14, 2009

Google Static Map

A new component in JSOS - proxy for Google Static Map. The Google Static Maps API lets you embed a Google Maps image on your webpage without requiring JavaScript or any dynamic page loading. Bit it requires a key (free registration on Google). And this API key is connected with some domain. So if you are distributing your map it could be a problem – map will be actually requested from some other domain. This proxy lets you always perform request from your domain (domain associated with key):

Just describe servlet and mapping:

<servlet>
  <servlet-name>StaticMap</servlet-name>
  <servlet-class>com.jsos.staticmap.StaticMapProxyServlet</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>staticMap</servlet-name>
  <url-pattern>/servlet/staticmap</url-pattern>
</servlet-mapping>


and now you can request static map by this way:

http://your_host/servlet/staticmap?key=your_key&maptype = mobile&markers = 40.8403347,-82.2393255 &size=240x320&zoom=16


P.S. original component used for this custom proxy is generic HTTP proxy.

Tuesday, October 13, 2009

MySQL GIS Extension

MySQL GIS Extension tutorial.

Lets you add a special column for your latitude/longitude data tables - geometry. Then you create an index on that column called a spatial index. This is really an R-Tree index that is very fast when you’re doing range queries.
You want to use MySQL's GIS because spatial indexes are faster for latitude/longitude range queries than regular indexes.

Monday, October 12, 2009

Links in Twitter

Our mashup Twitter links has been updated. Lets you see all the links published in any Twitter timeline (links from friends). For example, here is a collection of links from @t411 circle: http://tlink.linkstore.ru?u=t411.

Sunday, October 11, 2009

Photo map

A new Twitter mashup - photo livestream: Photo Map. Displays photo from Twitter on Google Maps.

P.S. you can check out also the following mashups deploys Twitter's photo:

London's Twitter
Photo-Twitter
Food on Twitter

Saturday, October 10, 2009

Smart meters

Google is pushing its Powermeter project – web access to data from electricity meters. But electricity data is not only source requires web access.

Here is a demo from one of our project – web access for smart water meters. You can get access to meter’s data via HTTP based API (get XML and/or JSON). And of course you can simply see data via web (including mobile web). Check out the following link: http://mbus.linkstore.ru Property name is demo, password is demo

Smart meter with M-bus support is developed by Russian company Abava.Net

Friday, October 09, 2009

Wednesday, October 07, 2009

Twitter for

A new list of Twitter tools: Top 50 Apps for the Twittering Teacher.
Actually any stuff addressed to some vertical market is always interesting. Any collection of "Twitter for ..." is yet another sign of platform maturity.

P.S. Annotated links mashup is there.

Tuesday, October 06, 2009

Resources in web applications

A couple of components let you unpack resources in your web applications on the fly. The main idea is to pack various resources (images, css and js files) together with your code and extract data on the fly. Could be useful for example when you distribute application on the USB and your application should be up and running without installation – everything will be packed in one file.

Resource servlet lets you pickup resources (getResourceAsStream) from CLASSPATH and Unzip servlet lets you directly extract data from zip (jar) file. For example:

1. Pack your images (directory /pic) in file myfile.jar
2. Describe servlet and mapping:

Alternatively, you can define path via mapping. Set zip (jar) file as an initial parameter and define mapping for files you need to unzip:

<servlet>
<servlet-name>Unzip</servlet-name>
<servlet-class>com.jsos.unzip.UnzipServlet</servlet-class>
<init-param>
<param-name>file</param-name>
<param-value>/WEB-INF/myfile.jar</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>Unzip</servlet-name>
<url-pattern>/pic/*</url-pattern>
</servlet-mapping>

And now in your JSP files you can write so for example:

<img src="http://your_host/pic/a.gif"/>

file a.gif will be extracted on the fly

Monday, October 05, 2009

Twitter for teachers

OnlineCourses.org published an interesting compilation of Twitter tools for teachers. It is always good when the conservative source (and education is so, in general) adopts hot technology. And twice good of course, they've mentioned one of our mashups – Annotated links. Lets you share links with own remarks (post-it notes).

We can suggest for the teachers check out also another mashup – Secure notes. Lets you share one time readable text notes. So for students for example there is no way to share teacher's answers with friends etc. :-)

Links in the list are really interesting. Check out for example GroupTweet – group communications via Twitter

Sunday, October 04, 2009

Technical links

Mashup Links in Twitter lets you see all the links published in Twitter timelines. So, if you get any technical blog you can create some like your own Digg (or DZone) from the relevant links. Here are some examples:

@d2h David Heinemeier Hansson, Rails creator.
@sstephenson Sam Stephenson, creator of the Prototype Javascript Library.
@madrobby Thomas Fuchs, creator of script.aculo.us, Prototype JS core member.
@rasmus Rasmus Lerdorf, PHP creator.
@andigutmans Andi Gutmans, PHP developer, co-founder of Zend Technologies.
@cdibona Chris DiBona, open source enthusiast, Google Code manager, Googler.
@sussman Ben Collins-Sussman, original Subversion developer, Google software engineer.

Saturday, October 03, 2009

Coldtags suite ver. 3.80

Coldbeans Software announced the major new release of Coldtags suite. This suite provides over 380 JSP custom tags for common programming tasks faced by JSP 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.

Actually at this moment this collection is the biggest repository of the reusable web components for JSP (and/or Coldfusion) developers.

See it here: http://www.servletsuite.com/jsp.htm

Friday, October 02, 2009

Buzz in Twitter

A new mashup for data discovery - Twitter Buzz. Lets you see cloud of topics (hash tags) from any timeline. For example you can check out what your own friends in twitter are talking about. Just provide any twitter name on the above mentioned site, or use it right in the URL request. For example, here is a link to buzz from @t411 circle: http://tbuzz.linkstore.ru?u=t411.

Mashup has been integrated with two previous applications for data discovery: Twitter links and Twitter info.

Thursday, October 01, 2009

Base 36 shortner

How does the typical URL shortening service work? One of the most often used solutions deploys Base 36 encoding.

Base 36 is a positional numeral system using 36 as the radix. So for example decimal 10 is A in Base 36, decimal 100 is 2S, decimal 1000 is RS etc.

The choice of 36 is convenient in that the digits can be represented using the Arabic numerals 0-9 and the Latin letters A-Z. Base 36 is therefore the most compact case-insensitive alphanumeric numeral system using ASCII characters.

So shortening service at the first step replaces an original URL:

http://something_long_here

with a new one:

http://my_host/ID

where ID could an unique value from some sequence. E.g. it could be an auto-incremented key from database. And on the second step we can encode this ID with Base 36 and make it much shorter.

And here is a custom JSP taglib, lets you perform shortening: Base 36 taglib.