Saturday, August 18, 2007

FeedMarklet: Postmortem for a 'web 2.0' product built in 12 hours

I just finished a new site, FeedMarklet . From idea to completion, it took about 12 hours today. It is a site which allows anyone to make an RSS feed with instantaneous setup, and then provides a link, which when dragged into the browser's bookmark bar, becomes a button that saves whatever page your are currently viewing to the RSS feed. The purpose of the site is to solve a problem which often bothers me : people find interesting links all every day, but it is annoying to interupt a browsing session to save a link to most social book marking services. My goal with this site was too completely streamline the process of creating an rss feed, and adding content to it- so that it can be done using as few clicks as possible. In this post, I will talk about the process of developing FeedMarklet.

A bookmarklet is like a regular link, but instead of taking the browser to a new url, it contains some ebedded javascript code. Bookmarklets can be dragged from a page into the browser button bar. Then when they are clicked, they execute some code, which (in theory), does something useful or cool, like redirecting a wikipedia page based on whatever text is selected, or altering the current page to show table structure. Using a bookmarklet, it is possible to do several things which proved to be essential in building feedmarklet. Before I did anything else, I wrote a few simple bookmarklets that would be essential parts of feedmarklet. Here are some of them:



These little snips of code provided the starting point. The next step was to build a MySQL table for the RSS news items, and basic (no graphics) php code to get a list of news items and submit a new item. I had to search around a little to find out how to format a MySQL timestamp as a proper publication date for RSS, but the answer was to be found in the comments on php.net's date function reference.

There was a little bit of a trick to getting the output data to register as valid RSS in Safari. I initially forgot to set the content type to application/xml using the php header function. Without it, I got nasty errors for my feed in Safari, but not in Firefox. Also, as I did not provide any styling information, it was necessary to use feed:// instead of http:// to refer to the feed throughout the site, so that when those links were clicked, Firefox would treat it like a feed and not just show raw XML data. It was also necessary to escape the title and description of the RSS items using CDATA, or news items with certain characters in them would break the feed.

I had some bookmarklets and a rough RSS system. Then I set about with Photoshop, and threw together a layout and some graphics for the site. I wanted to use the graphics to help lead the user to dragging the feedmarklet into the bookmarkbar, hence the prominent black upward pointing arrow. I sliced the graphics up, compressed them, and put together an old-school tables layout (thats my style). It worked great in Firefox and Safari, but IE added extra vertical space that messed it up. After some seemingly arbitrary fiddling with the whitespace in the table code, IE formatted it right.

Quotes in titles and descriptions also caused problems, either leading to malformed PHP or malformed JavaScript. The solution here was to convert html entities to their escaped forms.

There were many other browser quirks that required some special attention. The front page of FeedMarklet.com detects IE vs Firefox and Safari, and generates different bookmarklet code to make it work for each browser. Initially, I wrote the code so it worked in Safari and Firefox, and had to fix it for IE. The issues that I ran into were the different method of getting currently selected text, and a difference in how calls to window.open are handled- IE isn't happy if there are spaces in the second argument, so i made it blank and then the code worked on all browsers.

Another issue which affected Firefox and IE but not Safari was that after clicking the bookmarklet link, it set the contents of the current page to the description text for the new item (I have no idea why). I was able to fix this by adding code to the bookmarklet to redirect to the current location, after performing the rest of its actions. This has the unfortunate side-effect of clearing form data, but oh well.

Firefox has the issue that new windows made by javascript are created under other windows. I tried a few things to bring the window to the front, but they didn't work right.

Overall, I think that FeedMarklet is a pretty cool website, considering its very rapid development. Now its a matter of getting the word out and seeing what people think about it. Enjoy --Forrest.

15 Comments:

Blogger Jase said...

I just tried our feedmarklet and you're right mate, it is very cool. Such a simple idea and well executed in record time. Nice work.

One thing that makes the tool not viable for me is that anyone can add items to anyone else's feed. I would need some kind of privacy or authentication mechanism before I could really adopt the tool. Right now it's too easy to spam.

All in all I think it's brilliant though. Now go and make a ton of money with it!

7:50 PM  
Blogger Jase said...

And I'm glad I found your blog. Consider me subscribed.

7:53 PM  
Blogger Unknown said...

