SlideShare a Scribd company logo
1 of 122
Download to read offline
Saturday, June 22, 13
Sidney Maestre
Platform Evangelist
@SidneyAllen
GitHub | Twitter
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
WHAT
Saturday, June 22, 13
WHY
Saturday, June 22, 13
WHY
Saturday, June 22, 13
Controller
Model View
Saturday, June 22, 13
Controller
Model View
Saturday, June 22, 13
Controller
Model View
Saturday, June 22, 13
Controller
Model View
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
MODEL
Saturday, June 22, 13
MODEL
Saturday, June 22, 13
HANDS ON
01-model
Saturday, June 22, 13
MODEL
Wine = Backbone.Model.extend();
Saturday, June 22, 13
MODEL
Wine = Backbone.Model.extend();
Saturday, June 22, 13
MODEL
Wine = Backbone.Model.extend();
firstWine = new Wine({
winery : 'Clos Pegase',
year : '2008',
type : 'Chardonnay',
size : '750ml',
});
Saturday, June 22, 13
COLLECTION
Saturday, June 22, 13
HANDS ON
02-collection
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
model: Wine,
url: "#"
});
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
model: Wine,
url: "#"
});
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
model: Wine,
url: "#"
});
wines = new Wines([
{winery : "Robert Mondovi"},
{winery : "CakeBread"}
]);
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
model: Wine,
url: "#"
});
wines = new Wines([
{winery : "Robert Mondovi"},
{winery : "CakeBread"}
]);
wines.each( function(model) {
console.log(model.get('winery'));
});
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
model: Wine,
url: "#"
});
wines = new Wines([
{winery : "Robert Mondovi"},
{winery : "CakeBread"}
]);
wines.each( function(model) {
console.log(model.toJSON());
});
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
Datastore
Geo Queries
Facebook
Analytics
Load Balancing
Versioning
Push
Notifications
Collaboration
Access
Controls
Twitter
Amazon S3
User
Authentication
Saturday, June 22, 13
Saturday, June 22, 13
Custom Code
Saturday, June 22, 13
and talk to any API
Saturday, June 22, 13
and talk to any API
Saturday, June 22, 13
Easy to use SDKs
Saturday, June 22, 13
Easy to use SDKs
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
HANDS ON
www.stackmob.com
Saturday, June 22, 13
DASHBOARD
Saturday, June 22, 13
CREATE APP
1
2
3
Saturday, June 22, 13
COPY
Saturday, June 22, 13
HANDS ON
03-stackmob-model
Saturday, June 22, 13
STACKMOB SDK
http://static.stackmob.com/js/stackmob-js-0.9.1-min.js"
Saturday, June 22, 13
INIT
StackMob.init({
    publicKey: "814004dd-a72a-4425-9d2e-63d21d76588e",
    apiVersion: 0
});
Saturday, June 22, 13
MODEL
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
Saturday, June 22, 13
MODEL
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var wine = new Wine({name:‘Robert Mondavi});
wine.create({
success: function(model){
}
});
Saturday, June 22, 13
MODEL
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var wine = new Wine({name:‘Robert Mondavi});
wine.create({
success: function(model){
}
});
Saturday, June 22, 13
HANDS ON
04-stackmob-collection
Saturday, June 22, 13
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var Wines = StackMob.Collection.extend({
model: Wine
});
COLLECTION
Saturday, June 22, 13
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var Wines = StackMob.Collection.extend({
model: Wine
});
var wines = new Wines();
wines.fetch({async: true});
COLLECTION
Saturday, June 22, 13
COLLECTION
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var Wines = StackMob.Collection.extend({
model: Wine
});
var wines = new Wines();
wines.fetch({async: true});
console.log(wines.toJSON());
Saturday, June 22, 13
COLLECTION
var Wine = StackMob.Model.extend({
schemaName: "wine"
});
var Wines = StackMob.Collection.extend({
model: Wine
});
var wines = new Wines();
wines.fetch({async: true});
var wine = new Wine({name:‘Robert Mondavi});
wine.create({
success: function(model){
wines.add(model);
}
});
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
VIEW
Saturday, June 22, 13
HANDS ON
05-home-view
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({});
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({
render: function() {
this.$el.append("<h1>Wine Cellar</h1>");
return this;
}
});
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({
initialize: function() {
this.render();
},
render: function() {
this.$el.append("<h1>Wine Cellar</h1>");
return this;
}
});
Wine Cellar
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({
el: 'body',
initialize: function() {
this.render();
},
render: function() {
this.$el.append("<h1>Wine Cellar</h1>");
return this;
}
});
Wine Cellar
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({
el: 'body',
initialize: function() {
this.render();
},
render: function() {
this.$el.append("<h1>Wine Cellar</h1>");
return this;
}
});
Wine Cellar
Wine Cellar
Wine Cellar
Wine Cellar
Wine Cellar
Saturday, June 22, 13
VIEW
HomeView = Backbone.View.extend({
el: 'body',
initialize: function() {
this.render();
},
render: function() {
this.$el.empty();
this.$el.append("<h1>Wine Cellar</h1>");
return this;
}
});
Wine Cellar
Saturday, June 22, 13
HANDS ON
06-list-view
Saturday, June 22, 13
VIEW
ListView = Backbone.View.extend({
tagName: 'ul',
render: function() {
this.$el.empty();
this.$el.append("<li>Wine 1</li>");
this.$el.append("<li>Wine 2</li>");
return this;
}
});
Saturday, June 22, 13
Wine Cellar
VIEW
HomeView = Backbone.View.extend({
el: 'body',
initialize: function() {
this.render();
},
render: function() {
this.empty();
this.$el.append("<h1>Wine Cellar</h1>");
this.listView = new ListView();
this.$el.append(this.listView.render().el);
return this;
}
});
Saturday, June 22, 13
HANDS ON
07-basic-template
Saturday, June 22, 13
TEMPLATE
<script type="text/template" id="listTemplate">
<li><%= winery %></li>
</script>
Saturday, June 22, 13
TEMPLATE
<script type="text/template" id="listTemplate">
<li><%= winery %></li>
</script>
ListView = Backbone.View.extend({
tagName: 'ul',
initialize: function() {
this.template = _.template($('#listTemplate').html());
},
...
});
Saturday, June 22, 13
TEMPLATE
<script type="text/template" id="listTemplate">
<li><%= value %></li>
</script>
ListView = Backbone.View.extend({
tagName: 'ul',
initialize: function() {
this.template = _.template($('#listTemplate').html());
wines.bind('all', this.render,this);
this.render();
},
render: function() {
...
this.$el.append(this.template({value : "Cakebread"}));
return this;
}
});
Saturday, June 22, 13
HANDS ON
08-collection-template
Saturday, June 22, 13
TEMPLATE
<script type="text/template" id="listTemplate">
<li><%= value %></li>
</script>
ListView = Backbone.View.extend({
...
render: function() {
var el = this.$el,
template = this.template;
el.empty();
wines.each(function(wine){
el.append(template( wine.toJSON() ));
});
return this;
}
});
Saturday, June 22, 13
ROUTER
Saturday, June 22, 13
ROUTER
Saturday, June 22, 13
HANDS ON
09-basic-router
Saturday, June 22, 13
ROUTER
AppRouter = Backbone.Router.extend({
routes:{
"":"home",
"add":"add"
},
home:function () {
new HomeView();
},
add:function () {
new AddView();
}
});
Saturday, June 22, 13
ROUTER
var app = (function($){
...
var initialize = function() {
wineApp = new AppRouter();
Backbone.history.start();
}
return { initialize : initialize }
}(jQuery));
$(document).ready(function () {
app.initialize();
});
Saturday, June 22, 13
HANDS ON
10-adv-router
Saturday, June 22, 13
ROUTER
AppRouter = Backbone.Router.extend({
routes:{
"":"home",
"add":"add"
},
initialize:function(options) {
this.collection = options.collection;
},
home:function () {
new HomeView({collection:this.collection});
},
add:function () {
new AddView({collection:this.collection});
}
});
Saturday, June 22, 13
ROUTER
var initialize = function() {
var wines = new Wines();
wines.fetch({async:true});
wineApp = new AppRouter({collection : wines});
Backbone.history.start();
}
Saturday, June 22, 13
HANDS ON
11-events
Saturday, June 22, 13
EVENTS
AddView = Backbone.View.extend({
events: {
"click #addBtn": "add",
...
},
...
add: function(e) {
// do something...
return this;
}
});
Saturday, June 22, 13
ADD
add: function(e) {
var collection = this.collection;
var wine = new Wine({winery:$('#winery').val() });
wine.create({
success: function(model){
}
});
return this;
}
Saturday, June 22, 13
ADD
add: function(e) {
var collection = this.collection;
var wine = new Wine({winery:$('#winery').val() });
wine.create({
success: function(model){
}
});
return this;
}
Saturday, June 22, 13
ADD
add: function(e) {
var collection = this.collection;
var wine = new Wine({winery:$('#winery').val() });
wine.create({
success: function(model){
collection.add(model);
}
});
return this;
}
Saturday, June 22, 13
ADD
add: function(e) {
var collection = this.collection;
var wine = new Wine({winery:$('#winery').val() });
wine.create({
success: function(model){
collection.add(model);
}
});
return this;
}
Saturday, June 22, 13
HANDS ON
12-update
Saturday, June 22, 13
TEMPLATE
<script type="text/template" id="listTemplate">
<li><a href="#update/<%= wine_id %>"><%= winery %></a></li>
</script>
Saturday, June 22, 13
ROUTER
AppRouter = Backbone.Router.extend({
routes:{
"":"home",
"add":"add",
"update/:id":"update"
},
...
update:function(e) {
model = this.collection.get(e);
new UpdateView({model: model});
}
});
Saturday, June 22, 13
VIEW
var UpdateView = Backbone.View.extend({
...
initialize: function() {
this.model = this.options.model;
},
save: function(e) {
this.model.save({winery:$('#winery').val()}, {
success: function(model) {
}
});
return this;
}
});
Saturday, June 22, 13
VIEW
var UpdateView = Backbone.View.extend({
...
initialize: function() {
this.model = this.options.model;
},
save: function(e) {
this.model.save({winery:$('#winery').val()}, {
success: function(model) {
}
});
return this;
}
});
Saturday, June 22, 13
Saturday, June 22, 13
Saturday, June 22, 13
STRUCTURE
Saturday, June 22, 13
MODEL
Wine = Backbone.Model.extend();
Saturday, June 22, 13
MODEL
define([
'backbone'
], function(Backbone) {
var WineModel = Backbone.Model.extend();
return WineModel;
});
Saturday, June 22, 13
COLLECTION
Wine = Backbone.Model.extend();
Wines = Backbone.Collection.extend({
Model: Wine,
url: "#"
});
Saturday, June 22, 13
COLLECTION
define([
'backbone',
'models/wine/Model'
], function(Backbone,Model){
var WineCollection = Backbone.Collection.extend({
Model: Model,
url: '#'
});
return WineCollection;
});
Saturday, June 22, 13
VIEW
ListView = Backbone.View.extend({
...
render: function() {
var el = this.$el,
template = this.template;
el.empty();
wines.each(function(wine){
el.append(template( wine.toJSON() ));
});
return this;
}
});
Saturday, June 22, 13
VIEW
define([
'jquery',
'underscore',
'backbone',
'text!templates/wine/WineListTemplate.html'
], function($, _, Backbone,WineListTemplate){
var WineListView = Backbone.View.extend({
...
});
return WineListView;
});
Saturday, June 22, 13
HANDS ON
require
Saturday, June 22, 13
BOOTSTRAP
<script data-main="js/main" src="js/libs/require/require.js"></script>
Saturday, June 22, 13
MAIN.JS
require.config({
baseUrl: "/js/",
paths: {
jquery: 'libs/jquery/jquery-1.8.2',
underscore: 'libs/underscore/underscore-1.4.4',
backbone: 'libs/backbone/backbone-1.0.0',
templates: '../templates',
app: 'app'
},
shim: {
underscore: {
exports: '_'
},
backbone: {
deps: ["underscore", "jquery"],
exports: "Backbone"
}
}
});
Saturday, June 22, 13
MAIN.JS
require(['jquery','app'], function( $, App ){
$(function(){
App.initialize();
});
});
Saturday, June 22, 13
APP.JS
define([
'jquery',
'underscore',
'backbone',
'router' // Request router.js
], function($, _, Backbone, Router){
var initialize = function() {
Router.initialize();
};
return {
initialize: initialize
};
});
Saturday, June 22, 13
ROUTER
define([
'jquery',
'underscore',
'backbone',
'views/home/HomeView',
'views/wine/AddView',
'collections/wine/WineCollection'
], function($, _,Backbone, HomeView, AddView, UpdateView, Wines) {
...
var initialize = function(){
var wines = new Wines();
var app_router = new AppRouter({collection: wines});
Backbone.history.start();
};
return {
initialize: initialize
};
});
Saturday, June 22, 13
ROUTER
AppRouter = Backbone.Router.extend({
initialize: function(options) {
this.collection = options.collection;
},
routes:{
"":"home",
"add":"add"
},
home:function () {
this.changePage( new HomeView({collection : this.collection}) );
},
add:function () {
this.changePage( new AddView({collection : this.collection, router : this})
},
});
Saturday, June 22, 13
R.JS
Saturday, June 22, 13
BUILD.JS
({
appDir: "../",
baseUrl: "js",
dir: "../../appdirectory-build",
paths: {
...
},
shim: {
...
},
modules: [
{
name: "main"
}
]
})
Saturday, June 22, 13
BUILD
node r.js -o build.js optimize=none
347k
Saturday, June 22, 13
OPTIMIZE
node r.js -o build.js
134k
Saturday, June 22, 13
Saturday, June 22, 13
HANDS ON
jqm
Saturday, June 22, 13
HANDS ON
jqm-template
Saturday, June 22, 13
HANDS ON
development
Saturday, June 22, 13
HANDS ON
mywine
Saturday, June 22, 13
Saturday, June 22, 13
Resources
bit.ly/freebackbonejs
github.com/SidneyAllen
developer.stackmob.com
Saturday, June 22, 13
Q&A
Saturday, June 22, 13

More Related Content

Similar to Sid Maestre: Building APPS with BACKBONE.JS & REQUIRE.JS

Dependency management & Package management in JavaScript
Dependency management & Package management in JavaScriptDependency management & Package management in JavaScript
Dependency management & Package management in JavaScriptSebastiano Armeli
 
SfCon: Test Driven Development
SfCon: Test Driven DevelopmentSfCon: Test Driven Development
SfCon: Test Driven DevelopmentAugusto Pascutti
 
Webapplikationen mit Backbone.js
Webapplikationen mit Backbone.jsWebapplikationen mit Backbone.js
Webapplikationen mit Backbone.jsSebastian Springer
 
Backbone intro
Backbone introBackbone intro
Backbone introIan Yang
 
What is this DI and AOP stuff anyway...
What is this DI and AOP stuff anyway...What is this DI and AOP stuff anyway...
What is this DI and AOP stuff anyway...Richard McIntyre
 
Drools 6.0 (CamelOne 2013)
Drools 6.0 (CamelOne 2013)Drools 6.0 (CamelOne 2013)
Drools 6.0 (CamelOne 2013)Mark Proctor
 
Ten Groovy Little JavaScript Tips
Ten Groovy Little JavaScript TipsTen Groovy Little JavaScript Tips
Ten Groovy Little JavaScript TipsTroy Miles
 
Knockout.js presentation
Knockout.js presentationKnockout.js presentation
Knockout.js presentationScott Messinger
 
Intro to Ember.js
Intro to Ember.jsIntro to Ember.js
Intro to Ember.jsJay Phelps
 
Complex Architectures in Ember
Complex Architectures in EmberComplex Architectures in Ember
Complex Architectures in EmberMatthew Beale
 
¿Cómo de sexy puede hacer Backbone mi código?
¿Cómo de sexy puede hacer Backbone mi código?¿Cómo de sexy puede hacer Backbone mi código?
¿Cómo de sexy puede hacer Backbone mi código?jaespinmora
 
Why (I think) CoffeeScript Is Awesome
Why (I think) CoffeeScript Is AwesomeWhy (I think) CoffeeScript Is Awesome
Why (I think) CoffeeScript Is AwesomeJo Cranford
 
Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017Matt Raible
 
AngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsAngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsMark
 

Similar to Sid Maestre: Building APPS with BACKBONE.JS & REQUIRE.JS (17)

Dependency management & Package management in JavaScript
Dependency management & Package management in JavaScriptDependency management & Package management in JavaScript
Dependency management & Package management in JavaScript
 
Einführung in AngularJS
Einführung in AngularJSEinführung in AngularJS
Einführung in AngularJS
 
SfCon: Test Driven Development
SfCon: Test Driven DevelopmentSfCon: Test Driven Development
SfCon: Test Driven Development
 
Webapplikationen mit Backbone.js
Webapplikationen mit Backbone.jsWebapplikationen mit Backbone.js
Webapplikationen mit Backbone.js
 
Backbone intro
Backbone introBackbone intro
Backbone intro
 
What is this DI and AOP stuff anyway...
What is this DI and AOP stuff anyway...What is this DI and AOP stuff anyway...
What is this DI and AOP stuff anyway...
 
Drools 6.0 (CamelOne 2013)
Drools 6.0 (CamelOne 2013)Drools 6.0 (CamelOne 2013)
Drools 6.0 (CamelOne 2013)
 
Ten Groovy Little JavaScript Tips
Ten Groovy Little JavaScript TipsTen Groovy Little JavaScript Tips
Ten Groovy Little JavaScript Tips
 
Knockout.js presentation
Knockout.js presentationKnockout.js presentation
Knockout.js presentation
 
Intro to Ember.js
Intro to Ember.jsIntro to Ember.js
Intro to Ember.js
 
Complex Architectures in Ember
Complex Architectures in EmberComplex Architectures in Ember
Complex Architectures in Ember
 
¿Cómo de sexy puede hacer Backbone mi código?
¿Cómo de sexy puede hacer Backbone mi código?¿Cómo de sexy puede hacer Backbone mi código?
¿Cómo de sexy puede hacer Backbone mi código?
 
Why (I think) CoffeeScript Is Awesome
Why (I think) CoffeeScript Is AwesomeWhy (I think) CoffeeScript Is Awesome
Why (I think) CoffeeScript Is Awesome
 
Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017
 
JQUERY
JQUERY JQUERY
JQUERY
 
AngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsAngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.js
 
Get AngularJS Started!
Get AngularJS Started!Get AngularJS Started!
Get AngularJS Started!
 

More from urbantech

"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching"
"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching" "Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching"
"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching" urbantech
 
Startup camp sponsorship Kit 2012
Startup camp sponsorship Kit 2012Startup camp sponsorship Kit 2012
Startup camp sponsorship Kit 2012urbantech
 
Youth start up_camp_sponsorship_kit_2011
Youth start up_camp_sponsorship_kit_2011Youth start up_camp_sponsorship_kit_2011
Youth start up_camp_sponsorship_kit_2011urbantech
 
Start up camp_sponsorship_kit_jordan
Start up camp_sponsorship_kit_jordanStart up camp_sponsorship_kit_jordan
Start up camp_sponsorship_kit_jordanurbantech
 
Semantic Seed Program Overview
Semantic Seed Program OverviewSemantic Seed Program Overview
Semantic Seed Program Overviewurbantech
 
Start up camp_sponsorship_kit_2011
Start up camp_sponsorship_kit_2011Start up camp_sponsorship_kit_2011
Start up camp_sponsorship_kit_2011urbantech
 
Blue Monitor Software Development
Blue Monitor Software DevelopmentBlue Monitor Software Development
Blue Monitor Software Developmenturbantech
 
Managed It Services Us
Managed It Services UsManaged It Services Us
Managed It Services Usurbantech
 

More from urbantech (8)

"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching"
"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching" "Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching"
"Strategies from the UX Trenches: Scenarios, Storyboarding & UI Sketching"
 
Startup camp sponsorship Kit 2012
Startup camp sponsorship Kit 2012Startup camp sponsorship Kit 2012
Startup camp sponsorship Kit 2012
 
Youth start up_camp_sponsorship_kit_2011
Youth start up_camp_sponsorship_kit_2011Youth start up_camp_sponsorship_kit_2011
Youth start up_camp_sponsorship_kit_2011
 
Start up camp_sponsorship_kit_jordan
Start up camp_sponsorship_kit_jordanStart up camp_sponsorship_kit_jordan
Start up camp_sponsorship_kit_jordan
 
Semantic Seed Program Overview
Semantic Seed Program OverviewSemantic Seed Program Overview
Semantic Seed Program Overview
 
Start up camp_sponsorship_kit_2011
Start up camp_sponsorship_kit_2011Start up camp_sponsorship_kit_2011
Start up camp_sponsorship_kit_2011
 
Blue Monitor Software Development
Blue Monitor Software DevelopmentBlue Monitor Software Development
Blue Monitor Software Development
 
Managed It Services Us
Managed It Services UsManaged It Services Us
Managed It Services Us
 

Recently uploaded

Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 

Recently uploaded (20)

Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 

Sid Maestre: Building APPS with BACKBONE.JS & REQUIRE.JS