<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Rss on Notes</title>
    <link>https://www.simplicidade.org/tags/rss/index.xml</link>
    <description>Recent content in Rss on Notes</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>melo@simplicidade.org (Pedro Melo)</managingEditor>
    <webMaster>melo@simplicidade.org (Pedro Melo)</webMaster>
    <copyright>(c) 2016 Pedro Melo.</copyright>
    <atom:link href="/tags/rss/index.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsuhhubbub.superfeedr.com/"/>
    
    <item>
      <title>P2P? Think NNTP...</title>
      <link>https://www.simplicidade.org/notes/2005/05/06/p2p-think-nntp.../</link>
      <pubDate>Fri, 06 May 2005 11:41:50 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/05/06/p2p-think-nntp.../</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://celso.arrifana.org/&#34;&gt;Celso&lt;/a&gt; wrote about &lt;a href=&#34;http://celso.arrifana.org/?p=8&#34;&gt;using P2P technology to distribute content&lt;/a&gt;, in the context of blogging.&lt;/p&gt;

&lt;p&gt;There are two types of content that you might want to distribute: the syndication feeds, and the HTML pages.&lt;/p&gt;

&lt;p&gt;The syndication feeds is a hot topic right now, specially in the &lt;a href=&#34;http://groups.yahoo.com/group/feedmesh/&#34;&gt;Feedmesh&lt;/a&gt; group. Feedmesh already has notification distribution and &lt;a href=&#34;http://bobwyman.pubsub.com/main/2005/04/feedmesh_works_.html&#34;&gt;it seems to be working great&lt;/a&gt;. In the two previous weeks there where some messages about full content distribution of feeds in the Feedmesh mailing list.&lt;/p&gt;

&lt;p&gt;My personal view about syndication feeds distribution is well known to &lt;a href=&#34;http://the.taoofmac.com/space/&#34;&gt;Rui&lt;/a&gt; and &lt;a href=&#34;http://nowhereland.nunonunes.org/&#34;&gt;Nuno&lt;/a&gt; who are forced to listen to me every time the subject comes up. I&amp;rsquo;m a firm believer that NNTP is the way to go regarding the distribution of RSS/Atom feeds. Notice that I&amp;rsquo;m not talking about Usenet, but the NNTP protocol itself.&lt;/p&gt;

&lt;p&gt;If you use NNTP to flood your content network, and write the files in a easy-to-export layout so that you can put any HTTP server over it and use that as a syndication proxy, you have a basic Content Distribution Network (CDN) for small files.&lt;/p&gt;

&lt;p&gt;There are a lot of small issues that can be improved. There is no need for each node to keep a copy of every feed. If the logs of the HTTP server are used as a lazy-subscription mechanism, falling back to plain HTTP Proxy when the feed is not found locally, but signaling the NNTP server that he should accept that feed from now on, you have a organic beast that follows the trends of your client base. You can also expire old feeds that nobody seems to be reading, or expire only the feed itself but keep the meta data of feeds that are not updated (so you can answer 304 to our clients). We can (and should) store the feed data as GZiped files, so you don&amp;rsquo;t need to GZip-on-the-fly.&lt;/p&gt;

&lt;p&gt;You can point out a lot of drawbacks to this system: the publisher looses statistics of readership, you can&amp;rsquo;t do password protected feeds (at least not in the traditional basic HTTP authentication sense), among others. But those are the tradeoffs that we make to save yourself a lot of traffic.&lt;/p&gt;

&lt;p&gt;My personal side-effect is that if this kind of infrastructure was available, we could extend Feedmesh to the syndication clients. The current Feedmesh is only useful to be used between the major syndication aggregation services because it sends all the feeds that where modified. But if each node in this CDN also provided a filtered Feedmesh feed based on subscriptions of clients, then they could remove all the pooling and switch to a trigger-based content retrieval if they so wished (care should be taken to prevent a swarm of request, but that could be done by controlling the stream of updates sent by this service).&lt;/p&gt;

&lt;p&gt;The question is who will support this. Well, the optimistic person inside me, would like to believe that the ISPs would be interested to provide a better service to it&amp;rsquo;s customers, and if they had a simple system that just worked, they would install it on their own networks, and give it to their clients. The advantages are that they would save some bandwidth (negligible in a world of Bittorrent, I know) and give better service to its customers.&lt;/p&gt;

