SlideShare une entreprise Scribd logo
1  sur  125
Welcome to
                           the Jungle!
                             Dav Glass,
                              Hacker
                             @davglass



Monday, November 7, 2011
Welcome to the Jungle - GnR




Monday, November 7, 2011
Welcome to the Jungle - GnR



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
Welcome to YUIConf 2011




Monday, November 7, 2011
Welcome to YUIConf 2011




Monday, November 7, 2011
Welcome to YUIConf 2011


                                   @yuilibrary
                                    #yuiconf




Monday, November 7, 2011
Welcome to YUIConf 2011


                                   @yuilibrary
                                    #yuiconf



                                     yuiconf
                                   yuiconf2011



Monday, November 7, 2011
Conference Events
                           Today
                     9:00 - 5:30 - Talks
                   12:00 - 1:00 - Lunch
                    5:30 - 6:30 - Dinner
              6:30 - 8:30 -Douglas Crockford

                               Tomorrow
                            9:00 - 5:30 - Talks
                           12:00 - 1:00 - Lunch



Monday, November 7, 2011
YUI Conf brought to you by:


                      Lunch both days provided by:

                                      Yahoo! Mail


                           Dinner tonight provided by:




Monday, November 7, 2011
Special Shout Outs




Monday, November 7, 2011
Special Shout Outs




Monday, November 7, 2011
Special Shout Outs




Monday, November 7, 2011
Special Shout Outs




Monday, November 7, 2011
Special Shout Outs




Monday, November 7, 2011
Back in Black - AC/DC




Monday, November 7, 2011
Back in Black - AC/DC



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
New Members




Monday, November 7, 2011
New Members




Monday, November 7, 2011
New Members




Monday, November 7, 2011
Gallery Growth




Monday, November 7, 2011
Gallery Growth




Monday, November 7, 2011
Gallery Growth



                           Last YUIConf: 206 modules




Monday, November 7, 2011
Gallery Growth



                           Last YUIConf: 206 modules
                                  Today: 350 modules




Monday, November 7, 2011
Gallery Growth



                           Last YUIConf: 206 modules
                                  Today: 350 modules
                             New CLA’s: 76




Monday, November 7, 2011
Top Gallery Contributors




Monday, November 7, 2011
Top Gallery Contributors
                           AlloyUI - Liferay

                                70 modules




Monday, November 7, 2011
Top Gallery Contributors




Monday, November 7, 2011
Top Gallery Contributors

                           Anthony Pipkin

                                     29 modules




Monday, November 7, 2011
Top Gallery Contributors




Monday, November 7, 2011
Top Gallery Contributors

                           John Lindal

                                   26 modules




Monday, November 7, 2011
Top Gallery Contributors




Monday, November 7, 2011
Top Gallery Contributors

                           Luke Smith

                                   17 modules




Monday, November 7, 2011
Top Gallery Contributors




Monday, November 7, 2011
Top Gallery Contributors

                           Caridy Patino

                                   12 modules




Monday, November 7, 2011
Forum Growth




Monday, November 7, 2011
Forum Growth




Monday, November 7, 2011
Forum Growth




Monday, November 7, 2011
Forum Growth

                           +25,000 posts
                           +10,000 users




Monday, November 7, 2011
New Components




Monday, November 7, 2011
New Components


                    ✦ App Framework   ✦ Graphics
                    ✦ Autocomplete    ✦ Highlight

                    ✦ Calendar        ✦ Panel

                    ✦ Charts          ✦ Resize*

                    ✦ DataTable       ✦ Scrollview

                    ✦ Dial            ✦ Text

                    ✦ Escape




Monday, November 7, 2011
Updates




Monday, November 7, 2011
Updates


                    ✦ Core System
                    ✦ Loader Refactor

                    ✦ GBS Updates




Monday, November 7, 2011
GBS Update




