SlideShare a Scribd company logo
1 of 21
Building M-Learning Applications
With Open Source
●Context
● What is e-learning?
● What is m-learning?
● Why m-learning?
● Technical Terminology
●Application Development
● Native or not?
● Which native platform?
● Overview of frameworks,
● Back-ends
● Toolkits
Context
Jumping Bean Open Source Development 3
What is E-Learning?
● Common understanding - use of the web
technologies to:
– Delivery educational content potentially independent
of face time,
– Enhance material with audio, video,
– Enhanced interaction between students, material
and teachers,
– Assist with course administration & management,
● Tends to be content heavy, sedentary, focused
attention I.e sit at a PC
Jumping Bean Open Source Development 4
What is M-Learning?
● Common understanding - use of mobile
devices to assist with learning & teaching,
● Augments other learning/teaching
approaches such as instructor lead classes,
e-learning,
● Form factor dictates smaller content
chunks, shorter time focused on
device/screen
● Affordances still being established
Jumping Bean Open Source Development 5
Why M-Learning?
● More people have mobile phones than PCs,
● Well know & much talked about high penetration,
● People have their devices with them all the time, low
“boot up time” to access applications,
● Common to have internet access with device
purchased airtime can be used for calls or data, I.e
perceived no “extra” cost,
● Opportunity to make use of unproductive time.
Standing in queues, travelling to work
Jumping Bean Open Source Development 6
Why Open Source for M-Learning?
● Ability to adapt applications/tools to local
context - not only content i.e creative
commons
● Leverage existing work,
● Quality code - secure,
● No dependencies,
● Open source development is itself a
learning methodology
continued
Jumping Bean Open Source Development 7
Terminology
● Mobile Platform – operating system, api,
application store I.e Android, iOS, Black
berry
● Software Stack
– SDK (Software Development Kit) – Usually
refers to “native” development from the vendors
of the mobile platform
– Development framework – 3rd party software
framework/stack to support development of
mobile applications
Jumping Bean Open Source Development 8
Application Development
Jumping Bean Open Source Development 9
Considerations for Software Stack
Selection
● Target users device demographics,
● Existing developer skills base,
● Flexibility -
– Rapid pace of change,
– People still experimenting with best practise, finding
out what works,
● Back-end system integration requirements,
● Affordability of devices for students,
● Type of coverage, internet speeds, data costs
Jumping Bean Open Source Development 10
Native or Not?
What is native?
● Native use the sdk for the targeted platform
● Pros
– Native look & feel,
– Perception that native apps are better
● Cons
– Only runs on the target platform,
– Have to rewrite the app to target multiple
platforms
Jumping Bean Open Source Development 11
What is non-native
● Not officially supported technology stack for the
target platform
● Pros
– Target multiple devices with a single code base
– Reuse existing knowledge
● Cons
– Non native look & feel,
– Perception of slowness,
– Feature lag,
– Check for sustainability
Jumping Bean Open Source Development 12
Non Native Frameworks
Jumping Bean Open Source Development 13
Which Platform for Native Development?
Jumping Bean Open Source Development 14
Android Native Platform
● Android is the best choice
– Wide range of devices in terms of features and
prices
– Other platforms are aimed at the top-end of the
market
– Lower barriers to entry
● For IOS you need
– Mac book
– Enrol in iOS developer programme $99/year to be able to
deploy
Jumping Bean Open Source Development 15
Non-Native Frameworks
● Frameworks based on language support”
– HTML5 +CCS3 frameworks
● Large skills base,
– PHP,
– Ruby,
– Python,
– ….
Jumping Bean Open Source Development 16
Open Source Frameworks
Framework Languages
HTML 5, Ruby
HTML5,C++
HTML5
HTML5
HTML5,PHP
Jumping Bean Open Source Development 17
Common Open Source Backends
● Popular open source projects provide
service for mobile integration
– Drupal – services module, provides oAuth,
– Moodle – different initiatives
● Apps,
● Extensions
Jumping Bean Open Source Development 18
Toolkits
● Aris Games – platform for mobile games,
tours and interactive stories (augmented
reality)
● Molly – Mobile portal platform Django and
Python for developing a location-aware
mobile portal with particular emphasis on
Higher Education.
● OMLet – Open mobile learning toolkit
Jumping Bean Open Source Development 19
Toolkits
● ICTWorks - The Mobile Learning Toolkit for
ICT4D Trainers
Jumping Bean Open Source Development 20
Examle of Toolkit Architecture
Jumping Bean Open Source Development 21
The End
E-Learning Africa 2013
Twitter @mxc4
G+ MClarke4@gmail.com
www.JumpingBean.co.za

