013JA019 - legislation.tn19 2013 5 –– ( 930 2013 26 2013 1225 2012 31 ..... 2013 26 2013 1226
Wsrest 2013
description
Transcript of Wsrest 2013
![Page 1: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/1.jpg)
REST IN BRAZILSERVICES AND ISSUES TO BE FOUGHTGuilherme de Azevedo Silveira
Tuesday, May 14, 13
![Page 2: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/2.jpg)
BRAZIL
• huge
• huge custom software development market
• huge software integration issues
• huge cobol, vb, delphi, java, c# legacy systems
• software development and educational revolution
Tuesday, May 14, 13
![Page 3: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/3.jpg)
GUILHERME SILVEIRA
• Caelum CTO
• Software Development Education
• http://www.caelum.com.br
• http://www.casadocodigo.com.br
Tuesday, May 14, 13
![Page 4: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/4.jpg)
GUILHERME SILVEIRA
• Applied Math (Discrete Dynamic Systems)
• REST (in practice)
•고려사이버대학교 컴퓨터정보통신학과 (Cyber Korea University)
Tuesday, May 14, 13
![Page 5: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/5.jpg)
AGENDA
• brazilian projects
• industry
• industry issues
• adoption issues
• educational issues
Tuesday, May 14, 13
![Page 6: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/6.jpg)
ALEXANDRIA• engineering.abril.com.br
• Abril Midia
• graphic
• distributor
• education
• CMS
• Luis Cipriani
Tuesday, May 14, 13
![Page 7: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/7.jpg)
ALEXANDRIA: CONTENT
• 3 languages types
• 7 databases types
• 9 frameworks
• 207 machines
• 12.5 million pageview/month
Tuesday, May 14, 13
![Page 8: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/8.jpg)
ALEXANDRIA: APPROACH
• Layered System
• Stateless
• Cache
• Code-on-demand
• ...
Tuesday, May 14, 13
![Page 9: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/9.jpg)
ALEXANDRIA: CONCLUSIONS
• Long term needs
• Documentation need++
• Focus on protocol improvements later
Tuesday, May 14, 13
![Page 10: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/10.jpg)
ALEXANDRIA
• REST: Advanced Research Topics and Practical Applications, Springer
Tuesday, May 14, 13
![Page 11: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/11.jpg)
CAELUM
• live learning
• enrollments, payments
• alumni
• job postings
Tuesday, May 14, 13
![Page 12: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/12.jpg)
trainingjava + vraptor
one systemalumni.caelum.com.br
RoR
ondetrabalhar.comruby
mysqlmysql
solr
Tuesday, May 14, 13
![Page 13: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/13.jpg)
CAELUM ONLINE
• online: learning environment
• training
• exercises
• videos
• explanations
• experience exchange
• paymentsTuesday, May 14, 13
![Page 14: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/14.jpg)
trainingjava + vraptor
one systemalumni.caelum.com.br
RoR
ondetrabalhar.comruby
gnarusscala + vraptor
casa do códigojava + RoR
paymentsjava
metricsjava + octave
interestiesinatra + sequel
sugestjava
promoRoR
analyser 1sinatra
analyser 2java
exercisesRoR
badgesruby + rails mountable engine
RoR + 6 projectsRoR
+ 1 ‘pages’jsaws tickets
RoR
bookssinatra + sequel
mysqlmysql
mysql
mysql
mysql
redis
redis
solr
github
postgresql postgresql
postgresql
postgresql
postgresql
postgresql
Tuesday, May 14, 13
![Page 15: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/15.jpg)
CAELUM ONLINE
• > 18 systems
• 4 language types
• 5 frameworks
• 5 database types
• < 20 developers
Tuesday, May 14, 13
![Page 16: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/16.jpg)
trainingjava + vraptor
one systemalumni.caelum.com.br
RoR
ondetrabalhar.comruby
gnarusjava + vraptor
casa do códigojava + RoR
paymentsjava
metricsjava + octave
interestiesinatra + sequel
sugestjava
promoRoR
analyser 1sinatra
analyser 2java
exercisesRoR
badgesruby + rails mountable engine
RoR + 6 projectsRoR
+ 1 ‘pages’jsaws tickets
RoR
bookssinatra + sequel
mysqlmysql
mysql
mysql
mysql
redis
redis
solr
github
postgresql postgresql
postgresql
postgresql
postgresql
postgresql
Tuesday, May 14, 13
![Page 17: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/17.jpg)
WE STUDY
• advantages
• disadvantages
Tuesday, May 14, 13
![Page 18: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/18.jpg)
WHAT ABOUT OTHERS?
• people
• companies
• projects
• schools
Tuesday, May 14, 13
![Page 19: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/19.jpg)
DEVELOPERS
• know
• GET, POST
• html
• js
Tuesday, May 14, 13
![Page 20: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/20.jpg)
DEVELOPERS• know
• GET, POST
• html
• js
• no idea
• http
• hypermedia
Tuesday, May 14, 13
![Page 21: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/21.jpg)
COMPANIES
• know
• GET, POST
• html
• js
Tuesday, May 14, 13
![Page 22: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/22.jpg)
COMPANIES• know
• GET, POST
• html
• js
• no idea
• http
• hypermedia
Tuesday, May 14, 13
![Page 23: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/23.jpg)
SCHOOLS
• teach
• GET, POST
• html
• js
Tuesday, May 14, 13
![Page 24: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/24.jpg)
SCHOOLS• know
• GET, POST
• html
• js
• no idea
• http
• hypermedia
Tuesday, May 14, 13
![Page 25: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/25.jpg)
companieslooking ahead
academia
the rest of the industry
Tuesday, May 14, 13
![Page 26: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/26.jpg)
GAP
ourstudy
everyone’spractice
Tuesday, May 14, 13
![Page 27: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/27.jpg)
I FEEL LOST
as industry
Tuesday, May 14, 13
![Page 28: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/28.jpg)
as a client
Tuesday, May 14, 13
![Page 29: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/29.jpg)
AS A CLIENT, HOW DO I?• service discovery
• in an android environment
• google intents; web intents
• on the web?
• web intents?
• richer? standards? good practices?
• “A Framework for Self-Descriptive RESTful Services”
Tuesday, May 14, 13
![Page 30: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/30.jpg)
as a client, i know my providers
Tuesday, May 14, 13
![Page 31: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/31.jpg)
# OF ACTIONS SUPPORTED?
• web intents scales on providers
• what about # of actions?
• “Distributed Affordance: an Open-world Assumption for Hypermedia”
Tuesday, May 14, 13
![Page 32: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/32.jpg)
as a company
Tuesday, May 14, 13
![Page 33: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/33.jpg)
AN EXISTING SERVICE
• migration costs x no costs
• how do I publish my service?
• where do I publish my service?
• “A Concept for Generating Simplified RESTful Interfaces”
Tuesday, May 14, 13
![Page 34: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/34.jpg)
AS A NEW SERVICE
• design?
• json?
• rdf?
• “Model Your Application Domain, Not Your JSON Structures”
Tuesday, May 14, 13
![Page 35: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/35.jpg)
as a hammer
Tuesday, May 14, 13
![Page 36: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/36.jpg)
we see everything as nails
Tuesday, May 14, 13
![Page 37: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/37.jpg)
as a learning environment
Tuesday, May 14, 13
![Page 38: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/38.jpg)
we see the problem as an human issue
Tuesday, May 14, 13
![Page 39: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/39.jpg)
we see the problem asan human issue
Tuesday, May 14, 13
![Page 40: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/40.jpg)
we see the problem as an human issue
• TDD
• test first
• + other software engineering practices
• Mauricio Aniche’s research
• http://www.aniche.com.br/publications
Tuesday, May 14, 13
![Page 41: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/41.jpg)
we see the problem as an human issue
• developers
• solve problems with and without TDD
• analyze the solutions
Tuesday, May 14, 13
![Page 42: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/42.jpg)
we see the problem as an human issue
• “No difference between TDD and no TDD.”
• “Experience and wisdom makes the difference.”
Tuesday, May 14, 13
![Page 43: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/43.jpg)
we see the problem as an human issue
• Lutz Prechelt
• An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl
• http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt_computer2000.pdf
Tuesday, May 14, 13
![Page 44: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/44.jpg)
we see the problem as an human issue
• developers
• solve a problem in different languages
Tuesday, May 14, 13
![Page 45: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/45.jpg)
we see the problem as an human issue
• “the differences between languages tend to be smaller than the typical differences due to different programmers within the same language”
Tuesday, May 14, 13
![Page 46: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/46.jpg)
as a learning environment
Tuesday, May 14, 13
![Page 47: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/47.jpg)
we see the problem as an educational issue
Tuesday, May 14, 13
![Page 48: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/48.jpg)
we see the problem asan educational issue
Tuesday, May 14, 13
![Page 49: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/49.jpg)
SERVICE PRODUCTION CHAIN
school
graduation
industry
academia
we see the problem as an educational issue
Tuesday, May 14, 13
![Page 50: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/50.jpg)
academia & industry
• try to bring every company and developer closer to research ?
• if not researching, trying in practice and analyzing its results?
Tuesday, May 14, 13
![Page 51: Wsrest 2013](https://reader033.fdocuments.net/reader033/viewer/2022051611/54b6af284a795995038b45a7/html5/thumbnails/51.jpg)
question:how can we make others think about
REST?
Tuesday, May 14, 13