Blog / April 2022
-
7 April 2022Dashboard update
The homepage redesign aka "dashboard" is well underway. I've got the top portion as shown in this prototype screenshot pretty much done.
However now I'm unsure whether to update the site with an "incremental" update, or proceed with the "Lesson view" part of the dashboard. I'm tempted to do the latter, as I feel otherwise it may be confusing for users. I mean it will probably make a lot more sense to have both at the same time.
Implementing the Lesson View
The Lesson view is a bit of a challenge because I want to show the SRS status of flashcards, which is potentially lots of data (some lessons have 100+ kanji in them) - and I need this component to work - mulitplied by 56 lessons - in the new "View All Lessons" page (currently "Progress chart" on the top right of the homepage).
So I'm thinking perhaps I should implement a basic Lesson view with no SRS info in it, which is a lot simpler. Since the cards show kanji and keyword - I'll need to refactor the data that is already used on the Study pages - the kanji sequence as well as the keywords are dependent on the user's choice of RTK edition in the Account Settings !!
All of this would be much simpler if there were no multiple indexes. But on the plus side, having the code to support Old/New edition indexes means I can realistically add JLPT sequences in the future, and you;'d be able to switch between these, and the dashboard would show progress and lessons relevant to the user's choice of "kanji sequence".
Considerations for RTK Volume 3
Hopefully that makes sense. And this is how I would like to implement RTK Volume 3 support eventually. Right now the site handles RTK3 as an extension of the Volume 1 index. You can see a sample of the code here, we have basically 800 kanji from RTK Volume 3 lumped in lesson 57.
So there is a lot of conditionals in the site that deal with "if this index is <= MAX_KANJI_IN_VOLUME_1" then consider it is RTK 1, or RTK 3 etc. In the future I'll need to refactor this so that Volume 3 is an entirely separate sequence - and then for users who want to study RTK 3. the homepage progressbar will track progress along this track!
So that's how everything is always a bit more complicated : keywords for kanji change between editions/indexes (let's not even get into user's customized keywords), then index for any given kanji does not map to a fixed kanji / unicode point - it depends what the current "sequence" is.
So for the client side / front end side of things then, I need to send the relevant data, in an optimized way. Nothing really complicated, just takes time.
I'm excited to work on the Lesson View component though! In fact if you look at it the "kanji card grid" is very similar to what is currently shown in the Custom Review summary. So this "kanji card grid" view can also be used there. It could even potentially be used in the Manage Flashcards page for a more visual friendly way of editing cards, perhaps with a little "menu" icon on each card, to add/delete/edit a card.
So I think I'm probably just going to go ahead with the Lesson View even though I would have liked to do an incremental update at this point. Hopefully within a couple weeks I can finish this and do an update with a functional dashboard.
The "Progress chart" page, soon to be "View All Lessons" is another challenge to tackle. Here the user can potentially "expand" all of 56 lessons, each with SRS status for the cards. I have to look at the data and determine if it is possible to send it all at once, or if it's worth doing client/server calls .. which means less data sent in advance, but each time you want to look at a lesson there is that delay before the data comes in.
Hope you enjoyed this little update. Sorry it is fairly technical!
By Month
- Oct 2024 (1)
- Sep 2024 (1)
- Jun 2024 (2)
- May 2024 (4)
- Apr 2024 (3)
- Mar 2024 (1)
- Feb 2024 (1)
- Dec 2023 (1)
- Nov 2023 (2)
- Oct 2023 (2)
- Apr 2023 (2)
- Mar 2023 (2)
- Feb 2023 (1)
- Jan 2023 (2)
- Dec 2022 (1)
- Nov 2022 (2)
- Oct 2022 (3)
- Sep 2022 (1)
- May 2022 (4)
- Apr 2022 (1)
- Feb 2022 (2)
- Jan 2022 (2)
- Dec 2021 (4)
- Nov 2021 (2)
- Oct 2021 (2)
- Sep 2021 (2)
- Aug 2021 (1)
- Apr 2021 (2)
- Feb 2021 (3)
- Jan 2021 (3)
- Dec 2020 (1)
- Nov 2020 (1)
- May 2020 (1)
- Apr 2020 (1)
- Jan 2020 (1)
- Oct 2019 (1)
- Sep 2019 (1)
- Aug 2019 (4)
- Jul 2019 (3)
- Jun 2019 (1)
- May 2019 (1)
- Mar 2019 (2)
- Jan 2019 (1)
- Nov 2018 (3)
- Oct 2018 (8)
- Sep 2018 (4)
- Aug 2018 (3)
- Jul 2018 (1)
- Jun 2018 (4)
- May 2018 (1)
- Apr 2018 (1)
- Mar 2018 (1)
- Jan 2018 (1)
- Dec 2017 (6)
- Nov 2017 (4)
- Oct 2017 (4)
- Sep 2017 (5)
- Aug 2017 (5)
- Jun 2017 (3)
- May 2017 (2)
- Apr 2017 (3)
- Mar 2017 (7)
- Feb 2017 (10)
- Jan 2017 (11)
- Dec 2016 (6)
- Nov 2016 (5)
- Oct 2016 (6)
- Sep 2016 (7)
- Aug 2016 (3)
- May 2016 (1)
- Mar 2016 (2)
- Jan 2016 (1)
- Dec 2015 (3)
- Nov 2015 (1)
- Oct 2015 (1)
- Sep 2015 (7)
- Jul 2015 (2)
- Jun 2015 (1)
- May 2015 (5)
- Apr 2015 (4)
- Mar 2015 (5)
- Feb 2015 (4)
- Jan 2015 (5)
- Dec 2014 (4)
- Nov 2014 (3)
- Oct 2014 (2)
- Jun 2014 (1)
- Apr 2014 (2)
- Mar 2014 (4)
- Feb 2014 (3)
- Jan 2014 (4)
- Dec 2013 (2)
- Oct 2013 (1)
- Sep 2013 (1)
- Jun 2013 (4)
- May 2013 (1)
- Mar 2013 (1)
- Jan 2013 (2)
- Oct 2012 (2)
- Aug 2012 (1)
- Jul 2012 (2)
- Jun 2012 (2)
- May 2012 (1)
- Mar 2012 (2)
- May 2011 (1)
- Apr 2011 (4)
- Mar 2011 (3)
- Feb 2011 (2)
- Jan 2011 (2)
- Dec 2010 (8)
- Nov 2010 (8)
- Oct 2010 (3)
- Sep 2010 (3)
- Aug 2010 (1)
- Jul 2010 (2)
- Jun 2010 (5)
- May 2010 (1)
- Apr 2010 (3)
- Mar 2010 (4)
- Feb 2010 (2)
- Jan 2010 (1)
- Dec 2009 (5)
- Nov 2009 (5)
- Oct 2009 (1)
- Aug 2009 (1)
- May 2009 (5)
- Apr 2009 (2)
- Mar 2009 (1)
- Feb 2009 (2)
- Jan 2009 (2)
- Nov 2008 (1)
- Oct 2008 (1)
- Sep 2008 (1)
- May 2008 (2)
- Apr 2008 (1)
- Feb 2008 (6)
- Jan 2008 (5)
- Dec 2007 (6)
- Oct 2007 (1)
- Sep 2007 (2)
- Aug 2007 (3)
- Jun 2007 (1)
- May 2007 (5)
- Apr 2007 (1)
- Mar 2007 (2)
- Feb 2007 (1)
- Jan 2007 (4)
- Dec 2006 (3)
- Aug 2006 (1)
- Jun 2006 (3)
- Apr 2006 (6)
- Mar 2006 (8)
- Feb 2006 (1)
- Jan 2006 (4)
- Nov 2005 (1)
- Oct 2005 (4)
- Sep 2005 (1)
- Aug 2005 (11)