More Related Content

Viewers also liked

M-Learning for children of 5-12 age groups in rural area of India
M-Learning for children of 5-12 age groups in rural area  of IndiaM-Learning for children of 5-12 age groups in rural area  of India
M-Learning for children of 5-12 age groups in rural area of IndiaEditor IJCATR
 
ANALYSIS OF PRODUCTION PERFORMANCE OF TAMILNADU NEWSPRINT AND PAPERS LTD – C...
ANALYSIS OF PRODUCTION PERFORMANCE OF  TAMILNADU NEWSPRINT AND PAPERS LTD – C...ANALYSIS OF PRODUCTION PERFORMANCE OF  TAMILNADU NEWSPRINT AND PAPERS LTD – C...
ANALYSIS OF PRODUCTION PERFORMANCE OF TAMILNADU NEWSPRINT AND PAPERS LTD – C...Editor IJCATR
 
A Review on Wireless Sensor Network Protocol for Disaster Management
A Review on Wireless Sensor Network Protocol for Disaster ManagementA Review on Wireless Sensor Network Protocol for Disaster Management
A Review on Wireless Sensor Network Protocol for Disaster ManagementEditor IJCATR
 
Consumer acceptance of online banking an extension of the technology accepta...
Consumer acceptance of online banking  an extension of the technology accepta...Consumer acceptance of online banking  an extension of the technology accepta...
Consumer acceptance of online banking an extension of the technology accepta...OUM SAOKOSAL
 
M-Learning - Education for the Ne(x)t Generation?
M-Learning - Education for the Ne(x)t Generation?M-Learning - Education for the Ne(x)t Generation?
M-Learning - Education for the Ne(x)t Generation?Martin Ebner
 
E Learning: Evolution (m-learning)
E Learning: Evolution (m-learning)E Learning: Evolution (m-learning)
E Learning: Evolution (m-learning)Sue Waters
 
Mobile Applications – Market Evaluation and Opportunities
Mobile Applications – Market Evaluation and OpportunitiesMobile Applications – Market Evaluation and Opportunities
Mobile Applications – Market Evaluation and Opportunitiesb-to-v Partners AG
 
M leаrning
M leаrningM leаrning
M leаrningalesoire
 
m-learning across the world
m-learning across the worldm-learning across the world
m-learning across the worldgeoff stead
 
Introduction To M-Learning
Introduction To M-LearningIntroduction To M-Learning
Introduction To M-LearningKaren Brooks
 
Reducing addictive behaviour 2013
Reducing addictive behaviour 2013Reducing addictive behaviour 2013
Reducing addictive behaviour 2013sssfcpsychology
 
Technology Acceptance Model
Technology Acceptance Model Technology Acceptance Model
Technology Acceptance Model Damian T. Gordon
 

Viewers also liked (12)

M-Learning for children of 5-12 age groups in rural area of India
M-Learning for children of 5-12 age groups in rural area  of IndiaM-Learning for children of 5-12 age groups in rural area  of India
M-Learning for children of 5-12 age groups in rural area of India
 
ANALYSIS OF PRODUCTION PERFORMANCE OF TAMILNADU NEWSPRINT AND PAPERS LTD – C...
ANALYSIS OF PRODUCTION PERFORMANCE OF  TAMILNADU NEWSPRINT AND PAPERS LTD – C...ANALYSIS OF PRODUCTION PERFORMANCE OF  TAMILNADU NEWSPRINT AND PAPERS LTD – C...
ANALYSIS OF PRODUCTION PERFORMANCE OF TAMILNADU NEWSPRINT AND PAPERS LTD – C...
 
