2021-11-18 Questions for the soul

I’m sitting at the table in my living room, the work laptop is switched off, the big monitor is dead, no lights on the mic, no lights on the fancy keyboard. In front of it all, the black laptop, running Emacs, full screen, with font size 20. It’s a bit weird.

I wonder whether I should add a kind of “oracle” game to The Transjovian Council, my Gemini site. It would be a bit like StackOverflow for normal people with questions. I don’t want to keep questions and answers forever, and I don’t want random strangers to rate the answers. But the question asker should have a say, for sure.

I’m trying to remember how the Internet Oracle worked back in the Usenet days. And I’m trying to remember whether it was a good idea.

Anyway, this is how it would work:

Harassment

I don’t know how to prevent this. Hopefully the question asker being anonymous, the number of answers that can be written being limited, and the ability of the question asker to simply delete the answers before anybody else can see them makes it an unatractive platform?

A specification of sorts

I’m trying to figure out what this application would need to do.

A question has the text and three statuses: asked, answered, and published. It has an owner identity and answers. Each answer has the text and an owner identity.

/oracle

You can see the “asked” and the “published” questions; the “answered” questions are only visbile if you’re logged in and the question is yours. A list of links → /oracle/question/n.

If you’re logged in, you can ask a question or check your “asked” question → /oracle/ask.

/oracle/question/n

You see the question. If the question is “published”, you also see the answers to it. There are no names to either questions or answers unless people put them there.

If you’re logged in, and this is not your question, and it has the status “asked” you can add your answer → /oracle/question/n/answer. You can only add one answer. If you subsequently delete your answer, you still cannot add a new answer. If you add the third answer, the status of the message changes to “answered” and it is no longer visible in the list under /oracle.

If you’re logged in, and this is your question, you can delete it → /oracle/question/n/delete. This cannot be undone. You are redirected to /oracle.

If you’re logged in, and this is your question, you can delete any answer; if this is your answer, you can delete it. In either case → /oracle/question/n/m/delete. When no more answers remain and the question is marked as “answered” or “published”, the question is deleted as well. This cannot be undone. You are redirected to this page if the question still exists, or to /oracle if it was deleted.

If you’re logged in, and this is your “asked” question, you can mark it as “answered” before it gets three answers → /oracle/question/n/answered. The question is no longer listed on /oracle. This cannot be undone. You are redirected to this page again. Now is the time to delete the answers you don’t want see published.

If you’re logged in, and this is your “answered” question, you can mark it as “published” → /oracle/question/n/publish. This cannot be undone. The question is again listed on /oracle but no more answers can be added. Your only option is to delete the question and all its answers. You are redirected to this page again.

/oracle/ask

If you’re logged in…

If you have not “asked” a question, you can ask one here. You cannot ask more than one question at a time. → /oracle/question. Mark your current question as “answered” or delete it in order to ask a new one. This asks you for a question and returns you back to /oracle/ask.

You see the list of all your questions → /oracle/questions/n.

/oracle/questions

You see a filtered list to just your questions → /oracle/question/n.

Data structure

I like to use plain files and no database because then I can examine data using a file browser and a text editor. Also, I use enough databases for work. In the old days, I might have used either RFC-822 style files (like mail headers) or ASCII control characters for field separations (there’s a unit separator, a file separator, a field separator – what else could you possibly need? For Ijirait I used a JSON file. Perhaps I shall use a single JSON file. After all, it’s not as if I’m designing for scale, here!

An array of questions, each being a hash with keys number, text, fingerprint, status, and an array of answers; each answer is again a hash with keys text and fingerprint. I don’t think I need to use hashmaps because I’m not planning on extending the datastructure for anything and arrays preserve the order of things, which might be nice.

​#Gemini

Comments

(Please contact me if you want to remove your comment.)

The real question is whether we will get to hear more about Lisa and Zadok.

– Inhabitant of Carcosa 2021-11-19 00:25 UTC

---

The internet oracle is actually still going on usenet (and I think there’s a web mirror too)

– 2021-11-19 07:59 UTC

---

There sure is.

Do you endeavor with a difficult dilemma, or ponder a posed problem you cannot perspicaciously pursue? Angling anxiously for advice? The Internet Oracle can help! Like all famous oracles, the Internet Oracle is omniscient, and will provide some answer to your question. In return, the Oracle may require that you perform a small service ... – Internet Oracle

Internet Oracle

– Alex 2021-11-19 22:28 UTC

---

Anyway, the Transjovian Oracle is live!

Ask a question – Visit the Oracle

Visit the Oracle

– Alex 2021-11-20 11:25 UTC