Groups & AI Agents

Work has been keeping me busy this last month so progress has slowed significantly on WannaDo. Plus grinding on features after a major milestone just wasn’t as exciting as getting my MVP completed.

So far user recruitment has been a bust. I think I need to take a more traditional approach to marketing to be honest. I also think the site needs more content to attract users. It’s really a chicken and egg problem. I don’t have enough content to attract regular users and since there aren’t users people don’t want to post event using the system. So I need a new plan:

  1. Build an automated way to inject events from around the internet into my system so it has content.
  2. This requires group features to be finished (need Business/Non-Profit too).
  3. Which means I need to build more features… faster. (which brings me to the AI Agents)

I also new a new marketing plan. I reached out to some users on meetup via DM but that was a total bust. I think I need to take a more traditional approach to recruiting groups. Google ads, and whatever else people do these days. I’ll need to do some research.. or hire someone on fiver… or create an AI agent to do some of it. I don’t have a plan yet so I think the next step is to do some research.

I did find something new and interesting that is brining me back to being motivated though. A fully automated AI Agent. I’ve been working with AI for months now and use it daily in my job. But I find it has several major limitations.

  1. It doesn’t iterate well on it’s own
  2. I have to feed it a lot of well written and clearly defined prompts to get something useful
  3. I have to review a lot of incomplete code
  4. It can’t test it’s own work very well

Well I was talking with Chat GPT last night and found that there are solutions to this. Using an open source tool called CrewAI. Basically you can use python to crated agents (even multiple agents with different roles) to do more complex work. So I can create a task in GitLab then assign it to the AI Dev Agent who will in turn work on and iterate on the task, post a PR for me to review (and possibly another different agent to review). This will ultimately allow me to let it run, iterate on its own to complete a task and then I can simply review a PR like I do with any junior engineer at work.

There are also opportunities to expand upon the framework. I could create a QA agent to review the PRs. I can create an automated agent that improves test coverage. I’m even considering creating an agent that will start doing the marketing. Lots of new opportunities, and those opportunities are exciting.

So this month is all about setting up new agents, establishing new AI powered workflows and pushing the project forward while I continue to bring home the bacon with my full time job.

WannaDo – Public Beta

Well, I slowed down a bit this month. Work got busy again, so I had to put a few things on hold… plus I started a new map on Oxygen Not Included, and it kind of sucked me in.

The good news is that I’ve unofficially launched the beta — woot! 🎉
That was my “end of September” goal, and I just about made it. All my MVP features are in and seem to be working pretty well.

Ironically, Meetup.com just launched a big redesign. One thing I know about people is that they usually hate drastic changes—especially full product overhauls. I think that actually helps me on the marketing side, along with the other reasons I mentioned in my first post (like how ridiculously expensive Meetup has become).


Branding

I got a bit bogged down trying to make a logo. Usually, I find a friend or hire someone for branding, but this time I decided to experiment with the new generation of AI logo and image generators.

I tried about a dozen different ones before finding something halfway decent—most of them were absolute trash. After a week or two of tinkering and revisiting my saved options, I finally settled on one I liked the most. The logo is done! It’s not perfect, but I can always tweak it later.


Features and Progress

I wrapped up most of the user and auth system in August, and this month I finished the event system. The geo search was especially fun to build, and I also got the attendance feature working.

On top of that, I integrated a user feedback system using Userback. I wanted an easy way to capture user ideas and issues without sinking a ton of time into custom tooling. AI has really made these integrations faster than ever—I got it set up and linked to my GitLab in a single day. Not bad!


Next Steps: Users and Feedback

Now that the beta’s live, it’s time to get some users. This month is all about recruiting—I’m planning to reach out to people on Meetup and see who’s interested in testing things out and giving feedback. I’m super curious to hear what they’ll say.

I’ve already got several features in the backlog, but I want to focus on the ones users actually need first. While I wait for feedback, I might work on some behind-the-scenes improvements—things users might not notice directly but will definitely appreciate.

What’s Next: Groups

I’m torn between tackling the category system or the group system next, but I think I’ll go with groups.

Even though users can already post their own events, I think a lot of Meetup organizers will appreciate being able to create groups, assign managers, and build a following.

Oh, and I should definitely add a follow system, similar to what social platforms use. I don’t want to replicate Meetup’s “member” model—it was misleading. You’re not really a “member” if you’ve never been to an event.

Instead, I like the idea of groups having managers and followers, which could scale well for both businesses and nonprofits. Later on, maybe we’ll add a special “member” role that group managers can promote followers into.


Yup—next up, I’m adding groups.

Wish me luck with recruiting new users! I’ll post another update next month.

WannaDo – Project Launch

This is my first entry for the WannaDo dev blog. I’ve been working on WannaDo for almost a month now. It’s the first personal project I’ve stuck with this long, so I’m kind of proud of myself.

Taking a screenshot here for posterity.

I used to really like Meetup, but it’s gotten so bad over the last few years. Between the ads and the ever-increasing price, I just don’t see it as a viable way for people to actually do what the site was built for anymore.