A Review on Wireless Sensor Network Protocol for Disaster Management
A Review on Wireless Sensor Network Protocol for Disaster ManagementA Review on Wireless Sensor Network Protocol for Disaster Management
A Review on Wireless Sensor Network Protocol for Disaster Management
 
Consumer acceptance of online banking an extension of the technology accepta...
Consumer acceptance of online banking  an extension of the technology accepta...Consumer acceptance of online banking  an extension of the technology accepta...
Consumer acceptance of online banking an extension of the technology accepta...
 
M-Learning - Education for the Ne(x)t Generation?
M-Learning - Education for the Ne(x)t Generation?M-Learning - Education for the Ne(x)t Generation?
M-Learning - Education for the Ne(x)t Generation?
 
E Learning: Evolution (m-learning)
E Learning: Evolution (m-learning)E Learning: Evolution (m-learning)
E Learning: Evolution (m-learning)
 
Mobile Applications – Market Evaluation and Opportunities
Mobile Applications – Market Evaluation and OpportunitiesMobile Applications – Market Evaluation and Opportunities
Mobile Applications – Market Evaluation and Opportunities
 
M leаrning
M leаrningM leаrning
M leаrning
 
m-learning across the world
m-learning across the worldm-learning across the world
m-learning across the world
 
Introduction To M-Learning
Introduction To M-LearningIntroduction To M-Learning
Introduction To M-Learning
 
Reducing addictive behaviour 2013
Reducing addictive behaviour 2013Reducing addictive behaviour 2013
Reducing addictive behaviour 2013
 
Technology Acceptance Model
Technology Acceptance Model Technology Acceptance Model
Technology Acceptance Model
 

Similar to M-Learning application development with open source

Delivering training via phones, i pads and tablets
Delivering training via phones, i pads and tabletsDelivering training via phones, i pads and tablets
Delivering training via phones, i pads and tabletsLeo Gaggl
 
Mobile Application Development and Types(1)
Mobile Application Development and Types(1)Mobile Application Development and Types(1)
Mobile Application Development and Types(1)IsraelSoga
 
Mobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentMobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentTAG_education
 
Designing & delivering e learning in a multi device world
Designing & delivering e learning in a multi device worldDesigning & delivering e learning in a multi device world
Designing & delivering e learning in a multi device worldLeo Gaggl
 
Presentation on Free and Open Source Software - TechEd Talks 2017
Presentation on Free and Open Source Software - TechEd Talks 2017Presentation on Free and Open Source Software - TechEd Talks 2017
Presentation on Free and Open Source Software - TechEd Talks 2017Vidyaratha Kissoon
 
Native vs HTML
Native vs HTMLNative vs HTML
Native vs HTMLludlola
 
Open Source Software For Education (Mel Mc Intyre) Open App
Open Source Software For Education (Mel Mc Intyre) Open AppOpen Source Software For Education (Mel Mc Intyre) Open App
Open Source Software For Education (Mel Mc Intyre) Open AppThe 4C Initiative
 
E learning-for-all-devices
E learning-for-all-devicesE learning-for-all-devices
E learning-for-all-devicesAshish Agrawal
 
Webinar - Getting Started with mLearning
Webinar - Getting Started with mLearningWebinar - Getting Started with mLearning
Webinar - Getting Started with mLearningRaptivity
 
What Mobile Development Approach Makes Sense
What Mobile Development Approach Makes SenseWhat Mobile Development Approach Makes Sense
What Mobile Development Approach Makes SenseDipesh Mukerji
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How Nikhil Agrawal
 
Best Programming Languages to Learn This Year
Best Programming Languages to Learn This YearBest Programming Languages to Learn This Year
Best Programming Languages to Learn This YearEyeglass Repair USA
 
Different programming languages
Different programming languagesDifferent programming languages
Different programming languagesKunal Negi
 
Spoken tutorials libreoffice
Spoken tutorials libreofficeSpoken tutorials libreoffice
Spoken tutorials libreofficeDr Madan Mankotia
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learninggeoff stead
 
