A virtual tutor to learn Spanish
Get your keyboard ready and let's get started!
Try, Fail, Fix, Hit (TFFH), as in real life.
Pro3 has been created with the purpose of memorizing the main Spanish vocabulary and phrases in the most effective way, keeping the focus on memorizing without the possibility of losing concentration.
There are other options on the market, but the main task of Pro3 is to keep you fully focused on correctly typing the answer the first consecutive times or else you will constantly fail, unlike other applications where you just need to choose one option from the proposals, where cheating is encouraged
- Read the sentence. Write translation. Pulse enter
- To get the most out of it, write the translation as fast as possible. It is better to miss 9 times but hit 3 than to hit 6 taking twice as long. Depending on your performance it will become easier or more difficult, so don't force yourself, let your mind and your keyboard do everything for you.
- Progress is saved automatically so don't worry about anything else to learn
- Python 3
-showall
Get all sentences/answers-showremain
Get all remaining sentences/answers-showstudy
Get all inProgress sentences/answers-showlearn
Get all learned sentences/answers-reset
All advances are removed-exit
Leave Pro3-help
Get all commands
Functions for managing and searching for words and phrases will be added soon. The speed and ease of use will also be improved by adding a shortcut, as well as shortkeys
- Add Direct Access
- Add search functionality
In the future the language will be changed to java to be compatible with related projects, and add new features.
- Do it in java language
- Competition mode
- Race mode
- Analytics
- To have a first to start from
- Capsule is a section data composed by two lines
- First line contains fuel, tank and auxiliar value. Fuel value indicate your corresponding capsule level. Tank value indicate your capacity to achieve more level in corresponding capsule. Auxiliar value is reserved for future utilities (deep value, indicates if the capsule is out of your level)
- Second line contains sentence and answer data
- Capsule example:
2,4,0 run, correr
- Request previous failure data (You have to answer the first one correctly)
- Print sentence in console
- Request answer (Get answer in a variable named answerRequest)
- Compare answerRequest value with actual capsule sentence value
- If they match, return "Correct", if not, return "Incorrect"
- If its incorrect and if it has no previously failed, decrease fuel value and ask answer again (start loop again from there)
- If its incorrect and if it has previously failed, ask answer again without decrease fuel value (Fuel value decrese once per exam)
- If it has previously failed, increase fuel value
- If it has previously failed, continue without increase fuel value (You have to answer the first one correctly)
- Capsules are arranged according to fuel
- If the fuel is increased, the order changes
- Decrease in 1 all capsule fuel values
- If after this the fuel value of any capsule is +12, the capsule go to win.csv
- This means that you have answered capsule correctly considerable times
- Means you have reached the maximum level in that capsule
-
Zero Option: Heroku.com (live) Why not keroku?
- Alternative 0: https://pro3-1sabe.herokuapp.com/
- (if it doesn't work choose Alternative 1: Direct Access)
- Alternative 1: Direct Access
-
STEP 1: LOGIN
- Go to https://id.heroku.com/login
- User: [email protected]
- Password: codeinstitute3#
-
-
STEP 2: ACCESS THE BASH OF OUR APP
-
-
STEP 3: RUN OUR APP
- execute:
python pro3-1.py
- execute:
-
-
- Alternative 0: https://pro3-1sabe.herokuapp.com/
-
First Option: Gitpod.io (live)
- Alternative 2: https://gitpod.io/start/#franky3553-pro31-4wg3crk4si9
- Alternative 3: https://gitpod.io/start/#amethyst-cod-et2yt3l2i5n
-
Second Option: Replit.com
- Alternative 4: https://replit.com/@juan-francisc38/pro3-1?v=1
-
Third Option: Pythonanywhere.com
-
Fourth option: Manually (Alternative 6)
- Download this repo
- Open file in your terminal
- Execute:
python pro3-1.py
(Now pro3-1 is deployed in heroku, but it is more difficult to use because it is a terminal app)
I had problems connecting to heroku.com. After several time I have run into this recursive error:
at=error code=H14 desc="No web processes running" method=GET path="/" host=glacial-mesa-48481.herokuapp.com request_id=681cbb73-4404-4e42-babf-2e8aa970ba83 fwd="47.62.72.45" dyno= connect= service= status=503 bytes= protocol=https
Meanwhile tried on other alternative platforms, specifically on:
- Railway.app
- Cyclic.sh
- Render.com
- Deta.sh
- Glitch.com
- Fly.io
I have had different errors in each of them. I suspect it is due to the lack of web interface in my app and the use of .csv files. I'm still looking for a more efficient solution.
I finally solved it! How?:
- In myMainApp folder, Create "Procfile" file and not "procfile.txt"
- In Procfile, add
worker: python pro3-1.py
, and notworker python pro3-1.py
- In myMainApp folder, Create "requirements.txt" file
- Insert my App requirements exe
pip freeze > requirements.txt
- In myMainApp folder, Create "runtime.txt" file
- In runtime.txt, add
python-3.10.4
because my original python version (python 3.10.8) doesn't work on heroku 22 - Fix sintax error in runtime.txt: Python 3.10.4 -> python-3.10.4
- Fixing heroku branches specifications: chaos in migrates, main and master checkouts etc
So, now pro3-1 is deployed in heroku, but it is more difficult to use because it is a terminal app. Because of this i have created more alternatives on the following plattforms:
- Gitpod.io
- Replit.com
- Pythonanywhere.com
..which have been exposed in the Deploy Links! section (Alternatives 2 to 5)
It has been a pleasure developing this project. I hope you enjoy learning Spanish!