Comments (7)
The tooltip is a small error, this is actually a "Home" button. But indeed, you cannot go back to the lesson. When you leave it, you leave it. With the text and quiz part of the lesson it's not a big deal, as you don't lose any progress (quizzes are tracked, the rest is just the text and examples that you study on your own).
For practices there can be an issue if you leave one after you've worked on the code. To that end we have #9 that would add a confirmation prompt when you try to do so (whether to go back to the text part of the lesson, or to the index).
from learn-gdscript.
It is a big deal from a UX perspective since it's disorienting. The progress you lose is "how far you've scrolled", that is, where you are in the text - and not just the actual scroll but mentally as well.
Menus are part of navigation and navigation is both about going somewhere And knowing where you are. I did not click the icon because I wanted to go somewhere else - I wanted to know where I was, and I also wanted to check my progress. (They kind of go together in this type of app.)
I get your explanation of what the button does but it's also completely foreign to me as a user. I did not expect to leave the lesson by simply opening a menu.
from learn-gdscript.
I think the misconception here is that it's a menu, when it's not. Same as an index in a book, it's just another page. The navigation in the app is designed to only allow going back, with no forward history. I guess we need to indicate that better somehow.
Also, what kind of progress do you want to check? We can add some of that information to the lesson itself. There is not much reason to go to the index other than to go to a different lesson.
PS. Remembering your last scroll position, in paragraphs perhaps, for the last lesson you've visited is trivial enough, we can add it as well. But I think that the misconception of index being just a menu needs to be addressed on its own. We can, perhaps, animate it the same as we do lesson/practice transition to build that familiarity.
from learn-gdscript.
So to address this what I think we should do is
- Fix the "Home" button tooltip, obviously 🙃
- Detect and track the last content block of the lesson that the user has seen.
- If you return to the same lesson you just left (or launch the app and click "Continue the Course") we should use that information to restore your scroll position, roughly at the same place.
- Add an ability to create bookmarks throughout the lesson page and allow to quickly navigate to these bookmarks (from the index, probably), #45
- Add an in-lesson table of content that would allow quickly scrolling to the top, to each named content block (#19), to each quiz, to the last viewed position, to any bookmark, #43
And possibly add some progress information to the lesson screen itself, though I'm still not sure what that would be.
from learn-gdscript.
I'd add "support for escape". My reflex every time I open the index by mistake is to press esc to go back where I was.
from learn-gdscript.
I've implemented keeping track and restoring the position in the lesson. If it was the last lesson you've visited, we try to put you next to the same piece of content that you likely saw last. If you come back to a different lesson, we will try to put you to the first unread part of the lesson. In all other cases, we'll keep you at the top of the lesson.
Let's keep this issue open to see if it works reasonably well. (Not yet available on the live version)
from learn-gdscript.
I would prefer to close issues that we addressed and then reopen or let people open new ones to suggest improvements.
I'll close for now.
from learn-gdscript.
Related Issues (20)
- The Error Menu doesn't contain info for a specific type of error.
- Clarify that the methods used are not included in Godot HOT 2
- Lesson 17 practice bug after resetting.
- Chapter 18 For Loop quiz
- In Practices, "Hints" and "Checks" are not part of the translations HOT 3
- "Report an issue" translations are not working.
- Translation - Portuguese (Brazil) HOT 2
- Lesson 18 breaks cell.y HOT 2
- Lesson 19 HOT 1
- Lesson 26 phantom variable HOT 6
- Can you please integrate Turkish translations, they are ready now HOT 1
- Chapter 10 Spanish translation HOT 1
- Lesson 26 Practise 1 confusing issue
- Lesson 28: specifying types error in initial assignment values HOT 1
- Add mobile support HOT 2
- lesson 13 if not working correctly HOT 2
- Lesson 26, can click on "type"
- Incorrect var name
- Lesson 14 Practice 2 cheat
- We are making a new course to replace this HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from learn-gdscript.