How community software is shifting the learning experience

(Many thanks to Data Science Dojo for sponsoring the Open edX 2019 Conference! Following is their sponsored blog post)

Authors: Arham Akheel – Business Analyst; Sanjay Pant – Data Analyst; and Ahsan Khan – Data Engineer

AI and machine learning are the most exciting subjects of the decade, and they’ve increasingly become part of our daily lives. When you type a search query on Google or keep scrolling on the endless feed on Facebook, they are all powered by insights from machine learning engines. As technology advances in data science, the need for relevant skills becomes essential for teams in every company. As a global leader in data science learning, we believe in making AI and machine learning accessible to everyone with a unique learning program. The program covers essential topics in data science and data engineering to trail-blaze through real-world problems, apt for working professionals looking to beef up their skill set. Our focus is mainly on providing a blended learning experience with online and in-person courses using Open edX as a self-hosted platform.

Why we use Open edX?

We created the best rated data science bootcamp by prioritizing social learning and hands-on interactivity and we strongly believe that an in-person learning experience carries a lot more value when compared to 100% online learning. As we see a shift from the physical classroom to anytime, anywhere learning, platforms are growing quickly across many industries. Education professionals always talk about the “MOOC Revolution”, referring to the explosive emergence of Massive Open Online Courses back in 2012. Since then, dozens of learning organizations have entered the MOOC arena, wanting to get a piece of the growing market of online students

We chose Open edX over hundreds of MOOC Providers because open source is the future. It’s hard pressed to find a startup today worth its venture capital funding not based, at least in part (if not largely), on open source. Open source isn’t a fad, or a bunch of hippies out in California passing around tie-dye laptops like they would illicit substances. Open source is how modern organizations, and increasingly more traditional organizations build software. Even Microsoft, traditionally one of the most stark opponents to open source, has open sourced their primary development framework (along with Apple and Swift). Today, all of the largest names in technology, from IBM, to SAP, to Adobe actively participate in the open source community.

Open edX emerged as the chosen online learning platform for many organizations because it’s learner focused, scale-able, and flexible. Open edX’s modern web user interface pushes the focus on usability making it a great platform for instructors and an immersive learning environment for students. It’s a powerful, online open source learning platform and is constantly innovated with contributions from the world’s most brilliant minds. Open edX is extensible, versatile, and can be adapted for your needs.

Modern Education is Blended

“What makes Open edX unique is that it is the only last-generation, full-featured, open-source platform for online learning,” – Lorena Barba, Professor at George Washington University and one of the most prestigious voices in the Open edX community

Business Agility is Important

When companies think of open source, these days they think about “business agility,” a quality increasingly valued above all others in the fast-changing marketplace. The ability to create new applications quickly, reliably and economically is drawing all businesses,  both big and small, to open source and encouraging them to use it for ever-larger projects like buildingan ecosystem using open source

We are more focused on content creation, rather than building a platform from scratch. 

Why not stand on the shoulders of technology giants? 

This shifts our developers from low-value workers to high-value workers, in open source all the easy problems have already been solved. Blogging, content management, and operating systems are all problems with established (and mainstream) open source solutions. While our developers could spend their time reinventing wheels that the open source community have already perfected, it’s far preferable to use the worlds best wheel, especially when it comes at no cost to you. This frees our developers to work on yet-unsolved challenges, developing new features that are unique and add value to our organization’s mission of making data science accessible to everyone.

Open source is a give-a-penny-take-a-penny jar of software. If you consume open source, be it a server, a desktop publishing application, or Open edX, you are obliged to give back to the community. After all, without the contribution of others, the micro and macro economic motivations would no longer hold true, and open source as we know it would cease to exist. This is the Golden Rule, or in traditional philosophical terms, a categorial imperitive

How we use Open edX?

We started out by using Open edX as a complementary learning platform to our in-person training sessions. This helped us fine tune the learning experience and grow into the online space by offering 100% online data science courses. 