The group I started over 10 years ago now has 1,244 members—though realistically, maybe 100 have ever shown up to anything. In practice, the group is about 25 active members, but Meetup holds me to the 1,200+ number when billing. People can’t actually meet up if fake or inactive accounts count toward your “pay-for-it” tier.

When I started, Meetup was about $100 every six months, or ~$16/month. Now it’s $178 every six months, or about $30/month. On top of nearly doubling the price, they’ve put more features behind the “Meetup Pro” paywall. And to twist the knife, they advertise to everyone attending events.

On top of that, their systems are broken—a problem they admitted to last year (source). Features don’t work, they run two different mobile apps (one for users, one for organizers), and four servers are doing the work one app should handle. It’s pretty clear Meetup is drowning in tech debt. I get it—I’m an engineer, I know the pain—but forcing users to pay for bad management? That’s just shitty.

So to summarize: charge organizers more, remove features, and force ads on end users.

So I said: FUCK MEETUP.

That’s why I started WannaDo. I think I can improve on Meetup’s core concept—and with the help of AI, I can move fast. Right now, I’m focused on the MVP (minimum viable product): the basics, just enough to get the app in people’s hands.

MVP Features (in progress):

  • Basic branding
  • Users & Auth
  • Create, Edit, Find, and Attend events
  • User feedback system

I started on Aug 8th, and I’m already close to my MVP goal. At this rate, I think I could start advertising the MVP by the end of September. A lot of features are still “vaporware,” but:

  • Users & auth = done (a big pain, glad it’s out of the way)
  • Event create & edit = done
  • Event find screen = nearly done (enough for MVP)
  • Next up: attendance system

I also need to rope in my graphic designer friend, because the lack of a logo and color scheme is a problem. Before launch, I want some kind of user feedback system too. I’m not putting in heavy testing right now—this is very much a “build the plane mid-flight” project until there are enough users to justify otherwise. Everything also needs to be mobile-friendly, since the mobile app will come later, after the web app is stable.


Roadmap

MVP – Users & Events (September)

  • Event categories system
  • Organizations (groups, businesses, nonprofits)
  • More event features (repeatable events, RSVP deadlines, attendee limits, guests, additional hosts/speakers, attendee questions)
  • User interests system
  • Credits system (for users & groups)
  • Subscription system (for businesses & nonprofits)

Unlike Meetup, WannaDo will use a credit/token system for users and groups.

How it works:

  • Credits can be earned (by verifying email, attending an event, reviewing reports, etc.—basically proving you’re human and helping the community).
  • Credits can also be bought (but affordably—e.g., $1 per credit). If you just want to post one event a year, you shouldn’t have to pay $30 for a monthly subscription and remember to cancel auto-renew.
  • Credits can’t be sold, but can be donated to groups.

Credits will also shape user behavior. If you sign up and do nothing, you’ll be treated as nothing. That should help solve the “1,200 members, 25 active” problem Meetup has.

Examples:

  • Posting an event costs a credit.
  • Reporting content costs a credit (which gets held until the community reviews the report).
  • If others agree with the report, the reporter gets the credit back, the offender loses a credit, and the event is removed. Reviewers who help validate get fractional credits.

I want the mechanics to encourage good behavior and discourage bad behavior.

On top of credits, I also want to add badges. Some would be penalties:

  • Ghost badge for no-shows (penalties stack over time—ghost enough events and you’re blocked).
  • Gaslighter badge for jerks who stir up trouble.
  • Troll badge for spammers/offensive posts.
  • Karen badge for chronic false reports.
  • Bot badge for… bots.

Likewise, reviewers could earn positive levels—your credibility increases if you consistently align with consensus, decreases if you don’t.


Beyond users, groups, and tokens, I’ll also offer subscription tiers for nonprofits and businesses.

  • Nonprofits: heavily discounted, since they’re the backbone of real communities.
  • Businesses: they’ll get listed regardless, but if they want control over listings, they’ll need a subscription. (Similar to Google Maps’ “Is this your business?” feature.)

Eventually, I may add new user restrictions (e.g., can’t post until you attend an event or verify ID), but that’s a “later” problem.


Lots of ideas, but the focus right now is MVP and first users. Once people are using it, I can prioritize their needs alongside my roadmap.

TNMT Arcade 1-Up Cabinet RetroPie/EmulationStation Mod

I was going to post a video but I finished the project so long ago that posted it. The main goal of the mods to the image was to prioritize 4-player games since the it’s dedicated to a 4 play Teenage Mutant Ninja Turtles Arcade 1-Up cabinet.

This image is based on the Wolfanoz 128GB RasPi3BPlus 4.4.8 image (its the most recent I could find). Here the changes I’ve made:

4.4.9

  • Fixed the “out of space” issue by deleting some games. This issue prevents controllers from working consistently.
  • Turned off bezels (overlays) in the RetroArch options since I’m still using the original Arcade 1-up monitor.
  • Added theme from 90’s TNMT cartoon for the intro splash screen.
  • Created a temp list of 4-play games (need to create a custom main list icon for it yet…) (update 2-19-2021 downloaded a nice list of 4-player/multiplayer games from here: https://retropie.org.uk/forum/topic/4336/list-of-retro-games-for-4-players/4 – planning to use it to update my main multiplayer list in the image)

4.4.10

Notes:

Though fruitbox (RetroPie Jukebox) is installed it is not the background music player. Keep this in mind if you want to update the background music playlist.

When you wire the joysticks and buttons to the controller circuit board make sure they are all wired the same. While EmulationStation supports multiple controllers that are the same (e.g. “Generic USB Gaming Device” or “DragonRise Inc Generic USB joystick”) RetroArch does not. If you have different button layouts it will get messed up in game and once you exit game. RetroArch is the Frontend for the Libretro API and makes a up a large portion of the emulators included in RetroPie so if each controller has a different wiring configuration on the board or one of your joysticks is upside down your controllers won’t work properly.

Streams, Promises and Throttles

Recently in my journey I came across a nice little challenge to read a really large csv, pull data from it and then call a couple of APIs IOT to get some data then output a CSV after processing was complete.  The file I was provided basically contained a long list if IDs which I needed to use to get information from one API then use that information to call Watson.  I hadn’t flexed my muscles with the stream API for a while so it was fun.  I just wanted to share this example in case other are looking for a way to solve a similar problem.

Continue reading…

Minecraft on Ubuntu – Forge Upgrade

To upgrade your Minecraft Server on Ubuntu to a more recent version of forge:

  1. Download the installer and universal package for the version of forge you want.
  2. Transfer them to the server.
  3. Run the installer: `java jar forge-X.X.X-X.X.X.XXXinstaller.jar installServer`
  4. Restart the server: `java -Xms1024M -Xmx8192M -jar ~/minecraft/forge-1.12.2-14.23.3.2675-universal.jar noguiadsls`

 

Hyperledger Fabric v1.0 on a Raspberry Pi Docker Swarm – Part 4

And now for the thrilling conclusion to… HLv1_RPiDS! (<— a what now?)

  1. Setting up a Hyperledger Fabric development environment on a Raspberry Pi
  2. Building Hyperledger Fabric on Raspberry Pi
  3. Setting up a Docker Swarm on Raspberry Pi
  4. Deploying a Hyperledger Fabric network on the Swarm with Docker Stack and testing with BYFN.

In this section we’ll go over the steps I take to launch the network and talk through some of the configuration sections to watch out for as you setup your own.

But first a quick proof of work demonstration:

Continue reading…

Hyperledger Fabric v1.0 on a Raspberry Pi Docker Swarm – Part 3

As I said in my last post this step is fairly easy and overall gave me the least amount of trouble.

  1. Setting up a Hyperledger Fabric development environment on a Raspberry Pi
  2. Building Hyperledger Fabric on Raspberry Pi
  3. Setting up a Docker Swarm on Raspberry Pi
  4. Deploying a Hyperledger Fabric network on the Swarm with Docker Stack and testing with BYFN.

Before we dive in I want to mention some prerequisite equipment you’ll need.  You  should have at least 3 Raspberry Pis (<– this looks so wrong to me… Pies?) to setup up a true Raspberry Pi Docker Swarm.  This means you’ll need SD card for each and a way to power them, I recommend a USB power hub like this (something with 60 watts and 6 ports).

Continue reading…

Hyperledger Fabric v1.0 on a Raspberry Pi Docker Swarm – Part 2

I want to thank all of the people who commented on my first post about this project, I can’t believe how much time has passed since I first wrote about this.  I actually did get it running but ran out of time to document it all while getting it working… I planned show it at a conference for work and ran into significant hurdles along the way so my documentation slipped a bit.  I’m going to finish this out thanks to the extra motivation I received from everyones interest.  So let’s get to it!

  1. Setting up a Hyperledger Fabric development environment on a Raspberry Pi
  2. Building Hyperledger Fabric on Raspberry Pi
  3. Setting up a Docker Swarm on Raspberry Pi
  4. Deploying a Hyperledger Fabric network on the Swarm with Docker Stack and testing with BYFN.

Mastering the build step is a pretty decent challenge.  In this article I’ll pass along some tips and hints on how I pulled it off.

Continue reading…

Hyperledger Fabric v1.0 on a Raspberry Pi Docker Swarm – Part 1

There have already been articles published on the use cases for using IoT with a private Blockchain.  The possibilities are really exciting but what if we could run the blockchain ON our IoT network.  That sounds like a fun project to me!

With that goal in mind and a bit of research I was  led to Hyperledger Fabric.  To learn more about it check this out: Hyperledger Overview.  Getting Hyperledger Fabric to run on Raspberry Pi presented several major hurdles:

  • No one had compiled the project for the ARM architecture before.
  • There wasn’t any documentation on how to run the Hyperledger on a Docker Swarm.

But hurdles are what make projects fun right? So lets go through the steps so that you can setup your own.

  1. Setting up a Hyperledger Fabric development environment on a Raspberry Pi
  2. Building Hyperledger Fabric on Raspberry Pi
  3. Setting up a Docker Swarm on Raspberry Pi
  4. Deploying a Hyperledger Fabric network on the Swarm with Docker Stack and testing with BYFN.

Lets get started!

Continue reading…