Monday, November 7, 2011
GBS Update




                 As of our last update (7/12/11), we've decoupled the
               Graded Browser Support development strategy from the
                                 testing methodology.

                  The "Browser Test Baseline" is a representative set of
                   browsers chosen to provide the maximum testing
                       coverage over the minimal testing surface.




Monday, November 7, 2011
Today - Smashing Pumpkins




Monday, November 7, 2011
Today - Smashing Pumpkins



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
Faster Releases




Monday, November 7, 2011
Faster Releases




Monday, November 7, 2011
Faster Releases




Monday, November 7, 2011
Faster Releases


                    ✦ Sprint based releases
                      ✦ More PR releases

                      ✦ Better scheduling

                    ✦ More Community Involvement

                      ✦ Schedule Announcing

                      ✦ Github Integration




Monday, November 7, 2011
Github Integration




Monday, November 7, 2011
Github Integration




Monday, November 7, 2011
Github Integration




Monday, November 7, 2011
Github Integration




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
New Image




Monday, November 7, 2011
Livin on the Edge - Aerosmith




Monday, November 7, 2011
Livin on the Edge - Aerosmith



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
NodeJS




Monday, November 7, 2011
NodeJS




                           ✦
                             First class environment
                           ✦
                             Formal support in Y.UA
                           ✦
                             Conditional Loading
                           ✦
                             Tested


Monday, November 7, 2011
NodeJS




Monday, November 7, 2011
NodeJS




Monday, November 7, 2011
NodeJS




Monday, November 7, 2011
NodeJS




Monday, November 7, 2011
Component Updates




                             In 3.5.0, DataTable will be my
                             primary focus. It will undergo
                             an architectural overhaul, with
                             plans to move it to a Model/
                             ModelList + View based
                             internal structure, which will
                             allow more flexibility in
                             rendering and data
                             interchange with server bound
                             data.




Monday, November 7, 2011
Component Updates
                           ✦ Core
                           ✦ Bidi/RTL/Skins

                           ✦ Get

                           ✦ Loader

                           ✦ DataTable        In 3.5.0, DataTable will be my
                                              primary focus. It will undergo

                           ✦ App Framework    an architectural overhaul, with
                                              plans to move it to a Model/
                                              ModelList + View based
                                              internal structure, which will
                                              allow more flexibility in
                                              rendering and data
                                              interchange with server bound
                                              data.




Monday, November 7, 2011
New Components




Monday, November 7, 2011
New Components
                           ✦   Handlebars




Monday, November 7, 2011
New Components
                           ✦   Handlebars
                           ✦   Pjax




Monday, November 7, 2011
New Components
                           ✦   Handlebars
                           ✦   Pjax
                           ✦   Test Console




Monday, November 7, 2011
New Components
                           ✦   Handlebars
                           ✦   Pjax
                           ✦   Test Console
                           ✦   TreeView




Monday, November 7, 2011
New Components
                           ✦   Handlebars
                           ✦   Pjax
                           ✦   Test Console
                           ✦   TreeView
                           ✦   Widget Lite




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5
                           ✦ Button Widget




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5
                           ✦ Button Widget
                           ✦ Windowing Components




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5
                           ✦ Button Widget
                           ✦ Windowing Components
                             ✦ Tooltip




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5
                           ✦ Button Widget
                           ✦ Windowing Components
                             ✦ Tooltip
                             ✦ Dialog




Monday, November 7, 2011
New Components
                           ✦ Handlebars
                           ✦ Pjax
                           ✦ Test Console
                           ✦ TreeView
                           ✦ Widget Lite
                           ✦ Uploader in HTML5
                           ✦ Button Widget
                           ✦ Windowing Components
                             ✦ Tooltip
                             ✦ Dialog
                             ✦ Pointer




Monday, November 7, 2011
The Book of

                            YUI 3

                           (not the real title)




Monday, November 7, 2011
The YUI 3 Cookbook

                           Evan Goer
                           goer@yahoo-inc.com




                  The YUI 3 Cookbook contains 150 recipes.
                    Each recipe includes a self-contained
                    working example. Most examples are
                     deliberately very short, but have an
                            extensive discussion.



