Open Keyrxng opened 3 months ago
I frequent subs like r/typescript often (mostly while on the throne) and it is rife with talent. Some of the requests for help are absolutely absurd and there are juggernauts in the comments reading 3 files worth of reddit code blocks (terrible) with advanced ts types and debugging it in the comments lmao.
We definitely need to leverage it better somehow and this is an effective strategy in my opinion, disregarding the ethics of it (if that's even an issue here)
Let's start with this strategy and iterate. Seems viable. Just set a time estimate and it can be funded.
we need to:
I'd say 1 day
maybe and that includes being active in the responses etc after posting too
1: Typescript, AI, GitHub Automation. Any others? 2: I'll curate and create posts knowing 1. 3: same as 2. 4: Does login info matter here, is there a dummy domain email I should use or something? 5: If it's possible (depending on the subs I can find for that demo and issue) I'll batch post 6: With this said, we obviously won't overdo it. Maybe twice a month we make a couple posts and appear genuine at first glance (completing tasks and having open PRs is likely overkill) if we see any success this month.
EDIT: I use "I" and "I'll" but if this task is better delegated that's okay with me. I just instinctively would see it through since I'm proposing it
Login info doesn't matter. I think this is fine to start and can iterate on ideas as inspiration comes in. So this task is for two attempts over the course of August?
Login info doesn't matter. I think this is fine to start and can iterate on ideas as inspiration comes in. So this task is for two attempts over the course of August?
Yeah, prep both attempts at the same time or at least the bulk of what's needed for two and then we can refine based on attempt one.
I expect about 4 hours for gathering issues, gathering subs and creating somewhat believable posts. Then another 4 on handling the posts/responses and any refinement to attempt two.
If you think we'll get a better read on things with more than two active posting days let's do it two was just a suggestion but yeah this task would likely cover all attempts right?
/start
! Too many assigned issues, you have reached your max limit
Deadline | Sat, Aug 3, 8:27 AM UTC |
Registered Wallet | 0xAe5D1F192013db889b1e2115A370aB133f359765 |
<ul>
<li>Use <code>/wallet 0x0000...0000</code> if you want to update your registered payment wallet address.</li>
<li>Be sure to open a draft pull request as soon as possible to communicate updates on your progress.</li>
<li>Be sure to provide timely updates to us when requested, or you will be automatically unassigned from the task.</li>
<ul>
Deadline | Sat, Aug 3, 8:27 AM UTC |
Registered Wallet | 0xAe5D1F192013db889b1e2115A370aB133f359765 |
<ul>
<li>Use <code>/wallet 0x0000...0000</code> if you want to update your registered payment wallet address.</li>
<li>Be sure to open a draft pull request as soon as possible to communicate updates on your progress.</li>
<li>Be sure to provide timely updates to us when requested, or you will be automatically unassigned from the task.</li>
<ul>
@0x4007 Could you remove that testing bot from the organization? I do not have access there.
Isn't reddits API read-only for about a year now? I used chatgpt for a solution to this and it recommended puppeteer
import puppeteer from 'puppeteer';
interface RedditPost {
subreddit: string;
title: string;
content: string;
}
async function postToReddit(username: string, password: string, post: RedditPost) {
const browser = await puppeteer.launch({
headless: false, // Set to true in production
defaultViewport: { width: 1280, height: 800 }
});
try {
const page = await browser.newPage();
// Login to Reddit
await page.goto('https://www.reddit.com/login');
await page.waitForSelector('input[name="username"]');
await page.type('input[name="username"]', username);
await page.type('input[name="password"]', password);
await page.click('button[type="submit"]');
// Wait for login to complete
await page.waitForNavigation();
// Navigate to subreddit
await page.goto(`https://www.reddit.com/r/${post.subreddit}/submit`);
await page.waitForTimeout(2000); // Wait for page to fully load
// Select text post if not already selected
const textPostButton = await page.$('button[role="tab"][aria-selected="false"]');
if (textPostButton) {
await textPostButton.click();
await page.waitForTimeout(1000);
}
// Fill in post details
await page.waitForSelector('textarea[placeholder*="Title"]');
await page.type('textarea[placeholder*="Title"]', post.title);
await page.type('div[role="textbox"]', post.content);
// Add delay before posting to prevent rate limiting
await page.waitForTimeout(2000);
// Click post button
const postButton = await page.$('button[type="submit"]');
if (postButton) {
await postButton.click();
}
// Wait for post to complete
await page.waitForTimeout(5000);
} catch (error) {
console.error('Error posting to Reddit:', error);
throw error;
} finally {
await browser.close();
}
}
// Example usage
async function main() {
const post: RedditPost = {
subreddit: 'test',
title: 'Test Post from TypeScript',
content: 'This is a test post created using Puppeteer and TypeScript.'
};
try {
await postToReddit('your_username', 'your_password', post);
console.log('Post successfully created!');
} catch (error) {
console.error('Failed to create post:', error);
}
}
main();
Also how will we check the comments and responses on the posts?
I spent time building up an account that I had planned on using just for this; I stopped for a couple of reasons:
I had planned to wrap this up once DoraHacks had finished (which it now has) and once other priority issues had been resolved (I believe they now are). I'm willing to proceed as I was or this task can be assigned to someone else.
This is borderline I'm unsure about this one but it would be very effective if done well and in reality causes no harm to anyone and in fact the types of people that generally respond well to these types of posts are the types of people we want to target
What is it?
Simply put: We clickbait some of our tasks in subreddits like r/typescript for example
I'm not sure of the term for it in advertising you see it a lot these days. Basically you'll see gameplay of the app and they will either deliberately fail an easy task so the viewer goes "I could have completed that" or they intentionally move into the path of the lesser upgrade power (smg vs tank eg) so they go "I want to see the tank, I'd have chosen the tank"
What it requires?
We pick a couple of our open tasks and then open posts into these particular subreddits from a new/noob account and we lay it out as if we are struggling with the problem and post links to the code/the issue whatever.
The people on these subs with real knowledge and are keen to help out are the target demographic here, they are quick to peruse links and random code to help a stranger "just because" or maybe it's to test their own knowledge or they are curious that way, we want them.
Why do it?
Well we have ways to target solidity and web3 minded folks but not so much Web2 folks that would excel in TS related projects for example.
This approach can be applied to any language or skillset our tasks contain, AI, Web3, TS etc.
Is it a poor show from us?
I don't think so. While we are not interested in the help we are asking for exactly, we are interested in those who can see the problem and resolve it on the spot like many do on these subs, just for fun so no one is losing anything here. They do as they also do and potentially we catch their interest enough to pick up a task or two
Pros vs other socials like X