SlideShare una empresa de Scribd logo
1 de 64
Descargar para leer sin conexión
Internal
Architecting your Frontend
Your mileage may vary
Ruben Teijeiro
@rteijeiro
Senior Software Architect
Tieto, CEM
ruben.teijeiro@tieto.com
Internal
Frontend
(of a device or program) interface directly
accessed by the user and allowing access to
further devices, programs, or databases.
© Tieto Corporation
Internal
Frontend
3
http://bradfrost.com/blog/post/frontend-design
© Tieto Corporation
Internal
Frontend Design
4
http://bradfrost.com/blog/post/frontend-design
• Frontend design involves creating the HTML, CSS, and
presentational JavaScript code that makes up a user
interface.
• A Frontend Designer understands UX principles and best
practices.
• It’s crucial to treat frontend development as a core part of
the design process.
© Tieto Corporation
Internal
User eXperience
5
© Tieto Corporation
Internal
VR GUIs
6
Internal
Frontend Frameworks
© Tieto Corporation
Internal
Frontend Frameworks
• CSS Frameworks
• JavaScript Frameworks
• Mobile Frameworks
8
Internal
CSS Frameworks
© Tieto Corporation
Internal
CSS Frameworks
• MaterializeCSS: http://materializecss.com
• Bootstrap: http://getbootstrap.com
• Foundation: http://foundation.zurb.com
10
© Tieto Corporation
Internal
MaterializeCSS
Based on Material Design by Google
http://www.google.com/design/spec/material-design
11
© Tieto Corporation
Internal
Bootstrap
Created by Twitter
12
© Tieto Corporation
Internal
Foundation
13
Internal
JavaScript Frameworks
Internal
JavaScript Frameworks
© Tieto Corporation
Internal
JavaScript Frameworks
• Angular: https://angularjs.org
• Ember: http://emberjs.com
• Backbone: http://backbonejs.org
• React: https://facebook.github.io/react
16
© Tieto Corporation
Internal
JavaScript Frameworks
17
http://blog.bitovi.com/longevity-or-lack-thereof-in-javascript-frameworks
© Tieto Corporation
Internal
JavaScript Frameworks
18
Internal
Mobile Frameworks
© Tieto Corporation
Internal
Mobile Frameworks
• Ionic: http://ionicframework.com
• React Native: https://facebook.github.io/react-native
• Meteor: https://www.meteor.com
20
© Tieto Corporation
Internal
Ionic
21
© Tieto Corporation
Internal
React Native
22
© Tieto Corporation
Internal
Meteor
23
Internal
Frontend Architecture
A practical case with BackboneJS
© Tieto Corporation
Internal
Frontend Architecture
• Models
• Collections
• Views
• Events
• Routers
• Templates
25
© Tieto Corporation
Internal
Models
• Models are the entity of an application that store data and
contain some logic around data such as validation,
conversion, and data interaction.
26
© Tieto Corporation
Internal
Models
var User = Backbone.Model.extend({
defaults: {
firstname: "",
lastname: "",
address: "",
city: "",
phone: ""
}
});
27
© Tieto Corporation
Internal
Collections
• A collection is a group of models that includes a lot of
functionality as well as Underscore utility methods to help
you work on multiple data models.
28
© Tieto Corporation
Internal
Collections
var Users = Backbone.Collection.extend({
model: User
});
29
© Tieto Corporation
Internal
Views
• Views present an idea of organizing your Document
Object Model (DOM) interface into logical blocks, and
represent the model and collection data in them.
30
© Tieto Corporation
Internal
Views
var usersView = Backbone.View.extend({
template: _.template( usersTemplate ),
events: {
'dblclick label': 'edit'
},
render: function() {
this.$el.html( this.template( this.model.attributes ) );
return this;
},
edit: function(e) {
console.log(e.target + ' was double clicked.');
}
});
31
© Tieto Corporation
Internal
Events
• Events are a basic inversion of control. Instead of having
one function call another by name, the second function is
registered as a handler to be called when a specific event
occurs.
32
© Tieto Corporation
Internal
Events
Backbone.on('event', function() {
console.log('Handled Backbone event');
});
Backbone.trigger('event');
// logs: Handled Backbone event
33
© Tieto Corporation
Internal
Routers
• In Backbone, routers provide a way for you to connect
URLs (either hash fragments, or real) to parts of your
application. Any piece of your application that you want to
be bookmarkable, shareable, and back-button-able,
needs a URL.
34
© Tieto Corporation
Internal
Routers
var AppRouter = Backbone.Router.extend({
routes: {
"*actions": "getHome",
"users": "getUsers",
},
getHome: function() {
console.log("You are in the homepage.");
},
getUsers: function() {
var users = new usersView();
users.render();
}
});
35
© Tieto Corporation
Internal
Templates
• Templates are used to create the visual elements of your
interface using HTML markup. They should not include
the logic of your application.
36
© Tieto Corporation
Internal
Templates
<ul>
<li>{{firstname}}</li>
<li>{{lastname}}</li>
<li>{{address}}</li>
<li>{{city}}</li>
<li>{{phone}}</li>
</ul>
37
© Tieto Corporation
Internal
Organizing your code
38
© Tieto Corporation
Internal
Organizing your code
• Separate every component in different files (models,
collections, views and routers).
• Define an entry point of the application.
• Use namespaces.
39
© Tieto Corporation
Internal
Application Directory Structure
40
.
|-- assets
| |-- css
| |-- fonts
| `-- img
|-- src
| |-- models
| |-- views
| | |-- users
| | |-- products
| | `-- customers
| `-- collections
`-- templates
© Tieto Corporation
Internal
Modular Directory Structure
41
.
|-- app
| |-- modules
| | |-- user
| | | |-- models
| | | |-- views
| | | |-- collections
| | `-- customer
| | | |-- ...
| |-- utils
| `-- auth
.
Internal
Module Bundlers
© Tieto Corporation
Internal
Module Bundlers
• Webpack: https://webpack.github.io
• Browserify: http://browserify.org
43
© Tieto Corporation
Internal
Browserify
44
© Tieto Corporation
Internal
Webpack
45
© Tieto Corporation
Internal
Webpack
46
Internal
Frontend Tools
© Tieto Corporation
Internal
Package Managers
48
© Tieto Corporation
Internal
Package Managers
• npm: https://www.npmjs.com
• Bower: http://bower.io
49
© Tieto Corporation
Internal
Task Runners
50
© Tieto Corporation
Internal
Task Runners
• Grunt: http://gruntjs.com
• Gulp: http://gulpjs.com
51
© Tieto Corporation
Internal
CSS Preprocessors
52
© Tieto Corporation
Internal
CSS Preprocessors
• SASS: http://sass-lang.com
• LESS: http://lesscss.org
• Compass: http://compass-style.org
53
© Tieto Corporation
Internal
Template Systems
54
© Tieto Corporation
Internal
Template Systems
• Handlebars: http://handlebarsjs.com
• Mustache: https://mustache.github.io
• Underscore: http://underscorejs.org
55
© Tieto Corporation
Internal
Linting
56
© Tieto Corporation
Internal
Linting Tools
• CSSLint: http://csslint.net
• ESLint: http://eslint.org
57
© Tieto Corporation
Internal
Testing
58
© Tieto Corporation
Internal
Testing
• QUnit: https://qunitjs.com
• CasperJS: http://casperjs.org
• Jasmine: http://jasmine.github.io
• PhantomJS: http://phantomjs.org
59
© Tieto Corporation
Internal
Visual Regression
60
© Tieto Corporation
Internal
http://shoov.io
61
Internal
WebServices
A practical case with Drupal
Internal
Questions
Internal
Ruben Teijeiro
@rteijeiro
Senior Software Architect
Tieto, CEM
ruben.teijeiro@tieto.com