Monday, November 7, 2011
The YUI 3 Cookbook

                            Evan Goer
                            goer@yahoo-inc.com




                           http://goer.org/YUI
                   To download a free sample pack of three
                  PDF chapters. These chapters are raw and
                    contain typos, red TODOs, and errors.
                             You've been warned!


Monday, November 7, 2011
YUI Easy Testing Interface - Yeti




Monday, November 7, 2011
YUI Easy Testing Interface - Yeti




                      Video Here:
        www.youtube.com/watch?v=85Q06z7_B0w




Monday, November 7, 2011
Talk Dirty to Me - Poison




Monday, November 7, 2011
Talk Dirty to Me - Poison



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
Component Talks




Monday, November 7, 2011
Component Talks



                           Allen Rabinovich
                               @allenr




Monday, November 7, 2011
Component Talks



                                Allen Rabinovich
                                       @allenr
                           Architecting and building a module
                             from scratch. Lessons in careful
                           planning, optimization and feature-
                           setting that go into module design.




Monday, November 7, 2011
Component Talks



                           Jeff Conniff




Monday, November 7, 2011
Component Talks



                                     Jeff Conniff

                             The Dial widget is a circular value
                            input control. It's like a real-world,
                           analog, volume control dial, but with
                                  much finer UI control.




Monday, November 7, 2011
Component Talks



                           Tripp Bridges




Monday, November 7, 2011
Component Talks



                                Tripp Bridges

                            The API and feature set. Including
                           some exciting demonstrations from
                                      Jeff Conniff




Monday, November 7, 2011
Component Talks



                           Eric Ferraiuolo
                               @ericf




Monday, November 7, 2011
Component Talks



                               Eric Ferraiuolo
                                     @ericf

                           YUI App Framework: You've Been
                                    Wanting This




Monday, November 7, 2011
Component Talks



                           Luke Smith
                             @ls_n




Monday, November 7, 2011
Component Talks



                                   Luke Smith
                                       @ls_n

                           From one, many; from many, one —
                           class inheritance and composition in
                                            YUI




Monday, November 7, 2011
Component Talks



                           Derek Gathright
                               @derek




Monday, November 7, 2011
Component Talks



                           Derek Gathright
                               @derek

                               Why YUI?




Monday, November 7, 2011
Notable Talks



                    YQL




Monday, November 7, 2011
Notable Talks



                    YQL




Monday, November 7, 2011
Notable Talks



                    YQL




Monday, November 7, 2011
Notable Talks



                    YQL




Monday, November 7, 2011
Community Talks




Monday, November 7, 2011
Community Talks


                           Jeff Craig
                           @foxxtrot

                           Demystifying Loader: Advanced Module
                                       Configuration




Monday, November 7, 2011
Community Talks

                           Ryan Cannon
                           @rcanine


                           There is no off-season: NFL.com's move
                                            to YUI




Monday, November 7, 2011
Community Talks

                           Jeff Pihach
                           @FromAnEgg




                                   YUI For Designers




Monday, November 7, 2011
Community Talks

                           Jeff Pihach
                           @FromAnEgg
                           aka Hatch on irc



                                      YUI For Designers




Monday, November 7, 2011
Community Talks


                           Pat Cavit
                           @tivac


                            Automating Website Optimization




Monday, November 7, 2011
Community Talks


                           Eduardo Lundgren



                            Introducing AlloyUI DiagramBuilder




Monday, November 7, 2011
Community Talks


                           Andrew Wooldridge
                           @triptych


                                   YUI Hidden Gems




Monday, November 7, 2011
Closing Time - Semisonic




Monday, November 7, 2011
Closing Time - Semisonic



                 "Imagine you're hearing awesome
                 music here, because imagining it is a
                 lot cheaper than getting licenses to
                 actually play it." @yaypie




