Let's Build It: Roast My Idea
How to get people to give you honest, and sometimes harsh, feedback
Hi, Guilherme here,
Another day, another idea. In today’s post, I’ll do a deep dive on how you can use no-code tools to build your product - even if you don’t know how to code.
I’ll explain what the idea is, which tools I’ll be using to build it, how I built it, how it can be improved in the future and some ideas around monetization.
The whole thing took me about one day to build, from the light bulb moment to the functional prototype.
I managed to achieve this with two very awesome tools: Softr and Airtable (I’ll explain what they do later). You can check the final result below!
Let’s start 🚀
The idea
If you’re like me, you probably come up with multiple ideas every single day. “Oh this is something cool”, “Hey, this idea might work”.
But you either never really pursue those ideas, or you try and fail miserably due to a lack of actual product fit - no one wants it or cares.
There are a couple of ways you could go about this. The most important one is normally patience. Spending some quality time validating your idea with your target audience is the best way to move forward.
But who has time these days? No one! We want things now, not tomorrow! I don’t want to wait to know if my idea is good or not
PS: this is a joke, of course. Good businesses and ideas aren’t born in a day. But let’s say they are for the sake of this post.
So you go online, on Reddit or some other forum, post your idea and anxiously wait for feedback. But you get none. None. No. One. Cares.
How can we make them care? We switch the narrative. Instead of asking for feedback, you ask people to roast your idea. Who doesn’t love to make fun of something? Let off some steam. Yeah, right. Everybody wants that.
And that’s how “Roast My Idea” was born. A place where you can ask anyone to roast your idea. To be honest, to be a little wild. You get feedback, they get to go wild.
The plan
For this to work, I need two basic blocks: a dynamic website where users can post ideas and comments; and a database to store all of the information.
But since I don’t want to be coding all of this, I need another solution. And what solution is that? Softr + Airtable:
Softr: a no-code website builder that allows you to easily integrate with Airtable or Google Sheets, thus making it very easy to develop simple solutions that require dynamic data;
Airtable: an easy-to-use online platform for creating and sharing relational databases. It has never been easier to jump-start a project that relies on data.
The prototype
The platform will need to have the following functionalities:
Landing page: this is a no-brainer;
List of ideas: a page that will aggregate all of the ideas submitted, with search functionality;
Idea detail: where users can see all the specifics about an idea, and the roasts;
Idea submission form: for users to submit ideas;
Roast submission form: for users to submit roasts
Things I didn’t do for this first prototype: user sign-up and log-in, ideas and roasts moderation, email automation. But this could all be done in a future iteration, with the same stack I’m using now.
How to build this
Airtable
Create a new account with Airtable. On the Dashboard, click “Add a base” - this will be where all the data for your project will exist. Take some time to experiment with the tool if you wish.
Now, for this specific project, we need two sets of data: Ideas and Roasts. You can add tables on the top left corner.
For each of the Tables, you’ll need to set which fields you’ll want to save. In my case, I kept it simple:
Ideas Table
Id (autonumber): track each individual submission;
Idea (longtext): save the actual idea;
Created (date): submission date;
User (email): who submitted the idea;
Title (single line text): idea title;
Roasts (link to Table Roasts): so that I can track which roasts are associated with each idea;
Roast count (count): number of rostas per idea;
Rating (rollup): an average of the rating given by each roast.
Roasts Table
Id (autonumber): track each individual submission;
Roast (longtext): save the actual roast;
Created (date): submission date;
Rating (rating): rating given by the user;
Ideas (link to Table Ideas): to track what idea this roast relates to.
That’s it for the database. Of course, this is a super simplified structure, and that’s the point of this exercise. Feel free to explore other types of fields in Airtable, and how they can help you out with your product.
Last but not least, we need to connect Airtable and Softr. That is done through an API key that Airtable provides. In order to get yours, go to your profile, top right corner, and click “Account”. Here you’ll be able to see your API key. Don’t share this with anyone you don’t trust!
Softr
Start by creating a new account with Softr. On the Dashboard, create a new project. Softr will create a default project with a set of predefined pages that will help you get started fairly quickly.
Next, make sure you connect Softr with Airtable, with the API key from the step above. On the project Dashboard, select “Settings” → “Integrations” and paste the API key under the Airtable integration.
Now comes the more intensive work part. I currently have 4 pages set up:
Home: this is the landing page, and it contains some explanatory copy and different CTAs to direct users;
Ideas: here you can see a list of all the ideas submitted;
Ideas details: this page shows details about an idea, all the roasts that were given to that idea, and also a form to submit a new roast;
Submit idea: this is the form page to submit a new idea.
You can replicate this structure, or come up with one that suits your needs. There are plenty of ways to go about this, and mine is neither perfect nor the best one.
Home
Here I have added 4 elements: header, footer, hero banner, and features. The only ones that I consider to be absolutely necessary are the header and the footer. These elements will be automatically replicated on all pages, and you’ll want to have this so that users can navigate your platform with ease.
The other elements aren’t mandatory, they mostly follow basic landing page rules.
Submit idea
There’s only one form on this page, that allows users to submit a new idea.
Add a new form to the page, and then on the right-side panel, you’ll find the configurations for this form.
You’ll want to have this form send its data to Airtable.
And the fields should replicate your Airtable structure as well. In my case, this is what it looks like:
After the user submits the form, I’m redirecting them to the Ideas list page.
Ideas
On this page, I added a simple block of text at the top to have more content than just a simple list of ideas.
For the list itself, I used a list element which I then configured to my liking. I wanted to keep it clean and simple, so I removed most of the fields that come by default. The important part here was to add a button, for each idea, that takes the user to the idea details page.
Softr handles the relationship between a list and an item directly. So, if you redirect a user to a page of an item, that page will be able to load that specific item’s details directly from Airtable - without you having to worry about anything else.
Ideas details
Here the user can check all the details about an idea. At the top, we have some details about it, with all the necessary info to give enough context to the user.
Below that we can find the list of roasts that have been submitted to this specific idea. I actually used a table element to show these, since it was the better option for me.
Now, for this specific element, we need to make sure to only show the roasts linked to that idea. Softr allows us to do this through a conditional field, that will use Airtable’s table linking to correctly associate the items.
Make sure that you select the correct Airtable table (in this case Roasts), and then add the conditional field under the “Data” tab in the element configuration.
Now the table will only show roasts associated with the idea that we are seeing on the page.
Last, but not least, we need to allow users to submit roasts. Now, Softr doesn’t have a pop-up element (yet). This element would be great for this specific use case since the user could just click the button “Roast this idea”, a pop-up would show with a for, and that would be it.
There are different ways to go around this, but they’re too complex for the purpose of this post. So, what’s the solution?
Well, we add a form at the bottom of the page, and the button scrolls down to the form when clicked. Not perfect, but it works (you could also add a new page as we did for the idea submission).
Again, the form should follow the same data structure that you have created in Airtable. The one thing to consider here is that you want to make sure that the roast is linked to the idea being shown to the user.
To achieve that, you’ll have to add a hidden field to the form that will contain the value {URL_PARAM:recordId}
and should point to whatever field you’ve created to link the tables.
What’s happening here is that the value {URL_PARAM:recordId}
is going to fetch, from the URL, the id of the item being loaded into the page (in this case the idea), and will use that to correctly map the roast to the idea.
Lastly, just make sure you what should happen on form submission, and you’re done. This is it for the Softr implementation!
In the end, just make sure all of your configurations are in place, and you should be ready to launch. Softr offers application-level configurations and page-level configurations. Go through all of them, one by one, and change what you want.
I would also recommend that you look at all of Softr’s functionalities. There’s plenty of stuff to go around that I didn’t touch here.
Monetization
Let’s imagine that this idea actually has some market fit. With that in mind, I believe there are a couple of ways this could be monetized:
Marketplace: when there are two sets of users, it’s possible to create interesting market dynamics. That could be offering premium features to users submitting ideas (i.e. get listed on top of submissions for a week); or maybe limiting the number of roasts people can post or ideas they can see, then having them pay to unlock extra content, etc.
Community: there’s power in a group of people with similar interests. In this case, upselling other products might be the way to go. Some ideas could be: selling niche apparel or giving access to a members-only community.
Ads: considering the platform gets enough traffic, turning on Google Ads is an option, although I probably wouldn’t go that way. The best way would be, in my opinion, to find companies that align with the set of users that I’m targeting, and ask them if they would like to place ads on the website.
Subscription: this one might be a bit trickier. I don’t think people will be willing to pay for a subscription to a product like this. But with some more extra features, that could be the case. Imagining that the offering would include everything listed in “Next steps”, I wouldn’t rule out a subscription model for this idea.
Next steps
Looking at the future, there are many many ways to improve on this.
First of all, I would start by adding user registration and access. Softr does this out-of-the-box, so it wouldn’t be that hard to achieve.
Second, moderation! The problem with open forums like this is that you will always have bad actors exploiting it, or just random trolls having fun. Since I’m always looking to automate as much as possible, I’d probably try to build a functionality that would automatically flag specific ideas and comments for review, that could then be approved or rejected in the back office. If I were to find this tricky to implement, then I would start with fully manual approval, and only then move to automatic.
The next step would be to keep people engaged. And I would achieve that with market automation. This would be twofold:
Weekly newsletter with the best ideas posted and sent to all users. Depending on the traction, this could be turned into a bi-weekly or even daily email;
Transactional emails to users who posted ideas, notifying them of new roasts.
Lastly, a sense of community. This is important, and I believe it would be critical to keeping the platform rolling. The basic idea would be to connect users. Let’s say I found a good idea, and would like to know more about it, or even try and help the person who came up with it.
Final thoughts
Considering this was built in one day, it does look like a neat and finished product, no? That’s the power of no-code tools for you.
Now, it is important to take into consideration this will only take you so far on your journey. These tools have limited functionality with the free plans, and you’ll quickly have to consider upgrading.
The good thing about this though is that a need to upgrade most likely means that you have built something with some market fit. Something people might value.
At this point, consider talking to your users and see if that’s actually the case. Ask them why they use it, how they use it, and what they would like to see implemented. This can be done with an email, a form, or even a one-on-one interview. Your call.
Thank you for being a subscriber. Until next time - Guilherme
P.S. Mind rating today's post? Awesome | Liked | 50/50 | Meh | Terrible