This would be a great resource for easily setting up web pages for later reading on a handheld device. (By setting up the Feedmarklet feed in an application like Sunrise, for example.) For this to work over the long-term, you'd need a way to delete items from the feed. Is this possible?

Also, you'd need to deal with the privacy issue already mentioned.

8:38 AM  
Anonymous Anonymous said...

No one [url=http://www.thewowgold.net]wow gold[/url] can oppose what [url=http://www.thplay.com]wow gold[/url] these sh*theads [url=http://www.gamesalevip.com]wow gold[/url] do with the media [url=http://www.wowgoldliver.com]wow gold[/url] or toxic substances [url=http://www.withwowgold.com]wow gold[/url] to prolong the rule [url=http://www.nikemine.com]nike shoes[/url] of their stupidity, [url=http://www.watchessell.com]rolex[/url] for they will [url=http://www.thewowgold.net]buy wow gold[/url] lock you up for [url=http://www.thplay.com]buy wow gold[/url] talking about such [url=http://www.gamesalevip.com]buy wow gold[/url] stuff. How many [url=http://www.withwowgold.com]buy wow gold[/url] times do they [url=http://www.wowgoldliver.com]buy wow gold[/url] have to repeat [url=http://www.nikemine.com]jordan shoes[/url] a falsehood to you [url=http://www.watchessell.com]cartier[/url] in order to convince [url=http://www.thewowgold.net]cheap wow gold[/url] you that it is true? [url=http://www.thplay.com]cheap wow gold[/url] Maybe the best [url=http://www.gamesalevip.com]cheap wow gold[/url] way to teach [url=http://www.withwowgold.com]cheap wow gold[/url] them is to send [url=http://www.wowgoldliver.com]cheap wow gold[/url] their own people [url=http://www.nikemine.com]sport shoes[/url] after them to [url=http://www.watchessell.com]omega[/url] throw handful after [url=http://www.thewowgold.net]world of warcraft gold[/url] handful of [url=http://www.thplay.com]world of warcraft gold[/url] stuff like anthrax, [url=http://www.gamesalevip.com]world of warcraft gold[/url] arsenic, cyanide, and [url=http://www.withwowgold.com]world of warcraft gold[/url] pesticides in their [url=http://www.wowgoldliver.com]world of warcraft gold[/url] faces until they [url=http://www.withwowgold.com/Powerleveling.php]wow power leveling[/url] understand what this [url=http://www.wowgoldliver.com/powerleveling.php]wow power leveling[/url] "joke" is all about, [url=http://www.nikemine.com]casual shoes[/url] especially these [url=http://www.watchessell.com]rolex watches[/url] Olympians who [url=http://www.watchessell.com]cartier watches[/url] have benefitted [url=http://www.watchessell.com]omega watches[/url] from embracing such [url=http://www.watchessell.com]replica watches[/url] stupidity. On the [url=http://www.watchessell.com]wholesale watches[/url] other hand, just [url=http://www.watchessell.com]cheap watches[/url] do to them.

8:55 PM  
Anonymous Anonymous said...

No one wow gold can oppose what wow gold these sh*theads wow gold do with the media wow gold or toxic substances wow gold to prolong the rule nike shoes of their stupidity, rolex for they will buy wow gold lock you up for buy wow gold talking about such buy wow gold stuff. How many buy wow gold times do they buy wow gold have to repeat jordan shoes a falsehood to you cartier in order to convince cheap wow gold you that it is true? cheap wow gold Maybe the best cheap wow gold way to teach cheap wow gold them is to send cheap wow gold their own people sport shoes after them to omega throw handful after world of warcraft gold handful of world of warcraft gold stuff like anthrax, world of warcraft gold arsenic, cyanide, and world of warcraft gold pesticides in their world of warcraft gold faces until they wow power leveling understand what this wow power leveling "joke" is all about, casual shoes especially these rolex watches Olympians who cartier watches have benefitted omega watches from embracing such replica watches stupidity. On the wholesale watches other hand, just cheap watches do to them.

8:55 PM  
Anonymous Anonymous said...

One of my friend said the most interesting internet game is WOW, and he said there are a lot of WOW players all over the WOW. Do you play any internet game? Do you know WOW? The biggest and the most famous mmorpg. What is your hero's level? Do you want to make them more charmful, more powerful? If you use yes to answer my questions, then I guess you must want to get much more gold to make your hero more charmful and more powerful. How do you get the gold? farm by yourself or just buy the gold from some internet store? If you have the habit to get the gold from internet store, I strongly recommand you get WOW GOLD from Masswowgold.

Masswowgold is a professional site designed specifically for trading WORLD OF WARCRAFT GOLD from gamer to gamer. Not only is the price cheaper than other sites, but also the service is instant, secure and professional. Masswowgold dedicate themselves to offer WOW players with great prices and quality services. They do instant delivery through customer service 24 hours a day, 7days a week and the prices are updated regularly according to current market rates. You can buy CHEAP WOW GOLD from masswowgold, fast delivery and good service. Masswowgold is a booming provider of MMORPG virtual currency and assets including buying & selling service. It has started its online selling since 2004. It supports payment by Paypal, Credit Card, Moneybookers ,Western Union and Bank Transfer. With its advanced internal ERP system, extensive supplier network, enthusiastic employees and 24/7 live chat; Masswowgold has helped about 150,000 WOW players. Its concept is: Honesty, Enthusiasm, Innovation and Cheap. New chapters will be written by its unceasing innovation.

Hope what i said just now is useful for you and for your WOW life. Hope you can enjoy your WOW life better with CHEAP WOW GOLD from masswowgold.

Aion also is a very interesing game, new game. But i dont know if it has been started in USA. It is very popular in Korea and China. 永恒之塔代练 is a very hot word in China. Many people want to level their hero become high level, but they have not enough time to do that. So they just let others to help them.

Beuwant provides this kind of service. They do the powerleveling with hands but not bots, so Aion代练 is very safe.
I believe they can give their customers good service. More and more players want to try their service and they all believe beuwant can give them a good results.

12:36 AM  
Blogger 712345678 said...

Ice Bag
Voltage Bag
Mouse Pad
Grocery Bag
Cosmetic Bag
EVA Box

6:50 PM  
Blogger Unknown said...

By combining the latest discoveries in human genetics with a deeper understanding of the hundreds of compounds found in food, dell car chargergateway 450rog keyboardgateway m520 keyboarddell inspiron 1720 keyboardzv5000 keyboardhp laptop keyboardacer 5520 lcdDell laptop batteryHP Pavilion DV5000 Battery|Dell Inspiron 1525 AC Adapter|investigators have begun to tease apart some of the more complex interactions between your diet and your DNA. In the process, they hope eventually to give consumers more personalized advice about what to eat and drink to stave off heart disease, cancer and other chronic conditions of aging."We are trying to put more science behind the nutrition," says Jose Ordovas, DV1000 Adapter|Dell PA-12 AC Adapter|Dell Inspiron 5100 Adapter|8600 Adapter|Dell Inspiron 1501 Adapter|HP 417220-001 Adapter|Dell inspiron 1300 AC Adapter|Compaq keyboardHP/Compaq Laptop keyboardHP/Compaq Laptop keyboard|Compaq M2000 Keyboarda geneticist at the Friedman School of Nutrition at Tufts. "We want to finally understand why nutrients do what they do and to whom--why a low-fat diet may not work for some but works for others."HP Pavilion zv5000 Keyboard|HP Pavilion NX9100 Keyboard|laptop keyboard|HP Laptop keyboard| HP/Compaq Laptop keyboard| Compaq M2000 Keyboard|Do you drink three cups or more of coffee a day? Genetic tests can now determine whether you--like approximately 10% to 20% of the population--have a specific genetic variation that makes it harder for your body to absorb calcium in the presence of caffeine, thus increasing your rate of bone loss.

6:58 PM  
Blogger Unknown said...

Researchers now have a good reference guide for the 25,000 or so genes of the human genome and the more than 3 million common variants that lurk within those genes. Dell Latitude D600 battery|dell d830 ac adapter|dell d610 ac adapter|pa3468u 1aca ac adapter|dell latitude d520 ac adapter|5150 ac adapter|d400 ac adapter|d600 ac adapter|nadp 90kb|zd8000 battery|Laptop keyboard|HP Laptop keyboard|c1295 battery|pa3399u-1brs|pa3400u 1brs|HP 365485-001 Keyboard|HP/Compaq Laptop keyboard|Compaq M2000 Keyboard|HP Pavilion zv5000 Keyboard|HP Pavilion NX9100 Keyboard|laptop keyboard|HP Laptop keyboard| HP 365485-001 Keyboard| HP/Compaq Laptop keyboard| Compaq M2000 Keyboard| HP Pavilion zv5000 Keyboard| HP Pavilion NX9100 Keyboard|dell car chargergateway 450rog keyboardgateway m520 keyboarddell inspiron 1720 keyboardzv5000 keyboardhp laptop keyboardacer 5520 lcdDell laptop battery

7:00 PM  
Blogger Unknown said...

................................

7:02 PM  
Anonymous Chanel said...

if you want to buy Chanel , you have to visit Chanel stores to take a look at the latest louis vuitton discount which has many chanel outlet handbags and is also the best Louis Vuitton Store as I know.

3:01 AM  
Anonymous gucci said...

Hi! I was surfing and found your blog post… nice! I love your blog. :)
it is my blog Louis Vuitton Speedy

