Web Hooks
Written by Jason on February 12, 2009A while ago I wrote a couple of articles called Pushing Some New Ideas and Distributed Observer Pattern which talked about implementing a sort of Observer Pattern using HTTP. Soon after, I discovered that there was an existing term for the thing I was trying to describe and create. They are called Web Hooks. The idea being that you can push consumers new data instead of having users poll you over and over.
I think as the number of consumers for realtime data increases we will see a shift in how data is delievered to consumers. Its much more efficient to push when there is something new and relevent. But, until everyone decides that it is a good idea, adapters will have to exist that will poll data from sources and push them to other locations. Is there any money to be made here?
Here are a couple of resources that popped up just recently on Web Hooks:
http://www.slideshare.net/progrium/web-hooks-and-the-programmable-world-of-tomorrow-presentation
http://blogrium.com/2007/05/03/web-hooks-to-revolutionize-the-web/
OnMyMission.com – It’s almost done!
Written by Jason on January 31, 2009I’ve been trying to finish this project for a really long time. I think I started over two years ago and I’ve rewritten it from scratch about 4 times. But, I’m proud to announce that the site is actually almost done! I decided to rewrite the entire site using Asp.net MVC and it has been a fun ride.
On My Mission is a site for the friends and families of LDS missionaries. The idea is that a parent or friend can make a webpage that tracks all sorts of information about a missionary that is currently out in the field. Some features I hope to have available are newsletters, photo galleries, maps, event timelines and a few other interesting ones that I’ll go over another time.
So, go ahead and play with it. Let me know what you think and please contact me with bugs and suggestions!
Just something fun – Wordle.net
Written by Jason on August 2, 2008You give the site a url and it generates a unique tag cloud using words from the site.
Startup Ideas We’d Like to Fund – Ycombinator
Written by Jason on July 20, 2008Today you can find quite a few sites that list off random ideas for startups, but how often do you find a list of ideas from a venture firm that are all web2.0 related?
Check these out. They describe what they’re looking for and why. Do any of them sound interesting?
http://ycombinator.com/ideas.html
1. A cure for the disease of which the RIAA is a symptom
2. Simplified browsing
3. New news
4. Outsourced IT
5. Enterprise software 2.0
6. More variants of CRM
7. Something your company needs that doesn’t exist
8. Dating
9. Photo/video sharing services
10. Auctions
11. Web Office apps
12. Fix advertising
13. Online learning
14. Tools for measurement
15. Off the shelf security
16. A form of search that depends on design
17. New payment methods
18. The WebOS
19. Application and/or data hosting
20. Shopping guides
21. Finance software for individuals and small businesses
22. A web-based Excel/database hybrid
23. More open alternatives to Wikipedia
24. A buffer against bad customer service
25. A Craigslist competitor
26. Better video chat
27. Hardware/software hybrids
28. Fixing email overload
29. Easy site builders for specific markets
30. Startups for startups
This is why I hate the iPhone
Written by Jason on July 19, 2008http://pragdave.blogs.pragprog.com/pragdave/2008/07/if-you-work-for.html
The phone itself is a great device. But the company behind the phone makes me very upset. Apple seems to enjoy making things very difficult for developers. First, you can only write applications using a Mac and now they basically don’t let you share anything about developing on the iPhone.
The only reason Apple can even do such things is because they are the only players in the game right now. Google, wake up and jump in already.
Pushing Some New Ideas
Written by Jason on July 17, 2008I recently published an article over at Neude.net about an interesting concept called The Distributed Observer Pattern. Since then, I have been giving this idea a lot more thought because it wasn’t enough to find a solution to a problem. Now I want to see if I can squeeze any money making ideas out of it. This is one idea i came up with…
A Push Service Hub
Here’s the elevator pitch:
A central hub that connects people that have data they want to push to multiple subscribers with people that want to have data sent to them only when certain criteria are met. The criteria could be only when there is new data, at timed intervals, etc. Essentially elimination the need to make multiple requests for data. Both sides benefit by having an intermediary since neither has to expose their destinations or webservice information to eachother. This service would manage all the security and authentication as well as provide a wide range of possible destinations that could include email, sms, post to url, invoke webservice method, twitter api, instant message, etc!
How does that sound? There isn’t much meat to the idea but that’s because its really just about enabling communication through the means that users choose. It might resemble SMTP or Twitter in some aspects. Perhaps to understand it better, think of subscribers as followers. But instead of just 144 characters you can basically send and receive any kind of data. It’s like SMTP in that you send data to one server and the service will figure out how to get it to the subscribers. Some might want to be notified through email while some may want to have data actually posted or pushed to their own webservice for processing.
Today, many sites and services exist to help users exchange information, status or content with eachother but each one ends up implementing their own api’s and notification systems. This system could be used professionally between businesses as well as socially between users and allows each party involved to choose their own method of sending or receiving information. All this while still adding a level of security between the actual endpoints involved in the communication process since neither side communicate directly. Features such as re-pushing data again later when a destination is unavailable or perhaps the ability to charge for subscription access could be implemented.
Some Examples
Sharing your status and other bits of information quickly with friends is all the rage these days. But there is a bit of disconnect between the various services such as Twitter, Yonkly, Jaiku. It would now be possible to broadcast one message to the service hub and have it push the message to all your accounts on each of these services as well as enable other people to programatically subscribe to your new messages. Your friends could now choose to have your new tweets pushed to their own destinations such as a webservice to be used in an entirely different application if you allowed it.
A business that deals with inventory could use this service to broadcast new inventory count when new stock arrived or when items have been purchashed or are out of stock. This data could be used to track trends and events as they happen as opposed to waiting for a weekly report.
The service could also mimic push capabilities for webservices that do not support it. This service would be responsible for making multiple requests throughout the day to constantly check for new data while only sending notifications to subscribers when there is new data.
A wordpress plugin could be created that would enable push RSS capabilities. Whenever you write a new article on your blog, subscribers could now be notified of the new post instantly without having to check their feeds over and over for new content.
Research
As I discover sites and articles related to this subject I’ll post them here.
Web Hooks
PUSH RSS
Extensible Messaging and Presence Protocol (XMPP/Jabber)
Distributed Observer Pattern with REST
The Publish-Subscribe Framework with WCF
Beyond REST
ASP.Net MVC Preview 4 is coming!
Written by Jason on July 14, 2008http://weblogs.asp.net/scottgu/archive/2008/07/14/asp-net-mvc-preview-4-release-part-1.aspx
Another exciting preview will be released very soon. It seems this release will have a few new things for authenticating users as well as Ajax support.
I also learned that PostSharp is not needed for what I was using it for. The framework has something called ActionFilterAttributes that basically do the same thing and more! By providing an ActionExecutingContext value when overriding OnActionExecuting you can now have all sorts of information about the controller and action that have been invoked.
LinkBee.com – Bringing money to your links
Written by Jason on June 25, 2008
I can’t believe it but someone actually implemented the idea I had some time ago. Sadly my friends didn’t seem to think it was a good idea when I tried to pitch them idea for a project we should work on.
So what is LinkBee all about? Basically it’s a TinyURL type service but they insert an ad on the site that you’re linking to and YOU make money off it! That’s right, they share 50% of the revenue with you. Its easy to create and manage a collection of links using their site and they also tell you how much money you have made so far. There is even the ability to refer friends and earn revenue from the links they share!
It’s easy to Sign Up for LinkBee, it literally takes 5 seconds. If you have a decent twitter following this is definitely something to check out.
Google Android Delayed
Written by Jason on June 23, 2008According to CNBC and The Wall Street Journal it seems that Google is delaying the release of it’s Android platform which could push the release of handsets back a few quarters. This isn’t good news for the developers and companies actively developing applications for the platform. Especially with the release of the new iPhone.
What I probably liked most about the article wasn’t even android related. Instead, they question Google’s various revenue generating strategies.
Still, if this is a technical issue, it speaks to Google’s deeper issues of creating new revenue streams in-house, rather than going out and acquiring the technology instead. Google still hasn’t come up with a way to make money from YouTube; the company has had enormous difficulty breaking out of its search-advertising-only model; DoubleClick gets them into display advertising but Google had to spend billions to buy it, rather than developing the technology on its own.
Android puts Google into arguably the most dynamic sector in tech, but it seems like the company is having difficulties, either with its potential customers, or with the software itself.
I also would like to point out this comment that made me laugh from the WSJ article.
But some developers say it is easier to work with Apple’s programming tools than Google’s because of the familiarity with the company’s Macintosh operating system. As a result, a wide range of software companies have been scrambling to build new iPhone applications.
Obviously people familiar with the Macintosh operating system are going to find making apps for the iPhone easier. But what about the fact that there are a LOT MORE java developers who work on Windows or Linux than those familiar with the Mac platform? FACT: C# > Java > Objective C
Using PostSharp with ASP.Net MVC
Written by Jason on June 18, 2008I’ve been diving into some new .Net frameworks and libraries lately and thought I should share some of the cool stuff I’ve learned. I’m going to share what I’ve learned while using PostSharp with the new ASP.Net MVC framework.
I have already posted a few things about the new MVC framework so I won’t explain why Im excited for it. But, I havent talked about PostSharp so lets go over that really quick. First, you NEED to watch this video. It goes over exactly what I am using PostSharp for and shows off its power in just a few minutes. Next, you need to read up on what Aspect Oriented Programming means. The wiki article is pretty complex though. What you need to take away from it is how it helps programmers ’separate concerns’, modularize your code, easily apply ‘aspects/modules’ to various parts of your code and avoid maintenance problems. Another good link is http://www.postsharp.org/aop.net/.
Let’s talk about the sample project now.

