Search Topics for Google Reader via Greasemonkey

Here’s another first for me, a Greasemonkey script to put Search links into the nav area of Google Reader.

Userscripts.org

Unfortunately I didn’t have time to build in a way to store search topics in cookies, maybe next version.

I was surprised at the lack of search operators. I expected to be able to search just the title or return only unread posts.

Here’s how to modify the script to add your own search topics.
Open the script up and all you’ll need to modify is this section.

var smarttopics = new Array;
smarttopics = {
"Buzz” : “leak|deadpool|acquisition|rumor|layoff|merger”,
“Apple” : “apple|iphone”,
“Microsoft” : “microsoft|windows”
};

Say you want to add a topic called Sun and it searches for Sun and Java. Add the following line above the “Apple”… line.

“Sun” : “sun|java”,

Removing a topic is just deleting the line with that topic on it. The biggest thing you’ll need to watch is the comma’s, make sure each line except the last has a comma after it.

RSS 2 DB engine

This is just the beginning of a project i’ve been wanting to kick start for some time now. If you’ve read this blog before you’ve heard me mention a .net rss engine I built for my own web based feed reader. This is the open source version of that engine written in python with a mysql backend.

It’s still pretty much a toy project and my first in python, but it is being used on http://punchingsoup.com and run every hour.

rss2db.zip

The setup is pretty simple.
1. Run rss2db.sql on your mysql server.
2. Modify the connection information to that mysql server in rss2db.py.
3. Run rss2db.py.

From here i’ll start building out a php based web frontend for the database that mimics what i’ve built in .net for myself.

Should be fun.

Search Keyword OPML Generator

There are a number of search engines that are exposing their results as RSS feeds. From this I had an idea and built a little app at work that collected RSS posts from about 40+ search engines to help track brands across the internet. It occurred to me that others might want to do the same thing so I decided on building a quick and dirty opml generator that people could use in their feed reader. Give it a try at http://punchingsoup.com/.

Flickr Slideshow of My RSS Reader

I’ve been making tons of updates to my RSS Reader but I’ve been very lax in updating on this blog. So here’s a Flickr Slideshow of the work as it stands.

I’ve annotated the screenshots on Flickr. You can view those here RSS Reader Set

Friendfeed on Twitter via Greasemonkey

This was the first idea I had when I saw the mini-window real-time friendfeed. It moves the main content of twitter over a bit and puts a friendfeed window on the left. I also got it to put a search bar over the home section.

Get it here, friendfeed_on_twitter.user.js

Here’s just the search bar script, twitter_search.user.js

I also found out that Friendfeed updated their api with a way to query for a url. So i built a greasemonkey script to add a link to friendfeed on every url. I couldn’t figure out how to put the icon after the link and javascript isn’t something I’m an expert at. So far the url search only works via the api and not on the search part of Friendfeed, so the icon opens a window with the xml output of the api call. I fix this when you can search for a url on the main Friendfeed interface.

Get it here, friendfeed_link_on_twitt.user.js

Be kind these are the first greasemonkey scripts I’ve made.

Decrypting MS SQL 2000 Stored Procedures

I ran across the need to decrypt some stored procedures. I’m writing an interface to a large enterprise application that the company I work for makes. I just want to see the stored procedure code so I could understand what it was doing. Everytime I asked for access to the source code it was like I was asking for emails from the white house. Finally I figured I would just have to go it alone.

So after about 5 minutes of surfing and passing by shareware products, I came across this url, Decrypt encrypted stored procedures.

I took the stored procedure and turned it into a script that would automatically decrypt the stored procedures in a database. One thing this can’t handle is decrypting stored procedures that are > 4000 characters, since they take up more the 1 row in syscomments. So for me I was able to decrypt about half of the 1300 stored procedures this application uses. Also about half the decrypted stored procedures were recreated under the id I was running the script with rather then dbo.