3:03 AM  
Blogger combattery84 said...

IBM 08K8195 battery
IBM 08K8218 battery
IBM 92P1089 battery
IBM Thinkpad 390 Series battery
IBM Thinkpad 390X battery
IBM ThinkPad Z61m Battery
IBM 02K7018 Battery
IBM thinkpad t41p battery
IBM THINKPAD T42 Battery
IBM ThinkPad R60 Battery
IBM ThinkPad T60 Battery
IBM ThinkPad T41 Battery
IBM ThinkPad T43 Battery
IBM ThinkPad X40 Battery
Thinkpad x24 battery
ThinkPad G41 battery
IBM thinkpad r52 battery
Thinkpad x22 battery
IBM thinkpad t42 battery
IBM thinkpad r51 battery
Thinkpad r50 battery
IBM thinkpad r32 battery
Thinkpad x41 battery
SONY VGP-BPS2 Battery
SONY VGP-BPS2C Battery
SONY VGP-BPS5 battery
SONY VGP-BPL2C battery
SONY VGP-BPS2A battery
SONY VGP-BPS2B battery

6:58 PM  
Blogger combattery84 said...

Acer aspire 3613wlmi battery
Travelmate 2414wlmi battery
Acer batcl50l battery
Acer Travelmate 2300 battery
ACER aspire 3610 battery
ACER travelmate 4600 battery
Dell Latitude D800 battery
Dell Inspiron 600m battery
Dell Inspiron 8100 Battery
Dell Y9943 battery
Dell Inspiron 1521 battery
Dell Inspiron 510m battery
Dell Latitude D500 battery
Dell Latitude D520 battery
Dell GD761 battery
Dell NF343 battery
Dell D5318 battery
Dell G5260 battery
Dell Inspiron 9200 battery
Dell Latitude C500 battery
Dell HD438 Battery
Dell GK479 battery
Dell PC764 battery
Dell KD476 Battery
Dell Inspiron 1150 battery
Dell inspiron 8500 battery
Dell Inspiron 4100 battery
Dell Inspiron 4000 battery
Dell Inspiron 8200 battery
Dell FK890 battery

7:00 PM  
Blogger seocom said...


أكبر قناة مليئة بالشروحات التعليمية والتكنولوجية | الشارح تك
تعلم التحميل من اليوتيوب بدون برامج

شرح برنامج الزيلو و عمل حساب عليه والدخول والتسجيل في القنوات من خلال الكمبيوتر

تحميل أي فيديو من الفيس بوك بدون برامج


ازاي تعرف مين إلي بيخترق حساباتك ويشاهد بروفايلك على الفيس بوك

كيفية تسجيل صوتك وعمل ميكسات للصوت بشكل رائع | الشارح تك


شرح تطبيق الزيلو و عمل حساب عليه والدخول والتسجيل في القنوات من خلال الهاتف

كيفية جعل جهازك يعمل بسرعة صاروخية بأسهل الطرق وبدون برامج من خبايا الويندوز الشارح تك

تعلم سلسلة تعليم الرسم للأطفال بالأشكال والحروف والأرقام

تعلم صناعة الشمع بالمنزل بأجمل شكل بسهولة


شرح عمل غرفه مجانيه لأي شخص على الزووم للشرح zoom cloud

6:24 AM  

Post a Comment

<< Home