Video and slides synchronized, mp3 and slide download available at http://bit.ly/XCw0Ka.
Guilherme Silveira discusses the difficulties faced by an online educational platform and corresponding solutions implemented at Caelum, their curriculum - systems, languages and databases – and how everything works. Filmed at qconsf.com.
Guilherme Silveira is Head Instructor at Caelum, a training and consulting company. He is the creator of Restfulie, Editorial Chief of InfoQ Brazil, technical editor for a Brazilian magazine, co-founder of the largest online Portuguese speaking Java user group. Currently writing and recording a Rest from Scratch series showing how to create REST systems using hypermedia. @guilhermecaelum
1. Introducing Online
Education to
Hypermedia
Guilherme Silveira
guilherme.silveira@caelum.com.br
2. Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/Online-Education-Hypermedia
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
3. Presented at QCon San Francisco
www.qconsf.com
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
6. who am I?
• caelum.com.br founder
• training, content creation, development
7. who am I?
• caelum.com.br founder
• training, content creation, development
• since -50 years old working with education
8. who am I?
• caelum.com.br founder
• training, content creation, development
• since -50 years old working with education
• “arquitetura e design de software”
9. who am I?
• caelum.com.br founder
• training, content creation, development
• since -50 years old working with education
• “arquitetura e design de software”
• some work on rest
10. who am I?
• caelum.com.br founder
• training, content creation, development
• since -50 years old working with education
• “arquitetura e design de software”
• some work on rest
• brazil
13. what is Caelum?
• 3 cities, 100 employees
• brick and mortar education
14. what is Caelum?
• 3 cities, 100 employees
• brick and mortar education
• java, ruby, agile development
15. what is Caelum?
• 3 cities, 100 employees
• brick and mortar education
• java, ruby, agile development
• user groups
16. what is Caelum?
• 3 cities, 100 employees
• brick and mortar education
• java, ruby, agile development
• user groups
• qcon brazil, conexao java, other events
21. what is Brazil?
• brazil: 5565 cities
• largest são paulo: 11 million
22. what is Brazil?
• brazil: 5565 cities
• largest são paulo: 11 million
• 20th: 800 thousand
23. what is Brazil?
• brazil: 5565 cities
• largest são paulo: 11 million
• 20th: 800 thousand
• largest in a specific state: 296 thousand
24. what is Brazil?
• brazil: 5565 cities
• largest são paulo: 11 million
• 20th: 800 thousand
• largest in a specific state: 296 thousand
• fills 4 stadiums?
25. what is Brazil?
• brazil: 5565 cities
• largest são paulo: 11 million
• 20th: 800 thousand
• largest in a specific state: 296 thousand
• fills 4 stadiums?
• non well distributed developers
55. collaborative filtering
• recommend technologies that you should
study
• recommend courses to attend
• recommend jobs to take
• recommend exercises to do
59. exercise difficulty
• MIT studies on CF and IRT
• CF is as good as IRT
• our findings: we are not big data :(
60. exercise difficulty
• MIT studies on CF and IRT
• CF is as good as IRT
• our findings: we are not big data :(
• we can’t infer difficulty on multiple choice
so far
63. how long for an
exercise?
students = []
students << [12, 150, 3, 15]
students << [4, 170, 32, 25]
students << [1, 10, 3, 25]
students << [12, 20, 31, 15]
101. common characteristics
number of wrong answers
height???
time spent
number of exercises done
feedback given
feedback rating
likes
102. common characteristics
number of wrong answers
height???
time spent
number of exercises done
feedback given
feedback rating
likes
courses
103. common characteristics
number of wrong answers
height???
time spent
number of exercises done
feedback given
feedback rating
likes
courses
quantidade de caracteres
121. we have 5000
responsibilities
• we started with a small platform (mar2011)
122. we have 5000
responsibilities
• we started with a small platform (mar2011)
• we ended up with a huge payment, chat up
to certificate playform (oct2012)
195. 10s of projects
• small teams (1-4 devs)
• lots of micro projects (1-20 classes)
196. 10s of projects
• small teams (1-4 devs)
• lots of micro projects (1-20 classes)
• 2 medium projects (20-200 classes)
197. 10s of projects
• small teams (1-4 devs)
• lots of micro projects (1-20 classes)
• 2 medium projects (20-200 classes)
• 1 big legacy project (500 classes) - bigger team
198. 10s of projects
• small teams (1-4 devs)
• lots of micro projects (1-20 classes)
• 2 medium projects (20-200 classes)
• 1 big legacy project (500 classes) - bigger team
• micro services
202. really small services
• small service, medium project
• micro teams
• if someone dies, the cost allows you to drop the
code, start again
203. really small services
• small service, medium project
• micro teams
• if someone dies, the cost allows you to drop the
code, start again
• protocol and communication is simple and stable
204. really small services
• small service, medium project
• micro teams
• if someone dies, the cost allows you to drop the
code, start again
• protocol and communication is simple and stable
• protocol and communication is simple and stable
205. really small services
• small service, medium project
• micro teams
• if someone dies, the cost allows you to drop the
code, start again
• protocol and communication is simple and stable
• protocol and communication is simple and stable
• protocol and communication is simple and stable
208. limitations
• protocol change ==> hell
• client project needs user data ==> replicated data
but are we not in the replicated era?
209. limitations
• protocol change ==> hell
• client project needs user data ==> replicated data
• other problems that we have no idea
but are we not in the replicated era?
218. communication
changes/evolution
• avoid
• avoid
• avoid
• avoid
• backward compatible
• feel the pain
219. “How can I evolve my service since it’s going to
break compatibility?” - unknown SOA’er
220. “How can I evolve my service since it’s going to
break compatibility?” - unknown SOA’er
If it *breaks* compatibility you can not “not break
compatibility” - basic reasoning
221. “How can I evolve my service since it’s going to
break compatibility?” - unknown SOA’er
If it *breaks* compatibility you can not “not break
compatibility” - basic reasoning
How can I prepare myself for the future, where I
am 100% sure I will want to change something? -
the wise SOA’er
222. “How can I evolve my service since it’s going to
break compatibility?” - unknown SOA’er
If it *breaks* compatibility you can not “not break
compatibility” - basic reasoning
How can I prepare myself for the future, where I
am 100% sure I will want to change something? -
the wise SOA’er
“buy our product” - wise vendor
239. what we are trying to do
• change the online learning experience, but how?
• KIS: keep it stupid, not simple
• micro teams, throw away if necessary
• protocol and communication are stupid and stable