A apresentação já vai começar ...




Wednesday, April 14, 2010
AkitaOnRails.com




Wednesday, April 14, 2010
~ 30 min
                            ~ 70 slides



Wednesday, April 14, 2010
www.slideshare.net/akitaonrails
             www.akitaonrails.com/ les/entendendo-a-web-movies.zip




                   ...
Entendendo a Web
                   Dicas sobre Desenvolvimento Web com Ruby



                               Fabio Akita...
Recapitulando ...


Wednesday, April 14, 2010
Ruby é Lento
                                       (TM)




Wednesday, April 14, 2010
Existem mentiras,
             mentiras malditas e
                estatísticas.

Wednesday, April 14, 2010
Existem mentiras,
             mentiras malditas e
                estatísticas.

Wednesday, April 14, 2010
Existem mentiras,
             mentiras malditas e
                estatísticas.

Wednesday, April 14, 2010
Wednesday, April 14, 2010
x mais lento que C++




Wednesday, April 14, 2010
x mais lento que C++


                        0   32.5             65           97.5   130

  Python 2


   Ruby 1.9


  ...
Homepage: 331 ms




Wednesday, April 14, 2010
Homepage: 331 ms

                            Total: 5.45 s

Wednesday, April 14, 2010
Exemplo



Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
Wednesday, April 14, 2010
6
                            Técnicas



Wednesday, April 14, 2010
Menos Requisições



Wednesday, April 14, 2010
Mini que CSS e
                              Javascript



Wednesday, April 14, 2010
Juicer
                            http://github.com/cjohansen/juicer/




Wednesday, April 14, 2010
gem install juicer



   script/plugin install git://github.com/ktheory/juicer-rails.git




Wednesday, April 14, 2010
gem install juicer



   script/plugin install git://github.com/ktheory/juicer-rails.git




Wednesday, April 14, 2010
juicer install yuicompressor

          juicer install jslint

          juicer install closure_compiler


Wednesday, Apri...
juicer install yuicompressor

          juicer install jslint

          juicer install closure_compiler


Wednesday, Apri...
juicer install yuicompressor

          juicer install jslint

          juicer install closure_compiler


Wednesday, Apri...
/app/views/layouts/application.html.erb




                   <%= juiced_tag '/stylesheets/application.css' %>
          ...
/app/views/layouts/application.html.erb




                   <%= juiced_tag '/stylesheets/application.css' %>
          ...
/public/stylesheets/application.css




                                @import url("reset.css");
                        ...
/public/stylesheets/application.css




                                @import url("reset.css");
                        ...
juicer merge public/stylesheets/application.css

  public/stylesheets/application.min.css

  juicer merge -i public/javasc...
juicer merge public/stylesheets/application.css

  public/stylesheets/application.min.css

  juicer merge -i public/javasc...
juicer merge public/stylesheets/application.css

  public/stylesheets/application.min.css

  juicer merge -i public/javasc...
juicer merge public/stylesheets/application.css

  public/stylesheets/application.min.css

  juicer merge -i public/javasc...
DEVELOPMENT

Wednesday, April 14, 2010
PRODUCTION

Wednesday, April 14, 2010
Asset Hosts
                            Navegadores abrem poucas conexões
                                 simultâneas por...
