Veritula – Meta
#2677·Dennis HackethalOP, 7 days agoThe top level ideas could be rendered as turbo frames of
ideas#show.
I just tried this. Seemed promising at first but sometimes ideas load out of order. Looks horrible.
#2659·Dennis HackethalOP revised 7 days agoI could use
ActionController::Liveto stream top-level ideas to the page one by one. Instant page load.
cmd + f won’t work reliably.
#2635·Dennis HackethalOP, 9 days agoI could lazy load ideas: only load the parts of the page that would be visible on the current viewport. Then load more parts as the user scrolls.
That means cmd + f won’t always work.
#2630·Dennis HackethalOP revised 9 days agoDiscussions are getting slower to render as they grow. It’s a rendering issue (not a db issue).
The top level ideas could be rendered as turbo frames of ideas#show.
#2675·Dennis HackethalOP, 7 days agoI could have a separate route at
/ideas/:id/isolatedwhich renders only the idea without any parents or children. And then a discussion could render a bunch of deeply nested turbo frames loading that route.
For large discussions, wouldn’t that flood the server with requests?
#2630·Dennis HackethalOP revised 9 days agoDiscussions are getting slower to render as they grow. It’s a rendering issue (not a db issue).
I could have a separate route at /ideas/:id/isolated which renders only the idea without any parents or children. And then a discussion could render a bunch of deeply nested turbo frames loading that route.
The thread contains a suggested solution: use authenticated do … blocks in routes.rb instead of before_action :authenticate_user! in controllers.
The thread contains a suggested solution: use authenticated do … blocks in routes.rb instead of before_action :authenticate_user! in controllers.
It’s probably a good idea to do this anyway to avoid divulging the existence of routes that unauthenticated users don’t need to know exist. (They will get a 404 instead of a 401.)
#2670·Dennis HackethalOP, 7 days agoIncompatible with Devise authentication: https://github.com/heartcombo/devise/issues/2332
The thread contains a suggested solution: use authenticated do … blocks in routes.rb instead of before_action :authenticate_user! in controllers.
#2659·Dennis HackethalOP revised 7 days agoI could use
ActionController::Liveto stream top-level ideas to the page one by one. Instant page load.
JS modules are always deferred and unusable until the page is fully loaded. As a result, comment buttons and gutters won’t work while ideas are still streaming onto the page.
#2659·Dennis HackethalOP revised 7 days agoI could use
ActionController::Liveto stream top-level ideas to the page one by one. Instant page load.
Incompatible with Devise authentication: https://github.com/heartcombo/devise/issues/2332
Feature idea: pay people to address criticisms (either revise an idea and check off criticisms or counter-criticize).
#2659·Dennis HackethalOP revised 7 days agoI could use
ActionController::Liveto stream top-level ideas to the page one by one. Instant page load.
This page used to take ~3.5 seconds to load. Now it renders within 600ms :)
‘Veritula’ is a difficult name, people don’t know how to pronounce it. They usually can’t remember it.
‘Veritula’ is a difficult name, people don’t know how to spell or pronounce it. They can’t easily remember it.
#2654·Dennis HackethalOP, 7 days agoIdea: ‘The Second Renaissance’, ‘2nd Renaissance’, ‘2R’ for short.
‘Renaissance’ isn’t exactly easy to spell either.
The following commits should address this:
3af3966Clarify in title that someone revised an idea (rathen than originated idea)The HTML title now says ‘Idea x revised by…’
6c70ceaUnderneath idea, indicate that someone revised an idea (rather than submitted it)It says ‘Dennis Hackethal, 1 day ago’ for new ideas, ‘Dennis Hackethal revised 1 day ago’ for revisions
d20d386Explain that users can revise each others’ ideasAs part of the alert on the revision page, when the user is about to revise someone else’s idea.
c5748e3Turn ‘revise’ link into ‘revise their idea’ when it’s someone else’s ideaUnderneath each idea.
e0fbd41List user under each revision in version historySo that each version is clearly attributed to the corresponding user.
06d3241List contributors at top of version historyComma-separated list to see all contributors at a glance. Eg see here
The following commits should address this:
3af3966Clarify in title that someone revised an idea (rather than originated idea)The HTML title now says ‘Idea x revised by…’
6c70ceaUnderneath idea, indicate that someone revised an idea (rather than submitted it)It says ‘Dennis Hackethal, 1 day ago’ for new ideas, ‘Dennis Hackethal revised 1 day ago’ for revisions
d20d386Explain that users can revise each others’ ideasAs part of the alert on the revision page, when the user is about to revise someone else’s idea.
c5748e3Turn ‘revise’ link into ‘revise their idea’ when it’s someone else’s ideaUnderneath each idea.
e0fbd41List user under each revision in version historySo that each version is clearly attributed to the corresponding user.
06d3241List contributors at top of version historyComma-separated list to see all contributors at a glance. Eg see here
Changing the view logic so that the controller can stream each deeply nested idea separately sounds non-trivial. It’s not clear to me how to do that currently, It may be possible someday if I adjust Hiccdown to allow the use of enumerators or something like that.
Changing the view logic so that the controller can stream each deeply nested idea separately sounds non-trivial. It’s not clear to me how to do that currently. It may be possible someday if I adjust Hiccdown to allow the use of enumerators or something like that.
I could use ActionController::Live to stream ideas to the page one by one. Instant page load.
I could use ActionController::Live to stream top-level ideas to the page one by one. Instant page load.
#2646·Dennis HackethalOP, 8 days agoI could use
ActionController::Liveto stream ideas to the page one by one. Instant page load.
Changing the view logic so that the controller can stream each deeply nested idea separately sounds non-trivial. It’s not clear to me how to do that currently, It may be possible someday if I adjust Hiccdown to allow the use of enumerators or something like that.
#2635·Dennis HackethalOP, 9 days agoI could lazy load ideas: only load the parts of the page that would be visible on the current viewport. Then load more parts as the user scrolls.
Complex, requires non-trivial scroll listeners correlated to deeply nested ideas.
#2653·Dennis HackethalOP, 7 days ago‘Veritula’ is a difficult name, people don’t know how to pronounce it. They usually can’t remember it.
Idea: ‘Return to Reason’, ‘RR’
#2653·Dennis HackethalOP, 7 days ago‘Veritula’ is a difficult name, people don’t know how to pronounce it. They usually can’t remember it.
Idea: ‘The Second Renaissance’, ‘2nd Renaissance’, ‘2R’ for short.
‘Veritula’ is a difficult name, people don’t know how to pronounce it. They usually can’t remember it.
#2647·Dennis HackethalOP, 8 days agoIncluding that module significantly slows down hot reloads on all pages. I need a tight feedback loop in dev.
Replacing a raw SQL query in Idea.tree with a standard ActiveRecord query solves this issue.
#2650·Dennis HackethalOP, 8 days agoAfter resetting my working directory and beginning to implement streams a second time, I can no longer reproduce this issue, despite reasonable attempts to reproduce it.
I’ve since been able to reproduce the issue after all. Running a raw SQL query in Idea.tree in combination with the inclusion of the Live module seems to mess with Rails’s reloader.
#2647·Dennis HackethalOP, 8 days agoIncluding that module significantly slows down hot reloads on all pages. I need a tight feedback loop in dev.
After resetting my working directory and beginning to implement streams a second time, I can no longer reproduce this issue, despite reasonable attempts to reproduce it.