YOU'RE NOW READING

Introducing Escuela: An Open Platform for Academies

calendar_today Posted 2 months ago · 6 minute-read · Showcase

I’ve been work­ing the past sev­er­al weeks on a pas­sion project that I intend to launch in the future.

Escuela: an open plat­form for acad­e­mies

This project is one that I’ve been want­i­ng to make a real­i­ty for a few rea­sons:

  • To prac­tice build­ing a 100% JavaScript appli­ca­tion, includ­ing its client and serv­er coun­ter­parts, and not die try­ing.

  • To prac­tice scal­a­bil­i­ty from the get-go by using AWS cloud ser­vices (EC2, EBS, S3, RDS, ELB…) and in gen­er­al to prac­tice build­ing apps on this stack, lever­ag­ing cloud com­put­ing.

  • … and to make my tutors’ lives eas­i­er. I’ll elab­o­rate more on this.

Why Escuela?

There are many teach­ers today that pre­fer run­ning their own pri­vate tuition busi­ness instead of becom­ing part of a larg­er orga­ni­za­tion, as it is like­ly more prof­itable than work­ing for the gov­ern­ment as a teacher.

On the inter­net you can find hun­dreds of pro­fes­sion­als putting up ads for pri­vate lessons about any branch of knowl­edge you can imag­ine, and stu­dents are more and more going to pri­vate tutors to strength­en their aca­d­e­m­ic per­for­mance.

Here’s an inter­est­ing The Guardian arti­cle on how pri­vate tutor­ing is becom­ing a “boom­ing indus­try”.

Escuela wants to con­sid­er­ably sim­pli­fy this busi­ness. Tutors can use Escuela as a plat­form to man­age their work: stu­dent man­age­ment, course mate­r­i­al, enroll­ments and pay­ments, direct tutor-stu­dent com­mu­ni­ca­tion, and more.

In my expe­ri­ence from hav­ing received pri­vate tutor­ing, these pro­fes­sion­als did not have any soft­ware to man­age their work. They got by with reg­u­lar social media to con­tact stu­dents, and mak­ing course mate­r­i­al out of paper and just hand­ing it out.

Escuela works for tutors, stu­dents and par­ents:

Escuela for tutors

Tutors will find their busi­ness great­ly sim­pli­fied by using Escuela. Here are some of the main ways Escuela will help tutors:

  • Busi­ness Expo­sure
    Escuela strives to become a very busy e‑learning plat­form for tutor­ing entre­pre­neurs. Ide­al­ly, when Escuela gains trac­tion and has thou­sands of mem­bers using the plat­form, tutors will be able to gain expo­sure and attract new stu­dents by just pub­lish­ing their course on the plat­form.

  • In-depth Course Man­age­ment for In-Per­son and Remote Tutor­ing
    Tutors are able to man­age every­thing relat­ed to their course(s): time sched­ules, course­work, enroll­ments, stu­dents and grades, and com­mu­ni­ca­tion. Escuela is effec­tive­ly a one-stop-shop for tutor­ing entre­pre­neurs.

  • A Secure Medi­um to Com­mu­ni­cate with Stu­dents
    Tutors might not want stu­dents to have their per­son­al social media in order to com­mu­ni­cate (or vice-ver­sa). It would be much bet­ter to com­mu­ni­cate through a plat­form ded­i­cat­ed to this for the sake of both par­ties involved.

    Escuela forces every stu­dent under the age of 18 to reg­is­ter a parent/legal guardian along with their own account, with access to every con­tent the child sees on the plat­form, includ­ing any mes­sag­ing between the tutor and the stu­dent.

Escuela for students

Stu­dents will ben­e­fit from using Escuela as their learn­ing plat­form in the fol­low­ing ways:

  • A Cat­a­log for In-Per­son and Online Cours­es
    Escuela will serve any­body look­ing for some­thing new to learn, and can decide to learn online or in-per­son (as long as the course sup­ports it).

  • A Free Course Man­age­ment Plat­form
    Escuela (the plat­form) is com­plete­ly free of charge. Stu­dents only pay for the cours­es with prices set by the tutor. Escuela gives you your own pri­vate space to man­age your cours­es, see your progress, sched­ule, home­work and more.

  • Direct Com­mu­ni­ca­tion with Tutors
    Need to ask some­thing you didn’t under­stand dur­ing a les­son? Just send the tutor a mes­sage on the plat­form, no need for emails, social media, or any­thing else!


Escuela for parents and legal guardians

Escuela enables par­ents and legal guardians to use the plat­form to ensure the cor­rect usage by stu­dents under the age of 18.

  • Keep An Eye on Your Chil­dren
    Escuela forces every user under the age of 18 to reg­is­ter a parent/legal guardian account along with them to over­see their activ­i­ty on plat­form. Escuela has a sys­tem in place to allow par­ents to check in on their chil­drens’ course progress and activ­i­ty such as mes­sag­ing on the plat­form. Any­thing the child sees, the par­ent can also see and mon­i­tor.

  • Easy and Secure Par­ent-Tutor Com­mu­ni­ca­tion
    Have fruit­ful con­ver­sa­tions with tutors about your chil­dren and have tutors tell you about their progress direct­ly through the plat­form with­out using any exter­nal ways of com­mu­ni­ca­tion.

As you can see, Escuela is a com­plete and robust plat­form for every­body, con­nect­ing tutors, par­ents and stu­dents in a secure way.


Escuela’s main competitor

Moo­dle LMS

Moo­dle is a well-known PHP LMS (Learn­ing Man­age­ment Sys­tem) that has been in the scene for about 18 years. The soft­ware itself is free and open-source, but they offer paid, man­aged host­ing for their free soft­ware as their busi­ness mod­el.

Escuela would have an advan­tage here, since tutors do not have to pay for host­ing or pub­lish­ing their cours­es. Escuela as a plat­form is free of cost.

Moo­dle is also very dat­ed soft­ware, which has not kept up with the times in terms of how peo­ple use web­sites today. Escuela is inclined towards a more social plat­form with a dynam­ic and mod­ern user inter­face, as you may find on cur­rent social net­works such as Face­book or Insta­gram.


Technical specifications

So… what am I build­ing Escuela with? Here’s a list of all the tech­nolo­gies I’m using:

Client Tech­nolo­gies

  • React 16 for web-based client.
  • React Native for the Android mobile client.

Serv­er Tech­nolo­gies

  • Node.js 12 using Express, microser­vice archi­tec­ture for scal­a­bil­i­ty on AWS EC2 instances.
  • Mari­aDB (RDS AWS Ser­vice) as the rela­tion­al data­base engine.
  • Mail­gun for emails, Twilio for SMS, OneS­ig­nal for mobile push noti­fi­ca­tions.
  • Web­Sock­ets over SSL/TLS.
  • Stripe for pay­ment pro­cess­ing.

This arti­cle was only to intro­duce Escuela and what it’s meant to achieve, stay tuned for a more tech­ni­cal arti­cle on the application’s archi­tec­ture in detail.

Relat­ed arti­cle about Escuela’s serv­er archi­tec­ture:
https://www.kediagbogre.com/how-i-structure-my-node-js-applications/

Thanks for stick­ing around!


– Kedi