Monday, November 7, 2011
Images
                                          All images used are copyright of
                                               the original publisher.

            Album artwork pulled from
                   Wikipedia.
                                            Darth Vader image from
                                                bootspring.com

            Mobile device images from
            apple.com, google.com and
                  motorola.com
                                           Harley image from harley-
                                                 davidson.com
          Github images from github.com




Monday, November 7, 2011
Enjoy The
                           Conference

                             Dav Glass,
                              Hacker
                             @davglass




Monday, November 7, 2011

Contenu connexe

Similaire à Greach 2011 - Engrandeciendo Grails con MongoDB

"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여
"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여
"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여Ricky Park
 
Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Leonardo Borges
 
The Many Hats of Building and Launching a Web Startup
The Many Hats of Building and Launching a Web Startup The Many Hats of Building and Launching a Web Startup
The Many Hats of Building and Launching a Web Startup Tracy Osborn
 
Mba twente social innovatie
Mba twente social innovatieMba twente social innovatie
Mba twente social innovatieVincent Everts
 
Prorail 10 year education
Prorail 10 year educationProrail 10 year education
Prorail 10 year educationVincent Everts
 
Content focused web design
Content focused web designContent focused web design
Content focused web designEddie Monge
 
Mobility in the financial industry
Mobility in the financial industryMobility in the financial industry
Mobility in the financial industryVincent Everts
 
7 dec 2011 jlhs sec 2
7 dec 2011 jlhs sec 27 dec 2011 jlhs sec 2
7 dec 2011 jlhs sec 2outdoorjohn
 
Social media and mutuals banks credit unions
Social media and mutuals banks credit unionsSocial media and mutuals banks credit unions
Social media and mutuals banks credit unionsLaurel Papworth
 
How to market your blog
How to market your blog How to market your blog
How to market your blog GetawayMagazine
 
Knowing is Half the Battle
Knowing is Half the BattleKnowing is Half the Battle
Knowing is Half the BattleFocus Lab, LLC
 
Youth.SG Spies Meetup 2 - Creating Online Buzz
Youth.SG Spies Meetup 2 - Creating Online BuzzYouth.SG Spies Meetup 2 - Creating Online Buzz
Youth.SG Spies Meetup 2 - Creating Online BuzzDing Neng
 
Youth.SG Campus Spy Session 2: Spies' Articles
Youth.SG Campus Spy Session 2: Spies' ArticlesYouth.SG Campus Spy Session 2: Spies' Articles
Youth.SG Campus Spy Session 2: Spies' Articlesyouthsg
 
Conquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSConquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSCaridy Patino
 
Ricoh social media & sales
Ricoh social media & salesRicoh social media & sales
Ricoh social media & salesVincent Everts
 
Generating Print Sales Leads with LinkedIn session 1
Generating Print Sales Leads with LinkedIn session 1Generating Print Sales Leads with LinkedIn session 1
Generating Print Sales Leads with LinkedIn session 1Joe Kern
 

Similaire à Greach 2011 - Engrandeciendo Grails con MongoDB (20)

"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여
"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여
"센과 치히로의 행방불명"을 통해 알아보는 우리들의 잃어버린 인간성에 대하여
 
Open Source - DevInVale 2011
Open Source - DevInVale 2011Open Source - DevInVale 2011
Open Source - DevInVale 2011
 
Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011)
 
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools
 
The Many Hats of Building and Launching a Web Startup
The Many Hats of Building and Launching a Web Startup The Many Hats of Building and Launching a Web Startup
The Many Hats of Building and Launching a Web Startup
 
Mba twente social innovatie
Mba twente social innovatieMba twente social innovatie
Mba twente social innovatie
 
Prorail 10 year education
Prorail 10 year educationProrail 10 year education
Prorail 10 year education
 
Content focused web design
Content focused web designContent focused web design
Content focused web design
 
Mobility in the financial industry
Mobility in the financial industryMobility in the financial industry
Mobility in the financial industry
 
7 dec 2011 jlhs sec 2
7 dec 2011 jlhs sec 27 dec 2011 jlhs sec 2
7 dec 2011 jlhs sec 2
 