Python For All | Software Professionals, QA & DevOps professionals
Python For All | Software Professionals, QA & DevOps professionalsPython For All | Software Professionals, QA & DevOps professionals
Python For All | Software Professionals, QA & DevOps professionalsNilesh Sutar
 
Open Accessibility EverywhereGroundwork, Infrastructure, Standards
Open Accessibility EverywhereGroundwork, Infrastructure, StandardsOpen Accessibility EverywhereGroundwork, Infrastructure, Standards
Open Accessibility EverywhereGroundwork, Infrastructure, StandardsAEGIS-ACCESSIBLE Projects
 

Similar to M-Learning application development with open source (20)

Delivering training via phones, i pads and tablets
Delivering training via phones, i pads and tabletsDelivering training via phones, i pads and tablets
Delivering training via phones, i pads and tablets
 
Mobile Application Development and Types(1)
Mobile Application Development and Types(1)Mobile Application Development and Types(1)
Mobile Application Development and Types(1)
 
Mobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentMobile App vs Mobile Web Development
Mobile App vs Mobile Web Development
 
Designing & delivering e learning in a multi device world
Designing & delivering e learning in a multi device worldDesigning & delivering e learning in a multi device world
Designing & delivering e learning in a multi device world
 
Presentation on Free and Open Source Software - TechEd Talks 2017
Presentation on Free and Open Source Software - TechEd Talks 2017Presentation on Free and Open Source Software - TechEd Talks 2017
Presentation on Free and Open Source Software - TechEd Talks 2017
 
Django Frame Work
Django Frame WorkDjango Frame Work
Django Frame Work
 
Native vs HTML
Native vs HTMLNative vs HTML
Native vs HTML
 
Open Source Software For Education (Mel Mc Intyre) Open App
Open Source Software For Education (Mel Mc Intyre) Open AppOpen Source Software For Education (Mel Mc Intyre) Open App
Open Source Software For Education (Mel Mc Intyre) Open App
 
Shiva_CV
Shiva_CVShiva_CV
Shiva_CV
 
E learning-for-all-devices
E learning-for-all-devicesE learning-for-all-devices
E learning-for-all-devices
 
Webinar - Getting Started with mLearning
Webinar - Getting Started with mLearningWebinar - Getting Started with mLearning
Webinar - Getting Started with mLearning
 
What Mobile Development Approach Makes Sense
What Mobile Development Approach Makes SenseWhat Mobile Development Approach Makes Sense
What Mobile Development Approach Makes Sense
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How
 
Best Programming Languages to Learn This Year
Best Programming Languages to Learn This YearBest Programming Languages to Learn This Year
Best Programming Languages to Learn This Year
 
Different programming languages
Different programming languagesDifferent programming languages
Different programming languages
 
Spoken tutorials libreoffice
Spoken tutorials libreofficeSpoken tutorials libreoffice
Spoken tutorials libreoffice
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learning
 
Python For All | Software Professionals, QA & DevOps professionals
Python For All | Software Professionals, QA & DevOps professionalsPython For All | Software Professionals, QA & DevOps professionals
Python For All | Software Professionals, QA & DevOps professionals
 
Python for All
Python for All Python for All
Python for All
 
Open Accessibility EverywhereGroundwork, Infrastructure, Standards
Open Accessibility EverywhereGroundwork, Infrastructure, StandardsOpen Accessibility EverywhereGroundwork, Infrastructure, Standards
Open Accessibility EverywhereGroundwork, Infrastructure, Standards
 

More from Jumping Bean

DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017Jumping Bean
 
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data type
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data typePostgrtesql as a NoSQL Document Store - The JSON/JSONB data type
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data typeJumping Bean
 
React - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesReact - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesJumping Bean
 
IPv6 How To Set Up a Linux IPv6 Lan
IPv6 How To Set Up  a Linux IPv6 LanIPv6 How To Set Up  a Linux IPv6 Lan
IPv6 How To Set Up a Linux IPv6 LanJumping Bean
 
HTML 5 & The Modern Web
HTML 5 & The Modern WebHTML 5 & The Modern Web
HTML 5 & The Modern WebJumping Bean
 