&lt;p&gt;But the main push, the main collecting of feeds seems to be a perfect fit to the current syndication aggregation services. They already need to do it because their business model is based on having the most fresh content, so each one of them fetches the changed feeds whenever we ping them. If they start pushing the content via NNTP, we just might have the seed we need to implement something like this.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;The HTML distribution part is different, and I think we are starting to see the solution: &lt;a href=&#34;http://webaccelerator.google.com/&#34;&gt;Google Web Cache&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Google is happy to do that service for you, to be your Coral Network. It seems obvious to me that Google value is related directly to the freshness of their own index. So they want your HTML as soon as it changes. So if Google taps the Feedmesh notification stream, they can see two things: that a specific page has changed, so they can fetch it, index it and cache it (and feed their own GWA), and (as a bonus) mark that page as more than likely being a blog and with that improve PageRank by removing the problems that the blogs are causing them.&lt;/p&gt;

&lt;p&gt;&lt;a href=&#34;http://www.akamai.com/&#34;&gt;Akamai&lt;/a&gt; is probably going to be relegated to DNS and static content CDN from now on.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>RSS your yum updates</title>
      <link>https://www.simplicidade.org/notes/2005/01/22/rss-your-yum-updates/</link>
      <pubDate>Sat, 22 Jan 2005 18:04:48 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/01/22/rss-your-yum-updates/</guid>
      <description>&lt;p&gt;If you like RSS and use Fedora Core 3, then you can have the nightly yum update reports delivered to you via RSS.&lt;/p&gt;

&lt;p&gt;The following setup requires:
   * using fedora core 3, or having the command &lt;code&gt;rss-generate&lt;/code&gt; in yum (check &lt;code&gt;man yum&lt;/code&gt;);
   * your mail is delivered via qmail;
   * you can install &lt;code&gt;.qmail&lt;/code&gt; files.&lt;/p&gt;

&lt;p&gt;You probably could workaround the last two. I might do that someday. For now, consider this as a quick (took me less than 20 minutes after I noticed rss-generate in yum manpage :) ) hack.&lt;/p&gt;

&lt;p&gt;The setup is simple: each night, a cron runs on each server, and generates the RSS file. The file is then sent to a special mailbox, and there we filter the message and place it in a public HTTP site. You then configure your favorite RSS reader with that URL.&lt;/p&gt;

&lt;p&gt;First I created a email address with .qmail file in my homedir:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cat &amp;gt; ~/.qmail-yum &amp;lt;&amp;lt;EOF&#39;
|/home/melo/bin/convert_yum_rss_mails_to_http.pl
&amp;amp; youraddress@yourdomain.top
EOF
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The second line should be a good email address. If something goes wrong with the script, it will fallback to the email address. At least you&amp;rsquo;ll know that something has gone bad.&lt;/p&gt;

&lt;p&gt;Then you place the perl script in the correct place. You can download the &lt;a href=&#34;http://www.simplicidade.org/software/yum_rss_reports/convert_yum_rss_mails_to_http.pl&#34;&gt;convert\_yum\_rss\_mails\_to\_http.pl&lt;/a&gt; script, or paste it:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#!/usr/bin/perl -w

# Where to place RSS files? Should be available via Web
my $dir_for_rss_files = &amp;quot;/var/httpd/htdocs/yum_rss&amp;quot;;
my $server;

while (&amp;lt;&amp;gt;) {
  $server = $1 if /^Subject: Yum changes for (.+)/;
  last if /^$/;
}