Social media and mutuals banks credit unions
Social media and mutuals banks credit unionsSocial media and mutuals banks credit unions
Social media and mutuals banks credit unions
 
How to market your blog
How to market your blog How to market your blog
How to market your blog
 
Now discover your strengths
Now discover your strengthsNow discover your strengths
Now discover your strengths
 
Knowing is Half the Battle
Knowing is Half the BattleKnowing is Half the Battle
Knowing is Half the Battle
 
Youth.SG Spies Meetup 2 - Creating Online Buzz
Youth.SG Spies Meetup 2 - Creating Online BuzzYouth.SG Spies Meetup 2 - Creating Online Buzz
Youth.SG Spies Meetup 2 - Creating Online Buzz
 
Youth.SG Campus Spy Session 2: Spies' Articles
Youth.SG Campus Spy Session 2: Spies' ArticlesYouth.SG Campus Spy Session 2: Spies' Articles
Youth.SG Campus Spy Session 2: Spies' Articles
 
Caridy patino - node-js
Caridy patino - node-jsCaridy patino - node-js
Caridy patino - node-js
 
Conquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSConquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JS
 
Ricoh social media & sales
Ricoh social media & salesRicoh social media & sales
Ricoh social media & sales
 
Generating Print Sales Leads with LinkedIn session 1
Generating Print Sales Leads with LinkedIn session 1Generating Print Sales Leads with LinkedIn session 1
Generating Print Sales Leads with LinkedIn session 1
 

Plus de greach_es

Greach 2011 - Novedades de Grails 2.0
Greach 2011 - Novedades de Grails 2.0Greach 2011 - Novedades de Grails 2.0
Greach 2011 - Novedades de Grails 2.0greach_es
 
Greach 2011 - Cloud Foundry
Greach 2011 - Cloud FoundryGreach 2011 - Cloud Foundry
Greach 2011 - Cloud Foundrygreach_es
 
Greach 2011 - Migración de proyectos JEE a Grails
Greach 2011 - Migración de proyectos JEE a GrailsGreach 2011 - Migración de proyectos JEE a Grails
Greach 2011 - Migración de proyectos JEE a Grailsgreach_es
 
Greach 2011 - Engrandeciendo Grails con Mongo DB
Greach 2011 - Engrandeciendo Grails con Mongo DBGreach 2011 - Engrandeciendo Grails con Mongo DB
Greach 2011 - Engrandeciendo Grails con Mongo DBgreach_es
 
Greach 2011 - Opening keynote
Greach 2011 - Opening keynoteGreach 2011 - Opening keynote
Greach 2011 - Opening keynotegreach_es
 
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...greach_es
 

Plus de greach_es (6)

Greach 2011 - Novedades de Grails 2.0
Greach 2011 - Novedades de Grails 2.0Greach 2011 - Novedades de Grails 2.0
Greach 2011 - Novedades de Grails 2.0
 
Greach 2011 - Cloud Foundry
Greach 2011 - Cloud FoundryGreach 2011 - Cloud Foundry
Greach 2011 - Cloud Foundry
 
Greach 2011 - Migración de proyectos JEE a Grails
Greach 2011 - Migración de proyectos JEE a GrailsGreach 2011 - Migración de proyectos JEE a Grails
Greach 2011 - Migración de proyectos JEE a Grails
 
Greach 2011 - Engrandeciendo Grails con Mongo DB
Greach 2011 - Engrandeciendo Grails con Mongo DBGreach 2011 - Engrandeciendo Grails con Mongo DB
Greach 2011 - Engrandeciendo Grails con Mongo DB
 
Greach 2011 - Opening keynote
Greach 2011 - Opening keynoteGreach 2011 - Opening keynote
Greach 2011 - Opening keynote
 
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...
Greach 2011 - Ringio, o como hacer realidad una aplicación de telefonía con G...
 