Learning Management System

There are several benefits of a learning management system (LMS) for students:

  • Learning Medium: Our bootcamp attendees are using Open edX LMS as an additional learning medium, and are utilizing it to fulfill prerequisites, review course material, and learn extra content. It also helps them to evaluate their understanding of whatever topics they have learned in the class.
  • Content Creation: We are continuously striving to author engaging new multi-media content. Most of our attendees get access to this content when they sign up for the bootcamp. Each course comprises of quizzes, video lectures, homework assignments and handbooks to enhance learner’s various concepts of data science and data engineering.
  • Flexbility: The platform is flexible as students can enjoy rich content at their convenience on various devices. Being able to access up to date learning material is a huge benefit. We are also able to communicate updates to students in real-time in case there are any changes to the schedule or curriculum. 
  • Analytics: Learners can assess and evaluate their understanding and the platform gives them a set of tools to track their progress. It helps course creators understand how to improve and enhance the learning experience of students.
  • Collaboration: We use the forum extensively to promote collaborative and social learning. Students can post various questions, and answers using the discussion feature and are helping each other understand and clarify diverse machine learning topics.
Blended Learning

Studio

Instructors and course creators use the Open edX content management system to create engaging Data Science and Data Engineering content which has made it easier to develop multi-media content like videos, quizzes, and coding exercises. There are several benefits of using a tool like Studio:

  • Re-usability and Experimentation: Instructors can utilize the same course for different cohorts, and do not have to create it from scratch for each class. Content groups can be used to create sets of content units based on the type of learner. Groups can also be used for online experimentation and A/B testing for deciding between variations to increase engagement and understanding.
  • Multi-Media Content: Open edX makes it effortless to create learning materials in multiple formats using X blocks which helps course creators in developing engaging content.
  • Uniformity: Once instructors and course creators get accustomed to making the first few courses,  the content creation process becomes effortless, and they can focus on creating captivating materials to enhance learners’ engagement.
  • Feedback: Instructors can use various metrics to evaluate how learners are using the content and collect explicit and implicit feedback to improve their content.
  • Communication with Students: Instructors and students can use LMS as a communication channel. If a student were to miss class, they are able to find updates and announcements from their instructor in the learning portal.

Development and Operations

  • Deployment and Maintenance: We are hosting Open edX code on DigitalOcean and using Ansible for deployment, orchestration, and configuration. Data-intensive applications are hosted separately from stateless applications. Most of our services for LMS are utilizing open source software and only using platform as a service like Segment for analytics and Sentry for application error tracking.
  • Data Storage: As the number of users grows, the demand for more computational resources also increases. The elastic stateless applications can be easily horizontally scaled, but the persistence elements do not scale smoothly. So, we are hosting several data systems’, like MySQL and MongoDB, media and static files in separate servers.  
  • Multiple app servers behind load-balancers: We are running core edX services like LMS, CMS, Discovery, and Forum in each app server and operating multiple nodes behind a load-balancer.
High Level Server Distribution

We started with a native installation on a single server and soon realized that it could become a nightmare if we were to scale. So, we moved all the persistent data systems out of the individual node but were still manually configuring the servers by editing configuration files independent to each server. Realizing this would become complicated with mulitple servers, we found Ansible, a piece of art software that helps orchestrate and deploy any software by running a script. By creating a customized Ansible script, we were able to control our servers from a single control machine.

Ansible Application Deployment

Data Science Dojo at Open edX Conference

Our team is joining the Open edX Conference 2019 in San Diego and are looking forward to building partnerships with others in the community. We are intrigued by different product strategies undertaken by some of the participating companies and would love to know more about the e-learning space as we grow our product. We are rapidly hiring developers, product managers, instructional designers and data scientists for multiple roles to support our platform. If you are interested or know someone who might be interested in joining our team. Feel free to apply on our website.