fallback(&#39;no_server&#39;) unless $server;

my $filename = &amp;quot;$dir_for_rss_files/$server.xml&amp;quot;;

umask(022);
fallback(&amp;quot;could not create file &#39;$filename.new&#39;&amp;quot;) unless open(RSS, &amp;quot;&amp;gt;$filename.new&amp;quot;);
print RSS &amp;lt;&amp;gt;;
close(RSS); 

sucess() if rename(&amp;quot;$filename.new&amp;quot;, $filename);

unlink(&amp;quot;$filename.new&amp;quot;);
fallback(&amp;quot;could not rename file &#39;$filename.new&#39;&amp;quot;);

# qmail exit codes, see qmail-command man page
sub sucess   { exit(99) }
sub fallback { my $m = shift; print STDERR &amp;quot;Err: $m\\n&amp;quot;; exit(0)  }
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;That&amp;rsquo;s it. If something goes wrong, check your qmail-send logs. A message is written there.&lt;/p&gt;

&lt;p&gt;Now you only need to generate the mails on each server. To do that download the script &lt;a href=&#34;http://www.simplicidade.org/software/yum_rss_reports/yum-rss-report.cron&#34;&gt;yum-rss-report.cron&lt;/a&gt;. It looks like this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#!/bin/sh

/usr/bin/yum --rss-filename=/dev/fd/1 -R 120 -d 0 -e 0 generate-rss |  \\
/bin/mail -s &amp;quot;Yum changes for `hostname`&amp;quot; youraddress-yum@yourdomain.top
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;This command will generate the RSS (the -R 120 will make sure that each server will wait a random number of seconds), and mail it to your address that you set up before. Make sure you change the address in this script, and make sure you can receive mail at that address.&lt;/p&gt;

&lt;p&gt;Then, copy the edited script to all the servers that you want to report to you. On each one, copy the script to &lt;code&gt;/etc/cron.daily&lt;/code&gt; and make sure you make it executable:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;cp yum-rss-report.cron /etc/cron.daily
chmod 555 /etc/cron.daily/yum-rss-report.cron
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;That&amp;rsquo;s it! Just subscribe each server in you favorite RSS reader and each morning you&amp;rsquo;ll know which servers got upgraded and to which versions.&lt;/p&gt;

&lt;p&gt;I have some improvements to make to these scripts, but they are good enough for now.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>darcs2rss now at 0.5</title>
      <link>https://www.simplicidade.org/notes/2004/12/30/darcs2rss-now-at-0.5/</link>
      <pubDate>Thu, 30 Dec 2004 17:47:49 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/12/30/darcs2rss-now-at-0.5/</guid>
      <description>&lt;p&gt;Real life has kept me from posting what&amp;rsquo;s going on at simplicidade.&lt;/p&gt;

&lt;p&gt;I just sent a mail to &lt;a href=&#34;http://www.darcs.net/&#34; title=&#34;Darcs&#34;&gt;darcs&lt;/a&gt; mailing list announcing version 0.5. I switched to a proper XML::Parser and added command line options to change RSS metadata.&lt;/p&gt;

&lt;p&gt;In my personal copy I have two big changes:
 - generating RSS 2.0;
 - filtering comments: current filters are &amp;lsquo;simple&amp;rsquo; and &amp;lsquo;markdown&amp;rsquo;.&lt;/p&gt;

&lt;p&gt;Both these features are optional, of course.&lt;/p&gt;

&lt;p&gt;I really like &lt;a href=&#34;http://daringfireball.net/projects/markdown/&#34; title=&#34;Markdown&#34;&gt;markdown&lt;/a&gt; and I&amp;rsquo;m using it more and more everywhere, so this is mostly a feature that I use a lot and I needed fast. But to use HTML formating in your item descriptions, you need to move to RSS 2.0.&lt;/p&gt;

&lt;p&gt;In order to do that I&amp;rsquo;ll have to deal with meta-information. Using command line parameters is not such a good idea. My current script to generate a feed for darcs2rss itself is 4 lines long! I&amp;rsquo;ll have to code support for a config file.&lt;/p&gt;

&lt;p&gt;Will see.&lt;/p&gt;

&lt;p&gt;About &lt;a href=&#34;http://www.darcs.net/&#34; title=&#34;Darcs&#34;&gt;darcs&lt;/a&gt;, it&amp;rsquo;s been really great. Much more simple to use than &lt;a href=&#34;http://regexps.srparish.net/www/#Gnu-arch&#34;&gt;arch&lt;/a&gt;, my previous favorite CVS replacement, and fast enough. I&amp;rsquo;ve been lurking the mailing list and there seem to be some situations where darcs can be very slow, but my projects are very small, so it&amp;rsquo;s not an issue  for me. The darcs developers are working on this, but I admit that I don&amp;rsquo;t even try to follow those discussions, that usually evolve into mathematical discussions :).&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>darcs2rss</title>
      <link>https://www.simplicidade.org/notes/2004/12/08/darcs2rss/</link>
      <pubDate>Wed, 08 Dec 2004 13:09:05 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/12/08/darcs2rss/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been using &lt;a href=&#34;http://www.darcs.net/&#34; title=&#34;Darcs homepage&#34;&gt;darcs&lt;/a&gt; for some weeks now, and I like it a lot. I&amp;rsquo;ll write more about darcs and why I like it in a future post, but I&amp;rsquo;m switching from CVS to darcs for my current and future pet projects.&lt;/p&gt;

&lt;p&gt;Last friday, &lt;a href=&#34;http://www.abridgegame.org/pipermail/darcs-users/2004-December/004622.html&#34; title=&#34;Bennett&#39;s request&#34;&gt;Bennett Todd was asking&lt;/a&gt; in the &lt;a href=&#34;http://www.abridgegame.org/mailman/listinfo/darcs-users&#34; title=&#34;darcs users mailing list&#34;&gt;darcs-users mailing list&lt;/a&gt; for a script to generate a RSS feed of darcs changelog. I send him a quick perl script to do just that. I also got some sugestions and improvements.&lt;/p&gt;

&lt;p&gt;So I created a darcs repo for this project. You can find it at &lt;a href=&#34;http://darcs.simplicidade.org/repos/darcs2rss/&#34; title=&#34;darcs2rss repo&#34;&gt;http://darcs.simplicidade.org/repos/darcs2rss/&lt;/a&gt;. You can browse all my repos at &lt;a href=&#34;http://darcs.simplicidade.org/&#34; title=&#34;Simplicidade.org darcs repos&#34;&gt;http://darcs.simplicidade.org/&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Next, I have to make a small page about it. Not today, though. Real life is waiting. Meanwhile, you can use the &lt;a href=&#34;http://darcs.simplicidade.org/repos/darcs2rss/README&#34; title=&#34;darcs2rss readme&#34;&gt;readme&lt;/a&gt; to know more, specially the roadmap.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Episode IV: a new hope</title>
      <link>https://www.simplicidade.org/notes/2004/09/28/episode-iv-a-new-hope/</link>
      <pubDate>Tue, 28 Sep 2004 13:23:51 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/09/28/episode-iv-a-new-hope/</guid>
      <description>&lt;p&gt;Well, if your bandwidth bill from you RSS feeds is starting to eat your income, then you should thank &lt;a href=&#34;http://www.bloglines.com/&#34;&gt;Bloglines&lt;/a&gt; and &lt;a href=&#34;http://www.bradsoft.com/&#34;&gt;some&lt;/a&gt; &lt;a href=&#34;http://www.ranchero.com/&#34;&gt;desktop&lt;/a&gt; &lt;a href=&#34;http://www.blogbot.com/&#34;&gt;aggregation&lt;/a&gt; software companies.&lt;/p&gt;

&lt;p&gt;Check out the &lt;a href=&#34;http://www.bloglines.com/about/pr_09282004&#34;&gt;new service&lt;/a&gt; from Bloglines. Basically they will develop a new &lt;a href=&#34;http://www.bloglines.com/services/&#34;&gt;Web service API&lt;/a&gt; so that applications can pull the feeds from them, instead of pooling your site directly. FeedDemon, NetNewsWire and Blogbot will have support (apparently there is a beta of FeedDemon already out with support for it).&lt;/p&gt;

&lt;p&gt;See also &lt;a href=&#34;http://www.wingedpig.com/archives/000178.html&#34;&gt;Mark&lt;/a&gt; excitement over the new service :).&lt;/p&gt;

&lt;p&gt;Although I don&amp;rsquo;t like pooling (see a &lt;a href=&#34;http://www.simplicidade.org/notes/archives/2004/09/another_bandaid.html&#34;&gt;previous post&lt;/a&gt; regarding &lt;a href=&#34;http://asdf.blogs.com/asdf/2004/09/mod_speedyfeed__1.html&#34;&gt;mod_speedyfeed&lt;/a&gt;), I see this one as a necessary step towards a real pub-sub network. Bloglines, as others who already have a lot of feeds locally, are the best players to start, or to feed a pub-sub network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; there is a &lt;a href=&#34;http://search.cpan.org/~miyagawa/WebService-Bloglines-0.01/&#34;&gt;Perl module&lt;/a&gt; already!&lt;br /&gt;
&lt;strong&gt;Update 2:&lt;/strong&gt; &lt;a href=&#34;http://inessential.com/?comments=1&amp;amp;#38;postid=2922&#34;&gt;some comments&lt;/a&gt; from Brent give you some idea about the possibilities of this setup.&lt;/p&gt;

&lt;p&gt;Very good stuff, congrats to Bloglines.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Reading RSS</title>
      <link>https://www.simplicidade.org/notes/2004/08/31/reading-rss/</link>
      <pubDate>Tue, 31 Aug 2004 07:56:05 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/08/31/reading-rss/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been using NetNewsWire to read RSS feeds since I started doing it, little over two years ago. So far it has been good enough and the &lt;a href=&#34;http://inessential.com/2004/08/19.php&#34;&gt;features in the to-be-released version 2.0&lt;/a&gt; seem great.&lt;/p&gt;

&lt;p&gt;Yet, I don&amp;rsquo;t see some features that I would like to see, like aggregating several items into a single one if they mention the same URL.&lt;/p&gt;

&lt;p&gt;So I need to implement some sort of filter between the feeds I subscribe to and the feeds I read, that transforms the content into something more manageable.&lt;/p&gt;

&lt;p&gt;I don&amp;rsquo;t know if the end result is something that can be read via something like a RSS reader, or if I need some other application. I think I&amp;rsquo;ll also look into reading my feeds by converting them to mail messages. &lt;a href=&#34;http://the.taoofmac.com/space/&#34;&gt;Rui&lt;/a&gt; &lt;a href=&#34;http://the.taoofmac.com/space/FullTextSearch?s=newspipe&#34;&gt;is using&lt;/a&gt; &lt;a href=&#34;http://newspipe.sourceforge.net/&#34;&gt;newspipe&lt;/a&gt; and I noticed &lt;a href=&#34;http://www.fettig.net/projects/hep/&#34;&gt;Hep&lt;/a&gt; to (although I don&amp;rsquo;t know if it does the same thing yet).&lt;/p&gt;

&lt;p&gt;I really need to waste less time (30 to 40 minutes each day) catching up on RSS feeds, or become more efficient reading them.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Coral your RSS</title>
      <link>https://www.simplicidade.org/notes/2004/08/29/coral-your-rss/</link>
      <pubDate>Sun, 29 Aug 2004 12:19:22 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/08/29/coral-your-rss/</guid>
      <description>&lt;p&gt;Now that &lt;a href=&#34;http://www.scs.cs.nyu.edu/coral/&#34;&gt;Coral&lt;/a&gt; is in public beta, what about telling your RSS subscribers to use it? It will reduce your bandwidth bill.&lt;/p&gt;

&lt;p&gt;If you subscribe to this blog, change your subscription to &lt;a href=&#34;http://www.simplicidade.org.nyud.net:8090/notes/42.xml&#34;&gt;http://www.simplicidade.org.nyud.net:8090/notes/42.xml&lt;/a&gt; (notice the nyud.net:8090). You should start to get this feed from your nearest cache of &lt;a href=&#34;http://www.scs.cs.nyu.edu/coral/&#34;&gt;Coral&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Seems to work.&lt;/p&gt;

&lt;p&gt;If &lt;a href=&#34;http://www.scs.cs.nyu.edu/coral/&#34;&gt;Coral&lt;/a&gt; is here to stay, you can even add to your config:&lt;/p&gt;

&lt;pre&gt;
RedirectPermanent /notes/42.xml http://www.simplicidade.org.nyud.net:8090/notes/42.xml
&lt;/pre&gt;

&lt;p&gt;&lt;b&gt;Update:&lt;/b&gt; &lt;a href=&#34;http://the.taoofmac.com/space/&#34;&gt;Rui&lt;/a&gt; popped up on IM and told me that this does not work, and of course he&amp;rsquo;s right. It will cause a loop. I&amp;rsquo;ll have to check if Coral sends a specific user agent that I can filter. Rui tells me that it sends a HTTP_VIA and he has the configuration to solve this. Now I&amp;rsquo;ll wait for him to post it and copy it :).&lt;/p&gt;

&lt;p&gt;I wonder if the choice of port (8090) was a good one. Some corporate firewalls don&amp;rsquo;t allow nothing unless is on port 80.&lt;/p&gt;

&lt;p&gt;By the way, Microsoft DNS servers have a problem with &lt;a href=&#34;http://www.scs.cs.nyu.edu/coral/&#34;&gt;Coral&lt;/a&gt;. The developers are thinking about a workaround for the fact that MS DNS chokes on DNAME records (I confess I didn&amp;rsquo;t know about them either, but &lt;a href=&#34;http://www.faqs.org/rfcs/rfc2672.html&#34;&gt;they look pretty cool&lt;/a&gt;).&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>