Más contenido relacionado

La actualidad más candente

Nuxeo & React Native
Nuxeo & React Native Nuxeo & React Native
Nuxeo & React Native Nuxeo
 
One year solving infrastructure management with FusionDirectory and OpenLDAP,...
One year solving infrastructure management with FusionDirectory and OpenLDAP,...One year solving infrastructure management with FusionDirectory and OpenLDAP,...
One year solving infrastructure management with FusionDirectory and OpenLDAP,...OW2
 
jhipster-geekle-gbloch
jhipster-geekle-gblochjhipster-geekle-gbloch
jhipster-geekle-gblochGaëtan Bloch
 
The potential in Drupal 8.x and how to realize it
The potential in Drupal 8.x and how to realize itThe potential in Drupal 8.x and how to realize it
The potential in Drupal 8.x and how to realize itAngela Byron
 
AUFaculty: A Case Study for Responsive GWT Application Development
AUFaculty: A Case Study for Responsive GWT Application DevelopmentAUFaculty: A Case Study for Responsive GWT Application Development
AUFaculty: A Case Study for Responsive GWT Application DevelopmentOrçun Dayıbaş
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkMediacurrent
 
How is Drupal Ensuring the Web Accessibility Standards?
How is Drupal Ensuring the Web Accessibility Standards?How is Drupal Ensuring the Web Accessibility Standards?
How is Drupal Ensuring the Web Accessibility Standards?OpenSense Labs
 
