1
0 Comments

Why am I building Ferdinand

Hey indie hackers!

This is going to be a quick story about Ferdinand : What problem am I trying to solve, and how I came up with this project.

Solving a problem

As a Data Engineer/Data Scientist, currently serving as the Head of Data in a tech company, one of my significant challenges is the complexity of cultivating a Data Culture and enhancing people's Analytics Skills.

Data is an incredibly powerful tool: it enables us to gauge the effectiveness of actions or strategies, qualify leads, reduce churn, recommend products, automate tasks, and so on. Examples are numerous.

However, I frequently observe that many non-technical individuals, such as Marketers, Salespersons, Product Managers, and others, feel somewhat uncomfortable with Data & Analytics. They often lack a clear understanding of how data can benefit them, and some may even struggle to utilize and comprehend it due to a lack of necessary skills.

Also, learning about data is not their top priority as they face time constraints.

That's how I came up with this idea: Sending 5-10mn interactive chat-based courses, through Slack, every X weeks. And building a Saas around this idea.

Screenshot

Building the product

Over the past few months, I had fun building my first real Saas product.

1. I started by building the conversational part, which involved addressing several key questions:

  • How to use Slack to send my courses?
  • Should I use a "chatbot engine" like Botpress or Dialogflow?
  • What infrastructure and programming languages would be most suitable?

After trying out a few solutions, I ended up creating my own dialog engine. It would simply take a course file as input. I chose to write courses in a "movie script" style using markdown to add special characters, formatting, and images. I implemented some custom logic to create different paths based on user responses in Slack. This approach has really sped up course creation, as it's no more complicated than writing plain text.

For the infrastructure, I chose to utilize AWS Lambda, which ensures zero cost when the tool remains inactive and can handle increased usage if the project expands.

Finally, I used javascript to write all of that: although I'm more comfortable with Python, I would be able to use Javascript as well to build the Saas part.

2. After that, I got to work on the Saas part. For the frontend, I used Vue.js, while for the backend, I went with Node.js. To save some time on development, I utilized a Saas boilerplate.

Currently, the app consists of these key features:

  • Integration: This allows you to connect your Slack workspace to the product.
  • Courses: You can browse through the available courses.
  • Paths: The courses are organized into "Learning Paths". When using the app, you need to select the specific learning path you want to follow and determine the pace at which you wish to receive the courses.
  • Learners: Once you synchronize your Slack workspace, you'll be able to see a list of your workspace members. From there, you can select who should receive the courses.
  • Subscription: You have the option to manage your subscription.

When you synchronize your Slack workspace, you'll get 2 learners for free. However, if you want to include more people to receive the courses, there is a charge of $2 per extra learner.

What's next?

Today, the product is fully working. We're using it in my current company. Even if I still consider it a beta version.

One of the biggest challenges is to build the course library (write more courses).
Currently, there are 10 courses available.

The other challenge is to attract a few more users: to get more feedbacks, and get the first few paying customers.

, Founder of Icon for Ferdinand
Ferdinand
on August 2, 2023