Building games-with-libgdx
Building games-with-libgdxBuilding games-with-libgdx
Building games-with-libgdxJumping Bean
 
Linux Containers & Docker
Linux Containers & DockerLinux Containers & Docker
Linux Containers & DockerJumping Bean
 
Introduction to Web Sockets
Introduction to Web SocketsIntroduction to Web Sockets
Introduction to Web SocketsJumping Bean
 
Secrets of a linux ninja Software Freedom Day 2013 Johannesburg, South Africa
Secrets of a linux ninja  Software Freedom Day 2013 Johannesburg, South AfricaSecrets of a linux ninja  Software Freedom Day 2013 Johannesburg, South Africa
Secrets of a linux ninja Software Freedom Day 2013 Johannesburg, South AfricaJumping Bean
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJSJumping Bean
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android DevelopmentJumping Bean
 
Glassfish An Introduction
Glassfish An IntroductionGlassfish An Introduction
Glassfish An IntroductionJumping Bean
 
IPv6 - Jozi Linux User Group Presentation
IPv6  - Jozi Linux User Group PresentationIPv6  - Jozi Linux User Group Presentation
IPv6 - Jozi Linux User Group PresentationJumping Bean
 
SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)Jumping Bean
 

More from Jumping Bean (15)

DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
DevOpsDaysCPT Ansible Infrastrucutre as Code 2017
 
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data type
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data typePostgrtesql as a NoSQL Document Store - The JSON/JSONB data type
Postgrtesql as a NoSQL Document Store - The JSON/JSONB data type
 
React - The JavaScript Library for User Interfaces
React - The JavaScript Library for User InterfacesReact - The JavaScript Library for User Interfaces
React - The JavaScript Library for User Interfaces
 
IPv6 How To Set Up a Linux IPv6 Lan
IPv6 How To Set Up  a Linux IPv6 LanIPv6 How To Set Up  a Linux IPv6 Lan
IPv6 How To Set Up a Linux IPv6 Lan
 
HTML 5 & The Modern Web
HTML 5 & The Modern WebHTML 5 & The Modern Web
HTML 5 & The Modern Web
 
Building games-with-libgdx
Building games-with-libgdxBuilding games-with-libgdx
Building games-with-libgdx
 
Linux Containers & Docker
Linux Containers & DockerLinux Containers & Docker
Linux Containers & Docker
 
Introduction to Web Sockets
Introduction to Web SocketsIntroduction to Web Sockets
Introduction to Web Sockets
 
Secrets of a linux ninja Software Freedom Day 2013 Johannesburg, South Africa
Secrets of a linux ninja  Software Freedom Day 2013 Johannesburg, South AfricaSecrets of a linux ninja  Software Freedom Day 2013 Johannesburg, South Africa
Secrets of a linux ninja Software Freedom Day 2013 Johannesburg, South Africa
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
 
Glassfish An Introduction
Glassfish An IntroductionGlassfish An Introduction
Glassfish An Introduction
 
Java logging
Java loggingJava logging
Java logging
 
IPv6 - Jozi Linux User Group Presentation
IPv6  - Jozi Linux User Group PresentationIPv6  - Jozi Linux User Group Presentation
IPv6 - Jozi Linux User Group Presentation
 
SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)SELinux Johannesburg Linux User Group (JoziJUg)
SELinux Johannesburg Linux User Group (JoziJUg)
 

Recently uploaded

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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
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
 
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
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
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
 
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
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
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
 
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
 
"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
 

