# Dogfood Forum User Interviews & Landscape Analysis ## **Overview v1 - a.k.a private polling** Requirements are here https://hackmd.io/NhSVBcB2Q9CHvHj_ZLBFZg ## **Overview v2 - a.k.a PSE Forum** Evolve from **an internal polling tool** to a **collaboration tool among PSE members**. Then to **a tool for sharing work** more broadly, and finally, into **a tool that others can fork** and adapt for their own purposes. ### **Target Users** - **Primary:** Researchers and Developers - **Secondary:** Broader audiences, including other organizations or research teams ### **Use Cases** - Facilitate technical collaboration between: - Researchers and Developers. - Researchers with Researchers. - Researchers with the Audience: Publish research and request feedback. - Document Discord learnings through AI - Heuristic: does this post helps us at better guiding us in technology? - PSE Project Life Cycle Management: propose, collaborate, and review ideas asynchronously. ### **Privacy Requirements** - **Posting:** - Only PSE members can make new posts on the forum. *<- Carlos: why? we should open it for everyone to contribute.* - **Default Posting:** posts are attributed to the author by default. - **Private Posting:** posts can be made 100% anonymously optionally <- #note: review this requirement if it's needed as no internal process/feedback makes sense here. - **Visibility:** - **Default Privacy:** posts are **private by default** (visible only to other PSE members). - **Optional Public Sharing:** private posts can optionally be made fully **public**. - **Commenting Permissions:** - By default, **only PSE members** can comment on public posts. - Optionally, **public commenting** can be enabled for everyone. - (future), **gated commenting** can be implemented using PODs, EAS, etc. ### Main Features - A front end in TS with most features like [Discourse](https://discourse.org/) - An editing platform like [HackMD](https://hackmd.io/s/features) (supports LaTeX, markdown, Graphvis, etc) - A modular backend in Rust? that we can integrate many PSE/ZK projects. ### **Possible Starting Points** **Option 1: [Freedit](https://github.com/freedit-org/freedit)** - **Pros:** open-source, fast, customizable. - **Cons:** rust-only (steep learning curve for developers used to JS), limited internationalization support (i18n). **Option 2: [Tonk](https://www.tonk.xyz/posts/speakeasy)** - **Pros:** utilizes zkTLS, which aligns with privacy and cryptographic goals. Secure chat room creation with minimal setup. - **Cons:** experimental and focused on private chat, not forums. **Option 3: [Stealth Note](https://stealthnote.netlify.app/)** - **Pros:** already functional, easy to integrate with Google Auth. Uses JWT to generate ZK Proof of email ownership. - **Cons:** relies on **Google Auth** (introduces third-party dependency). **Nullifier Question:** needs confirmation if it supports nullifiers. ### FAQ #### Why not another tool like ethresear.ch, zkresear.ch, [HackMD](https://hackmd.io/), [GitHub](https://github.com/), [Discord](https://discord.gg/) or [Notion](https://www.notion.so/)? - **ethresear.ch:** - Too **general** in focus, leading to noisy conversations. - Not optimized for the specific needs of **PSE research collaborations**. - Our work is not only related to Ethereum. - **zkresear.ch:** - Inactive with **low community engagement**. - Limited value as a collaborative tool compared to building a new forum. - Our work is not limited to ZK but also FHE, MPC, etc. We'd like to have some control to integrate PSE tooling. - **[GitHub](https://github.com/):** - Effective for **code collaboration**, but lacks forum-style discussions. - Not designed to facilitate **non-code collaboration** between researchers and developers. - No way to integrate our tooling or detailed privacy/access control. - **[Notion](https://www.notion.so/):** - Feature-rich but **slow and not open-source**. - Better suited for **non-technical users** and simple websites. - Lacks **customizability** required for collaborative technical work. - **[Discord](https://discord.gg/):** - Fast to chat but bad to organize knowledge learned during conversations. - **[HackMD](https://hackmd.io/):** - Very quick to put thoughts together, but it's not built for long term thing. It's messy. People submit a note and forget about permissions, visibility. etc. ### **Misc Ideas and Considerations** **1. Tools Decision Tree**: generate an optional guidance of what tool makes more sense for PSE to use and in which context and why: e.g. Discord for free flow discussions, Telegram for external collab, PSE Forum for deeper conversations/organized knowledge, etc. **2. On Distinguishing Public vs. Private Areas**: use **color-coded sections** or distinct areas to clearly differentiate: - **Private/internal-only spaces.** - **Publicly readable posts.** - **Publicly commentable threads.** **3. Merging v1 (Polling) with v2 (Forum)** - Integrate **polling capabilities from v1** into the forum (v2) for seamless collaboration. - Allow the ability to **sign messages** (to post as oneself) and **participate in anonymous polls** within the same thread, fostering privacy where needed. **4. Long-Term Forking Strategy**: make the platform **modular** and easy for other organizations to fork and adapt. **5. PSE-bot:** i) summarizes new forum posts and ii) summarizes (and sometimes post) conversations on Discord channels when requested. **6. Categories:** this is a tough problem to solve now so we'll punt it till later. Categories are useful for discoverability and easier to digest relevant information but also could be limited/outdated quickly. **7. Tools for better writing:** Which tools could we incorporate for all of us to be better at writing in this forum? **8. Subscriptions, Notifications, Reputation:** these are nice features to have in a forum. ---- # Notes From Meetings - they are summarized above --- # Meeting CC - We need a forum to collect this stuff https://hackmd.io/@liangcc/Syd90obkJg/%2Fu8BSLq4_S4STOgT4oo8Uxg - Something liek this but make it more public and people to collaborate (more private) - Create a forum with anonymous one with reputation - Alternatives: - Discord is terrible: lots of good discussions get burried inside a thread. **If there was a feature, GPT bot to summarize a thread to call it down, summarizes it and poses it and create a new post on research forum it would be fun.** - Miha wrote a good explanation about Lattice and got buried in Discord thread. - HackMD is very quick to put out stuff like this book *(above) but* it's not built for long term thing. It's messy. People submit a note and forget about permission thing and have to ping to turn on permissions. - Discord and HackMD are tools to engage conversations but probably want to create things organized and curated. - Ethresear.ch: mostly for Ethereum and not all collaborators are focused on Ethereum or even web3. In PSE we're kinda ethereum agnostic. It'd be very mentally demanding to follow notifications. it'd be better to have our own forum and our own topic. - Our projects are very random (ID, zkVM, common themes). There should be something that only belongs to PSE - zkresear.ch: it's dead. Would we revive it? It would deppend if we shoul ddepend on Discourse system like a tooling question. Who deployed it? If we want to integrate PSE ID Stack or Something PSE Tooling into that? probably change the code and migrate the data. **Integrate PSE stuff would be hard.** It's some another forum. We do ZK and MPC and FHE not just ZK. Other than this I don't see too much downs. - What things to do in here? - Deeper Technical Directions - Provide Technical Direction for PSE - Before, Barry did all technical direction decisions for us. Now we need to have that for direction of research: important problems to solve, decisions, etc. - If we want to derive fact based management decisions we need a forum and look into what worked in the past and it cou - The forum should: Research ideas + Project Experience it had in the past. Random and speculative idea. Include discussions from developers, ideas, etc. - All PSE member should be comfortable saying things without filling like not qualified to post - What types of posts doesn't makes sense? - Internal Processes: Travel Request, hiring, expenses, etc. - Which ones does make sesne to have here? - Anything that is purely technical and kind: user related, application related, things we should build or shouldn't build. - Trend product society discussions. - It should be inspiring. - The forum should have categories and labels: discourse have that feature. People can subscribe topics based on category. - On Categories: - We need new ones - I was moderator at Ethreser.ch beofre, wanted to categorize things. It's not easy. Innovation is when you break the categories. - Forum could help people find features to become better writer (content should be digestible to maximize impact) - should be some ways to improve the reader-writer experience. (like proof reading bot before you post, images, graphs?) #### Feature Summary: - Easy permission - Reputation attached to it - Simple Notification - Simple subscription - *Tweeter bot that summarizes with TLDR* (Barnabe or someone created it) #### Risks: - Need admin to curate categories - Scope of the forum - Needing to define the categories - Overloading with irrelevant content # Meeting Carlos - Problems in Research: - 1)Too many things that we talked isn't in public domain - Discord all in the discussions in ideas - At least in GitHub issues. It's not discoverable but it's public - Public + Discoverable - 2)If it's public, a random can contribute to ideas and thoughts - 3)In Research a lot of floating ideas and discussions more than people programming. - Therefore to best interact this would be in forum. - Our own tools we can make them. Be our own users. - A lot of feedback. - Carlos usage: - Some ideas written in HackMD and sent over - Some other ideas discussed over Discord - Depends on level of confidence in the diea to make it public or not - Discord confuses me a lot. If i'm not up to day it's weird. - For DM i use it. - For Async in ideas forum is good or better. - Why not Ethresear.ch or zkresear.ch? - Most things we do isn't super related to Ethereum - zkresrea.ch is dead. Nobody sees it. - We're only going to talk ZK? nope. Also talk about MPC, FHE - Suggestion: - Chatting with 0xPARC. Working v2 on PODs. More usable everywhere. - **Idea: intergrate PODs as forum certificates.** - It's also integrated recursive PODs. - Integrate PODs like badges (like notifications) in the forum. Like minting PODs and make proofs to respond to certain PODs. Only people from more than > comments intervene. Make a proof about a POD, POD to our name, guaranteed more > 50 comments and signed by server. - i.e.** gatting access by POD** only friends on X. Or attestation on like in their posts. - Benefits: Forced for client-side proving. Forced to collab with 0xPARC. (in 6 months) - Requirement: - **Write with all the features in HackMD** (top top). Rendering of Metamate and GraphVs, do Tables, Titles, Hiperlinks, Footnotes, highlighting, LatEX. All this is key for writing. - Decentralized Content - Can we do it with IPFS. So we don't depend AWS.