dancer's ecosystem

Download Dancer's Ecosystem

If you can't read please download the document

Upload: alexis-sukrieh

Post on 16-May-2015

1.415 views

Category:

Technology


1 download

DESCRIPTION

A tour to most of the useful plugins and extensions of the Perl Dancer micro-framework

TRANSCRIPT

  • 1. Dancer's ecosystem French Perl Workshop 2011 http://github.com/sukria http://twitter.com/sukria CPAN: sukria Alexis Sukrieh

2. The ecosystem 3. Dancer's ecosystem A selection of plugins FPW 2011 Alexis Sukrieh 4. Dancer's ecosystem A selection of plugins FPW 2011 Alexis Sukrieh 5. Dancer's ecosystem A story of a web developer... FPW 2011 Alexis Sukrieh 6. Dancer's ecosystem Once upon a time,there was a company 7. Dancer's ecosystem And there was a guy, a Perl web developer 8. Dancer's ecosystem Wait. APerlweb developer we said. 9. Dancer's ecosystem So there was this guy, a Perl web developer we said. Joe. 10. Dancer's ecosystem There is this project... 11. Dancer's ecosystem It's top-priority 12. Dancer's ecosystem We don't know yet what it should do... 13. Dancer's ecosystem But it's very important that it does it well... 14. Dancer's ecosystem And of course,it's already late 15. Dancer's ecosystem Joe will use Dancer 16. Dancer's ecosystem Because he want's to get things done 17. Dancer's ecosystem First of all, there are all these HTML templates sent by the designers 18. Dancer's ecosystem He wants to use Template Toolkit 19. Dancer's ecosystem Dancer::Template::TemplateToolkit Well, it's in the core 20. Dancer's ecosystem But the boss said we're gonna use Xslate Because it's faster 21. Dancer's ecosystem Well, there's a plugin for that Dancer::Template::Xslate 22. Dancer's ecosystem And we have to log lots of stuff to Syslog 23. Dancer's ecosystem There's a plugin for that Dancer::Logger::Syslog 24. Dancer's ecosystem But wait, we'll have to authenticate users 25. Dancer's ecosystem We'll need a session engine! 26. Dancer's ecosystem Joe wants YAML files!It's so convienent during development 27. Dancer's ecosystem There's a plugin for that Dancer::Session::YAML 28. Dancer's ecosystem But, well in production,we want Memcached 29. Dancer's ecosystem There's a plugin for that Dancer::Session::Memcached 30. Dancer's ecosystem Wait, something is very slow Joe wants to time the requests 31. Dancer's ecosystem There's a plugin for that Dancer::Plugin::TimeRequests 32. Dancer's ecosystem But during development, Joe wants the logmessages to be sent to Firebug 33. Dancer's ecosystem There's a plugin for that Dancer::Logger::PSGI + Plack::Middleware::ConsoleLogger 34. Dancer's ecosystem OK, but you know, we have a database We want to access... 35. Dancer's ecosystem There's a plugin for that Dancer::Plugin::Database 36. Dancer's ecosystem But, well we're modern right? We want DBIx::Class 37. Dancer's ecosystem There's a plugin for that Dancer::Plugin::DBIC 38. Dancer's ecosystem And we use Moose, becausewe're actually post-modern! So we want to use KiokuDB 39. Dancer's ecosystem Again, there's a plugin for that Dancer::Session::KiokuDB 40. Dancer's ecosystem Joe's boss saw Ruby on Rails He really liked their flash messages Boss wants that. 41. Dancer's ecosystem No worries Joe, there's a plugin for that Dancer::Plugin::FlashMessage 42. Dancer's ecosystem Oh, we'll have to plug our websitewith a third-party entity We need an API webservice. 43. Dancer's ecosystem There's a plugin for that Dancer::Plugin::REST 44. Dancer's ecosystem But the API webservice is not ready And we want the third-party entity to start developing with it... 45. Dancer's ecosystem Let's make it a fake API, with static responses. There's a plugin for that. Dancer::Plugin::Fake::Response 46. Dancer's ecosystem And we have email notifications right? 47. Dancer's ecosystem There's a plugin for that Dancer::Plugin::Email 48. Dancer's ecosystem What about a Facebook app? It's so hype! 49. Dancer's ecosystem Well, guess what, there's a plugin for that Dancer::Plugin::Facebook 50. Dancer's ecosystem Well, even cooler than Facebook,there is Twitter! Dancer::Plugin::Auth::Twitter 51. Dancer's ecosystem Joe's boss heard aboutcookie-encrypted sessions It's hype, and he wants it. 52. Dancer's ecosystem There's a plugin for that Dancer::Session::Cookie 53. Dancer's ecosystem But wait, there is this other appwe should share our sessions with... Single-sign on it's so hype 54. Dancer's ecosystem PSGI for the win! 55. Dancer's ecosystem There is a plugin for that: Dancer::Session::PSGI 56. Dancer's ecosystem What about mobile phones? We want a light layout for the app on smartphones 57. Dancer's ecosystem There's a plugin for that Dancer::Plugin::MobileDevice 58. Dancer's ecosystem Cool. Our freaky monster starts to look good... 59. Dancer's ecosystem But what if Joe needs a specific plugin? 60. Dancer's ecosystem What if there IS NOT a plugin for that? 61. Dancer's ecosystem Well, he can writes his own, piece of cake Dancer::Plugin 62. Dancer's ecosystem A specific session engine? There's Dancer::Session::Abstract for that 63. Dancer's ecosystem A specific logger engine? There's Dancer::Logger::Abstract for that 64. Dancer's ecosystem A new kickass template engine? There's Dancer::Template::Abstract for that 65. Dancer's ecosystem Dancer is modular 66. Dancer's ecosystem Everything is made to makeit simple to extend 67. Dancer's ecosystem Now it's time for Joe to code!