What to Expect in Drupal 8
What to Expect in Drupal 8What to Expect in Drupal 8
What to Expect in Drupal 8Mediacurrent
 
[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di più[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di piùDrupalDay
 
What in store in drupal 8
What in store in drupal 8 What in store in drupal 8
What in store in drupal 8 Shyamala Rajaram
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 

La actualidad más candente (11)

Nuxeo & React Native
Nuxeo & React Native Nuxeo & React Native
Nuxeo & React Native
 
One year solving infrastructure management with FusionDirectory and OpenLDAP,...
One year solving infrastructure management with FusionDirectory and OpenLDAP,...One year solving infrastructure management with FusionDirectory and OpenLDAP,...
One year solving infrastructure management with FusionDirectory and OpenLDAP,...
 
jhipster-geekle-gbloch
jhipster-geekle-gblochjhipster-geekle-gbloch
jhipster-geekle-gbloch
 
The potential in Drupal 8.x and how to realize it
The potential in Drupal 8.x and how to realize itThe potential in Drupal 8.x and how to realize it
The potential in Drupal 8.x and how to realize it
 
AUFaculty: A Case Study for Responsive GWT Application Development
AUFaculty: A Case Study for Responsive GWT Application DevelopmentAUFaculty: A Case Study for Responsive GWT Application Development
AUFaculty: A Case Study for Responsive GWT Application Development
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management Framework
 
How is Drupal Ensuring the Web Accessibility Standards?
How is Drupal Ensuring the Web Accessibility Standards?How is Drupal Ensuring the Web Accessibility Standards?
How is Drupal Ensuring the Web Accessibility Standards?
 
What to Expect in Drupal 8
What to Expect in Drupal 8What to Expect in Drupal 8
What to Expect in Drupal 8
 
[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di più[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di più
 
What in store in drupal 8
What in store in drupal 8 What in store in drupal 8
What in store in drupal 8
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 

Destacado

Sinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo MalangSinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo MalangMoch. Zamroni
 
User eXperience & Front End Development
User eXperience & Front End DevelopmentUser eXperience & Front End Development
User eXperience & Front End Developmentandreafallaswork
 
Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015Holger Bartel
 
Front end Tips Tricks & Tools
Front end Tips Tricks & ToolsFront end Tips Tricks & Tools
Front end Tips Tricks & ToolsSandeep Ramgolam
 
Frontend automation and stability
Frontend automation and stabilityFrontend automation and stability
Frontend automation and stabilityMáté Nádasdi
 
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Edureka!
 
建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)Joseph Chiang
 
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with PhantomasGrunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with PhantomasDavid Amend
 
Wrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web ApplicationsWrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web ApplicationsRyan Roemer
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianMagnolia
 
How to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSHow to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSPhil Leggetter
 
W3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesW3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesBrad Hill
 
Modern Frontend Technology
Modern Frontend TechnologyModern Frontend Technology
Modern Frontend TechnologyShip Hsu
 
Frontend at Scale - The Tumblr Story
Frontend at Scale - The Tumblr StoryFrontend at Scale - The Tumblr Story
Frontend at Scale - The Tumblr StoryChris Miller
 
TechTalk #85 : Latest Frontend Technologies
TechTalk #85 : Latest Frontend TechnologiesTechTalk #85 : Latest Frontend Technologies
TechTalk #85 : Latest Frontend Technologiesbincangteknologi
 
Front End Development Workflow Tools
Front End Development Workflow ToolsFront End Development Workflow Tools
Front End Development Workflow ToolsAhmed Elmehri
 
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...Prasid Pathak
 

Destacado (20)

Headless Drupal 8
Headless Drupal 8Headless Drupal 8
Headless Drupal 8
 
Frontend SPOF
Frontend SPOFFrontend SPOF
Frontend SPOF
 
Sinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo MalangSinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo Malang
 
User eXperience & Front End Development
User eXperience & Front End DevelopmentUser eXperience & Front End Development
User eXperience & Front End Development
 
Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015
 
Front end Tips Tricks & Tools
Front end Tips Tricks & ToolsFront end Tips Tricks & Tools
Front end Tips Tricks & Tools
 
Frontend automation and stability
Frontend automation and stabilityFrontend automation and stability
Frontend automation and stability
 
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
 
建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)
 
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with PhantomasGrunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
 
Wrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web ApplicationsWrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web Applications
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian
 
Frontend technologies
Frontend technologiesFrontend technologies
Frontend technologies
 
How to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSHow to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJS
 
W3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesW3 conf hill-html5-security-realities
W3 conf hill-html5-security-realities
 
Modern Frontend Technology
Modern Frontend TechnologyModern Frontend Technology
Modern Frontend Technology
 
Frontend at Scale - The Tumblr Story
Frontend at Scale - The Tumblr StoryFrontend at Scale - The Tumblr Story
Frontend at Scale - The Tumblr Story
 
TechTalk #85 : Latest Frontend Technologies
TechTalk #85 : Latest Frontend TechnologiesTechTalk #85 : Latest Frontend Technologies
TechTalk #85 : Latest Frontend Technologies
 
Front End Development Workflow Tools
Front End Development Workflow ToolsFront End Development Workflow Tools
Front End Development Workflow Tools
 
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
 

Similar a Architecting your Frontend

System analysis and design
System analysis and designSystem analysis and design
System analysis and designRobinsonObura
 
Vocational training on catia software
Vocational training on catia softwareVocational training on catia software
Vocational training on catia softwarePiyush Verma
 
Accel_Series_2022Spring_En.pptx
Accel_Series_2022Spring_En.pptxAccel_Series_2022Spring_En.pptx
Accel_Series_2022Spring_En.pptxNTTDATA INTRAMART
 
all-ibm-cloud-architecture-icons-October2019.pptx
all-ibm-cloud-architecture-icons-October2019.pptxall-ibm-cloud-architecture-icons-October2019.pptx
all-ibm-cloud-architecture-icons-October2019.pptxMarwan Semsom
 
Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsGem WeBlog
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part iBisrat Girma
 
Intra mart accel platform 2022spring-en
Intra mart accel platform 2022spring-enIntra mart accel platform 2022spring-en
Intra mart accel platform 2022spring-enNTTDATA INTRAMART
 
IBM SmartCloud Orchestration
IBM SmartCloud OrchestrationIBM SmartCloud Orchestration
IBM SmartCloud OrchestrationIBM Danmark
 
Active directory introduction
Active directory introductionActive directory introduction
Active directory introductionTimothy Moffatt
 
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET Journal
 
IRJET- Training and Placement Database Management System
IRJET- Training and Placement Database Management SystemIRJET- Training and Placement Database Management System
IRJET- Training and Placement Database Management SystemIRJET Journal
 
Introduction to Active Directory
Introduction to Active DirectoryIntroduction to Active Directory
Introduction to Active Directorythoms1i
 
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Haytham Ghandour
 
Learn about Tibco Designer
Learn about Tibco Designer Learn about Tibco Designer
Learn about Tibco Designer Cblsolutions.com
 
Automated generation of DRM instances from models
Automated generation of DRM instances from modelsAutomated generation of DRM instances from models
Automated generation of DRM instances from modelssaman zaker
 

Similar a Architecting your Frontend (20)

System analysis and design
System analysis and designSystem analysis and design
System analysis and design
 
Vocational training on catia software
Vocational training on catia softwareVocational training on catia software
Vocational training on catia software
 
D033017020
D033017020D033017020
D033017020
 
Accel_Series_2022Spring_En.pptx
Accel_Series_2022Spring_En.pptxAccel_Series_2022Spring_En.pptx
Accel_Series_2022Spring_En.pptx
 
all-ibm-cloud-architecture-icons-October2019.pptx
all-ibm-cloud-architecture-icons-October2019.pptxall-ibm-cloud-architecture-icons-October2019.pptx
all-ibm-cloud-architecture-icons-October2019.pptx
 
Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise Applications
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 
Intra mart accel platform 2022spring-en
Intra mart accel platform 2022spring-enIntra mart accel platform 2022spring-en
Intra mart accel platform 2022spring-en
 
Learning%20%20 port
Learning%20%20 portLearning%20%20 port
Learning%20%20 port
 
Prashant Patel
Prashant PatelPrashant Patel
Prashant Patel
 
branch_architecture
branch_architecturebranch_architecture
branch_architecture
 
IBM SmartCloud Orchestration
IBM SmartCloud OrchestrationIBM SmartCloud Orchestration
IBM SmartCloud Orchestration
 
Active directory introduction
Active directory introductionActive directory introduction
Active directory introduction
 
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
 
IRJET- Training and Placement Database Management System
IRJET- Training and Placement Database Management SystemIRJET- Training and Placement Database Management System
IRJET- Training and Placement Database Management System
 
Introduction to Active Directory
Introduction to Active DirectoryIntroduction to Active Directory
Introduction to Active Directory
 
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
Learn about Tibco Designer
Learn about Tibco Designer Learn about Tibco Designer
Learn about Tibco Designer
 
Automated generation of DRM instances from models
Automated generation of DRM instances from modelsAutomated generation of DRM instances from models
Automated generation of DRM instances from models
 

Más de Ruben Teijeiro

Contributing to Drupal 8
Contributing to Drupal 8Contributing to Drupal 8
Contributing to Drupal 8Ruben Teijeiro
 
Drupal8 Front-end Automated Testing
Drupal8 Front-end Automated TestingDrupal8 Front-end Automated Testing
Drupal8 Front-end Automated TestingRuben Teijeiro
 
Front-end Automated Testing
Front-end Automated TestingFront-end Automated Testing
Front-end Automated TestingRuben Teijeiro
 
Twittalicious - Organiza tus Redes Sociales
Twittalicious - Organiza tus Redes SocialesTwittalicious - Organiza tus Redes Sociales
Twittalicious - Organiza tus Redes SocialesRuben Teijeiro
 
Twittalicious - Desarrollo de un Producto con Drupal
Twittalicious - Desarrollo de un Producto con DrupalTwittalicious - Desarrollo de un Producto con Drupal
Twittalicious - Desarrollo de un Producto con DrupalRuben Teijeiro
 
Metodologia de Trabajo en Proyectos con Drupal
Metodologia de Trabajo en Proyectos con DrupalMetodologia de Trabajo en Proyectos con Drupal
Metodologia de Trabajo en Proyectos con DrupalRuben Teijeiro
 
Drush - More Beer, Less Effort
Drush - More Beer, Less EffortDrush - More Beer, Less Effort
Drush - More Beer, Less EffortRuben Teijeiro
 

Más de Ruben Teijeiro (10)

Startup Wars
Startup WarsStartup Wars
Startup Wars
 
Contributing to Drupal 8
Contributing to Drupal 8Contributing to Drupal 8
Contributing to Drupal 8
 
Drupal Heroes
Drupal HeroesDrupal Heroes
Drupal Heroes
 
Drupal8 Front-end Automated Testing
Drupal8 Front-end Automated TestingDrupal8 Front-end Automated Testing
Drupal8 Front-end Automated Testing
 
Front-end Automated Testing
Front-end Automated TestingFront-end Automated Testing
Front-end Automated Testing
 
Drupal Mobile
Drupal MobileDrupal Mobile
Drupal Mobile
 
Twittalicious - Organiza tus Redes Sociales
Twittalicious - Organiza tus Redes SocialesTwittalicious - Organiza tus Redes Sociales
Twittalicious - Organiza tus Redes Sociales
 
Twittalicious - Desarrollo de un Producto con Drupal
Twittalicious - Desarrollo de un Producto con DrupalTwittalicious - Desarrollo de un Producto con Drupal
Twittalicious - Desarrollo de un Producto con Drupal
 
Metodologia de Trabajo en Proyectos con Drupal
Metodologia de Trabajo en Proyectos con DrupalMetodologia de Trabajo en Proyectos con Drupal
Metodologia de Trabajo en Proyectos con Drupal
 
Drush - More Beer, Less Effort
Drush - More Beer, Less EffortDrush - More Beer, Less Effort
Drush - More Beer, Less Effort
 

Último

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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
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
 

Último (20)

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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
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
 
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
 

Architecting your Frontend