Archive for the ‘Web’ Category.

nBloglines .NET Module for Bloglines Web Services

Bloglines is still the only reader that provides an “official API” to make use of their services. I was working on a syndication application and decided to share the .NET Bloglines library that I wrote to use their web services.

Requirements

  • .NET 3.5 Framework

Quick Reference

  • public Bloglines(string username, string password)
        Member of CodingDay.Bloglines

Default constructor, password is optional for count function.

  • public int Count()
        Member of CodingDay.Bloglines

Returns number of unread items from your subscriptions

  • public System.Collections.Generic.IEnumerable <Subscription> GetSubscriptionList()
        Member of CodingDay.Bloglines

Gets the Subscription list from your account

  • public System.Collections.Generic.IEnumerable<Channel> GetChannels(string SubId, bool markasRead)
        Member of CodingDay.Bloglines

Get the rss feeds for a subscription ID returned from the subscription list function. MarkasRead parameter is the synchronization parameter to mark the changes on bloglines servers.

Download


Usage

  • Create CodingDay.Bloglines object

var blines = new CodingDay.Bloglines("***@****.***", "******");

  • Count unread items for the user

 Console.WriteLine("{0}", blines.Count());

  • Get list of subscriptions

 var subscriptions =  blines.GetSubscriptionList();
foreach (var item in subscriptions)
{
  Console.WriteLine("id:{0}, url:{1}, parent:{2}", item.Id, item.Url, item.ParentId);
}

  • Get items for a subscription feed or folder using the id returned from subscription function

// use a number from the subscriptions id
var channels = blines.GetChannels("64363260", false); 
foreach (var item in channels)
{
  Console.WriteLine("title:{0}, description:{1}", item.Title, item.Description);
  foreach (var i in item.Items)
  {
     Console.WriteLine("{0}", i.Description);
  }
}

 

For more details, check out http://www.bloglines.com/services/api/

Parallel Web with Yahoo Pipes

Yahoo! Pipes is a great idea implemented by Yahoo! with an incredibly amazing user interface. When I first played with I just shocked and suspected about flashy stuff. However it is based on only Javascript with the help of Yahoo’s great Yahoo! User Interface Library on the back-end.

The idea is simple to explain if you know the pipes from the operating systems. Basically linking the output of something to the input of something else or vice versa. Something in this case is the RSS feeds or web services provided from different sources.

Pipes are one of the main concepts in parallel computing for pipelining the process. Since web is enormously distributed, what you can do is infinite. There are some operators available like for each, count, sort, filter that you can do various operations to the feeds. So with this tool, you can parallellise web and get the processed result.

The create pipe user interface is very similar to the IDE interface even it has a debugger as we used to do. On the left you have the toolbox and you have the design surface where you drag and drop the components.  Beside creating your own pipes, you can also use people’s pipes as well.

WPF/E Released

Scott Guthrie and his team at Microsoft has released a new product code named WPF/E. It looks like a flash replacement for Internet Explorer browser with some additional features. First of all, it only works with Internet Explorer, I think if they don’t give support to other platforms and other browsers, although WPF/E seems really great, it might not be popular as flash.

We want some standards to look our applications look the same on every platform. I have never programmed flash scripts before and I am sure that Microsoft will provide that easy to developers. However if it is only for IE, I don’t think many of the developers will use it.

I don’t understand that new approach as well. The products like Virtual Earth or Photosynth and this only works for Internet Explorer because they use Activex. I don’t know if they will support other platforms but since it’s developed on ActiveX I don’t think they will give any support.