Wednesday, April 14, 2010
/app/controllers/hello_controller.rb


          def gallery
              gallery_path = File.join(Rails.root, "public/im...
/app/controllers/hello_controller.rb


          def gallery
              gallery_path = File.join(Rails.root, "public/im...
/app/controllers/hello_controller.rb


          def gallery
              gallery_path = File.join(Rails.root, "public/im...
DEVELOPMENT

Wednesday, April 14, 2010
DEVELOPMENT

Wednesday, April 14, 2010
/con g/environments/production.rb




    config.action_controller.asset_host = Proc.new do |source, request|
        prot...
/con g/environments/production.rb




    config.action_controller.asset_host = Proc.new do |source, request|
        prot...
/etc/hosts




     ##
     # Host Database
     #
     # localhost is used to configure the loopback interface
     # whe...
PRODUCTION

Wednesday, April 14, 2010
PRODUCTION

Wednesday, April 14, 2010
Javascript embaixo!



Wednesday, April 14, 2010
/app/views/layouts/application.html.erb



      <head>
         <title><%= h(yield(:title) || "Untitled") %></title>
    ...
/app/views/layouts/application.html.erb



      <head>
         <title><%= h(yield(:title) || "Untitled") %></title>
    ...
/app/views/layouts/application.html.erb



          ...
          <script src="http://ajax.googleapis.com/ajax/libs/jquer...
/app/views/layouts/application.html.erb



          ...
          <script src="http://ajax.googleapis.com/ajax/libs/jquer...
Gzip



Wednesday, April 14, 2010
a2enmod de ate


       editar
       /etc/apache2/mods-available/de ate.conf



Wednesday, April 14, 2010
a2enmod de ate


       editar
       /etc/apache2/mods-available/de ate.conf



Wednesday, April 14, 2010
/etc/apache2/mods-available/de ate.conf


                       <IfModule mod_deflate.c>
                         AddOutp...
Cabeçalhos de
                              Expiração



Wednesday, April 14, 2010
a2enmod expires


       editar
       /etc/apache2/mods-available/expires.conf



Wednesday, April 14, 2010
a2enmod expires


       editar
       /etc/apache2/mods-available/expires.conf



Wednesday, April 14, 2010
/etc/apache2/mods-available/expires.conf




                     <IfModule mod_expires.c>
                       ExpiresB...
Cache Busters



Wednesday, April 14, 2010
/app/views/layouts/application.html.erb




                            <%= stylesheet_link_tag 'application' %>


       ...
/app/views/layouts/application.html.erb




                  <link href="/stylesheets/application.css?1264345891"
       ...
/app/views/layouts/application.html.erb




                  <link href="/stylesheets/application.css?1264345891"
       ...
Use CDNs



Wednesday, April 14, 2010
/app/views/layouts/application.html.erb




       <script src="/javascripts/jquery-1.4.min.js" type="text/javascript"></s...
/app/views/layouts/application.html.erb




     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min...
/app/views/layouts/application.html.erb




     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min...
Search


Wednesday, April 14, 2010
select * from ...
                 where ... like “%...%”



Wednesday, April 14, 2010
select * from ...
                 where ... like “%...%”
                  or ... like “%...%”
                  or ... l...
select * from ...
                 where ... like “%...%”
                  or ... like “%...%”
                  or ... l...
Wednesday, April 14, 2010
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Open Source Enterprise Search Platform
         Baseado no famoso Lucene
         Full Text Search, com relevância
       ...
Wednesday, April 14, 2010
Wednesday, April 14, 2010
select * from ...
                 where ... like “%...%”
                  or ... like “%...%”
                  or ... l...
select * from ...
                 where ... like “%...%”
                  or ... like “%...%”
                  or ... l...
Aprendendo Mais



Wednesday, April 14, 2010
RAILS LABS

Wednesday, April 14, 2010
RAILSCASTS.com

Wednesday, April 14, 2010
caelum.com.br

Wednesday, April 14, 2010
egenial.com.br

Wednesday, April 14, 2010
Wednesday, April 14, 2010
Entenda os browsers

                               Entenda HTTP

                                Arquiteturas

          ...
Entenda os browsers

                               Entenda HTTP

                                Arquiteturas

          ...
Entenda os browsers

                               Entenda HTTP

                                Arquiteturas

          ...
Entenda os browsers

                               Entenda HTTP

                                Arquiteturas

          ...
Entenda os browsers

                               Entenda HTTP

                                Arquiteturas

          ...
Wednesday, April 14, 2010
Thx!
       www.slideshare.net/akitaonrails
            http://dl.dropbox.com/u/1732133/dicas-de-desenvolvimento-web-com-r...
Upcoming SlideShare
Loading in...5
×

Edted 2010 Dicas de Web

1,166

Published on

Algumas Dicas de Desenvolvimento Web com um pouco de Ruby. Mostrando YSlow! e Solr. EDTED, Rio de Janeiro.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,166
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
54
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Edted 2010 Dicas de Web

  1. 1. A apresentação já vai começar ... Wednesday, April 14, 2010
  2. 2. AkitaOnRails.com Wednesday, April 14, 2010
  3. 3. ~ 30 min ~ 70 slides Wednesday, April 14, 2010
  4. 4. www.slideshare.net/akitaonrails www.akitaonrails.com/ les/entendendo-a-web-movies.zip fabioakita@gmail.com Wednesday, April 14, 2010
  5. 5. Entendendo a Web Dicas sobre Desenvolvimento Web com Ruby Fabio Akita Wednesday, April 14, 2010
  6. 6. Recapitulando ... Wednesday, April 14, 2010
  7. 7. Ruby é Lento (TM) Wednesday, April 14, 2010
  8. 8. Existem mentiras, mentiras malditas e estatísticas. Wednesday, April 14, 2010
  9. 9. Existem mentiras, mentiras malditas e estatísticas. Wednesday, April 14, 2010
  10. 10. Existem mentiras, mentiras malditas e estatísticas. Wednesday, April 14, 2010
  11. 11. Wednesday, April 14, 2010
  12. 12. x mais lento que C++ Wednesday, April 14, 2010
  13. 13. x mais lento que C++ 0 32.5 65 97.5 130 Python 2 Ruby 1.9 JRuby Perl Python 3 PHP Ruby 1.8 Wednesday, April 14, 2010
  14. 14. Homepage: 331 ms Wednesday, April 14, 2010
  15. 15. Homepage: 331 ms Total: 5.45 s Wednesday, April 14, 2010
  16. 16. Exemplo Wednesday, April 14, 2010
  17. 17. Wednesday, April 14, 2010
  18. 18. Wednesday, April 14, 2010
  19. 19. Wednesday, April 14, 2010
  20. 20. Wednesday, April 14, 2010
  21. 21. Wednesday, April 14, 2010
  22. 22. Wednesday, April 14, 2010
  23. 23. Wednesday, April 14, 2010
  24. 24. Wednesday, April 14, 2010
  25. 25. Wednesday, April 14, 2010
  26. 26. 6 Técnicas Wednesday, April 14, 2010
  27. 27. Menos Requisições Wednesday, April 14, 2010
  28. 28. Mini que CSS e Javascript Wednesday, April 14, 2010
  29. 29. Juicer http://github.com/cjohansen/juicer/ Wednesday, April 14, 2010
  30. 30. gem install juicer script/plugin install git://github.com/ktheory/juicer-rails.git Wednesday, April 14, 2010
  31. 31. gem install juicer script/plugin install git://github.com/ktheory/juicer-rails.git Wednesday, April 14, 2010
  32. 32. juicer install yuicompressor juicer install jslint juicer install closure_compiler Wednesday, April 14, 2010
  33. 33. juicer install yuicompressor juicer install jslint juicer install closure_compiler Wednesday, April 14, 2010
  34. 34. juicer install yuicompressor juicer install jslint juicer install closure_compiler Wednesday, April 14, 2010
  35. 35. /app/views/layouts/application.html.erb <%= juiced_tag '/stylesheets/application.css' %> <%= yield(:head) %> </head> <body> ... <%= juiced_tag '/javascripts/application.js' %> </body> Wednesday, April 14, 2010
  36. 36. /app/views/layouts/application.html.erb <%= juiced_tag '/stylesheets/application.css' %> <%= yield(:head) %> </head> <body> ... <%= juiced_tag '/javascripts/application.js' %> </body> Wednesday, April 14, 2010
  37. 37. /public/stylesheets/application.css @import url("reset.css"); @import url("base.css"); @import url("fonts.css"); ... /public/javascripts/application.js /* @depends jquery-1.4.min.js @depends jquery.edit_in_place.js @depends jqueryamail.js */ ... Wednesday, April 14, 2010
  38. 38. /public/stylesheets/application.css @import url("reset.css"); @import url("base.css"); @import url("fonts.css"); ... /public/javascripts/application.js /* @depends jquery-1.4.min.js @depends jquery.edit_in_place.js @depends jqueryamail.js */ ... Wednesday, April 14, 2010
  39. 39. juicer merge public/stylesheets/application.css public/stylesheets/application.min.css juicer merge -i public/javascripts/application.js public/javascripts/application.min.js Wednesday, April 14, 2010
  40. 40. juicer merge public/stylesheets/application.css public/stylesheets/application.min.css juicer merge -i public/javascripts/application.js public/javascripts/application.min.js Wednesday, April 14, 2010
  41. 41. juicer merge public/stylesheets/application.css public/stylesheets/application.min.css juicer merge -i public/javascripts/application.js public/javascripts/application.min.js Wednesday, April 14, 2010
  42. 42. juicer merge public/stylesheets/application.css public/stylesheets/application.min.css juicer merge -i public/javascripts/application.js public/javascripts/application.min.js Wednesday, April 14, 2010
  43. 43. DEVELOPMENT Wednesday, April 14, 2010
  44. 44. PRODUCTION Wednesday, April 14, 2010
  45. 45. Asset Hosts Navegadores abrem poucas conexões simultâneas por domínio Wednesday, April 14, 2010
  46. 46. Wednesday, April 14, 2010
  47. 47. /app/controllers/hello_controller.rb def gallery gallery_path = File.join(Rails.root, "public/images/gallery/") @images = Dir.glob(gallery_path + "*").map{ |f| f.gsub(gallery_path, "") } end Wednesday, April 14, 2010
  48. 48. /app/controllers/hello_controller.rb def gallery gallery_path = File.join(Rails.root, "public/images/gallery/") @images = Dir.glob(gallery_path + "*").map{ |f| f.gsub(gallery_path, "") } end /app/views/hello/gallery.html.erb <% title "Gallery" %> <% @images.each do |image| -%> <%= image_tag "gallery/#{image}" %> <% end -%> Wednesday, April 14, 2010
  49. 49. /app/controllers/hello_controller.rb def gallery gallery_path = File.join(Rails.root, "public/images/gallery/") @images = Dir.glob(gallery_path + "*").map{ |f| f.gsub(gallery_path, "") } end /app/views/hello/gallery.html.erb <% title "Gallery" %> <% @images.each do |image| -%> <%= image_tag "gallery/#{image}" %> <% end -%> Wednesday, April 14, 2010
  50. 50. DEVELOPMENT Wednesday, April 14, 2010
  51. 51. DEVELOPMENT Wednesday, April 14, 2010
  52. 52. /con g/environments/production.rb config.action_controller.asset_host = Proc.new do |source, request| protocol = if request.ssl? request.headers["USER_AGENT"] =~ /(Safari)/ ? "http" : "https" else "http" end "#{protocol}://asset#{rand(6) + 1}.akitaonrails.local:3000" end Wednesday, April 14, 2010
  53. 53. /con g/environments/production.rb config.action_controller.asset_host = Proc.new do |source, request| protocol = if request.ssl? request.headers["USER_AGENT"] =~ /(Safari)/ ? "http" : "https" else "http" end "#{protocol}://asset#{rand(6) + 1}.akitaonrails.local:3000" end Wednesday, April 14, 2010
  54. 54. /etc/hosts ## # Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost 127.0.0.1 asset1.akitaonrails.local asset2.akitaonrails.local asset3.akitaonrails.local asset4.akitaonrails.local asset5.akitaonrails.local asset6.akitaonrails.local www.akitaonrails.local Wednesday, April 14, 2010
  55. 55. PRODUCTION Wednesday, April 14, 2010
  56. 56. PRODUCTION Wednesday, April 14, 2010
  57. 57. Javascript embaixo! Wednesday, April 14, 2010
  58. 58. /app/views/layouts/application.html.erb <head> <title><%= h(yield(:title) || "Untitled") %></title> <%= stylesheet_link_tag 'application' %> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/ CFInstall.min.js" type="text/javascript"></script> <%= yield(:head) %> </head> <body> ... Wednesday, April 14, 2010
  59. 59. /app/views/layouts/application.html.erb <head> <title><%= h(yield(:title) || "Untitled") %></title> <%= stylesheet_link_tag 'application' %> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/ CFInstall.min.js" type="text/javascript"></script> <%= yield(:head) %> </head> <body> ... Wednesday, April 14, 2010
  60. 60. /app/views/layouts/application.html.erb ... <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/ CFInstall.min.js" type="text/javascript"></script> <script type="text/javascript"> // meu javascript customizado ... </script> </body> </html> Wednesday, April 14, 2010
  61. 61. /app/views/layouts/application.html.erb ... <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/ CFInstall.min.js" type="text/javascript"></script> <script type="text/javascript"> // meu javascript customizado ... </script> </body> </html> Wednesday, April 14, 2010
  62. 62. Gzip Wednesday, April 14, 2010
  63. 63. a2enmod de ate editar /etc/apache2/mods-available/de ate.conf Wednesday, April 14, 2010
  64. 64. a2enmod de ate editar /etc/apache2/mods-available/de ate.conf Wednesday, April 14, 2010
  65. 65. /etc/apache2/mods-available/de ate.conf <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE image/x-icon AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php AddOutputFilterByType DEFLATE application/x-httpd-fastphp AddOutputFilterByType DEFLATE application/x-httpd-eruby DeflateCompressionLevel 9 # Netscape 4.X has some problems BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.06-4.08 have some more problems BrowserMatch ^Mozilla/4.0[678] no-gzip # MSIE masquerades as Netscape, but it is fine BrowserMatch bMSIE !no-gzip !gzip-only-text/html </IfModule> Wednesday, April 14, 2010
  66. 66. Cabeçalhos de Expiração Wednesday, April 14, 2010
  67. 67. a2enmod expires editar /etc/apache2/mods-available/expires.conf Wednesday, April 14, 2010
  68. 68. a2enmod expires editar /etc/apache2/mods-available/expires.conf Wednesday, April 14, 2010
  69. 69. /etc/apache2/mods-available/expires.conf <IfModule mod_expires.c> ExpiresByType image/x-icon "access plus 1 year" ExpiresByType image/png "access plus 1 year" ExpiresByType image/jpg "access plus 1 year" ExpiresByType image/gif "access plus 1 year" ExpiresByType image/jpeg "access plus 1 year" ExpiresByType application/pdf "access plus 1 year" ExpiresByType audio/x-wav "access plus 1 year" ExpiresByType audio/mpeg "access plus 1 year" ExpiresByType video/mpeg "access plus 1 year" ExpiresByType video/mp4 "access plus 1 year" ExpiresByType video/quicktime "access plus 1 year" ExpiresByType video/x-ms-wmv "access plus 1 year" ExpiresByType application/x-shockwave-flash "access 1 month" ExpiresByType text/css "access plus 1 year" ExpiresByType text/javascript "access plus 1 year" </IfModule> Wednesday, April 14, 2010
  70. 70. Cache Busters Wednesday, April 14, 2010
  71. 71. /app/views/layouts/application.html.erb <%= stylesheet_link_tag 'application' %> <%= javascript_include_tag 'application' %> <%= image_tag "logo.png" %> Wednesday, April 14, 2010
  72. 72. /app/views/layouts/application.html.erb <link href="/stylesheets/application.css?1264345891" media="screen" rel="stylesheet" type="text/css" /> <script src="/javascripts/application.js?1264345058" type="text/javascript"></script> <img alt="Logo" src="/images/logo.png?1268943058" /> Wednesday, April 14, 2010
  73. 73. /app/views/layouts/application.html.erb <link href="/stylesheets/application.css?1264345891" media="screen" rel="stylesheet" type="text/css" /> <script src="/javascripts/application.js?1264345058" type="text/javascript"></script> <img alt="Logo" src="/images/logo.png?1268943058" /> Wednesday, April 14, 2010
  74. 74. Use CDNs Wednesday, April 14, 2010
  75. 75. /app/views/layouts/application.html.erb <script src="/javascripts/jquery-1.4.min.js" type="text/javascript"></script> <script src="/javascripts/jquery-ui-1.7.2.min.js" type="text/javascript"></script> <script src="/javascripts/swfobject-2.2.js" type="text/javascript"></script> <script src="/javascripts/CFInstall-1.0.2.min.js" type="text/javascript"></script> Wednesday, April 14, 2010
  76. 76. /app/views/layouts/application.html.erb <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/CFInstall.min.js" type="text/javascript"></script> Wednesday, April 14, 2010
  77. 77. /app/views/layouts/application.html.erb <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script> <script src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.2/CFInstall.min.js" type="text/javascript"></script> Wednesday, April 14, 2010
  78. 78. Search Wednesday, April 14, 2010
  79. 79. select * from ... where ... like “%...%” Wednesday, April 14, 2010
  80. 80. select * from ... where ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” Wednesday, April 14, 2010
  81. 81. select * from ... where ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” Wednesday, April 14, 2010
  82. 82. Wednesday, April 14, 2010
  83. 83. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  84. 84. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  85. 85. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  86. 86. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  87. 87. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  88. 88. Open Source Enterprise Search Platform Baseado no famoso Lucene Full Text Search, com relevância Indexa documentos (Word, PDF, etc) Interface REST Roda em containers de Servlet (Tomcat) Wednesday, April 14, 2010
  89. 89. Wednesday, April 14, 2010
  90. 90. Wednesday, April 14, 2010
  91. 91. select * from ... where ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” Wednesday, April 14, 2010
  92. 92. select * from ... where ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” or ... like “%...%” Wednesday, April 14, 2010
  93. 93. Aprendendo Mais Wednesday, April 14, 2010
  94. 94. RAILS LABS Wednesday, April 14, 2010
  95. 95. RAILSCASTS.com Wednesday, April 14, 2010
  96. 96. caelum.com.br Wednesday, April 14, 2010
  97. 97. egenial.com.br Wednesday, April 14, 2010
  98. 98. Wednesday, April 14, 2010
  99. 99. Entenda os browsers Entenda HTTP Arquiteturas Mundo Assíncrono Mundo não Relacional Wednesday, April 14, 2010
  100. 100. Entenda os browsers Entenda HTTP Arquiteturas Mundo Assíncrono Mundo não Relacional Wednesday, April 14, 2010
  101. 101. Entenda os browsers Entenda HTTP Arquiteturas Mundo Assíncrono Mundo não Relacional Wednesday, April 14, 2010
  102. 102. Entenda os browsers Entenda HTTP Arquiteturas Mundo Assíncrono Mundo não Relacional Wednesday, April 14, 2010
  103. 103. Entenda os browsers Entenda HTTP Arquiteturas Mundo Assíncrono Mundo não Relacional Wednesday, April 14, 2010
  104. 104. Wednesday, April 14, 2010
  105. 105. Thx! www.slideshare.net/akitaonrails http://dl.dropbox.com/u/1732133/dicas-de-desenvolvimento-web-com-rails.zip fabioakita@gmail.com Wednesday, April 14, 2010
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×