Recently uploaded (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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
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
 
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
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
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!
 
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
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
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
 
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
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"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
 

M-Learning application development with open source

  • 1. Building M-Learning Applications With Open Source ●Context ● What is e-learning? ● What is m-learning? ● Why m-learning? ● Technical Terminology ●Application Development ● Native or not? ● Which native platform? ● Overview of frameworks, ● Back-ends ● Toolkits
  • 3. Jumping Bean Open Source Development 3 What is E-Learning? ● Common understanding - use of the web technologies to: – Delivery educational content potentially independent of face time, – Enhance material with audio, video, – Enhanced interaction between students, material and teachers, – Assist with course administration & management, ● Tends to be content heavy, sedentary, focused attention I.e sit at a PC
  • 4. Jumping Bean Open Source Development 4 What is M-Learning? ● Common understanding - use of mobile devices to assist with learning & teaching, ● Augments other learning/teaching approaches such as instructor lead classes, e-learning, ● Form factor dictates smaller content chunks, shorter time focused on device/screen ● Affordances still being established
  • 5. Jumping Bean Open Source Development 5 Why M-Learning? ● More people have mobile phones than PCs, ● Well know & much talked about high penetration, ● People have their devices with them all the time, low “boot up time” to access applications, ● Common to have internet access with device purchased airtime can be used for calls or data, I.e perceived no “extra” cost, ● Opportunity to make use of unproductive time. Standing in queues, travelling to work
  • 6. Jumping Bean Open Source Development 6 Why Open Source for M-Learning? ● Ability to adapt applications/tools to local context - not only content i.e creative commons ● Leverage existing work, ● Quality code - secure, ● No dependencies, ● Open source development is itself a learning methodology continued
  • 7. Jumping Bean Open Source Development 7 Terminology ● Mobile Platform – operating system, api, application store I.e Android, iOS, Black berry ● Software Stack – SDK (Software Development Kit) – Usually refers to “native” development from the vendors of the mobile platform – Development framework – 3rd party software framework/stack to support development of mobile applications
  • 8. Jumping Bean Open Source Development 8 Application Development
  • 9. Jumping Bean Open Source Development 9 Considerations for Software Stack Selection ● Target users device demographics, ● Existing developer skills base, ● Flexibility - – Rapid pace of change, – People still experimenting with best practise, finding out what works, ● Back-end system integration requirements, ● Affordability of devices for students, ● Type of coverage, internet speeds, data costs
  • 10. Jumping Bean Open Source Development 10 Native or Not? What is native? ● Native use the sdk for the targeted platform ● Pros – Native look & feel, – Perception that native apps are better ● Cons – Only runs on the target platform, – Have to rewrite the app to target multiple platforms
  • 11. Jumping Bean Open Source Development 11 What is non-native ● Not officially supported technology stack for the target platform ● Pros – Target multiple devices with a single code base – Reuse existing knowledge ● Cons – Non native look & feel, – Perception of slowness, – Feature lag, – Check for sustainability
  • 12. Jumping Bean Open Source Development 12 Non Native Frameworks
  • 13. Jumping Bean Open Source Development 13 Which Platform for Native Development?
  • 14. Jumping Bean Open Source Development 14 Android Native Platform ● Android is the best choice – Wide range of devices in terms of features and prices – Other platforms are aimed at the top-end of the market – Lower barriers to entry ● For IOS you need – Mac book – Enrol in iOS developer programme $99/year to be able to deploy
  • 15. Jumping Bean Open Source Development 15 Non-Native Frameworks ● Frameworks based on language support” – HTML5 +CCS3 frameworks ● Large skills base, – PHP, – Ruby, – Python, – ….
  • 16. Jumping Bean Open Source Development 16 Open Source Frameworks Framework Languages HTML 5, Ruby HTML5,C++ HTML5 HTML5 HTML5,PHP
  • 17. Jumping Bean Open Source Development 17 Common Open Source Backends ● Popular open source projects provide service for mobile integration – Drupal – services module, provides oAuth, – Moodle – different initiatives ● Apps, ● Extensions
  • 18. Jumping Bean Open Source Development 18 Toolkits ● Aris Games – platform for mobile games, tours and interactive stories (augmented reality) ● Molly – Mobile portal platform Django and Python for developing a location-aware mobile portal with particular emphasis on Higher Education. ● OMLet – Open mobile learning toolkit
  • 19. Jumping Bean Open Source Development 19 Toolkits ● ICTWorks - The Mobile Learning Toolkit for ICT4D Trainers
  • 20. Jumping Bean Open Source Development 20 Examle of Toolkit Architecture
  • 21. Jumping Bean Open Source Development 21 The End E-Learning Africa 2013 Twitter @mxc4 G+ MClarke4@gmail.com www.JumpingBean.co.za