Subscribe to our podcast!

Episode 90: Going through the 7 R’s of Hypermedia with Darrel Miller



Subscribe to the show via Subscribe via iTunes Store or

kick it on DotNetKicks.com

 

About This Episode

In this episode, Keith and Woody sit down with developer Darrel Miller to discuss Hypermedia and designing and developing software using Darrel's 7 R's of hypermedia.


Thanks To Our Sponsor

DevExpress products are built by developers for developers. We don’t believe in limitations or wasting anybody’s time. Our lightning-fast grid controls, slick reporting components and powerful IDE add-ins fill your development toolbox with an arsenal against repetitive tasks that erode productivity. Invest in your toolbox.

DevExpress

Thanks to our guest this episode

darrel

Darrel Miller is CTO at Tavis Software. Tavis Software is an ISV that targets a small vertical market in the world of Enterprise Resource Planning (ERP) software. Darrel has been responsible for the architecture, design, development, deployment, support and maintenance of distributed business systems using ISAM databases, client/server databases, SOAP based services and most recently REST based systems. Darrel has been writing software professionally for 18 years. The last 4 years have been spent discovering the benefits of the REST. His particular focus is on the use of REST to develop non-browser based line-of-business applications. He is a Connected Systems Developer Microsoft MVP and a member of the Microsoft Web API advisory board.

Darrel can be found on Twitter at http://twitter.com/darrel_miller

Darrel’s blog can be found at http://www.bizcoder.com

Darrel’s 7 R's of hypermedia use:

· Relations – Links between related concepts

· Resources – Replace embedded resources

· Reference data – Data sources for drop downs, combos, picklists

· Restriction of functionality – Enabling and disabling features based on the presence of links

· Re-distribution of effort – Intelligent vertical partitioning of functionality across servers

· Reduction of payload size – Progressive download of details

· Re-flow of application – Where can the application go from here.

Show Notes

Download Show

Subscribe To The Show

There are three ways to subscribe to our show so you can stay current. We support standard RSS, subscriptions via the iTunes Store and we are also available in the Zune Market place. Chose your poison by clicking on your choice below.

Subscribe to our podcast! Subscribe via iTunes Store Subcribe via Zune Market Place

#1 Peter Gfader on 9.19.2012 at 4:05 PM

Darrel mentioned the Twitter API sample where he suggested instead of the returnvalue being the full timeline (including everything), Twitter should return links to a user.

Wouldn't that lead to the need for another API call to get the details of the user?

Which then leads to the SELECT 1+N problem for APIs?

1 API call to get the timeline and then

N calls for the user details etc...

BTW

I think the problem is called SELECT N+1 but I think the name SELECT 1+N makes more sense...

#2 Darrel Miller on 10.08.2012 at 10:02 AM

Hey Peter,

Yes and no. The common practice is to include a small subset of the child resource (user) in the parent resource (tweet). Just enough data to allow rendering of the parent view (timeline). If the user wishes to see more information (followers, following, bio) then they can follow the links.

Once we can break free of the anti-pattern of exposing our domain model through our API, then we remove the reluctance to do this kind of denormalization in our API.

Leave a Comment

DevExpress