Online programming language — Learning management system

Today, college and university students find themselves with the need more than getting a degree. Work and social life commitments make equal demands on their time. The option of taking online classes and studying on their own is a must. However, many state institutions are unable to accommodate all those who want to take classes on campus, escalating the demand for online learning. The aim of this project is development of learning management system (LMS). You can be as a teacher and upload your course materials to all students in our LMS. With our LMS, you are online every time, you can get messages from all students and teacher, without e-mail, just by your username in our system. Also, you can compile your code and share the result with others by social media links using REPL IT online compiler. So, our LMS provide all facilities for taking online course.


Introduction
Learning management system (LMS) is a web-based application that allows educational institutions and companies to provide targeted users with information content and educational sources.It is an efficient way for industry experts and teachers to create, hand over and control their content, as long as monitoring participation and evaluating performance across learners.As technology benefits from learning purposes, students and teachers react with each other through online forums, related discussions, video conference, as well as e-mails and chats.These tools serve many functions, including course documenting; managing and evaluating that allow teachers and students likewise to increase the use of the LMS.

Learning management industry
In the US higher education market as of fall 2016, the best three LMSs by number of establishments were Blackboard (33%), Moodle (19%) and Canvas (17%).The same three systems lead the number of enrolled students but in a different order: Blackboard (45%), Canvas (24%) and Moodle (17%).
In the corporate market in 2015, the top six LMS providers account for about 50% of the market, with Success Factors Learning, Saba Software, Voniz Inc. and SumTotal Systems being the top four service providers.Vendors who focus on medium-sized companies (more than 200 employees) include Halogen, ADP and Workday programs.Another LMS service comes from a standardised test vendor, with companies such as Princeton Review or BenchPrep offering online test courses.Many LMSs users use the authoring tool to create content and are hosted on the LMS.In many cases, LMS includes a primitive authoring tool to manipulate the basic content.There are several factors for creating complex content and integrating it into an LMS system, including AICC, SCORM and interoperability for learning tools.All widely supported LMS systems provide one or more of these factors for importing content.Evaluation of LMSs is a complex task and supports important different forms of evaluation.

Advantages of LMS and Online Classes:
• Organising e-Learn content in one location.
• Supplies infinite access to e-Learn materials.
• Easy tracking of student progress and performance.
• Reduces learning, development costs, and time.
• Keeps organisations updated with compliance regulations.
• Quickly expands e-Learn courses.
• Integrates social learning experiences.
• Different types of courses.
• More convenient learning environment.
• Suitability and flexibility.
• More interaction and greater ability to focus.

Method
The first phase of this project was to launch an Ubuntu instance on Amazon EC2.
Here are the steps to launch an Amazon EC2 instance    • If you saved your key with a passphrase, you will be prompted to enter that passphrase.An alert displays that the server's host is not cached.Click yes to continue the connection.

Installing easy engine
Easy Engine is a collected Linux shell script which allows you to manage WordPress on NGINX all automatically and easily as its name.You don't have to deal with many complicated web server configurations and leave some security holes.Easy Engine easily installs Nginx, WordPress, all dependencies and configure everything.It's a much quicker way of doing this portion of the install.

Setup of easy engine
Log in as root to your Ubuntu system and run the command below to update the repositories.

apt-get update
Install easy engine using the following command wget -qO ee rt.cx/ee && bash ee

To start nginx systecmctl start nginx
To confirm nginx is running systemctl status nginx

Installing wordpress
ee site create localhost --wpfc The above will be followed by prompts and you'll be required to provide your name and email address.
To view your default WordPress, navigate to your address bar and type your localhohst url, i.e., http://localhost/

To login type
http://localhost/wp-admin Supply the correct username and password supplied to you during the prompt when installing WordPress.

Map a domain name to AWS EC2 server
• Step 1: Go to the AWS management console.

Installing learn press
Learn Press can be installed from the plugins in the Admin dashboard of the WordPress.Learn Press enables the LMS and works with any theme.

Repls
Repls are the core of the Repl.itservice and they will always be available for all users.You can use as many repls as you like, and in any language.Start by logging into your account (or signing up for a free account).
You can access your repls and create new ones in the 'my repls' view, found at the top of your page once logged in.
You can create a new repl on this page by clicking on the big green button.You'll be prompted to choose a language-pick any language you like by typing a name in the search or by browsing the available languages by category.
Once you've selected a language, you'll be greeted with your IDE-Integrated Development Environment.Click on the pencil icon next to the repl name to edit the name and description of the repl.Repls belonging to free accounts are public.

Results
This research provides you with the knowledge about our LMS and which tools we are using.
The online courses may be unpopular for many students and teachers, so this research may be a help for you to try a new teaching technology with LMS.
In this research, we talked about teacher and student features, these features will make you more attentive to go on with our courses that are available in our LMS, also your friends are waiting for you to connect by the internal messaging system.This research will help you to understand how we make the internal communication system by messages or comments, also how you can compile your code with online compilers.

Conclusion
LMS for online programming languages is a software application to manage, document, track, report and deliver training courses in e-learning or training programmes.
LMSs for online programming languages range from training management systems and educational records to online course distribution programmes or mixed/online combinations with online collaboration features, school districts and schools using LMSs to offer online courses and supply onsite courses.LMSs also supply the teacher's lessons in a brick-and-mortar environment rather than just replacing them.Corporate training departments use LMSs to offer online training, as well as to automate record keeping and employee registration.
LMS provides and manages educational content, usually addressing student enrolment, course management, tracking and student work reporting.Some LMS help determine progress towards learning or training objectives.Most LMSs are web-based, for easier access.Industries (such as financial services and biopharma) are often using LMS for compliance training purposes.Some LMS providers include performance management systems, which include staff assessment, competency management, skill gap analysis, succession planning and multivariate evaluations (i.e., 360-degree review).Some systems support competency-based learning.
Although there is a wide range of terms for digital aids or learning platforms, such as course management systems, virtualised or managed learning systems or platforms, or a computer-based learning environment, the term LMS has become a comprehensive term for products that help to manage or provide part or all of the course.
Step 1 Click on the Launch Instance in the Amazon Aws to Launch an Instance of Web server • Step 2 Instances differ in the number of virtual CPUs (vCPUs), memory, available storage and network performance.Choose the desired Instance.In this Project, I have chosen Ubuntu based instance • Step 3 Configure the Instance according to your desired settings.

Figure 1 .
Figure 1.Instance settings • Step 4 On free tier you have the option to use up to 30 GB of storage space

Figure 4 .
Figure 4. Security section • Step Review your settings and launch the instance • Step Key pairs

Figure 6 .
Figure 6.AWS management console4.2.Using putty to login to the systemDownload and Install PuttySet up your session in PuTTy.You can name the session anything you like.In this example, we are naming the session based on the IP of the server we are connecting to, and click Save.

Figure 9 .
Figure 9. Settings for hosted zone • Step 7: Replace the existing Name server entries in your domain name provider with the AWS NS values from your hosted zone.The DNS changes will take up to 48 hours to get propagated all over the world.Mostly you will see the changes in short time.• Step 8: Create an A record using 'create record set' option in Route53 and assign the elastic IP of your ec2 instance which hosts your website.This will point the domain name to your website.