Marc Köhlbrugge Profile picture
🏠 https://t.co/1KH3Ex4L2r redecorate 👌 https://t.co/vCEawKbOPD premium domains 🐴 https://t.co/80DsPhG3VK monitor @-handles 🚧 https://t.co/aMZ4K3azU0 ship 🚀 https://t.co/sxmNUGTYQv launch 💼 https://t.co/leziY51tRd hire
Marc Köhlbrugge Profile picture Kevin Holloman Profile picture 2 subscribed
Jun 14, 2023 4 tweets 2 min read
Build a simple browser agent as proof-of-concept for the new function calling API.

1. Enter URL
2. Tell it what you're looking for

It will browse the site, click on any links, and return the results. This is all you need to provide to the API.

You then need to watch for any "function_call" response, run the actual function yourself, and send back the results to the API. Image
Jun 13, 2023 17 tweets 4 min read
Some thoughts on originality, competition, and one of my biggest weaknesses as an entrepreneur… In 2010, I launched BetaList because I recognized how difficult it was for founders to get publicity, particularly for those outside of the Silicon Valley bubble.

It turned out to be my first successful product. Image
Feb 17, 2023 4 tweets 1 min read
Feb 8, 2023 4 tweets 1 min read
Do you want more product feedback from your users?

A bunch of people asked me what service I use for this feedback widget. Answer: it's a custom solution.

If 10+ people subscribe at $19/mo today, I'll build and ship a SaaS for it in the next 24 hours.

buy.stripe.com/14k6sf1mQegpcJ… v1.0 would be this:

- Simple piece of JS to include on your site
- Option to include user metadata
- Receive feedback in your email
- Simple dashboard with all feedback
Feb 6, 2023 9 tweets 3 min read
Shutting down a bunch of projects today 🎈👋

It's impossible to predict which ideas will work. So I keep trying stuff and see what sticks.

Shutting down some failed experiments to make mental space for new experiments 🧹 ☠️ RIP: Linkhyper, the world's simplest MVP.

What if you could link to a future blog post or product? When clicked, a popup appears asking for the reader's email address.

When you publish the post/product/etc, you send everyone a one-time email.
Dec 21, 2022 19 tweets 6 min read
I never shared this before publicly, but I owned @WIP on Instagram (probably worth $10k+) for about a minute.

I figured with all the recent handle talk, now would be a good time to share the crazy story… June 2018 I was considering getting more active on Instagram with WIP. I owned @wipchat there, but I thought it would be much nicer to get @wip instead.

So I checked who currently owns, to see if there's *any* chance I could somehow get.
Dec 12, 2022 6 tweets 2 min read
You might be able to copy a (successful) product, but you probably can't copy the conditions that made it succesful.

So stop copying other products thinking you'll get the same success.

Study how they learned what to build given the conditions at the time. Copy that process. Example:

Everyone building AI avatar apps today. You're too late. The time was a month ago when the technology was accessible enough for developers, but not yet mainstream.

You can copy @levelsio/@dannypostmaa's product, but you can't copy last month's conditions.
Dec 12, 2022 8 tweets 2 min read
How to prepare for the release of unused Twitter handles:

1️⃣ Decide which handles you want
2️⃣ Create a spare Twitter account & verify it
3️⃣ Monitor availability
4️⃣ When the name becomes available, rename your account
5️⃣ Reclaim your previous handle 1️⃣ Decide which handles you might want

This could be a personal name, the name of your company or brand, or a specific project you're working on.

Don't get too crazy. Twitter has tooling to track many different accounts you own.
Dec 11, 2022 4 tweets 1 min read
handle.horse's main service will remain free of charge. I believe everyone should be able to get a decent Twitter handle, especially if it's currently sitting unused.

That said, monitoring 40,000+ handles every hour or so would take 30 million HTTP requests a month 😅 So I might add an optional paid tier.

Free should be fine for your full name or unique project name. They are less likely to get snagged up by someone else.

But if you want a popular handle (first name, dictionary word, etc) then we should check more often.
Dec 10, 2022 5 tweets 2 min read
It's not a given Twitter will release handles for open registration.

Part of me hopes they do, or handle.horse is dead in the water.

Another part of me hopes they auction them off and sell them as NFTs. Hear me out ⬇️ First of all, it would generate a ton of short-term revenue Twitter is desperate for.

Second, it would generate a ton of long-term revenue through royalties on secondary sales.

Third, it formalizes the secret deals people currently make to buy and sell handles.
Dec 10, 2022 5 tweets 2 min read
Every time I build a new product I go through a lot of the same steps setting up my codebase. Adding Tailwind CSS, Bugsnag, etc.

Would be great if I could quickly search my previous git commits from other projects, and easily apply those to my current git repo. For example, right now I want to add bugsnag.com integration to the handle.horse repo.

Desired workflow:

1️⃣Run `x bugsnag`
2️⃣It returns all "bugsnag" commits/PRs from my other repos
3️⃣I can go through them and preview diffs
4️⃣Pick one to apply as patch
Dec 8, 2022 8 tweets 2 min read
Ever wondered how you can sort records by a popularity metric, but add a time discount? (e.g. newer records rank higher)

I asked #gptchat and it came up with this formula:

ORDER BY upvotes_count * POW(0.998, extract(day FROM CURRENT_DATE - startups.featured_at)) DESC It takes a popularity metric (in this case upvotes_count) and multiplies it by a time-discount multiplier.

The longer ago a startup was featured, the lower this number.

Here's how it works:
Nov 13, 2022 5 tweets 1 min read
Yesterday, betalist.com got DDoS'd. The attacker posed as a "security researcher" asking $5,000 in Bitcoin to "solve" the issue 😂

Today, a WIP member got his site attacked as well.

They might be targeting indie makers so make sure you're prepared. Fortunately blocking the bot traffic is relatively straight forward.

Make sure you're using a firewall like Cloudflare, and don't expose your server IP address anywhere. (or else they can cirmcumvent Cloudflare)
Sep 15, 2022 8 tweets 4 min read
🚀 Launching my newest product: IMAGE.COMPUTER

It's a super simple way to generate images with AI.

No need to install any complicated tools or make your computer fans run overtime. Let us do the work for you 😄

Free 25 credits today: IMAGE.COMPUTER Why did I make this?

Last week I was trying to help a friend set up Stable Diffusion (tool to generate AI images) on her new MacBook Air M2. It was a very complicated process and when we finally finished it, it took about 20 minutes to generate a simple image🤨
Jul 4, 2022 11 tweets 4 min read
Last couple of weeks I've been migrating WIP.co to use Tailwind CSS and Rails ViewComponent. It was a lot of work, but it really paid off.

I feel like I can ship user-facing features much faster now. Some things I shipped the last couple of days… Image Easily share todos with native sharing functionality (also works on mobile)
Jun 24, 2021 12 tweets 5 min read
I maintain 10+ websites. My four tips for keeping track of it all as a solo-founder:

♻️ Re-use same architecture across all products

🔔 Set up notifications for when things break

💬 Make it easy for customers to reach me

❌ Don't rely on dashboards. I'll forget to check them ♻️ 𝗦𝗮𝗺𝗲 𝗳𝗿𝗮𝗺𝗲𝘄𝗼𝗿𝗸

For me that means Ruby on Rails. It doesn't really matter what you use, as long as you're consistent.

This means any insights you get along the way (e.g. how to upgrade to new version) can be easily applied across all your apps.
Jun 22, 2021 4 tweets 2 min read
Me and @RPISH have taken a more pro-active sales approach for @BetaList the last 12 months.

Result: +50% annual revenue 📈👀

Not bad for a 10+ year old product :) @RPISH @BetaList Biggest change was a mindset shift from passively responding to inquiries ("here are our rates, kthxbye") to truly trying to understand a customer's goals and how we can help achieve them ("what's your goal here? what would a successful campaign look like?" etc)
Apr 12, 2021 4 tweets 1 min read
I've been migrating my web apps (15 and counting…) from Heroku and Linode to Render.com

So far I really like it. It shares a similar philosophy to Heroku (outsource your devops), but more affordable and actively developed.

Worth a try 👍 My favorite feature is "code-as-infrastructure" which leads you lay out your whole stack in a single YAML file. Not a new concept, but I like their simple approach. Image
Dec 11, 2020 14 tweets 6 min read
Today, 10 years ago, I launched BetaList 🤯

Since then we've…

🚀 Featured 15,000+ startups
💖 Reviewed 70,000+ submissions
😘 Welcomed 100,000+ registered users
💰 Generated almost $1M in revenue

⬇️ THREAD 📅 It all started as a way to get publicity for an iPad app me and my friends were working on.

In 2010 it was hard to get press coverage as a bootstrapped startup.

This lead me to create "betali.st" (the .com was taken)
Jul 16, 2020 5 tweets 1 min read
What if your own beliefs are what holding back your business' growth?

If you're a new maker with a $1,000 MRR goal, you experiment like crazy until you find a $1,000 MRR product.

You don't want to risk losing that, so you stop experimenting and start optimizing instead. What if the main difference with a $10,000 MRR founder is that they disregarded the $1,000 MRR opportunity and kept experimenting until they found the $10,000 MRR opportunity?
Jan 22, 2020 14 tweets 4 min read
⚡️ Successful makers ship early and often.

🤔 But how? I think it comes down to confidence.

Confidence to not break your codebase. Confidence to get informed when it does happen. And confidence to then fix it.

Some ideas to increase your shipping confidence: ✅ Use tests

If you need to manually test every feature of your product every time you make a change, you're going to be reluctant making incremental changes.

You're going to favor larger increments which require fewer test rounds, but are more likely to break and harder to fix