Dernier

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Dernier (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

Greach 2011 - Engrandeciendo Grails con MongoDB

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. * En la pregunta final, la estrategia de acceso a datos se refiere a si quieres un lenguaje de alto nivel para hacer consultas, tipo SQL, o te sientes mejor trabajando a bajo nivel, con Map/Reduce o incluso operaciones sobre colecciones\n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. * Mencionar el uso de Spring Datastore como API por debajo de la integración de Grails con NoSQL\n* Recomendar no usar GORM; sólo ‘embedded’ cuando se necesite, pero el resto propiedades de clase normales (generan un DBRef)\n
  25. * TRANSACCIONALIDAD --> Consiste en mantener una lista de cambios pendientes que no se mandan realmente a MongoDB hasta que no se hace el flush. Sin embargo, no solucionan la atomicidad del lado de MongoDB en el caso de varias operaciones. Por ejemplo, transferencias entre cuentas de dos bancos\n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. * Hacer notar que no se puede obtener la colección de Detalles de un Maestro ordenada, ya que la colección del Maestro simplemente tiene las referencias --> Workaround: definir ‘detalles’ en Maestro como una Lista, de forma que se guarde ordenada en MongoDB\n* Demostrar que si cambio el hasMany por un simple List<Detalle> detalles, no funciona porque MongoDB no sabe cómo convertir un Detalle a BSON (habría que usar un ‘Custom Type’ - ver documentación del plugin)\n* Comentar que más adelante veremos el tema de los índices para optimizar las búsquedas\n
  35. * Matizar que la colección embebida tiene el “_embeddedClassName” para que Grails sepa cómo transformar el BSON de vuelta a un ‘detalle’\n* Fijarse en que al haber usado una colección de tipo List, los ‘detalles’ están ordenados\n* Comentar que por defecto vuelve a guardar la colección entera cuando añadimos un elemento, con lo que quizás sería mucho más óptimo usar la API de bajo nivel y hacer un $push\n
  36. * Comentar que el nombre del Detalle es su identificador ahora, pero lo ideal sería crearle uno realmente único (por si permite nombres duplicados - por ejemplo, los artículos de una factura)\n
  37. * El ejemplo típico de usar M:1 para definir una 1:M sería el de Factura y Artículos --> Factura.getArticulos() { Articulo.findAllByFactura(this) }\n* Comentar que se miren los Trees como diseño embebido en relaciones estrictas de padre/hijo\n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. * Queremos buscar los detalles cuyo maestro sea “Maestro1”\n* Notar que el plugin hace la query contra el $id, no contra la referencia, con lo que la indexación definida como constraint en la clase no sirve de nada\n
  45. * Queremos buscar los detalles cuyo maestro sea “Maestro1”\n* Notar que el plugin hace la query contra el $id, no contra la referencia, con lo que la indexación definida como constraint en la clase no sirve de nada\n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. * Explicar que al estar embebido el Detalle, se recupera la colección contenedora y entonces se busca el Detalle específico porque puede tener otros campos de los cuales queremos saber su valor\n
  53. * Explicar que al estar embebido el Detalle, se recupera la colección contenedora y entonces se busca el Detalle específico porque puede tener otros campos de los cuales queremos saber su valor\n
  54. * Explicar que al estar embebido el Detalle, se recupera la colección contenedora y entonces se busca el Detalle específico porque puede tener otros campos de los cuales queremos saber su valor\n
  55. * Explicar que al estar embebido el Detalle, se recupera la colección contenedora y entonces se busca el Detalle específico porque puede tener otros campos de los cuales queremos saber su valor\n
  56. * Explicar que al estar embebido el Detalle, se recupera la colección contenedora y entonces se busca el Detalle específico porque puede tener otros campos de los cuales queremos saber su valor\n
  57. * Comentar que hay dos formas de modelar esto: la primera es la que se muestra aquí, donde embebemos parte del Articulo (codigo, descripcion) en la Factura, de forma que podemos buscar directamente en la Factura por descripción de Articulo\n* Destacar el hecho de usar el ‘collect’ para recuperar los objetos Articulos como tal, ya que en Factura sólo tenemos una parte del Articulo y queremos ver todas las características de todos los artículos\n
  58. * Comentar que hay dos formas de modelar esto: la primera es la que se muestra aquí, donde embebemos parte del Articulo (codigo, descripcion) en la Factura, de forma que podemos buscar directamente en la Factura por descripción de Articulo\n* Destacar el hecho de usar el ‘collect’ para recuperar los objetos Articulos como tal, ya que en Factura sólo tenemos una parte del Articulo y queremos ver todas las características de todos los artículos\n
  59. * Comentar que hay dos formas de modelar esto: la primera es la que se muestra aquí, donde embebemos parte del Articulo (codigo, descripcion) en la Factura, de forma que podemos buscar directamente en la Factura por descripción de Articulo\n* Destacar el hecho de usar el ‘collect’ para recuperar los objetos Articulos como tal, ya que en Factura sólo tenemos una parte del Articulo y queremos ver todas las características de todos los artículos\n
  60. * Comentar que hay dos formas de modelar esto: la primera es la que se muestra aquí, donde embebemos parte del Articulo (codigo, descripcion) en la Factura, de forma que podemos buscar directamente en la Factura por descripción de Articulo\n* Destacar el hecho de usar el ‘collect’ para recuperar los objetos Articulos como tal, ya que en Factura sólo tenemos una parte del Articulo y queremos ver todas las características de todos los artículos\n
  61. * Comentar que hay dos formas de modelar esto: la primera es la que se muestra aquí, donde embebemos parte del Articulo (codigo, descripcion) en la Factura, de forma que podemos buscar directamente en la Factura por descripción de Articulo\n* Destacar el hecho de usar el ‘collect’ para recuperar los objetos Articulos como tal, ya que en Factura sólo tenemos una parte del Articulo y queremos ver todas las características de todos los artículos\n
  62. * La query busca las facturas donde todavía no hay cobros, es decir, las facturas sin cobrar.\n
  63. * La query busca las facturas donde todavía no hay cobros, es decir, las facturas sin cobrar.\n
  64. * Rendimiento penalizado: se ejecuta el código JS para cada uno de los objetos escaneados.\n* Comentar el db.eval() para ‘server side processing’\n
  65. * Rendimiento penalizado: se ejecuta el código JS para cada uno de los objetos escaneados.\n* Comentar el db.eval() para ‘server side processing’\n
  66. * Notar el uso de la API en DBRef, con especial énfasis en el segundo parámetro, que puede dar lugar a confusión\n
  67. * Notar el uso de la API en DBRef, con especial énfasis en el segundo parámetro, que puede dar lugar a confusión\n
  68. * Comentar que el Map/Reduce no tiene mucho sentido implementarlo en el plugin\n* Explicar que Map/Reduce es una tecnología mediante la cual se puede agrupar información de manera óptima en paralelo y que viene de las BigTable de Google\n
  69. * Comentar que es una alternativa rápida al Map/Reduce, pero que no funciona en configuraciones ‘sharded’\n
  70. * Comentar que es una alternativa rápida al Map/Reduce, pero que no funciona en configuraciones ‘sharded’\n
  71. * No permite ‘sharding’ debido sobre todo al tema de los ‘write lock’\n* Comentar que podemos almacenar la definición de la función JS mediante --> db.system.js.insert({_id: “nombre”, value: function(x) { return x * x; }});\n
  72. * No permite ‘sharding’ debido sobre todo al tema de los ‘write lock’\n* Comentar que podemos almacenar la definición de la función JS mediante --> db.system.js.insert({_id: “nombre”, value: function(x) { return x * x; }});\n
  73. * No permite ‘sharding’ debido sobre todo al tema de los ‘write lock’\n* Comentar que podemos almacenar la definición de la función JS mediante --> db.system.js.insert({_id: “nombre”, value: function(x) { return x * x; }});\n
  74. \n
  75. \n