SlideShare a Scribd company logo
1 of 2
Download to read offline
Stop Building It From Scratch!
How to Build a Reusable eLearning Framework
Presented by:
Chad Udell (twitter.com/visualrinse) & Mark Tovey (twitter.com/em_tee)
http://ionagroup.com

Overview: APIs are prevalent in RIA and web design and development, but are relatively unheard of in
eLearning development. Using APIs has a quantifiable return on investment and is a standard way to build
robust functionality in application development. How can we start to move towards this sort of development
process in eLearning?


Why This Is important: There are significant cost and time savings possible in standardizing around an API
for use in your learning development organization. Shorter development cycles, improved quality and more
reliable testing results will be immediately noticeable. Protection of intellectual property and improved risk
management for your company are also areas that will see benefits in implementing an API.


Things to Consider: Creating an API is a worthwhile activity, but one that requires planning and collaboration
between the API developers and the API users. Once you create an API and deploy it, it’s difficult to come
back and wipe the slate clean if you need to start over. An API is a contract between two mechanisms. An
API should consist of concise, intuitively named methods, properties and events. Any codebase utilizing the
API can then be written to a simple interface, able to ignore the implementation details of that interface.


How You Can Get Started: The first steps in creating an API are completely analog! Take stock in what you
have to develop repeatedly in your courses. Survey your developers and determine what are some of the
more difficult things they have to create. Review your existing code library for the “greatest hits.” Research
publicly available APIs and note what you like and don’t like about them.


For further reading:
http://ionagroup.com/labs/stop_building_it_from_scratch
How To Design a Good API and Why It Matters: http://www.scribd.com/doc/33655/How-to-Design-a-Good-API-and-
Why-it-Matters
http://www.programmableweb.com/reference




                                                                                                        Page 1
Worksheet
How do you know you when an API is right for you?
If five or more of these situations apply to you, you’ve probably outgrown
using a code library. You should consider moving to an API.

1. Your development team is three or more people.

2. You have junior level developers that need to produce “senior level products.”

3. You have to ask questions like, “Where is the latest version of the LMS connection script?” more than
once a month.

4. You have projects with external developers with whom you need to collaborate.

5. You want everyone on your team to use the company’s “Best Practices” in creating their code.

6. Your code will have a multi-project shelf life. Some modules will be reused many, many times.

7. Your investment in your intellectual property is worth the effort required to create an API the right way.

8. You are standardized on a toolset, and need to standardize on an implementation path.

9. You have been burned by quality issues that could have been remedied by a standardized approach.

10. You are looking for new ways to enhance productivity in your development team.

11. You are deploying your code as a software product (SaaS or otherwise).




If the following situations apply to you, proceed with caution.

1. You work alone.

2. You don’t have a standard toolset.

3. Your technology decisions are often ruled by forces outside of your department.

4. Spending dozens or hundreds of hours to get your toolset in order is not an option.

5. You have no need for reusable code as assets across multiple projects.

6. Code as intellectual property is a foreign concept to your organization and you won’t be able to change
that anytime soon.
                                                                                                       Page 2

More Related Content

What's hot

Optimizing API Documentation: Some Guidelines and Effects
Optimizing API Documentation: Some Guidelines and EffectsOptimizing API Documentation: Some Guidelines and Effects
Optimizing API Documentation: Some Guidelines and EffectsPronovix
 
How to Embed UX Thinking in Your Next API
How to Embed UX Thinking in Your Next APIHow to Embed UX Thinking in Your Next API
How to Embed UX Thinking in Your Next APIPronovix
 
Guided Path to DevOps Career.
Guided Path to DevOps Career.Guided Path to DevOps Career.
Guided Path to DevOps Career.wahabwelcome
 
Why and When Enterprise Should Adopt NativeScript for App Development
Why and When Enterprise Should Adopt NativeScript for App DevelopmentWhy and When Enterprise Should Adopt NativeScript for App Development
Why and When Enterprise Should Adopt NativeScript for App DevelopmentAjeet Singh
 