The logic is pretty simple to follow so I think I might spend some time and build a .net app to decrypt the stored procedures that are > 4000 characters. Don’t hold your breath though, with the stored procedures I decrypted and profiler I was figure out what I needed to figure out.

Download: decrypt.vbs

Fading

I’ve found that there are just a ton of articles that I can’t really read. I took a look at the older unread articles and most are either not that interesting to me or about something I already read. I figure those articles can just go away and I’ll never know or care, so I built in articles fading.

I’ve added an integer field to my feeds table so I can individually define the time to live for the articles in each feed or 0 for forever. I also added a field to each article to flag if it was faded or not for reporting.

Now a script runs nightly to fade articles and keep my unread list trimmed down. This keeps me from having to check feeds with a large number of unread articles and manually clearing them out.

Bundling

I’m about half way through setting up a new feature called bundles on my rss reader. I’ve found that following rss via tags is a pretty good way to go but sometimes I’m doing research on an overarching topic and I need a something to bring it all together.

As it stands now a bundle is a group of tags and feeds that have some common focus. I’ve got one for mobile that includes feeds from wapreview, MobileCrunch, SMS Text News and a few others, plus the tags: mobile, phone, verizon, sprint, tmobile, sms, smartphone and a few others. This way I can follow the mobile industry not just via mobile focused blogs, but also articles that are tagged with a mobile focus.

As long as the bundles stay under 50 articles a river style reading will do fine. If the bundles consistantly have more the 50 articles then I may have to include a secondary grouping structure probably in the form of a tag cloud.

Reader Options

Until I get the time to create a new video, I’ll just update pieces.
This is the side navigation for my media.home application as it pertains to my news reader.

Reader Options

Tag Cloud - This opens a tag cloud that shows the current tags associated with unread articles. After I’m finished reading the articles directly associated with a chosen tag, I’m prompted to search the rest of the unread articles for that tag in their title. This is useful for tags like Microsoft or Google but not so much for tags like product profiles used by techcrunch or daily trivia.

Feed List - This shows a list of all the feeds that have a weight greater then 1 or have 5+ articles. With 100 feeds showing them all is to long a list so it’s geared towards the ones I want to hear from the most. I also have special feeds for articles that have diggs and for articles flagged as Techmeme.

Latest - This ones pretty simple and shows articles with the latest at the top.

Oldest - Same as latest but with the oldest at the top.

Review - List of the articles flagged for review.

Recent - Most recent articles read in reverse chronological order. Helps when I accidently mark something read.

Search - Can search the title of the article with the option of including the articles body also.

Admin - Used to manage feeds and some basic reporting.

Article Look and Feel

Article Layout
Here’s what each article looks like in my reader. Here a list of the sections as shown on the left of the image.

Title & Link - Article title and the link clicks through a tracking page that logs the followed links.

Actions - More info on this below.

Action Display - This area is normally hidden unless an action is clicked that needs additional input.

Text - Body of the post.

Metadata - Additional data in this order now: Weight, Diggs and Techmeme flag.

Post Actions

Favicon - This is the favicon pulled from the blog.

Favorite - Marks it for long time storage. Used for posts like how-to’s or as a reference.

Mark Read - Marks the article read and longs time for usage reporting.

Review - Flags the article for later. Used when I don’t have time to fully read so I can get back to it. Main difference between this and favorite is that these are just flagged until I get a chance to really read the article.

Email - Right now hooked up to gmail so I can send an article to a friend.

del.icio.us - This brings up the del.icio.us interface with link and title prepopulated.

Blog it - This displays a small textbox for me to enter in 120 characters of text which posts to twitter, tumlbr and jaiku. It’s 120 characters because I reserve 20 for the tinyurl automatically inserted into post. Examples: http://twitter.com/smilbandit

Info - I haven’t figured out what I want to do with this yet. I know I want to be able to link to a source of additional data for this post but I’m not sure what that is yet.

Tags - Pulls up the tags associated with this article.

←Older