Day 6: Tooltips Get Smarter, Finding Freelancers, and AI Embeddings
We’re entering week 3 of working with CofounderGPT and we’ve only reached Day 6. And even that’s a stretch. we’ve spent 27 hours so far, which is less than 2 days each. But between our day job at Vacation Tracker, our SOC2 audit, the Easter holidays, and an ice storm in Montreal, we just didn’t have the 16 hours per week each to allocate to working on Knowlo. This is the reality of a side hustle, some weeks you can put in the time you wanted to, other weeks you can’t.
But we’ve managed to get a lot done with this small time investment thanks to CofounderGPT. Most importantly, ideas are flying and we think we’re on to something. In Day 5, Slobodan did some work with CofounderGPT to simplify the product idea even more and they came up with something pretty interesting. Instead of building this big comprehensive knowledge base product, we are going to focus on providing just-in-time information through tooltips. A more focused and smaller scale type of knowledge base.
Let me explain.
You’re building what?
In a product like Vacation Tracker, there are several Settings screens which may seem confusing or intimidating to first time users. Here’s an example of the General Settings page of Vacation Tracker:
As you can see, each field has a little ‘”i” next to it with a tooltip and each tooltip has a one-sentence explanation of what the corresponding field is. But these explanations are quite short. What if we could train GPT-4 to provide better tooltip information and the ability to answer questions within tooltips? Think of it as having a smart AI assistant that’s always ready to answer your questions, right where you need the answers the most.
This is an interesting angle on the original idea. And It’s also a problem we understand because we have a few pages that we get lots of questions about in Vacation Tracker. So in Day 6, we’re making it official: we’re going to be building Knowlo into an interactive knowledge base tooltip product.
In order to do that, we’re going to need to look at how OpenAI embeddings work. All this is quite technical, so Slobodan is going to test out embeddings and will try importing Vacation Tracker’s knowledge base. This will be the subject of the Day 7 article.
In the meantime, there are a few other things that we need to do.
Defining the problem we are solving
Let’s start with the problem. As we work on developing Knowlo, we’re trying to connect some specific challenges we’ve faced with Vacation Tracker and similar software products to how we build the MVP:
- Repetitive Questions: In Vacation Tracker, we’ve noticed a trend of recurring questions about certain settings screens. This suggests that our current tooltips and explanations might not be clear enough for everyone.
- Confusion Around Product Screens: First time and new users sometimes find specific product screens in Vacation Tracker overwhelming due to their complexity. We can try to make these screens more approachable and user-friendly by offering just-in-time AI-powered assistance. This will help users navigate the product more confidently and will hopefully improve conversions and retention.
- Difficulty Finding Relevant Information: Users occasionally struggle to locate the information they need within Vacation Tracker due to the large volume of content and documentation. The funny thing is, the product is not that complicated but we have several integrations and each integration has its own thorough documentation. So our knowledge base is a big forest which may be intimidating for some to navigate.
These are just 3 of top problems Knowlo is aiming to address. By understanding these problems and “feeling the pain” so to speak, we believe that we can create a more effective solution for potential customers.
Getting help for Knowlo
Although the scope of the project has changed a bit since we wrote our job description, the technologies and seniority level have not. So we can proceed using what we have to find someone to help us put this project together.
We are fortunate to have a big network of developers because we’ve been working in the industry for so long. Today we reached out to some developers that we’ve worked with in the past who would be a good fit for this project. We don’t think that hiring someone to help us is going to be a big hurdle.
Having said that, many people reading this may not have the network that we have and may not know how to hire a freelancer to help them put their project together. So while in the background we’ll be connecting with and interviewing some freelancers, I’ll write a little bit about our experience working with freelancers and what you should pay attention to.
Finding and hiring a freelancer
When it comes to hiring a freelancer, there are many platforms available to choose from, each catering to different levels of expertise and budget. To help you find the best fit, let’s take a look at some of the top platforms and discuss what you should consider when hiring a freelancer.
- Upwork is a popular choice, hosting a vast pool of freelancers with diverse skills and rates. To get started, create a job posting detailing your project requirements. Freelancers will then submit proposals, allowing you to review and shortlist candidates.
- Toptal is tailored to those seeking top-tier talent. Known for its rigorous screening process, Toptal prides itself on connecting clients with the best 3% of freelancers. If you’re after an expert developer and have a higher budget, Toptal is probably one of your best choices.
- Freelancer is similar to Upwork but leans more towards competitive bidding. This can be advantageous if you’re looking for a great deal but can also lead to a race to the bottom in terms of price and quality. Carefully vet your candidates to avoid potential pitfalls.
- Codementor specializes in software development and offers one-on-one mentorship and freelance development services. If you’re looking for guidance alongside development work, Codementor might be the ideal platform. They certainly have an innovative approach to product development with freelancers.
- Guru is another marketplace that connects clients with freelancers, with a focus on fixed-price projects. Guru allows you to search for freelancers based on their skills, location, and ratings.
The best though would be to ask around in your network. Everyone knows someone who knows someone who may be able to help with your startup. In my opinion, starting with your network first is the best and if you can get an introduction to a programmer through someone you trust, there’s a higher likelihood You’ll land on someone that’s reliable.
Working with a freelancer
In terms of how to work with a freelancer, here’s a bunch of generic information about hiring a freelancer:
- Portfolio and experience: Review their previous work and assess their expertise in the specific technologies and skills you require.
- Communication: Effective communication is vital for any project. Assess their responsiveness and make sure they understand your requirements.
- Availability: Check if their schedule aligns with your project timeline and ensure they can commit the necessary hours.
- Ratings and reviews: Read reviews from their previous clients to gauge the quality of their work and reliability.
- Budget: Compare their rates with your budget, and factor in any additional expenses like platform fees.
The truth is, yes you need to check all these things, but after that It’s going to come down to your intuition. Go with someone you think is technically capable of doing the project and who you think you would like to work with.
Once you’ve selected a freelancer, establish clear expectations and set milestones to track progress. Payments can be made on a per-project, per-hour, or per-milestone basis, depending on the platform and your agreement with the freelancer.
I like per-milestone payments because I think it aligns everyone’s interests in the best way. The thing to keep in mind is that you need to have super clearly defined deliverables for each milestone. And try not to change your product too much after you’ve handed it off to the freelancer. Every change is gonna cost you and delay your milestone. So try to think things out well from the start and if you do need to make changes, take into account the impact on the budget and milestone dates.
This is a really short summary and there are lots of articles and Youtube videos which can explain in more detail some of the best practices for hiring a freelancer.
Decision to move to WordPress.com
After careful consideration, we’ve decided to move our website from Webflow to WordPress.com. While Webflow offers a a lot of features, it proved to be more complex than we needed, and the cost was higher than anticipated.
WordPress.com, on the other hand, is a slightly more affordable and straightforward option. With the $55 per month package, we’ll have everything that we need for the foreseeable future. Since we’re already familiar with the platform, the transition will be smooth, and we’ll be able to focus on creating content rather than wrestling with the website builder.
We want to make this move now, before we have a bunch of content on the website and the migration becomes more of a headache. It’s going to be easy to do it now. Plus, our 1-month billing cycle with Webflow is ending soon, so it’s the perfect time to switch and avoid incurring additional costs.
We made a mistake here. The first of many we’re going to make as we build this product. This is part of the learning process of becoming an entrepreneur. The important lesson for us here is to acknowledge it, fix it and keep moving forward.
Slobodan is going to delve into more detail about training Knowlo for our prototype using embeddings in tomorrow’s post. For today, I’d like to provide a short explanation of what embeddings are, with the help of CofounderGPT.
Think of embeddings like a language that AI models can understand. It’s a way to convert words and phrases into a numerical form that the AI can process and analyze. In the context of AI and natural language processing, embeddings are a method used to transform words and phrases into numerical representations, or vectors.
To illustrate the concept of embeddings, let’s use an example from the field of architecture. Imagine you have a collection of architectural terms such as “column,” “arch,” and “dome.” Each of these terms has a specific meaning and is related to other terms within the architectural domain. The goal of embeddings is to capture these relationships in a numerical form.
In the case of our architectural terms, embeddings will assign each term a unique vector, which is just a series of numbers. These vectors will be positioned in a high-dimensional space in such a way that terms with similar meanings or closely related concepts will be closer together, while those with different meanings will be further apart.
For instance, “column” and “pillar” might have similar vector representations because they are closely related concepts in architecture, whereas “column” and “window” would have more distinct vectors due to their differences.
By using embeddings, Knowlo will be better at understanding the content and context of the tooltips, which means it can provide more accurate and helpful information to users when they need it. The AI model will analyze patterns in the data and understand the relationships between concepts, allowing it to generate contextually relevant responses tailored to each user’s needs.
Keep in mind that this is just a simplified explanation of embeddings. Stay tuned for tomorrow’s post for more information.
We didn’t spend any money today but we did spend more time than it may seem on communications with freelancers.
Time spent today: 6h
Total time spent: 33h
Investment today: $0
Total investment: $207
Slobodan will give us some more information about how embeddings work and how we can use them to build Knowlo. We will also provide an update on finding, interviewing and hiring a freelancer, and moving the website to WordPress.com.