Comments (9)
One thing I wondered when I first noticed the comment fetching strategy: is it really that costly to fetch all the comments as you load the game? Maybe trimming down the response (e.g. is the "userInfo" obj really useful? the kifu id?)?
from gokibitz.
Good question. The very first kernel of GoKibitz's existence was as a newly born Express app that provided a rest API for creating and retrieving comments for a given kifu id and a specific move. Each move was its own world with its own comment thread, so it made sense to me to be able to retrieve it individually.
Much later, it finally occurred to me to revisit this idea and I wondered the same thing: whether it was really worth dealing with asynchronous loading for each move, and the answer is that I don't know. I still like the idea of being able to make a comparatively light call, because users jump into games all over the place, and I like the idea at least, of not loading all 100 comments on a popular game when someone jumps in to a specific point.
In terms of real user experience, though, I haven't tested exactly what the difference would be and whether it's worth the added complexity. I still like the way this makes games light-weight no matter how many comments are on them (there is at least some theoretical scale where loading all the comments becomes cumbersome), but there's no question that this makes things more complicated than they otherwise could be.
from gokibitz.
Ah I see.
It is true that people hop on games all over the place, but a game of go starts on an empty board :) so someone (I imagine) would skim through the first 20 moves, and that's 20 calls. At the same time, the new "?path=xx" feature would make it more likely to link to positions instead of whole games. In the latter case, fetching comments for one move at the time would make more sense.
I'm guessing this is a case of "in medio stat virtus" as you mentioned in your first post :) either fetch nearby comments or adding a loading icon sound like a great improvement to me.
from gokibitz.
+1 for this - I find gokibitz kinda unusable for this reason, because I go through the game looking for the comments - easy to miss if it doesn't load up.
A useful stopgap might be to load up whether a node has comments or not along with the move - that way at least you can say 'hey! this move has comments, wait up for them'
from gokibitz.
I appreciate knowing this is an issue, @CmdrDats. Are you on a particularly slow connection, out of curiosity?
The stopgap you suggest is actually a pretty good idea. I'll see if I can look into that sometime soon.
from gokibitz.
Not crazy slow (10mb line) - It's probably more because there's a half a second of lag before comment shows, so as I'm skimming through the game I don't see the existence of a comment on a node. That said - perhaps I shouldn't be skimming so much xD
from gokibitz.
PS. I'm in South Africa, so perhaps that is a contributing factor xD
from gokibitz.
That's the reason I initially wanted the skip to comment button. That way I can browse to all of them without missing any.
from gokibitz.
Skimming is totally valid, even if for didactic purposes it might be a good idea to go slowly at times. :) But, yeah, this is definitely a usability issue that I need to address.
from gokibitz.
Related Issues (20)
- Bug kifu listing page hanging HOT 8
- 'kifu' page hangs indefinitely HOT 4
- Feature Request HOT 1
- Main menu stuck open, hiding option buttons. HOT 3
- gokibitz seems to be offline: "502 Bad Gateway" HOT 1
- Bug: large boards break the site
- Bug: Player ranks display incorrectly HOT 1
- external ogs username url = 404
- Feature Request: Change Email HOT 1
- Delete repeted games, or even games that that the owner wants. At least those that doesn't have comments
- Board gets stuck between two moves
- Trouble saving profile HOT 7
- Feature Request: Self Reviewing HOT 2
- Bug: unable to login HOT 3
- Feature Request : Insert variantions at cursor
- Feature Request: Load _review_ from OGS? HOT 1
- Phantom stones after viewing variations
- feature request: Comments as list HOT 1
- Multiple games by one user (before another user uploads one) HOT 1
- Feature Request - RSS feeds
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 gokibitz.