![Page 1: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/1.jpg)
Rewrite Twitter in an hour
Steve Degosserie & Georges Legros
![Page 2: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/2.jpg)
http://www.buildwindows.com/
Register today and save $500 before August 1st
Save the date: watch live stream, join local events by MSDN Belux
Win a ticket today at Communiday Day!• Take a picture wearing the BUILD t-shirt.• Tweet or blog the picture, link to
www.buildwindows.com, use tag #bldwin and #comdaybe
• Wear the t-shirt and be there for the closing prize draw
![Page 3: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/3.jpg)
http://www.dotnethub.be/
![Page 4: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/4.jpg)
Steve Degosserie
Independent Software Consultant
http://blog.yoot.be/@stiiifffgithub.com/stiiifff
DDD
SOAREST
BDD
.Net
Ruby
Rails
iOS
![Page 5: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/5.jpg)
Georges Legros
Freelance User Experience Expert
http://blogs.developpeur.org/DjoDjo/@georgeslegros
HTML
WinfowsAsp.Net
Mobility
.Net
WPF
Electronics
PHP
![Page 6: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/6.jpg)
Agenda
• Introduction• Disclaimer• Tchatty Birds – Demo• REST & WCF Web APIs• Silverlight 5• NoSQL & Redis• Q&A
![Page 7: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/7.jpg)
Introduction (part 1)
• Tired of Northwind / AdventureWorks– "Customer", "Order", "Product"
• Learning by doing–1. Pick up a well known website / app–2. Pick up a bunch of techno we're
interested in–3. Rewrite
![Page 8: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/8.jpg)
Introduction (part 2)
• What the session IS NOT– Deep dive / full theory on SL5 - REST -Redis (noSql)
• What the session IS– Learning experiment– Feedback session on usage of these technos (what
did we learn & we think is valuable to share)• Code highlight• Quick overview• Architecture / Design
![Page 9: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/9.jpg)
Disclaimer (part1)
Come join us for this fun session during which we'll rewrite the famous micro-blogging service using cool technologies such as Silverlight 5, the WCF Web APIs & a NoSQL key-value store (Redis). We'll also briefly discuss about the REST architectural style and how to leverage it to make your websites scale.
Silverlight 5NoSQL key-value store (Redis)
WCF Web APIs
REST architectural
websites scale.
BUZZWORDS KILLS
![Page 10: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/10.jpg)
Disclaimer (part2)
• Technology choice–WCF Web APIs – Silverlight 5–NoSQL key-value store (Redis)–REST
![Page 11: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/11.jpg)
demoour learning platform
TCHATTY BIRDS OVERVIEW
![Page 12: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/12.jpg)
WCF Web APIs
• New WCF stack for building REST services• Current version is “Preview 4” on CodePlex• @gblock – PM on WCF Team
![Page 13: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/13.jpg)
REST in a nutshell
• Web as a Platform for Building Distributed Systems
• The REST “architectural style”• Resources, Identifiers, Representations• Uniform interface• Hypermedia & HATEOS• Richardson Maturity model
![Page 14: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/14.jpg)
RESTful systems
• Web as an Application Platform• Scalability & Performance• Loose Coupling• Richness• Evolve-ability• Richardson Maturity Model
![Page 15: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/15.jpg)
REST Services, practically
• “Outside-In” design guided by acceptance tests
• Resources & Resource Builders• Separation from Models & Repositories• HTTP Status Codes
![Page 16: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/16.jpg)
Silverlight & REST services
• Browser vs Client HTTP stack caveats• Authentication options• Growing a Client API
![Page 17: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/17.jpg)
Silverlight 5
• Custom Markup Extensions• Data Binding• SoundEffect• Click Count• General
![Page 18: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/18.jpg)
Silverlight 5
• Custom Markup Extensions
– Endless possibilities• Math operations• Web Service calls• Localisation
{Binding Status.CreatedAt, StringFormat='g'}
{helper:AppStrings Key=HomePageTitle}
![Page 19: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/19.jpg)
Silverlight 5
• General–XNA benefits–3D– Trusted apps–General performance (http stack)
![Page 20: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/20.jpg)
Redis
http://redis.io/• Swiss Army knife of Key-Value stores• @antirez, sponsored by VMWare• Data structures, Key expirations, Pub-
Sub, Transactions• Blazingly FAST !!!
![Page 21: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/21.jpg)
Contribute !
![Page 22: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/22.jpg)
Q&A
![Page 23: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/23.jpg)
Need graphics?
Llorem
Ipsum
Dolor
Sit Amet
![Page 24: Rewrite Twitter in an hour Steve Degosserie & Georges Legros](https://reader036.vdocument.in/reader036/viewer/2022062714/56649d045503460f949d7f71/html5/thumbnails/24.jpg)
demosubtitles are allowed
SHOW US WHAT YOU’VE GOT!