Learning Machine is a web application for organizing and managing your individual learning goals. It'set up with the following features....
- Create exercises to practice on.
- Set up support resources to support you on those exercises.
- Review history of attempts at practice exercises to see where improvement is needed.
The instructions assume you are running a modern 64-bit Linux distribution. Beyond that, it is expected you have the following.
- Git
- Ngrok
- Vagrant
- Virtual Box
- Ansible
- A Google account that will allow you to setup Google Oauth
TODO
Logging into Learning Machine requires that the user go through the Google Oauth system.
It's beyond the scope of the instructions to explain the workings of this system, there are some things you will need.
At the Google Developer's console, you will need the following....
- A credentials fle specifically named "client_secret.json". This can be downloaded via the Google dev console.
- Permissions set up to access the Google Plus v. 1 API
- A redirect specified for learningmachine similar to the following kind of address. http://yourdomainhere.com/login . Note that the /login at the end is important for this setup to work.
Now is the time to test out your installation. Here's what you do.
- Go to your ngrok view. Copy the part of the url that starts with "http://"
- Paste that url into the browser of your choice and hit enter. (DO NOT USE a localhost address)
- You should be at the "welcome" page. Click the "login" button.
If all goes well, you should now have the Learning Machine main page in front of you. Have fun!
When you first arrive at Learning Machine, you should see a prompt that says "Welcome to Learning Machine" with a button that says "Login with Google". When you push that button, you will be taken to Google's login page where it will tell you that there are certain permissions needed. When you approve, you will be taken back to Learning Machine where you will have your very own account setup for you and ready to use.
Learning machine is organized into two general views of your materials.
- Exercises / Resources - Manage exercises. Drill yourself on question. Manage a list of resources to help you get better at answering those questions.
- Attempts Report - Review your history of any and all attempts made on your exercises.
Exercises will let you quiz yourself and rate your own knowledge. For these exercises, you have options for adding new material.
- At the top of the screen is a button that says "Add Exercise". Press it to make a dialog box show up.
- Fill out the question field with the question you will be asking yourself for this exercise.
- Fill out the answer field with the answer to this question.
- Finally, click the "Add Exercise" button that appears below the answer field in the dialog box. This will add your exercise to the list of exercises.
As your exercise list grows, you'll want to place tags on your questions to keep them organized. Here are some of the things you can do with tags.
- Change your tags by clicking on "Change Tags" and making a space separated list of tag terms made up of numbers and letters.
- Click on one of your exercise's created tags to focus in on your growing list of exercises by topic.
- Click on "All Tags" to expand out to your full list of questions.
A key part of the "exercise view" of Learning Machine is the exercise list. You can assess yourself on anything by doing the following.
- Click on an exercise from the exercise list.
- The question will pop up in a dialog box. Consider what the answer would be to that question. Push "Click for Answer" when you are ready to see the answer.
- The question and answer will show up in another dialog box with some buttons to pick from. Click the one that reflects how you felt that you did. If you don't want to self-rate right now, just click anywhere outside the dialog box.
Every time you choose an answer to a question, that answer will be recorded in your history.
New learning resources are just hyperlinks to other resources that can help you gain better mastery of your exercises. The process of creating them is simple.
- Click on the "resources" button next to the exercise that you want to add a resource for. This will cause a dialog box to show up with whatever existing resources you have.
- Click on the "Add Resource" button at the bottom of this dialog. This will make a new dialog show up for adding the resource.
- Fill out the "New Resource Caption field with the caption you want for this url link.
- In the "New Resource URL" box, fill in the URL to the learning resource.
- When done, click the "Add Resource" button as seen in the bottom of the dialog box.
And that's it.
As you develop exercises, you will eventually have a good list of resources to work with. Here's how you navigate to the resources you need.
- Scroll through your exercises to the one you want resources for.
- Click the "resources" button next to the exercise in question.
That's all there is to it. You should now have a list of all the resources you set up for that particular exercise.
Every exercise you do is recorded in your history. You can view that history any time from the exercise view by clicking "Exercise Attempts Report" at the top of the page. Doing so will bring up a page of every attempt ever made on every question. The report is organized by
Exercise -> Rating with Attempt Time
If you have any questions, feel free to leave raise a new issue in the issues tracker for this project. I appreciate any and all feedback as it can often help in making Learning Machine better. Thanks.