Eight Hours to API Literacy: A Fast, Fun On-ramp for Writers
Eight Hours to API Literacy: A Fast, Fun On-ramp for WritersEight Hours to API Literacy: A Fast, Fun On-ramp for Writers
Eight Hours to API Literacy: A Fast, Fun On-ramp for WritersPronovix
 
Native WebRTC Mobile App Development: Tools & Tips
Native WebRTC Mobile App Development: Tools & TipsNative WebRTC Mobile App Development: Tools & Tips
Native WebRTC Mobile App Development: Tools & TipsAjeet Singh
 
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It![Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!Ajeet Singh
 
New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0Mike Taylor
 
Python Web Development Tutorial | Web Development Using Django | Edureka
Python Web Development Tutorial | Web Development Using Django | EdurekaPython Web Development Tutorial | Web Development Using Django | Edureka
Python Web Development Tutorial | Web Development Using Django | EdurekaEdureka!
 
How to Create your First Website using ReactJS?
How to Create your First Website using ReactJS?How to Create your First Website using ReactJS?
How to Create your First Website using ReactJS?Intellipaat
 
How to develop an API ecosystem in the fintech industry from the ground up
How to develop an API ecosystem in the fintech industry from the ground upHow to develop an API ecosystem in the fintech industry from the ground up
How to develop an API ecosystem in the fintech industry from the ground upPronovix
 
From Zero to Spec-first API Hero
From Zero to Spec-first API HeroFrom Zero to Spec-first API Hero
From Zero to Spec-first API HeroPronovix
 
Content Strategy for DevPortals
Content Strategy for DevPortalsContent Strategy for DevPortals
Content Strategy for DevPortalsPronovix
 
Why you need a Developer Relations team for your API
Why you need a Developer Relations team for your APIWhy you need a Developer Relations team for your API
Why you need a Developer Relations team for your APIPronovix
 
Busting myths about business apps, low code style
Busting myths about business apps, low code styleBusting myths about business apps, low code style
Busting myths about business apps, low code styleZoho Creator
 
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...Edureka!
 
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?SELENIUM or QTP Which is a Best Automation Tool for Your Business ?
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?JanBask Training
 

What's hot (20)

Optimizing API Documentation: Some Guidelines and Effects
Optimizing API Documentation: Some Guidelines and EffectsOptimizing API Documentation: Some Guidelines and Effects
Optimizing API Documentation: Some Guidelines and Effects
 
Boquet manager
Boquet managerBoquet manager
Boquet manager
 
How to Embed UX Thinking in Your Next API
How to Embed UX Thinking in Your Next APIHow to Embed UX Thinking in Your Next API
How to Embed UX Thinking in Your Next API
 
Guided Path to DevOps Career.
Guided Path to DevOps Career.Guided Path to DevOps Career.
Guided Path to DevOps Career.
 
Why and When Enterprise Should Adopt NativeScript for App Development
Why and When Enterprise Should Adopt NativeScript for App DevelopmentWhy and When Enterprise Should Adopt NativeScript for App Development
Why and When Enterprise Should Adopt NativeScript for App Development
 
Eight Hours to API Literacy: A Fast, Fun On-ramp for Writers
Eight Hours to API Literacy: A Fast, Fun On-ramp for WritersEight Hours to API Literacy: A Fast, Fun On-ramp for Writers
Eight Hours to API Literacy: A Fast, Fun On-ramp for Writers
 
Native WebRTC Mobile App Development: Tools & Tips
Native WebRTC Mobile App Development: Tools & TipsNative WebRTC Mobile App Development: Tools & Tips
Native WebRTC Mobile App Development: Tools & Tips
 
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It![Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!
[Business Strategy] DevOps Implementation Failure. Save It Before You Fail It!
 
New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0
 
Python Web Development Tutorial | Web Development Using Django | Edureka
Python Web Development Tutorial | Web Development Using Django | EdurekaPython Web Development Tutorial | Web Development Using Django | Edureka
Python Web Development Tutorial | Web Development Using Django | Edureka
 
How to Create your First Website using ReactJS?
How to Create your First Website using ReactJS?How to Create your First Website using ReactJS?
How to Create your First Website using ReactJS?
 
How to develop an API ecosystem in the fintech industry from the ground up
How to develop an API ecosystem in the fintech industry from the ground upHow to develop an API ecosystem in the fintech industry from the ground up
How to develop an API ecosystem in the fintech industry from the ground up
 
From Zero to Spec-first API Hero
From Zero to Spec-first API HeroFrom Zero to Spec-first API Hero
From Zero to Spec-first API Hero
 
Test automation-framework
Test automation-frameworkTest automation-framework
Test automation-framework
 
Content Strategy for DevPortals
Content Strategy for DevPortalsContent Strategy for DevPortals
Content Strategy for DevPortals
 
Why you need a Developer Relations team for your API
Why you need a Developer Relations team for your APIWhy you need a Developer Relations team for your API
Why you need a Developer Relations team for your API
 
Busting myths about business apps, low code style
Busting myths about business apps, low code styleBusting myths about business apps, low code style
Busting myths about business apps, low code style
 
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...
What Is Selenium | Selenium Tutorial For Beginner | Selenium Training | Selen...
 
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?SELENIUM or QTP Which is a Best Automation Tool for Your Business ?
SELENIUM or QTP Which is a Best Automation Tool for Your Business ?
 
Nissi On Job Training
Nissi On Job TrainingNissi On Job Training
Nissi On Job Training
 

Similar to Dev Learn Handout - Session 604

Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxXDuce Corporation
 
APIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside OutAPIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside Out3scale
 
React Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfReact Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfTechugo
 
Popular PHP laravel frameworks in app development
Popular PHP laravel frameworks in app developmentPopular PHP laravel frameworks in app development
Popular PHP laravel frameworks in app developmentdeorwine infotech
 
System design for Web Application
System design for Web ApplicationSystem design for Web Application
System design for Web ApplicationMichael Choi
 
How can JAVA Performance tuning speed up applications.pdf
How can JAVA Performance tuning speed up applications.pdfHow can JAVA Performance tuning speed up applications.pdf
How can JAVA Performance tuning speed up applications.pdfMindfire LLC
 
13 Tips to Choose the Perfect Tech Stack
13 Tips to Choose the Perfect Tech Stack13 Tips to Choose the Perfect Tech Stack
13 Tips to Choose the Perfect Tech StackRishavA
 
Dev Dives: Unlock automation adoption with UiPath Apps
Dev Dives: Unlock automation adoption with UiPath AppsDev Dives: Unlock automation adoption with UiPath Apps
Dev Dives: Unlock automation adoption with UiPath AppsCristina Vidu
 
Learning Web Development with Ruby on Rails Launch
Learning Web Development with Ruby on Rails LaunchLearning Web Development with Ruby on Rails Launch
Learning Web Development with Ruby on Rails LaunchThiam Hock Ng
 
web development ppt by prakash bedage
web development ppt by prakash bedageweb development ppt by prakash bedage
web development ppt by prakash bedagePrakashBedage
 
web development project prakash.pptx
web development project prakash.pptxweb development project prakash.pptx
web development project prakash.pptxPrakashBedage
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfectSon Nguyen
 
8_reasons_php_developers_love_using_laravel.pdf
8_reasons_php_developers_love_using_laravel.pdf8_reasons_php_developers_love_using_laravel.pdf
8_reasons_php_developers_love_using_laravel.pdfsarah david
 
How to build and deploy app on Replit
How to build and deploy app on ReplitHow to build and deploy app on Replit
How to build and deploy app on Replitmatiasfund
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramJason Harmon
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software EngineerSean Coates
 
Reason To Choose Oracle APEX (Application Express).pdf
Reason To Choose Oracle APEX (Application Express).pdfReason To Choose Oracle APEX (Application Express).pdf
Reason To Choose Oracle APEX (Application Express).pdfPridesys IT Ltd.
 

Similar to Dev Learn Handout - Session 604 (20)

Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptx
 
APIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside OutAPIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside Out
 
React Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdfReact Native App Development in 2023-Tips to Practice.pdf
React Native App Development in 2023-Tips to Practice.pdf
 
Popular PHP laravel frameworks in app development
Popular PHP laravel frameworks in app developmentPopular PHP laravel frameworks in app development
Popular PHP laravel frameworks in app development
 
System design for Web Application
System design for Web ApplicationSystem design for Web Application
System design for Web Application
 
How can JAVA Performance tuning speed up applications.pdf
How can JAVA Performance tuning speed up applications.pdfHow can JAVA Performance tuning speed up applications.pdf
How can JAVA Performance tuning speed up applications.pdf
 
13 Tips to Choose the Perfect Tech Stack
13 Tips to Choose the Perfect Tech Stack13 Tips to Choose the Perfect Tech Stack
13 Tips to Choose the Perfect Tech Stack
 
Dev Dives: Unlock automation adoption with UiPath Apps
Dev Dives: Unlock automation adoption with UiPath AppsDev Dives: Unlock automation adoption with UiPath Apps
Dev Dives: Unlock automation adoption with UiPath Apps
 
Empowered productivity
Empowered productivityEmpowered productivity
Empowered productivity
 
Learning Web Development with Ruby on Rails Launch
Learning Web Development with Ruby on Rails LaunchLearning Web Development with Ruby on Rails Launch
Learning Web Development with Ruby on Rails Launch
 
web development ppt by prakash bedage
web development ppt by prakash bedageweb development ppt by prakash bedage
web development ppt by prakash bedage
 
web development project prakash.pptx
web development project prakash.pptxweb development project prakash.pptx
web development project prakash.pptx
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfect
 
8_reasons_php_developers_love_using_laravel.pdf
8_reasons_php_developers_love_using_laravel.pdf8_reasons_php_developers_love_using_laravel.pdf
8_reasons_php_developers_love_using_laravel.pdf
 
How to build and deploy app on Replit
How to build and deploy app on ReplitHow to build and deploy app on Replit
How to build and deploy app on Replit
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API Program
 
Quality Software Development
Quality Software DevelopmentQuality Software Development
Quality Software Development
 
30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer30 Skills to Master to Become a Senior Software Engineer
30 Skills to Master to Become a Senior Software Engineer
 
Reason To Choose Oracle APEX (Application Express).pdf
Reason To Choose Oracle APEX (Application Express).pdfReason To Choose Oracle APEX (Application Express).pdf
Reason To Choose Oracle APEX (Application Express).pdf
 

More from Chad Udell

DevLearn 2018 - Designing AR Experiences for Performance Support
DevLearn 2018 -  Designing AR Experiences for Performance SupportDevLearn 2018 -  Designing AR Experiences for Performance Support
DevLearn 2018 - Designing AR Experiences for Performance SupportChad Udell
 
ATD - Western Michigan September Meeting
ATD - Western Michigan September MeetingATD - Western Michigan September Meeting
ATD - Western Michigan September MeetingChad Udell
 
Atd 2015 - Mastering Mobile Learning
Atd 2015 - Mastering Mobile LearningAtd 2015 - Mastering Mobile Learning
Atd 2015 - Mastering Mobile LearningChad Udell
 
Leveraging Devices to Create Amazing Mobile Learning - TK2014 Results
Leveraging Devices to Create Amazing Mobile Learning - TK2014 ResultsLeveraging Devices to Create Amazing Mobile Learning - TK2014 Results
Leveraging Devices to Create Amazing Mobile Learning - TK2014 ResultsChad Udell
 
Mlearning Unraveled - With Poll Results
Mlearning Unraveled - With Poll ResultsMlearning Unraveled - With Poll Results
Mlearning Unraveled - With Poll ResultsChad Udell
 
Tappestry Demo
Tappestry DemoTappestry Demo
Tappestry DemoChad Udell
 
Whats Next for Mobile Learning
Whats Next for Mobile LearningWhats Next for Mobile Learning
Whats Next for Mobile LearningChad Udell
 
There Is No Easy Button
There Is No Easy ButtonThere Is No Easy Button
There Is No Easy ButtonChad Udell
 
Learning Tracking Out of the LMS and Embracing Learning Analytics
Learning Tracking Out of the LMS and Embracing Learning AnalyticsLearning Tracking Out of the LMS and Embracing Learning Analytics
Learning Tracking Out of the LMS and Embracing Learning AnalyticsChad Udell
 
The Leadership Challenge - mLearnCon
The Leadership Challenge - mLearnConThe Leadership Challenge - mLearnCon
The Leadership Challenge - mLearnConChad Udell
 
Design concepts for Mobile Learnng
Design concepts for Mobile LearnngDesign concepts for Mobile Learnng
Design concepts for Mobile LearnngChad Udell
 
ASTD St. Louis Presentation - July 28th
ASTD St. Louis Presentation - July 28thASTD St. Louis Presentation - July 28th
ASTD St. Louis Presentation - July 28thChad Udell
 
Is Mobile For Me? What Skills Do I Need?
Is Mobile For Me? What Skills Do I Need?Is Mobile For Me? What Skills Do I Need?
Is Mobile For Me? What Skills Do I Need?Chad Udell
 
How to Convert Your eLearning to Mobile
How to Convert Your eLearning to MobileHow to Convert Your eLearning to Mobile
How to Convert Your eLearning to MobileChad Udell
 
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...Chad Udell
 
Comparing the Four Main Mobile OSes
Comparing the Four Main Mobile OSesComparing the Four Main Mobile OSes
Comparing the Four Main Mobile OSesChad Udell
 
Creating mLearning With Your Existing Toolkit
Creating mLearning With Your Existing ToolkitCreating mLearning With Your Existing Toolkit
Creating mLearning With Your Existing ToolkitChad Udell
 
Hacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitHacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitChad Udell
 
Hacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitHacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitChad Udell
 

More from Chad Udell (20)

DevLearn 2018 - Designing AR Experiences for Performance Support
DevLearn 2018 -  Designing AR Experiences for Performance SupportDevLearn 2018 -  Designing AR Experiences for Performance Support
DevLearn 2018 - Designing AR Experiences for Performance Support
 
ATD - Western Michigan September Meeting
ATD - Western Michigan September MeetingATD - Western Michigan September Meeting
ATD - Western Michigan September Meeting
 
Atd 2015 - Mastering Mobile Learning
Atd 2015 - Mastering Mobile LearningAtd 2015 - Mastering Mobile Learning
Atd 2015 - Mastering Mobile Learning
 
Leveraging Devices to Create Amazing Mobile Learning - TK2014 Results
Leveraging Devices to Create Amazing Mobile Learning - TK2014 ResultsLeveraging Devices to Create Amazing Mobile Learning - TK2014 Results
Leveraging Devices to Create Amazing Mobile Learning - TK2014 Results
 
Mlearning Unraveled - With Poll Results
Mlearning Unraveled - With Poll ResultsMlearning Unraveled - With Poll Results
Mlearning Unraveled - With Poll Results
 
Tappestry Demo
Tappestry DemoTappestry Demo
Tappestry Demo
 
Prototyping
PrototypingPrototyping
Prototyping
 
Whats Next for Mobile Learning
Whats Next for Mobile LearningWhats Next for Mobile Learning
Whats Next for Mobile Learning
 
There Is No Easy Button
There Is No Easy ButtonThere Is No Easy Button
There Is No Easy Button
 
Learning Tracking Out of the LMS and Embracing Learning Analytics
Learning Tracking Out of the LMS and Embracing Learning AnalyticsLearning Tracking Out of the LMS and Embracing Learning Analytics
Learning Tracking Out of the LMS and Embracing Learning Analytics
 
The Leadership Challenge - mLearnCon
The Leadership Challenge - mLearnConThe Leadership Challenge - mLearnCon
The Leadership Challenge - mLearnCon
 
Design concepts for Mobile Learnng
Design concepts for Mobile LearnngDesign concepts for Mobile Learnng
Design concepts for Mobile Learnng
 
ASTD St. Louis Presentation - July 28th
ASTD St. Louis Presentation - July 28thASTD St. Louis Presentation - July 28th
ASTD St. Louis Presentation - July 28th
 
Is Mobile For Me? What Skills Do I Need?
Is Mobile For Me? What Skills Do I Need?Is Mobile For Me? What Skills Do I Need?
Is Mobile For Me? What Skills Do I Need?
 
How to Convert Your eLearning to Mobile
How to Convert Your eLearning to MobileHow to Convert Your eLearning to Mobile
How to Convert Your eLearning to Mobile
 
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...
Max 2010- Building Mobile Learning with Your Existing eLearning Toolkit - Ado...
 
Comparing the Four Main Mobile OSes
Comparing the Four Main Mobile OSesComparing the Four Main Mobile OSes
Comparing the Four Main Mobile OSes
 
Creating mLearning With Your Existing Toolkit
Creating mLearning With Your Existing ToolkitCreating mLearning With Your Existing Toolkit
Creating mLearning With Your Existing Toolkit
 
Hacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitHacking Robots for Fun and Profit
Hacking Robots for Fun and Profit
 
Hacking Robots for Fun and Profit
Hacking Robots for Fun and ProfitHacking Robots for Fun and Profit
Hacking Robots for Fun and Profit
 

Recently uploaded

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Dev Learn Handout - Session 604

  • 1. Stop Building It From Scratch! How to Build a Reusable eLearning Framework Presented by: Chad Udell (twitter.com/visualrinse) & Mark Tovey (twitter.com/em_tee) http://ionagroup.com Overview: APIs are prevalent in RIA and web design and development, but are relatively unheard of in eLearning development. Using APIs has a quantifiable return on investment and is a standard way to build robust functionality in application development. How can we start to move towards this sort of development process in eLearning? Why This Is important: There are significant cost and time savings possible in standardizing around an API for use in your learning development organization. Shorter development cycles, improved quality and more reliable testing results will be immediately noticeable. Protection of intellectual property and improved risk management for your company are also areas that will see benefits in implementing an API. Things to Consider: Creating an API is a worthwhile activity, but one that requires planning and collaboration between the API developers and the API users. Once you create an API and deploy it, it’s difficult to come back and wipe the slate clean if you need to start over. An API is a contract between two mechanisms. An API should consist of concise, intuitively named methods, properties and events. Any codebase utilizing the API can then be written to a simple interface, able to ignore the implementation details of that interface. How You Can Get Started: The first steps in creating an API are completely analog! Take stock in what you have to develop repeatedly in your courses. Survey your developers and determine what are some of the more difficult things they have to create. Review your existing code library for the “greatest hits.” Research publicly available APIs and note what you like and don’t like about them. For further reading: http://ionagroup.com/labs/stop_building_it_from_scratch How To Design a Good API and Why It Matters: http://www.scribd.com/doc/33655/How-to-Design-a-Good-API-and- Why-it-Matters http://www.programmableweb.com/reference Page 1
  • 2. Worksheet How do you know you when an API is right for you? If five or more of these situations apply to you, you’ve probably outgrown using a code library. You should consider moving to an API. 1. Your development team is three or more people. 2. You have junior level developers that need to produce “senior level products.” 3. You have to ask questions like, “Where is the latest version of the LMS connection script?” more than once a month. 4. You have projects with external developers with whom you need to collaborate. 5. You want everyone on your team to use the company’s “Best Practices” in creating their code. 6. Your code will have a multi-project shelf life. Some modules will be reused many, many times. 7. Your investment in your intellectual property is worth the effort required to create an API the right way. 8. You are standardized on a toolset, and need to standardize on an implementation path. 9. You have been burned by quality issues that could have been remedied by a standardized approach. 10. You are looking for new ways to enhance productivity in your development team. 11. You are deploying your code as a software product (SaaS or otherwise). If the following situations apply to you, proceed with caution. 1. You work alone. 2. You don’t have a standard toolset. 3. Your technology decisions are often ruled by forces outside of your department. 4. Spending dozens or hundreds of hours to get your toolset in order is not an option. 5. You have no need for reusable code as assets across multiple projects. 6. Code as intellectual property is a foreign concept to your organization and you won’t be able to change that anytime soon. Page 2