VibeBuilders.ai Logo
VibeBuilders.ai

Completed

Explore resources related to completed to help implement AI solutions for your business.

Just completed a new type of language learning website - read popular stories scaled to different reading levels
reddit
LLM Vibe Score0
Human Vibe Score1
creedaaronThis week

Just completed a new type of language learning website - read popular stories scaled to different reading levels

As a language learner and software developer, I bootstrapped my project superlang.com over the past year working on the side. There is a mobile friendly web app now, and iOS/Android apps coming in a few months. A year ago I discovered the concept of "comprehensible input" as a way to help me learn German. Even if it's not a silver bullet, it sounded pretty great. Rather than drilling vocab or looking at grammar charts, I could "just read" and acquire the language. I picked up some fairy tales in German, and stories like Alice in Wonderland. Unfortunately, I couldn't really read them. I had to stop every sentence to look up words and try and decipher sentence constructions. Then I turned to some purpose built simple stories for German beginners. But there was a different problem... these were not really stories with any real plot. I could only read so many "Hans goes to the market" type stories before losing interest. My idea was to try to get the best of both worlds somehow. What if I could take a real story, say Alice in Wonderland (or even War and Peace), and dial the difficulty down to my level without losing the plotline. That way, beginners can start right away with something basically comprehensible. Then, you could also re-read the same story at increasing difficulty levels as you gain confidence. As a cherry on top, more illustrations would help with comprehension so each page could have a picture. Is it revolutionary? Maybe, maybe not. I am building off a well established idea of "graded readers" which are simplified stories meant for learning languages. And there are somewhat similar ideas out there now that AI is good at simplifying text, but none that really take this idea where it needs to be with many preloaded stories, multiple difficulty levels, high quality human verified text, and all the bells and whistles. I spent a year building Superlang and it is ready to put out there. Some quick notes: There are 3 languages so far, intended for native English speakers: German, French, and Spanish There are 3 difficulty levels you can set on each story: beginner (roughly A1-A2), intermediate (roughly A2-B1), and advanced (the same level as the original story, but typically B2+) There is premium version as producing the content was somewhat expensive. You can still do a lot of reading on the free version. I have done no marketing yet, except for this post :) The implementation is a combination of AI, and human proofreading and reviewing. In particular, the simplification of stories is very heavily AI driven. The illustrations for each page are AI as well. For translation, as many of you may be aware new LLM models are typically better than Google translate, but still far from perfect. I am very much a proponent of keeping real people in the loop, and so I have real people proofread the translations. That's why there are only about 700 pages of content so far and not tens of thousands. Let me know what you think, and if you find it helpful! Alice in Wonderland - beginner level German Romeo and Juliet - beginner level Spanish

Experienced Software Developer looking for startup to help. I will not promote
reddit
LLM Vibe Score0
Human Vibe Score1
DB010112This week

Experienced Software Developer looking for startup to help. I will not promote

My passion for programming started at the age of 9 when I began playing video games. It was during this time that I first dived into programming, creating scripts for SA:MP (San Andreas Multiplayer) using the Pawn language. SA:MP is a modification for the popular game Grand Theft Auto: San Andreas, allowing players to experience multiplayer gameplay. My early experiences in programming were all about problem-solving—finding ways to enhance the game and improve the player experience. This was when I realized how satisfying it is to solve a problem through code, and that feeling has stayed with me throughout my career. I am a self-taught programmer, and everything I know today comes from my own initiative to learn and improve. After five years of working with local clients, I decided to expand my knowledge and started learning more widely applicable programming languages like Java and Python. I’ve always been the type of person who thrives on challenges. Whenever I encounter a problem, I don’t just look for a quick fix—I dive deep into researching and understanding the problem, and I find a solution that works in the long run. This is what drives me. The ability to solve problems, no matter how complex, and the satisfaction that comes with it is what fuels my passion for programming. My big break came when I had the opportunity to work at \\\\. There, I replaced two senior and two junior developers, which led to significant cost savings for the company. I completed all tasks ahead of schedule, focusing on Java-based applications that were multithreaded and communicated with embedded systems. This experience taught me how to work under pressure and how to manage and solve complex technical problems efficiently. Following my time at \\\\, I transitioned into freelance work as a FullStack Developer, working with technologies such as HTML, CSS, Bootstrap, JavaScript, Django, Spring, MySQL, and PostgreSQL. As a freelancer, I was responsible for finding solutions to a wide range of problems, often working independently and making decisions on the fly. I learned that self-reliance is key in this industry, and being resourceful is one of the most important qualities a developer can have. Later, I joined \\\\ elecom, where I worked on system integration with foreign teams, BPM process solutions, and the merging of complex systems in Oracle databases. I continued to solve challenges, often working with teams across borders and tackling technical obstacles that required creative and well-thought-out solutions. Eventually, I founded my own company, \\\\, where I focus on developing software solutions, Artificial Intelligence (AI), Cybersecurity, and Ethical Hacking. As an entrepreneur, I take pride in finding innovative solutions to problems, whether they come from clients or from technical obstacles I encounter along the way. I’ve also had the privilege of working with the Serbian Ministry of Defense and the police, handling sensitive projects that demand both technical expertise and trustworthiness. Being a self-taught programmer means that I have had to learn and adapt on my own, and I’ve learned to embrace challenges as opportunities for growth. I am constantly driven by the process of solving problems, and it is what keeps me engaged and fulfilled in my work. I am always open to new collaborations and am eager to take on new challenges that push my boundaries in technology, cybersecurity, and software development.

I spent 6 months on building a tool, and got 0 zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a tool, and got 0 zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product, Summ, that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on building a tool, and got 0 zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a tool, and got 0 zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product, Summ, that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

Experienced Software Developer looking for startup to help. I will not promote
reddit
LLM Vibe Score0
Human Vibe Score1
DB010112This week

Experienced Software Developer looking for startup to help. I will not promote

My passion for programming started at the age of 9 when I began playing video games. It was during this time that I first dived into programming, creating scripts for SA:MP (San Andreas Multiplayer) using the Pawn language. SA:MP is a modification for the popular game Grand Theft Auto: San Andreas, allowing players to experience multiplayer gameplay. My early experiences in programming were all about problem-solving—finding ways to enhance the game and improve the player experience. This was when I realized how satisfying it is to solve a problem through code, and that feeling has stayed with me throughout my career. I am a self-taught programmer, and everything I know today comes from my own initiative to learn and improve. After five years of working with local clients, I decided to expand my knowledge and started learning more widely applicable programming languages like Java and Python. I’ve always been the type of person who thrives on challenges. Whenever I encounter a problem, I don’t just look for a quick fix—I dive deep into researching and understanding the problem, and I find a solution that works in the long run. This is what drives me. The ability to solve problems, no matter how complex, and the satisfaction that comes with it is what fuels my passion for programming. My big break came when I had the opportunity to work at \\\\. There, I replaced two senior and two junior developers, which led to significant cost savings for the company. I completed all tasks ahead of schedule, focusing on Java-based applications that were multithreaded and communicated with embedded systems. This experience taught me how to work under pressure and how to manage and solve complex technical problems efficiently. Following my time at \\\\, I transitioned into freelance work as a FullStack Developer, working with technologies such as HTML, CSS, Bootstrap, JavaScript, Django, Spring, MySQL, and PostgreSQL. As a freelancer, I was responsible for finding solutions to a wide range of problems, often working independently and making decisions on the fly. I learned that self-reliance is key in this industry, and being resourceful is one of the most important qualities a developer can have. Later, I joined \\\\ elecom, where I worked on system integration with foreign teams, BPM process solutions, and the merging of complex systems in Oracle databases. I continued to solve challenges, often working with teams across borders and tackling technical obstacles that required creative and well-thought-out solutions. Eventually, I founded my own company, \\\\, where I focus on developing software solutions, Artificial Intelligence (AI), Cybersecurity, and Ethical Hacking. As an entrepreneur, I take pride in finding innovative solutions to problems, whether they come from clients or from technical obstacles I encounter along the way. I’ve also had the privilege of working with the Serbian Ministry of Defense and the police, handling sensitive projects that demand both technical expertise and trustworthiness. Being a self-taught programmer means that I have had to learn and adapt on my own, and I’ve learned to embrace challenges as opportunities for growth. I am constantly driven by the process of solving problems, and it is what keeps me engaged and fulfilled in my work. I am always open to new collaborations and am eager to take on new challenges that push my boundaries in technology, cybersecurity, and software development.

I spent 6 months on building a tool, and got 0 zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a tool, and got 0 zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product, Summ, that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on building a tool, and got 0 zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a tool, and got 0 zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product, Summ, that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on building a web product, and got zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a web product, and got zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ I have stuff to post on Reddit very rarely, but I share how my project is going on, random stuff, and memes on X. Just in case few might want to keep in touch 👀 TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on building a web product, and got zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a web product, and got zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ I have stuff to post on Reddit very rarely, but I share how my project is going on, random stuff, and memes on X. Just in case few might want to keep in touch 👀 TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on building a web product, and got zero users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on building a web product, and got zero users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ I have stuff to post on Reddit very rarely, but I share how my project is going on, random stuff, and memes on X. Just in case few might want to keep in touch 👀 TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2C products beats building B2B products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

My Manager Thinks ML Projects Takes 5 Minutes 🤦‍♀️
reddit
LLM Vibe Score0
Human Vibe Score1
SaraSavvy24This week

My Manager Thinks ML Projects Takes 5 Minutes 🤦‍♀️

Hey, everyone! I’ve got to vent a bit because work has been something else lately. I’m a BI analyst at a bank, and I’m pretty much the only one dealing with machine learning and AI stuff. The rest of my team handles SQL and reporting—no Python, no R, no ML knowledge AT ALL. You could say I’m the only one handling data science stuff So, after I did a Python project for retail, my boss suddenly decided I’m the go-to for all things ML. Since then, I’ve been getting all the ML projects dumped on me (yay?), but here’s the kicker: my manager, who knows nothing about ML, acts like he’s some kind of expert. He keeps making suggestions that make zero sense and setting unrealistic deadlines. I swear, it’s like he read one article and thinks he’s cracked the code. And the best part? Whenever I finish a project, he’s all “we completed this” and “we came up with these insights.” Ummm, excuse me? We? I must’ve missed all those late-night coding sessions you didn’t show up for. The higher-ups know it’s my work and give me credit, but my manager just can’t help himself. Last week, he set a ridiculous deadline of 10 days for a super complex ML project. TEN DAYS! Like, does he even know that data preprocessing alone can take weeks? I’m talking about cleaning up messy datasets, handling missing values, feature engineering, and then model tuning. And that’s before even thinking about building the model! The actual model development is like the tip of the iceberg. But I just nodded and smiled because I was too exhausted to argue. 🤷‍♀️ And then, this one time, they didn’t even invite me to a meeting where they were presenting my work! The assistant manager came to me last minute, like, “Hey, can you explain these evaluation metrics to me so I can present them to the heads?” I was like, excuse me, what? Why not just invite me to the meeting to present my own work? But nooo, they wanted to play charades on me So, I gave the most complicated explanation ever, threw in all the jargon just to mess with him. He came back 10 minutes later, all flustered, and was like, “Yeah, you should probably do the presentation.” I just smiled and said, “I know… data science isn’t for everyone.” Anyway, they called me in at the last minute, and of course, I nailed it because I know my stuff. But seriously, the nerve of not including me in the first place and expecting me to swoop in like some kind of superhero. I mean, at least give me a cape if I’m going to keep saving the day! 🤦‍♀️ Honestly, I don’t know how much longer I can keep this up. I love the work, but dealing with someone who thinks they’re an ML guru when they can barely spell Python is just draining. I have built like some sort of defense mechanism to hit them with all the jargon and watch their eyes glaze over How do you deal with a manager who takes credit for your work and sets impossible deadlines? Should I keep pushing back or just let it go and keep my head down? Any advice! TL;DR: My manager thinks ML projects are plug-and-play, takes credit for my work, and expects me to clean and process data, build models, and deliver results in 10 days. How do I deal with this without snapping? #WorkDrama

How I Started Learning Machine Learning
reddit
LLM Vibe Score0
Human Vibe Score1
TechPrimoThis week

How I Started Learning Machine Learning

Hello, everyone. As promised, I'll write a longer post about how I entered the world of ML, hoping it will help someone shape their path. I'll include links to all the useful materials I used alongside the story, which you can use for learning. I like to call myself an AI Research Scientist who enjoys exploring new AI trends, delving deeper into understanding their background, and applying them to real products. This way, I try to connect science and entrepreneurship because I believe everything that starts as scientific research ends up "on the shelves" as a product that solves a specific user problem. I began my journey in ML in 2016 when it wasn't such a popular field. Everyone had heard of it, but few were applying it. I have several years of development experience and want to try my hand at ML. The first problem I encountered was where to start - whether to learn mathematics, statistics, or something else. That's when I came across a name and a course that completely changed my career. Let's start You guessed it. It was Professor Andrew Ng and his globally popular Machine Learning course available on Coursera (I still have the certificate, hehe). This was also my first official online course ever. Since that course no longer exists as it's been replaced by a new one, I recommend you check out: Machine Learning (Stanford CS229) Machine Learning Specialization These two courses start from the basics of ML and all the necessary calculus you need to know. Many always ask questions like whether to learn linear algebra, statistics, or probability, but you don't need to know everything in depth. This knowledge helps if you're a scientist developing a new architecture, but as an engineer, not really. You need to know some basics to understand, such as how the backpropagation algorithm works. I know that Machine Learning (Stanford CS229) is a very long and arduous course, but it's the right start if you want to be really good at ML. In my time, I filled two thick notebooks by hand while taking the course mentioned above. TensorFlow and Keras After the course, I didn't know how to apply my knowledge because I hadn't learned specifically how to code things. Then, I was looking for ways to learn how to code it. That's when I came across a popular framework called Keras, now part of TensorFlow. I started with a new course and acquiring practical knowledge: Deep Learning Specialization Deep Learning by Ian Goodfellow Machine Learning Yearning by Andrew Ng These resources above were my next step. I must admit that I learned the most from that course and from the book Deep Learning by Ian Goodfellow because I like reading books (although this one is quite difficult to read). Learn by coding To avoid just learning, I went through various GitHub repositories that I manually retyped and learned that way. It may be an old-fashioned technique, but it helped me a lot. Now, most of those repositories don't exist, so I'll share some that I found to be good: Really good Jupyter notebooks that can teach you the basics of TensorFlow Another good repo for learning TF and Keras Master the challenge After mastering the basics in terms of programming in TF/Keras, I wanted to try solving some real problems. There's no better place for that challenge than Kaggle and the popular Titanic dataset. Here, you can really find a bunch of materials and simple examples of ML applications. Here are some of my favorites: Titanic - Machine Learning from Disaster Home Credit Default Risk House Prices - Advanced Regression Techniques Two Sigma: Using News to Predict Stock Movements I then decided to further develop my career in the direction of applying ML to the stock market, first using predictions on time series and then using natural language processing. I've remained in this field until today and will defend my doctoral dissertation soon. How to deploy models To continue, before I move on to the topic of specialization, we need to address the topic of deployment. Now that we've learned how to make some basic models in Keras and how to use them, there are many ways and services, but I'll only mention what I use today. For all my ML models, whether simple regression models or complex GPT models, I use FastAPI. It's a straightforward framework, and you can quickly create API endpoints. I'll share a few older and useful tutorials for beginners: AI as an API tutorial series A step-by-step guide Productizing an ML Model with FastAPI and Cloud Run Personally, I've deployed on various cloud providers, of which I would highlight GCP and AWS because they have everything needed for model deployment, and if you know how to use them, they can be quite cheap. Chose your specialization The next step in developing my career, besides choosing finance as the primary area, was my specialization in the field of NLP. This happened in early 2020 when I started working with models based on the Transformer architecture. The first model I worked with was BERT, and the first tasks were related to classifications. My recommendations are to master the Transformer architecture well because 99% of today's LLM models are based on it. Here are some resources: The legendary paper "Attention Is All You Need" Hugging Face Course on Transformers Illustrated Guide to Transformers - Step by Step Explanation Good repository How large language models work, a visual intro to transformers After spending years using encoder-based Transformer models, I started learning GPT models. Good open-source models like Llama 2 then appear. Then, I started fine-tuning these models using the excellent Unsloth library: How to Finetune Llama-3 and Export to Ollama Fine-tune Llama 3.1 Ultra-Efficiently with Unsloth After that, I focused on studying various RAG techniques and developing Agent AI systems. This is now called AI engineering, and, as far as I can see, it has become quite popular. So I'll write more about that in another post, but here I'll leave what I consider to be the three most famous representatives, i.e., their tutorials: LangChain tutorial LangGraph tutorial CrewAI examples Here I am today Thanks to the knowledge I've generated over all these years in the field of ML, I've developed and worked on numerous projects. The most significant publicly available project is developing an agent AI system for well-being support, which I turned into a mobile application. Also, my entire doctoral dissertation is related to applying ML to the stock market in combination with the development of GPT models and reinforcement learning (more on that in a separate post). After long 6 years, I've completed my dissertation, and now I'm just waiting for its defense. I'll share everything I'm working on for the dissertation publicly on the project, and in tutorials I'm preparing to write. If you're interested in these topics, I announce that I'll soon start with activities of publishing content on Medium and a blog, but I'll share all of that here on Reddit as well. Now that I've gathered years of experience and knowledge in this field, I'd like to share it with others and help as much as possible. If you have any questions, feel free to ask them, and I'll try to answer all of them. Thank you for reading.

How I Started Learning Machine Learning
reddit
LLM Vibe Score0
Human Vibe Score1
TechPrimoThis week

How I Started Learning Machine Learning

Hello, everyone. As promised, I'll write a longer post about how I entered the world of ML, hoping it will help someone shape their path. I'll include links to all the useful materials I used alongside the story, which you can use for learning. I like to call myself an AI Research Scientist who enjoys exploring new AI trends, delving deeper into understanding their background, and applying them to real products. This way, I try to connect science and entrepreneurship because I believe everything that starts as scientific research ends up "on the shelves" as a product that solves a specific user problem. I began my journey in ML in 2016 when it wasn't such a popular field. Everyone had heard of it, but few were applying it. I have several years of development experience and want to try my hand at ML. The first problem I encountered was where to start - whether to learn mathematics, statistics, or something else. That's when I came across a name and a course that completely changed my career. Let's start You guessed it. It was Professor Andrew Ng and his globally popular Machine Learning course available on Coursera (I still have the certificate, hehe). This was also my first official online course ever. Since that course no longer exists as it's been replaced by a new one, I recommend you check out: Machine Learning (Stanford CS229) Machine Learning Specialization These two courses start from the basics of ML and all the necessary calculus you need to know. Many always ask questions like whether to learn linear algebra, statistics, or probability, but you don't need to know everything in depth. This knowledge helps if you're a scientist developing a new architecture, but as an engineer, not really. You need to know some basics to understand, such as how the backpropagation algorithm works. I know that Machine Learning (Stanford CS229) is a very long and arduous course, but it's the right start if you want to be really good at ML. In my time, I filled two thick notebooks by hand while taking the course mentioned above. TensorFlow and Keras After the course, I didn't know how to apply my knowledge because I hadn't learned specifically how to code things. Then, I was looking for ways to learn how to code it. That's when I came across a popular framework called Keras, now part of TensorFlow. I started with a new course and acquiring practical knowledge: Deep Learning Specialization Deep Learning by Ian Goodfellow Machine Learning Yearning by Andrew Ng These resources above were my next step. I must admit that I learned the most from that course and from the book Deep Learning by Ian Goodfellow because I like reading books (although this one is quite difficult to read). Learn by coding To avoid just learning, I went through various GitHub repositories that I manually retyped and learned that way. It may be an old-fashioned technique, but it helped me a lot. Now, most of those repositories don't exist, so I'll share some that I found to be good: Really good Jupyter notebooks that can teach you the basics of TensorFlow Another good repo for learning TF and Keras Master the challenge After mastering the basics in terms of programming in TF/Keras, I wanted to try solving some real problems. There's no better place for that challenge than Kaggle and the popular Titanic dataset. Here, you can really find a bunch of materials and simple examples of ML applications. Here are some of my favorites: Titanic - Machine Learning from Disaster Home Credit Default Risk House Prices - Advanced Regression Techniques Two Sigma: Using News to Predict Stock Movements I then decided to further develop my career in the direction of applying ML to the stock market, first using predictions on time series and then using natural language processing. I've remained in this field until today and will defend my doctoral dissertation soon. How to deploy models To continue, before I move on to the topic of specialization, we need to address the topic of deployment. Now that we've learned how to make some basic models in Keras and how to use them, there are many ways and services, but I'll only mention what I use today. For all my ML models, whether simple regression models or complex GPT models, I use FastAPI. It's a straightforward framework, and you can quickly create API endpoints. I'll share a few older and useful tutorials for beginners: AI as an API tutorial series A step-by-step guide Productizing an ML Model with FastAPI and Cloud Run Personally, I've deployed on various cloud providers, of which I would highlight GCP and AWS because they have everything needed for model deployment, and if you know how to use them, they can be quite cheap. Chose your specialization The next step in developing my career, besides choosing finance as the primary area, was my specialization in the field of NLP. This happened in early 2020 when I started working with models based on the Transformer architecture. The first model I worked with was BERT, and the first tasks were related to classifications. My recommendations are to master the Transformer architecture well because 99% of today's LLM models are based on it. Here are some resources: The legendary paper "Attention Is All You Need" Hugging Face Course on Transformers Illustrated Guide to Transformers - Step by Step Explanation Good repository How large language models work, a visual intro to transformers After spending years using encoder-based Transformer models, I started learning GPT models. Good open-source models like Llama 2 then appear. Then, I started fine-tuning these models using the excellent Unsloth library: How to Finetune Llama-3 and Export to Ollama Fine-tune Llama 3.1 Ultra-Efficiently with Unsloth After that, I focused on studying various RAG techniques and developing Agent AI systems. This is now called AI engineering, and, as far as I can see, it has become quite popular. So I'll write more about that in another post, but here I'll leave what I consider to be the three most famous representatives, i.e., their tutorials: LangChain tutorial LangGraph tutorial CrewAI examples Here I am today Thanks to the knowledge I've generated over all these years in the field of ML, I've developed and worked on numerous projects. The most significant publicly available project is developing an agent AI system for well-being support, which I turned into a mobile application. Also, my entire doctoral dissertation is related to applying ML to the stock market in combination with the development of GPT models and reinforcement learning (more on that in a separate post). After long 6 years, I've completed my dissertation, and now I'm just waiting for its defense. I'll share everything I'm working on for the dissertation publicly on the project, and in tutorials I'm preparing to write. If you're interested in these topics, I announce that I'll soon start with activities of publishing content on Medium and a blog, but I'll share all of that here on Reddit as well. Now that I've gathered years of experience and knowledge in this field, I'd like to share it with others and help as much as possible. If you have any questions, feel free to ask them, and I'll try to answer all of them. Thank you for reading.

MMML | Deploy HuggingFace training model rapidly based on MetaSpore
reddit
LLM Vibe Score0
Human Vibe Score1
qazmkoppThis week

MMML | Deploy HuggingFace training model rapidly based on MetaSpore

A few days ago, HuggingFace announced a $100 million Series C funding round, which was big news in open source machine learning and could be a sign of where the industry is headed. Two days before the HuggingFace funding announcement, open-source machine learning platform MetaSpore released a demo based on the HuggingFace Rapid deployment pre-training model. As deep learning technology makes innovative breakthroughs in computer vision, natural language processing, speech understanding, and other fields, more and more unstructured data are perceived, understood, and processed by machines. These advances are mainly due to the powerful learning ability of deep learning. Through pre-training of deep models on massive data, the models can capture the internal data patterns, thus helping many downstream tasks. With the industry and academia investing more and more energy in the research of pre-training technology, the distribution warehouses of pre-training models such as HuggingFace and Timm have emerged one after another. The open-source community release pre-training significant model dividends at an unprecedented speed. In recent years, the data form of machine modeling and understanding has gradually evolved from single-mode to multi-mode, and the semantic gap between different modes is being eliminated, making it possible to retrieve data across modes. Take CLIP, OpenAI’s open-source work, as an example, to pre-train the twin towers of images and texts on a dataset of 400 million pictures and texts and connect the semantics between pictures and texts. Many researchers in the academic world have been solving multimodal problems such as image generation and retrieval based on this technology. Although the frontier technology through the semantic gap between modal data, there is still a heavy and complicated model tuning, offline data processing, high performance online reasoning architecture design, heterogeneous computing, and online algorithm be born multiple processes and challenges, hindering the frontier multimodal retrieval technologies fall to the ground and pratt &whitney. DMetaSoul aims at the above technical pain points, abstracting and uniting many links such as model training optimization, online reasoning, and algorithm experiment, forming a set of solutions that can quickly apply offline pre-training model to online. This paper will introduce how to use the HuggingFace community pre-training model to conduct online reasoning and algorithm experiments based on MetaSpore technology ecology so that the benefits of the pre-training model can be fully released to the specific business or industry and small and medium-sized enterprises. And we will give the text search text and text search graph two multimodal retrieval demonstration examples for your reference. Multimodal semantic retrieval The sample architecture of multimodal retrieval is as follows: Our multimodal retrieval system supports both text search and text search application scenarios, including offline processing, model reasoning, online services, and other core modules: https://preview.redd.it/mdyyv1qmdz291.png?width=1834&format=png&auto=webp&s=e9e10710794c78c64cc05adb75db385aa53aba40 Offline processing, including offline data processing processes for different application scenarios of text search and text search, including model tuning, model export, data index database construction, data push, etc. Model inference. After the offline model training, we deployed our NLP and CV large models based on the MetaSpore Serving framework. MetaSpore Serving helps us conveniently perform online inference, elastic scheduling, load balancing, and resource scheduling in heterogeneous environments. Online services. Based on MetaSpore’s online algorithm application framework, MetaSpore has a complete set of reusable online search services, including Front-end retrieval UI, multimodal data preprocessing, vector recall and sorting algorithm, AB experimental framework, etc. MetaSpore also supports text search by text and image scene search by text and can be migrated to other application scenarios at a low cost. The HuggingFace open source community has provided several excellent baseline models for similar multimodal retrieval problems, which are often the starting point for actual optimization in the industry. MetaSpore also uses the pre-training model of the HuggingFace community in its online services of searching words by words and images by words. Searching words by words is based on the semantic similarity model of the question and answer field optimized by MetaSpore, and searching images by words is based on the community pre-training model. These community open source pre-training models are exported to the general ONNX format and loaded into MetaSpore Serving for online reasoning. The following sections will provide a detailed description of the model export and online retrieval algorithm services. The reasoning part of the model is standardized SAAS services with low coupling with the business. Interested readers can refer to my previous post: The design concept of MetaSpore, a new generation of the one-stop machine learning platform. 1.1 Offline Processing Offline processing mainly involves the export and loading of online models and index building and pushing of the document library. You can follow the step-by-step instructions below to complete the offline processing of text search and image search and see how the offline pre-training model achieves reasoning at MetaSpore. 1.1.1 Search text by text Traditional text retrieval systems are based on literal matching algorithms such as BM25. Due to users’ diverse query words, a semantic gap between query words and documents is often encountered. For example, users misspell “iPhone” as “Phone,” and search terms are incredibly long, such as “1 \~ 3 months old baby autumn small size bag pants”. Traditional text retrieval systems will use spelling correction, synonym expansion, search terms rewriting, and other means to alleviate the semantic gap but fundamentally fail to solve this problem. Only when the retrieval system fully understands users’ query terms and documents can it meet users’ retrieval demands at the semantic level. With the continuous progress of pre-training and representational learning technology, some commercial search engines continue to integrate semantic vector retrieval methods based on symbolic learning into the retrieval ecology. Semantic retrieval model This paper introduces a set of semantic vector retrieval applications. MetaSpore built a set of semantic retrieval systems based on encyclopedia question and answer data. MetaSpore adopted the Sentence-Bert model as the semantic vector representation model, which fine-tunes the twin tower BERT in supervised or unsupervised ways to make the model more suitable for retrieval tasks. The model structure is as follows: The query-Doc symmetric two-tower model is used in text search and question and answer retrieval. The vector representation of online Query and offline DOC share the same vector representation model, so it is necessary to ensure the consistency of the offline DOC library building model and online Query inference model. The case uses MetaSpore’s text representation model Sbert-Chinese-QMC-domain-V1, optimized in the open-source semantically similar data set. This model will express the question and answer data as a vector in offline database construction. The user query will be expressed as a vector by this model in online retrieval, ensuring that query-doc in the same semantic space, users’ semantic retrieval demands can be guaranteed by vector similarity metric calculation. Since the text presentation model does vector encoding for Query online, we need to export the model for use by the online service. Go to the q&A data library code directory and export the model concerning the documentation. In the script, Pytorch Tracing is used to export the model. The models are exported to the “./export “directory. The exported models are mainly ONNX models used for wired reasoning, Tokenizer, and related configuration files. The exported models are loaded into MetaSpore Serving by the online Serving system described below for model reasoning. Since the exported model will be copied to the cloud storage, you need to configure related variables in env.sh. \Build library based on text search \ The retrieval database is built on the million-level encyclopedia question and answer data set. According to the description document, you need to download the data and complete the database construction. The question and answer data will be coded as a vector by the offline model, and then the database construction data will be pushed to the service component. The whole process of database construction is described as follows: Preprocessing, converting the original data into a more general JSonline format for database construction; Build index, use the same model as online “sbert-Chinese-qmc-domain-v1” to index documents (one document object per line); Push inverted (vector) and forward (document field) data to each component server. The following is an example of the database data format. After offline database construction is completed, various data are pushed to corresponding service components, such as Milvus storing vector representation of documents and MongoDB storing summary information of documents. Online retrieval algorithm services will use these service components to obtain relevant data. 1.1.2 Search by text Text and images are easy for humans to relate semantically but difficult for machines. First of all, from the perspective of data form, the text is the discrete ID type of one-dimensional data based on words and words. At the same time, images are continuous two-dimensional or three-dimensional data. Secondly, the text is a subjective creation of human beings, and its expressive ability is vibrant, including various turning points, metaphors, and other expressions, while images are machine representations of the objective world. In short, bridging the semantic gap between text and image data is much more complex than searching text by text. The traditional text search image retrieval technology generally relies on the external text description data of the image or the nearest neighbor retrieval technology and carries out the retrieval through the image associated text, which in essence degrades the problem to text search. However, it will also face many issues, such as obtaining the associated text of pictures and whether the accuracy of text search by text is high enough. The depth model has gradually evolved from single-mode to multi-mode in recent years. Taking the open-source project of OpenAI, CLIP, as an example, train the model through the massive image and text data of the Internet and map the text and image data into the same semantic space, making it possible to implement the text and image search technology based on semantic vector. CLIP graphic model The text search pictures introduced in this paper are implemented based on semantic vector retrieval, and the CLIP pre-training model is used as the two-tower retrieval architecture. Because the CLIP model has trained the semantic alignment of the twin towers’ text and image side models on the massive graphic and text data, it is particularly suitable for the text search graph scene. Due to the different image and text data forms, the Query-Doc asymmetric twin towers model is used for text search image retrieval. The image-side model of the twin towers is used for offline database construction, and the text-side model is used for the online return. In the final online retrieval, the database data of the image side model will be searched after the text side model encodes Query, and the CLIP pre-training model guarantees the semantic correlation between images and texts. The model can draw the graphic pairs closer in vector space by pre-training on a large amount of visual data. Here we need to export the text-side model for online MetaSpore Serving inference. Since the retrieval scene is based on Chinese, the CLIP model supporting Chinese understanding is selected. The exported content includes the ONNX model used for online reasoning and Tokenizer, similar to the text search. MetaSpore Serving can load model reasoning through the exported content. Build library on Image search You need to download the Unsplash Lite library data and complete the construction according to the instructions. The whole process of database construction is described as follows: Preprocessing, specify the image directory, and then generate a more general JSOnline file for library construction; Build index, use OpenAI/Clip-Vit-BASE-Patch32 pre-training model to index the gallery, and output one document object for each line of index data; Push inverted (vector) and forward (document field) data to each component server. Like text search, after offline database construction, relevant data will be pushed to service components, called by online retrieval algorithm services to obtain relevant data. 1.2 Online Services The overall online service architecture diagram is as follows: &#x200B; https://preview.redd.it/nz8zrbbpdz291.png?width=1280&format=png&auto=webp&s=28dae7e031621bc8819519667ed03d8d085d8ace Multi-mode search online service system supports application scenarios such as text search and text search. The whole online service consists of the following parts: Query preprocessing service: encapsulate preprocessing logic (including text/image, etc.) of pre-training model, and provide services through gRPC interface; Retrieval algorithm service: the whole algorithm processing link includes AB experiment tangent flow configuration, MetaSpore Serving call, vector recall, sorting, document summary, etc.; User entry service: provides a Web UI interface for users to debug and track down problems in the retrieval service. From a user request perspective, these services form invocation dependencies from back to front, so to build up a multimodal sample, you need to run each service from front to back first. Before doing this, remember to export the offline model, put it online and build the library first. This article will introduce the various parts of the online service system and make the whole service system step by step according to the following guidance. See the ReadME at the end of this article for more details. 1.2.1 Query preprocessing service Deep learning models tend to be based on tensors, but NLP/CV models often have a preprocessing part that translates raw text and images into tensors that deep learning models can accept. For example, NLP class models often have a pre-tokenizer to transform text data of string type into discrete tensor data. CV class models also have similar processing logic to complete the cropping, scaling, transformation, and other processing of input images through preprocessing. On the one hand, considering that this part of preprocessing logic is decoupled from tensor reasoning of the depth model, on the other hand, the reason of the depth model has an independent technical system based on ONNX, so MetaSpore disassembled this part of preprocessing logic. NLP pretreatment Tokenizer has been integrated into the Query pretreatment service. MetaSpore dismantlement with a relatively general convention. Users only need to provide preprocessing logic files to realize the loading and prediction interface and export the necessary data and configuration files loaded into the preprocessing service. Subsequent CV preprocessing logic will also be integrated in this manner. The preprocessing service currently provides the gRPC interface invocation externally and is dependent on the Query preprocessing (QP) module in the retrieval algorithm service. After the user request reaches the retrieval algorithm service, it will be forwarded to the service to complete the data preprocessing and continue the subsequent processing. The ReadMe provides details on how the preprocessing service is started, how the preprocessing model exported offline to cloud storage enters the service, and how to debug the service. To further improve the efficiency and stability of model reasoning, MetaSpore Serving implements a Python preprocessing submodule. So MetaSpore can provide gRPC services through user-specified preprocessor.py, complete Tokenizer or CV-related preprocessing in NLP, and translate requests into a Tensor that deep models can handle. Finally, the model inference is carried out by MetaSpore, Serving subsequent sub-modules. Presented here on the lot code: https://github.com/meta-soul/MetaSpore/compare/add\python\preprocessor 1.2.2 Retrieval algorithm services Retrieval algorithm service is the core of the whole online service system, which is responsible for the triage of experiments, the assembly of algorithm chains such as preprocessing, recall, sorting, and the invocation of dependent component services. The whole retrieval algorithm service is developed based on the Java Spring framework and supports multi-mode retrieval scenarios of text search and text search graph. Due to good internal abstraction and modular design, it has high flexibility and can be migrated to similar application scenarios at a low cost. Here’s a quick guide to configuring the environment to set up the retrieval algorithm service. See ReadME for more details: Install dependent components. Use Maven to install the online-Serving component Search for service configurations. Copy the template configuration file and replace the MongoDB, Milvus, and other configurations based on the development/production environment. Install and configure Consul. Consul allows you to synchronize the search service configuration in real-time, including cutting the flow of experiments, recall parameters, and sorting parameters. The project’s configuration file shows the current configuration parameters of text search and text search. The parameter modelName in the stage of pretreatment and recall is the corresponding model exported in offline processing. Start the service. Once the above configuration is complete, the retrieval service can be started from the entry script. Once the service is started, you can test it! For example, for a user with userId=10 who wants to query “How to renew ID card,” access the text search service. 1.2.3 User Entry Service Considering that the retrieval algorithm service is in the form of the API interface, it is difficult to locate and trace the problem, especially for the text search image scene can intuitively display the retrieval results to facilitate the iterative optimization of the retrieval algorithm. This paper provides a lightweight Web UI interface for text search and image search, a search input box, and results in a display page for users. Developed by Flask, the service can be easily integrated with other retrieval applications. The service calls the retrieval algorithm service and displays the returned results on the page. It’s also easy to install and start the service. Once you’re done, go to http://127.0.0.1:8090 to see if the search UI service is working correctly. See the ReadME at the end of this article for details. Multimodal system demonstration The multimodal retrieval service can be started when offline processing and online service environment configuration have been completed following the above instructions. Examples of textual searches are shown below. Enter the entry of the text search map application, enter “cat” first, and you can see that the first three digits of the returned result are cats: https://preview.redd.it/d7syq47rdz291.png?width=1280&format=png&auto=webp&s=b43df9abd380b7d9a52e3045dd787f4feeb69635 If you add a color constraint to “cat” to retrieve “black cat,” you can see that it does return a black cat: &#x200B; https://preview.redd.it/aa7pxx8tdz291.png?width=1280&format=png&auto=webp&s=e3727c29d1bde6eea2e1cccf6c46d3cae3f4750e Further, strengthen the constraint on the search term, change it to “black cat on the bed,” and return results containing pictures of a black cat climbing on the bed: &#x200B; https://preview.redd.it/2mw4qpjudz291.png?width=1280&format=png&auto=webp&s=1cf1db667892b9b3a40451993680fbd6980b5520 The cat can still be found through the text search system after the color and scene modification in the above example. Conclusion The cutting-edge pre-training technology can bridge the semantic gap between different modes, and the HuggingFace community can greatly reduce the cost for developers to use the pre-training model. Combined with the technological ecology of MetaSpore online reasoning and online microservices provided by DMetaSpore, the pre-training model is no longer mere offline dabbling. Instead, it can truly achieve end-to-end implementation from cutting-edge technology to industrial scenarios, fully releasing the dividends of the pre-training large model. In the future, DMetaSoul will continue to improve and optimize the MetaSpore technology ecosystem: More automated and wider access to HuggingFace community ecology. MetaSpore will soon release a common model rollout mechanism to make HuggingFace ecologically accessible and will later integrate preprocessing services into online services. Multi-mode retrieval offline algorithm optimization. For multimodal retrieval scenarios, MetaSpore will continuously iteratively optimize offline algorithm components, including text recall/sort model, graphic recall/sort model, etc., to improve the accuracy and efficiency of the retrieval algorithm. For related code and reference documentation in this article, please visit: https://github.com/meta-soul/MetaSpore/tree/main/demo/multimodal/online Some images source: https://github.com/openai/CLIP/raw/main/CLIP.png https://www.sbert.net/examples/training/sts/README.html

Learning AI for Business Leaders
reddit
LLM Vibe Score0
Human Vibe Score0
Bills-WideRightThis week

Learning AI for Business Leaders

Hello Community, For the better part of 2 months I have been reading up on everything in getting a better understanding of the fundamentals of AI - from history of AI to reading the Google 8’s peer reviewed paper on the advent of transformers. I feel as though I am running in circles at times an not following a guided path approach to learning. I’m 40, work in international development in a leadership role - though I have a background in corporate finance and tech. I’m not an engineer, nor do I have the ambition of such a career pivot. However I do want to learn, be abreast, and know enough about the space when evaluating (and proposing) AI related opportunities - my role now should be a path towards a chief innovation officer for a development agency within the next 3-4 years. My sources have been basically everything I can find from tech blogs, WaPo, financial times, economist, and random internet searches. I have completed IBM’s Fundamental on AI course. However, I feel there no structure in learning as I have been piecemealing from so many different sources. Essentially I care about business cases and being able to confidently talk about AI. And not building and deploying a product. MIT and UPenn have some courses on AI for leaders, however, as the space is moving so fast I’m not confident how current their materials are. My ask: Are there any courses (or learning approaches) you recommend that is less-code and more focus on concept and applications I should do? Is my approach to learning too broad and I should focus on a subset of AI such as ML or specifically GenAI since it seems most applications are currently byproducts of it. Many thanks in advance for any support - truly appreciate it.

Day 1 of my BIP for my AdonisJS Boilerplate (turbosaas) [Built in public]
reddit
LLM Vibe Score0
Human Vibe Score0.5
Ok_Bread_6005This week

Day 1 of my BIP for my AdonisJS Boilerplate (turbosaas) [Built in public]

Hello everyone, here is day 1 (not really, I started a bit earlier) of my project: A boilerplate using AdonisJS, Inertia What technologies are used/present? AdonisJS Inertia Stripe OpenAI TailwindCSS Vite (React) Why? Firstly, I want to save time when launching my projects, and I think you do too, so I've included as many relevant features as possible. I'm tired of seeing attitudes like 'develop your SaaS in 1 hour and produce terrible code!' The purpose of this codebase is to provide the highest quality code possible and to maintain that standard throughout the development process. You might spend an extra 20 minutes doing things right, but you'll save 2 hours on refactoring. And no, you won't have to pay for updates. (WTF by the way?) Why these technologies? I've seen a lot of NextJS for boilerplates, and I've also used NextJS before, but I quickly abandoned it. It quickly becomes a mess You lose track of what is what, and start doing anything Every update breaks your application Whereas with AdonisJS, life is beautiful. There are plenty of community packages already available, and everything you need is here. What am I offering? Authentication: Social authentication, OTP, Magic Links, and credentials, along with complete account management features like password recovery. Payment & Mailing Integration: Seamless integration from start to finish, with multiple options to choose from. Detailed Documentation: Thorough explanations of every aspect, covering even the smallest, potentially confusing details in the code. Maintainable & Scalable Code: Organized by features, allowing you to easily drag and drop features to extend functionality. Developer Tools: Handy commands for generating new features and automatically adding necessary imports; a complete config to enable/disable a feature in less than 10 seconds... Pre-made Pages: Ready-to-use pages such as an admin dashboard for tasks like automatically updating products on Stripe. Extensive Component Library: A variety of components to streamline development. I've designed this boilerplate to be as developer-friendly and robust as possible, aiming to support maintainability and scalability from the get-go. Summary of today and previous days Day 2 Stripe is a nightmare to set up if you've never done it before, it quickly becomes tedious. But I've finally finished setting everything up: one-time payments, subscriptions, and subscription updates. It was complicated. Today I finally implemented the 'forgot password' option, and I've completed all the authentication by adding magic links (working with OTP). I also set up automatic deployment with GitHub Actions, and everything works well. The build runs with the action to ensure everything goes smoothly, then using SSH, I pull the project, build it, and launch it. Tomorrow: What I want to do tomorrow Tomorrow, I want to create the blog, because yes, I want to include a blog as well, and especially complete it as soon as possible so it can be available on turbosaas(dot)dev, and write my build in public. It will probably use markdown. Thank you for reading this short build in public, you can also check out how it's going on turbosaas(dot)dev.

I spent 6 months on a web app as a side project, and got 0 users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on a web app as a side project, and got 0 users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ I very rarely have stuff to post on Reddit, but I share how my project is going on, just random stuff, and memes on X. In case few might want to keep up 👀 TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2B products beats building B2C products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

I spent 6 months on a web app as a side project, and got 0 users. Here is my story.
reddit
LLM Vibe Score0
Human Vibe Score0.667
GDbuildsGDThis week

I spent 6 months on a web app as a side project, and got 0 users. Here is my story.

Edit Thank you all so much for your time reading my story. Your support, feedback, criticism, and skepticism; all helped me a lot, and I couldn't appreciate it enough \^\_\^ I very rarely have stuff to post on Reddit, but I share how my project is going on, just random stuff, and memes on X. In case few might want to keep up 👀 TL;DR I spent 6 months on a tool that currently has 0 users. Below is what I learned during my journey, sharing because I believe most mistakes are easily avoidable. Do not overestimate your product and assume it will be an exception to fundamental principles. Principles are there for a reason. Always look for validation before you start. Avoid building products with a low money-to-effort ratio/in very competitive fields. Unless you have the means, you probably won't make it. Pick a problem space, pick your target audience, and talk to them before thinking about a solution. Identify and match their pain points. Only then should you think of a solution. If people are not overly excited or willing to pay in advance for a discounted price, it might be a sign to rethink. Sell one and only one feature at a time. Avoid everything else. If people don't pay for that one core feature, no secondary feature will change their mind. Always spend twice as much time marketing as you do building. You will not get users if they don't know it exists. Define success metrics ("1000 users in 3 months" or "$6000 in the account at the end of 6 months") before you start. If you don't meet them, strongly consider quitting the project. If you can't get enough users to keep going, nothing else matters. VALIDATION, VALIDATION, VALIDATION. Success is not random, but most of our first products will not make a success story. Know when to admit failure, and move on. Even if a product of yours doesn't succeed, what you learned during its journey will turn out to be invaluable for your future. My story So, this is the story of a product that I’ve been working on for the last 6 months. As it's the first product I’ve ever built, after watching you all from the sidelines, I have learned a lot, made many mistakes, and did only a few things right. Just sharing what I’ve learned and some insights from my journey so far. I hope that this post will help you avoid the mistakes I made — most of which I consider easily avoidable — while you enjoy reading it, and get to know me a little bit more 🤓. A slow start after many years Summ isn’t the first product I really wanted to build. Lacking enough dev skills to even get started was a huge blocker for so many years. In fact, the first product I would’ve LOVED to build was a smart personal shopping assistant. I had this idea 4 years ago; but with no GPT, no coding skills, no technical co-founder, I didn’t have the means to make it happen. I still do not know if such a tool exists and is good enough. All I wanted was a tool that could make data-based predictions about when to buy stuff (“buy a new toothpaste every three months”) and suggest physical products that I might need or be strongly interested in. AFAIK, Amazon famously still struggles with the second one. Fast-forward a few years, I learned the very basics of HTML, CSS, and Vanilla JS. Still was not there to build a product; but good enough to code my design portfolio from scratch. Yet, I couldn’t imagine myself building a product using Vanilla JS. I really hated it, I really sucked at it. So, back to tutorial hell, and to learn about this framework I just heard about: React.React introduced so many new concepts to me. “Thinking in React” is a phrase we heard a lot, and with quite good reasons. After some time, I was able to build very basic tutorial apps, both in React, and React Native; but I have to say that I really hated coding for mobile. At this point, I was already a fan of productivity apps, and had a concept for a time management assistant app in my design portfolio. So, why not build one? Surely, it must be easy, since every coding tutorial starts with a todo app. ❌ WRONG! Building a basic todo app is easy enough, but building one good enough for a place in the market was a challenge I took and failed. I wasted one month on that until I abandoned the project for good. Even if I continued working on it, as the productivity landscape is overly competitive, I wouldn’t be able to make enough money to cover costs, assuming I make any. Since I was (and still am) in between jobs, I decided to abandon the project. 👉 What I learned: Do not start projects with a low ratio of money to effort and time. Example: Even if I get 500 monthly users, 200 of which are paid users (unrealistically high number), assuming an average subscription fee of $5/m (such apps are quite cheap, mostly due to the high competition), it would make me around $1000 minus any occurring costs. Any founder with a product that has 500 active users should make more. Even if it was relatively successful, due to the high competition, I wouldn’t make any meaningful money. PS: I use Todoist today. Due to local pricing, I pay less than $2/m. There is no way I could beat this competitive pricing, let alone the app itself. But, somehow, with a project that wasn’t even functional — let alone being an MVP — I made my first Wi-Fi money: Someone decided that the domain I preemptively purchased is worth something. By this point, I had already abandoned the project, certainly wasn’t going to renew the domain, was looking for a FT job, and a new project that I could work on. And out of nowhere, someone hands me some free money — who am I not to take it? Of course, I took it. The domain is still unused, no idea why 🤔. Ngl, I still hate the fact that my first Wi-Fi money came from this. A new idea worth pursuing? Fast-forward some weeks now. Around March, I got this crazy idea of building an email productivity tool. We all use emails, yet we all hate them. So, this must be fixed. Everyone uses emails, in fact everyone HAS TO use emails. So, I just needed to build a tool and wait for people to come. This was all, really. After all, the problem space is huge, there is enough room for another product, everyone uses emails, no need for any further validation, right? ❌ WRONG ONCE AGAIN! We all hear from the greatest in the startup landscape that we must validate our ideas with real people, yet at least some of us (guilty here 🥸) think that our product will be hugely successful and prove them to be an exception. Few might, but most are not. I certainly wasn't. 👉 Lesson learned: Always validate your ideas with real people. Ask them how much they’d pay for such a tool (not if they would). Much better if they are willing to pay upfront for a discount, etc. But even this comes later, keep reading. I think the difference between “How much” and “If” is huge for two reasons: (1) By asking them for “How much”, you force them to think in a more realistic setting. (2) You will have a more realistic idea on your profit margins. Based on my competitive analysis, I already had a solution in my mind to improve our email usage standards and email productivity (huge mistake), but I did my best to learn about their problems regarding those without pushing the idea too hard. The idea is this: Generate concise email summaries with suggested actions, combine them into one email, and send it at their preferred times. Save as much as time the AI you end up with allows. After all, everyone loves to save time. So, what kind of validation did I seek for? Talked with only a few people around me about this crazy, internet-breaking idea. The responses I got were, now I see, mediocre; no one got excited about it, just said things along the lines of “Cool idea, OK”. So, any reasonable person in this situation would think “Okay, not might not be working”, right? Well, I did not. I assumed that they were the wrong audience for this product, and there was this magical land of user segments waiting eagerly for my product, yet unknowingly. To this day, I still have not reached this magical place. Perhaps, it didn’t exist in the first place. If I cannot find it, whether it exists or not doesn’t matter. I am certainly searching for it. 👉 What I should have done: Once I decide on a problem space (time management, email productivity, etc.), I should decide on my potential user segments, people who I plan to sell my product to. Then I should go talk to those people, ask them about their pains, then get to the problem-solving/ideation phase only later. ❗️ VALIDATION COMES FROM THE REALITY OUTSIDE. What validation looks like might change from product to product; but what invalidation looks like is more or less the same for every product. Nico Jeannen told me yesterday “validation = money in the account” on Twitter. This is the ultimate form of validation your product could get. If your product doesn’t make any money, then something is invalidated by reality: Your product, you, your idea, who knows? So, at this point, I knew a little bit of Python from spending some time in tutorial hell a few years ago, some HTML/CSS/JS, barely enough React to build a working app. React could work for this project, but I needed easy-to-implement server interactivity. Luckily, around this time, I got to know about this new gen of indie hackers, and learned (but didn’t truly understand) about their approach to indie hacking, and this library called Nextjs. How good Next.js still blows my mind. So, I was back to tutorial hell once again. But, this time, with a promise to myself: This is the last time I would visit tutorial hell. Time to start building this "ground-breaking idea" Learning the fundamentals of Next.js was easier than learning of React unsurprisingly. Yet, the first time I managed to run server actions on Next.js was one of the rarest moments that completely blew my mind. To this day, I reject the idea that it is something else than pure magic under its hood. Did I absolutely need Nextjs for this project though? I do not think so. Did it save me lots of time? Absolutely. Furthermore, learning Nextjs will certainly be quite helpful for other projects that I will be tackling in the future. Already got a few ideas that might be worth pursuing in the head in case I decide to abandon Summ in the future. Fast-forward few weeks again: So, at this stage, I had a barely working MVP-like product. Since the very beginning, I spent every free hour (and more) on this project as speed is essential. But, I am not so sure it was worth it to overwork in retrospect. Yet, I know I couldn’t help myself. Everything is going kinda smooth, so what’s the worst thing that could ever happen? Well, both Apple and Google announced their AIs (Apple Intelligence and Google Gemini, respectively) will have email summarization features for their products. Summarizing singular emails is no big deal, after all there were already so many similar products in the market. I still think that what truly matters is a frictionless user experience, and this is why I built this product in a certain way: You spend less than a few minutes setting up your account, and you get to enjoy your email summaries, without ever visiting its website again. This is still a very cool concept I really like a lot. So, at this point: I had no other idea that could be pursued, already spent too much time on this project. Do I quit or not? This was the question. Of course not. I just have to launch this product as quickly as possible. So, I did something right, a quite rare occurrence I might say: Re-planned my product, dropped everything secondary to the core feature immediately (save time on reading emails), tried launching it asap. 👉 Insight: Sell only one core feature at one time. Drop anything secondary to this core feature. Well, my primary occupation is product design. So one would expect that a product I build must have stellar design. I considered any considerable time spent on design at this stage would be simply wasted. I still think this is both true and wrong: True, because if your product’s core benefits suck, no one will care about your design. False, because if your design looks amateurish, no one will trust you and your product. So, I always targeted an average level design with it and the way this tool works made it quite easy as I had to design only 2 primary pages: Landing page and user portal (which has only settings and analytics pages). However, even though I knew spending time on design was not worth much of my time, I got a bit “greedy”: In fact, I redesigned those pages three times, and still ended up with a so-so design that I am not proud of. 👉 What I would do differently: Unless absolutely necessary, only one iteration per stage as long as it works. This, in my mind, applies to everything. If your product’s A feature works, then no need to rewrite it from scratch for any reason, or even refactor it. When your product becomes a success, and you absolutely need that part of your codebase to be written, do so, but only then. Ready to launch, now is th etime for some marketing, right? By July 26, I already had a “launchable” product that barely works (I marked this date on a Notion docs, this is how I know). Yet, I had spent almost no time on marketing, sales, whatever. After all, “You build and they will come”. Did I know that I needed marketing? Of course I did, but knowingly didn’t. Why, you might ask. Well, from my perspective, it had to be a dev-heavy product; meaning that you spend most of your time on developing it, mostly coding skills. But, this is simply wrong. As a rule of thumb, as noted by one of the greatests, Marc Louvion, you should spend at least twice of the building time on marketing. ❗️ Time spent on building \* 2 people don’t know your product > they don’t use your product > you don’t get users > you don’t make money Easy as that. Following the same reasoning, a slightly different approach to planning a project is possible. Determine an approximate time to complete the project with a high level project plan. Let’s say 6 months. By the reasoning above, 2 months should go into building, and 4 into marketing. If you need 4 months for building instead of 2, then you need 8 months of marketing, which makes the time to complete the project 12 months. If you don’t have that much time, then quit the project. When does a project count as completed? Well, in reality, never. But, I think we have to define success conditions even before we start for indie projects and startups; so we know when to quit when they are not met. A success condition could look like “Make $6000 in 12 months” or “Have 3000 users in 6 months”. It all depends on the project. But, once you set it, it should be set in stone: You don’t change it unless absolutely necessary. I suspect there are few principles that make a solopreneur successful; and knowing when to quit and when to continue is definitely one of them. Marc Louvion is famously known for his success, but he got there after failing so many projects. To my knowledge, the same applies to Nico Jeannen, Pieter Levels, or almost everyone as well. ❗️ Determining when to continue even before you start will definitely help in the long run. A half-aed launch Time-leap again. Around mid August, I “soft launched” my product. By soft launch, I mean lazy marketing. Just tweeting about it, posting it on free directories. Did I get any traffic? Surely I did. Did I get any users? Nope. Only after this time, it hit me: “Either something is wrong with me, or with this product” Marketing might be a much bigger factor for a project’s success after all. Even though I get some traffic, not convincing enough for people to sign up even for a free trial. The product was still perfect in my eyes at the time (well, still is ^(\_),) so the right people are not finding my product, I thought. Then, a question that I should have been asking at the very first place, one that could prevent all these, comes to my mind: “How do even people search for such tools?” If we are to consider this whole journey of me and my so-far-failed product to be an already destined failure, one metric suffices to show why. Search volume: 30. Even if people have such a pain point, they are not looking for email summaries. So, almost no organic traffic coming from Google. But, as a person who did zero marketing on this or any product, who has zero marketing knowledge, who doesn’t have an audience on social media, there is not much I could do. Finally, it was time to give up. Or not… In my eyes, the most important element that makes a founder (solo or not) successful (this, I am not by any means) is to solve problems. ❗️ So, the problem was this: “People are not finding my product by organic search” How do I make sure I get some organic traffic and gets more visibility? Learn digital marketing and SEO as much as I can within very limited time. Thankfully, without spending much time, I came across Neil Patel's YT channel, and as I said many times, it is an absolute gold mine. I learned a lot, especially about the fundamentals, and surely it will be fruitful; but there is no magic trick that could make people visit your website. SEO certainly helps, but only when people are looking for your keywords. However, it is truly a magical solution to get in touch with REAL people that are in your user segments: 👉 Understand your pains, understand their problems, help them to solve them via building products. I did not do this so far, have to admit. But, in case you would like to have a chat about your email usage, and email productivity, just get in touch; I’d be delighted to hear about them. Getting ready for a ProductHunt launch The date was Sept 1. And I unlocked an impossible achievement: Running out of Supabase’s free plan’s Egres limit while having zero users. I was already considering moving out of their Cloud server and managing a Supabase CLI service on my Hetzner VPS for some time; but never ever suspected that I would have to do this quickly. The cheapest plan Supabase offers is $25/month; yet, at that point, I am in between jobs for such a long time, basically broke, and could barely afford that price. One or two months could be okay, but why pay for it if I will eventually move out of their Cloud service? So, instead of paying $25, I spent two days migrating out of Supabase Cloud. Worth my time? Definitely not. But, when you are broke, you gotta do stupid things. This was the first time that I felt lucky to have zero users: I have no idea how I would manage this migration if I had any. I think this is one of the core tenets of an indie hacker: Controlling their own environment. I can’t remember whose quote this is, but I suspect it was Naval: Entrepreneurs have an almost pathological need to control their own fate. They will take any suffering if they can be in charge of their destiny, and not have it in somebody else’s hands. What’s truly scary is, at least in my case, we make people around us suffer at the expense of our attempting to control our own fates. I know this period has been quite hard on my wife as well, as I neglected her quite a bit, but sadly, I know that this will happen again. It is something that I can barely help with. Still, so sorry. After working the last two weeks on a ProductHunt Launch, I finally launched it this Tuesday. Zero ranking, zero new users, but 36 kind people upvoted my product, and many commented and provided invaluable feedback. I couldn't be more grateful for each one of them 🙏. Considering all these, what lies in the future of Summ though? I have no idea, to be honest. On one hand, I have zero users, have no job, no income. So, I need a way to make money asap. On the other hand, the whole idea of it revolves around one core premise (not an assumption) that I am not so willing to share; and I couldn’t have more trust in it. This might not be the best iteration of it, however I certainly believe that email usage is one of the best problem spaces one could work on. 👉 But, one thing is for certain: I need to get in touch with people, and talk with them about this product I built so far. In fact, this is the only item on my agenda. Nothing else will save my brainchild <3. Below are some other insights and notes that I got during my journey; as they do not 100% fit into this story, I think it is more suitable to list them here. I hope you enjoyed reading this. Give Summ a try, it comes with a generous free trial, no credit card required. Some additional notes and insights: Project planning is one of the most underestimated skills for solopreneurs. It saves you enormous time, and helps you to keep your focus up. Building B2B products beats building B2C products. Businesses are very willing to pay big bucks if your product helps them. On the other hand, spending a few hours per user who would pay $5/m probably is not worth your time. It doesn’t matter how brilliant your product is if no one uses it. If you cannot sell a product in a certain category/niche (or do not know how to sell it), it might be a good idea not to start a project in it. Going after new ideas and ventures is quite risky, especially if you don’t know how to market it. On the other hand, an already established category means that there is already demand. Whether this demand is sufficient or not is another issue. As long as there is enough demand for your product to fit in, any category/niche is good. Some might be better, some might be worse. Unless you are going hardcore B2B, you will need people to find your product by means of organic search. Always conduct thorough keyword research as soon as possible.

[Discussion] When ML and Data Science are the death of a good company: A cautionary tale.
reddit
LLM Vibe Score0
Human Vibe Score0.6
AlexSnakeKingThis week

[Discussion] When ML and Data Science are the death of a good company: A cautionary tale.

TD;LR: At Company A, Team X does advanced analytics using on-prem ERP tools and older programming languages. Their tools work very well and are designed based on very deep business and domain expertise. Team Y is a new and ambitious Data Science team that thinks they can replace Team X's tools with a bunch of R scripts and a custom built ML platform. Their models are simplistic, but more "fashionable" compared to the econometric models used by Team X, and team Y benefits from the ML/DS moniker so leadership is allowing Team Y to start a large scale overhaul of the analytics platform in question. Team Y doesn't have the experience for such a larger scale transformation, and is refusing to collaborate with team X. This project is very likely going to fail, and cause serious harm to the company as a whole financially and from a people perspective. I argue that this is not just because of bad leadership, but also because of various trends and mindsets in the DS community at large. Update (Jump to below the line for the original story): Several people in the comments are pointing out that this just a management failure, not something due to ML/DS, and that you can replace DS with any buzz tech and the story will still be relevant. My response: Of course, any failure at an organization level is ultimately a management failure one way or the other. Moreover, it is also the case that ML/DS when done correctly, will always improve a company's bottom line. There is no scenario where the proper ML solution, delivered at a reasonable cost and in a timely fashion, will somehow hurt the company's bottom line. My point is that in this case management is failing because of certain trends and practices that are specific to the ML/DS community, namely: The idea that DS teams should operate independently of tech and business orgs -- too much autonomy for DS teams The disregard for domain knowledge that seems prevalent nowadays thanks to the ML hype, that DS can be generalists and someone with good enough ML chops can solve any business problem. That wasn't the case when I first left academia for the industry in 2009 (back then nobody would even bother with a phone screen if you didn't have the right domain knowledge). Over reliance on resources who check all the ML hype related boxes (knows Python, R, Tensorflow, Shiny, etc..., has the right Coursera certifications, has blogged on the topic, etc...), but are lacking in depth of experience. DS interviews nowadays all seem to be: Can you tell me what a p-value is? What is elastic net regression? Show me how to fit a model in sklearn? How do you impute NAs in an R dataframe? Any smart person can look those up on Stackoverflow or Cross-Validated,.....Instead teams should be asking stuff like: why does portfolio optimization use QP not LP? How does a forecast influence a customer service level? When should a recommendation engine be content based and when should it use collaborative filtering? etc... (This is a true story, happening to the company I currently work for. Names, domains, algorithms, and roles have been shuffled around to protect my anonymity)  Company A has been around for several decades. It is not the biggest name in its domain, but it is a well respected one. Risk analysis and portfolio optimization have been a core of Company A's business since the 90s. They have a large team of 30 or so analysts who perform those tasks on a daily basis. These analysts use ERP solutions implemented for them by one the big ERP companies (SAP, Teradata, Oracle, JD Edwards,...) or one of the major tech consulting companies (Deloitte, Accenture, PWC, Capgemini, etc...) in collaboration with their own in house engineering team. The tools used are embarrassingly old school: Classic RDBMS running on on-prem servers or maybe even on mainframes, code written in COBOL, Fortran, weird proprietary stuff like ABAP or SPSS.....you get the picture. But the models and analytic functions were pretty sophisticated, and surprisingly cutting edge compared to the published academic literature. Most of all, they fit well with the company's enterprise ecosystem, and were honed based on years of deep domain knowledge.  They have a tech team of several engineers (poached from the aforementioned software and consulting companies) and product managers (who came from the experienced pools of analysts and managers who use the software, or poached from business rivals) maintaining and running this software. Their technology might be old school, but collectively, they know the domain and the company's overall architecture very, very well. They've guided the company through several large scale upgrades and migrations and they have a track record of delivering on time, without too much overhead. The few times they've stumbled, they knew how to pick themselves up very quickly. In fact within their industry niche, they have a reputation for their expertise, and have very good relations with the various vendors they've had to deal with. They were the launching pad of several successful ERP consulting careers.  Interestingly, despite dealing on a daily basis with statistical modeling and optimization algorithms, none of the analysts, engineers, or product managers involved describe themselves as data scientists or machine learning experts. It is mostly a cultural thing: Their expertise predates the Data Science/ML hype that started circa 2010, and they got most of their chops using proprietary enterprise tools instead of the open source tools popular nowadays. A few of them have formal statistical training, but most of them came from engineering or domain backgrounds and learned stats on the fly while doing their job. Call this team "Team X".  Sometime around the mid 2010s, Company A started having some serious anxiety issues: Although still doing very well for a company its size, overall economic and demographic trends were shrinking its customer base, and a couple of so called disruptors came up with a new app and business model that started seriously eating into their revenue. A suitable reaction to appease shareholders and Wall Street was necessary. The company already had a decent website and a pretty snazzy app, what more could be done? Leadership decided that it was high time that AI and ML become a core part of the company's business. An ambitious Manager, with no science or engineering background, but who had very briefly toyed with a recommender system a couple of years back, was chosen to build a data science team, call it team "Y" (he had a bachelor's in history from the local state college and worked for several years in the company's marketing org). Team "Y" consists mostly of internal hires who decided they wanted to be data scientists and completed a Coursera certification or a Galvanize boot camp, before being brought on to the team, along with a few of fresh Ph.D or M.Sc holders who didn't like academia and wanted to try their hand at an industry role. All of them were very bright people, they could write great Medium blog posts and give inspiring TED talks, but collectively they had very little real world industry experience. As is the fashion nowadays, this group was made part of a data science org that reported directly to the CEO and Board, bypassing the CIO and any tech or business VPs, since Company A wanted to claim the monikers "data driven" and "AI powered" in their upcoming shareholder meetings. In 3 or 4 years of existence, team Y produced a few Python and R scripts. Their architectural experience  consisted almost entirely in connecting Flask to S3 buckets or Redshift tables, with a couple of the more resourceful ones learning how to plug their models into Tableau or how to spin up a Kuberneties pod.  But they needn't worry: The aforementioned manager, who was now a director (and was also doing an online Masters to make up for his qualifications gap and bolster his chances of becoming VP soon - at least he now understands what L1 regularization is), was a master at playing corporate politics and self-promotion. No matter how few actionable insights team Y produced or how little code they deployed to production, he always had their back and made sure they had ample funding. In fact he now had grandiose plans for setting up an all-purpose machine learning platform that can be used to solve all of the company's data problems.  A couple of sharp minded members of team Y, upon googling their industry name along with the word "data science", realized that risk analysis was a prime candidate for being solved with Bayesian models, and there was already a nifty R package for doing just that, whose tutorial they went through on R-Bloggers.com. One of them had even submitted a Bayesian classifier Kernel for a competition on Kaggle (he was 203rd on the leaderboard), and was eager to put his new-found expertise to use on a real world problem. They pitched the idea to their director, who saw a perfect use case for his upcoming ML platform. They started work on it immediately, without bothering to check whether anybody at Company A was already doing risk analysis. Since their org was independent, they didn't really need to check with anybody else before they got funding for their initiative. Although it was basically a Naive Bayes classifier, the term ML was added to the project tile, to impress the board.  As they progressed with their work however, tensions started to build. They had asked the data warehousing and CA analytics teams to build pipelines for them, and word eventually got out to team X about their project. Team X was initially thrilled: They offered to collaborate whole heartedly, and would have loved to add an ML based feather to their already impressive cap. The product owners and analysts were totally onboard as well: They saw a chance to get in on the whole Data Science hype that they kept hearing about. But through some weird mix of arrogance and insecurity, team Y refused to collaborate with them or share any of their long term goals with them, even as they went to other parts of the company giving brown bag presentations and tutorials on the new model they created.  Team X got resentful: from what they saw of team Y's model, their approach was hopelessly naive and had little chances of scaling or being sustainable in production, and they knew exactly how to help with that. Deploying the model to production would have taken them a few days, given how comfortable they were with DevOps and continuous delivery (team Y had taken several months to figure out how to deploy a simple R script to production). And despite how old school their own tech was, team X were crafty enough to be able to plug it in to their existing architecture. Moreover, the output of the model was such that it didn't take into account how the business will consume it or how it was going to be fed to downstream systems, and the product owners could have gone a long way in making the model more amenable to adoption by the business stakeholders. But team Y wouldn't listen, and their leads brushed off any attempts at communication, let alone collaboration. The vibe that team Y was giving off was "We are the cutting edge ML team, you guys are the legacy server grunts. We don't need your opinion.", and they seemed to have a complete disregard for domain knowledge, or worse, they thought that all that domain knowledge consisted of was being able to grasp the definitions of a few business metrics.  Team X got frustrated and tried to express their concerns to leadership. But despite owning a vital link in Company A's business process, they were only \~50 people in a large 1000 strong technology and operations org, and they were several layers removed from the C-suite, so it was impossible for them to get their voices heard.  Meanwhile, the unstoppable director was doing what he did best: Playing corporate politics. Despite how little his team had actually delivered, he had convinced the board that all analysis and optimization tasks should now be migrated to his yet to be delivered ML platform. Since most leaders now knew that there was overlap between team Y and team X's objectives, his pitch was no longer that team Y was going to create a new insight, but that they were going to replace (or modernize) the legacy statistics based on-prem tools with more accurate cloud based ML tools. Never mind that there was no support in the academic literature for the idea that Naive Bayes works better than the Econometric approaches used by team X, let alone the additional wacky idea that Bayesian Optimization would definitely outperform the QP solvers that were running in production.  Unbeknownst to team X, the original Bayesian risk analysis project has now grown into a multimillion dollar major overhaul initiative, which included the eventual replacement of all of the tools and functions supported by team X along with the necessary migration to the cloud. The CIO and a couple of business VPs are on now board, and tech leadership is treating it as a done deal. An outside vendor, a startup who nobody had heard of, was contracted to help build the platform, since team Y has no engineering skills. The choice was deliberate, as calling on any of the established consulting or software companies would have eventually led leadership to the conclusion that team X was better suited for a transformation on this scale than team Y.  Team Y has no experience with any major ERP deployments, and no domain knowledge, yet they are being tasked with fundamentally changing the business process that is at the core of Company A's business. Their models actually perform worse than those deployed by team X, and their architecture is hopelessly simplistic, compared to what is necessary for running such a solution in production.  Ironically, using Bayesian thinking and based on all the evidence, the likelihood that team Y succeeds is close to 0%. At best, the project is going to end up being a write off of 50 million dollars or more. Once the !@#$!@hits the fan, a couple of executive heads are going to role, and dozens of people will get laid off. At worst, given how vital risk analysis and portfolio optimization is to Company A's revenue stream, the failure will eventually sink the whole company. It probably won't go bankrupt, but it will lose a significant portion of its business and work force. Failed ERP implementations can and do sink large companies: Just see what happened to National Grid US, SuperValu or Target Canada.  One might argue that this is more about corporate disfunction and bad leadership than about data science and AI. But I disagree. I think the core driver of this debacle is indeed the blind faith in Data Scientists, ML models and the promise of AI, and the overall culture of hype and self promotion that is very common among the ML crowd.  We haven't seen the end of this story: I sincerely hope that this ends well for the sake of my colleagues and all involved. Company A is a good company, and both its customers and its employees deserver better. But the chances of that happening are negligible given all the information available, and this failure will hit my company hard.

[N] OpenAI's new language model gpt-3.5-turbo-instruct can defeat chess engine Fairy-Stockfish 14 at level 5
reddit
LLM Vibe Score0
Human Vibe Score1
WiskkeyThis week

[N] OpenAI's new language model gpt-3.5-turbo-instruct can defeat chess engine Fairy-Stockfish 14 at level 5

This Twitter thread (Nitter alternative for those who aren't logged into Twitter and want to see the full thread) claims that OpenAI's new language model gpt-3.5-turbo-instruct can "readily" beat Lichess Stockfish level 4 (Lichess Stockfish level and its rating) and has a chess rating of "around 1800 Elo." This tweet shows the style of prompts that are being used to get these results with the new language model. I used website parrotchess\[dot\]com (discovered here) (EDIT: parrotchess doesn't exist anymore, as of March 7, 2024) to play multiple games of chess purportedly pitting this new language model vs. various levels at website Lichess, which supposedly uses Fairy-Stockfish 14 according to the Lichess user interface. My current results for all completed games: The language model is 5-0 vs. Fairy-Stockfish 14 level 5 (game 1, game 2, game 3, game 4, game 5), and 2-5 vs. Fairy-Stockfish 14 level 6 (game 1, game 2, game 3, game 4, game 5, game 6, game 7). Not included in the tally are games that I had to abort because the parrotchess user interface stalled (5 instances), because I accidentally copied a move incorrectly in the parrotchess user interface (numerous instances), or because the parrotchess user interface doesn't allow the promotion of a pawn to anything other than queen (1 instance). Update: There could have been up to 5 additional losses - the number of times the parrotchess user interface stalled - that would have been recorded in this tally if this language model resignation bug hadn't been present. Also, the quality of play of some online chess bots can perhaps vary depending on the speed of the user's hardware. The following is a screenshot from parrotchess showing the end state of the first game vs. Fairy-Stockfish 14 level 5: https://preview.redd.it/4ahi32xgjmpb1.jpg?width=432&format=pjpg&auto=webp&s=7fbb68371ca4257bed15ab2828fab58047f194a4 The game results in this paragraph are from using parrotchess after the forementioned resignation bug was fixed. The language model is 0-1 vs. Fairy-Stockfish level 7 (game 1), and 0-1 vs. Fairy-Stockfish 14 level 8 (game 1). There is one known scenario (Nitter alternative) in which the new language model purportedly generated an illegal move using language model sampling temperature of 0. Previous purported illegal moves that the parrotchess developer examined turned out (Nitter alternative) to be due to parrotchess bugs. There are several other ways to play chess against the new language model if you have access to the OpenAI API. The first way is to use the OpenAI Playground as shown in this video. The second way is chess web app gptchess\[dot\]vercel\[dot\]app (discovered in this Twitter thread / Nitter thread). Third, another person modified that chess web app to additionally allow various levels of the Stockfish chess engine to autoplay, resulting in chess web app chessgpt-stockfish\[dot\]vercel\[dot\]app (discovered in this tweet). Results from other people: a) Results from hundreds of games in blog post Debunking the Chessboard: Confronting GPTs Against Chess Engines to Estimate Elo Ratings and Assess Legal Move Abilities. b) Results from 150 games: GPT-3.5-instruct beats GPT-4 at chess and is a \~1800 ELO chess player. Results of 150 games of GPT-3.5 vs stockfish and 30 of GPT-3.5 vs GPT-4. Post #2. The developer later noted that due to bugs the legal move rate was actually above 99.9%. It should also be noted that these results didn't use a language model sampling temperature of 0, which I believe could have induced illegal moves. c) Chess bot gpt35-turbo-instruct at website Lichess. d) Chess bot konaz at website Lichess. From blog post Playing chess with large language models: Computers have been better than humans at chess for at least the last 25 years. And for the past five years, deep learning models have been better than the best humans. But until this week, in order to be good at chess, a machine learning model had to be explicitly designed to play games: it had to be told explicitly that there was an 8x8 board, that there were different pieces, how each of them moved, and what the goal of the game was. Then it had to be trained with reinforcement learning agaist itself. And then it would win. This all changed on Monday, when OpenAI released GPT-3.5-turbo-instruct, an instruction-tuned language model that was designed to just write English text, but that people on the internet quickly discovered can play chess at, roughly, the level of skilled human players. Post Chess as a case study in hidden capabilities in ChatGPT from last month covers a different prompting style used for the older chat-based GPT 3.5 Turbo language model. If I recall correctly from my tests with ChatGPT-3.5, using that prompt style with the older language model can defeat Stockfish level 2 at Lichess, but I haven't been successful in using it to beat Stockfish level 3. In my tests, both the quality of play and frequency of illegal attempted moves seems to be better with the new prompt style with the new language model compared to the older prompt style with the older language model. Related article: Large Language Model: world models or surface statistics? P.S. Since some people claim that language model gpt-3.5-turbo-instruct is always playing moves memorized from the training dataset, I searched for data on the uniqueness of chess positions. From this video, we see that for a certain game dataset there were 763,331,945 chess positions encountered in an unknown number of games without removing duplicate chess positions, 597,725,848 different chess positions reached, and 582,337,984 different chess positions that were reached only once. Therefore, for that game dataset the probability that a chess position in a game was reached only once is 582337984 / 763331945 = 76.3%. For the larger dataset cited in that video, there are approximately (506,000,000 - 200,000) games in the dataset (per this paper), and 21,553,382,902 different game positions encountered. Each game in the larger dataset added a mean of approximately 21,553,382,902 / (506,000,000 - 200,000) = 42.6 different chess positions to the dataset. For this different dataset of \~12 million games, \~390 million different chess positions were encountered. Each game in this different dataset added a mean of approximately (390 million / 12 million) = 32.5 different chess positions to the dataset. From the aforementioned numbers, we can conclude that a strategy of playing only moves memorized from a game dataset would fare poorly because there are not rarely new chess games that have chess positions that are not present in the game dataset.

[P]MMML | Deploy HuggingFace training model rapidly based on MetaSpore
reddit
LLM Vibe Score0
Human Vibe Score1
qazmkoppThis week

[P]MMML | Deploy HuggingFace training model rapidly based on MetaSpore

A few days ago, HuggingFace announced a $100 million Series C funding round, which was big news in open source machine learning and could be a sign of where the industry is headed. Two days before the HuggingFace funding announcement, open-source machine learning platform MetaSpore released a demo based on the HuggingFace Rapid deployment pre-training model. As deep learning technology makes innovative breakthroughs in computer vision, natural language processing, speech understanding, and other fields, more and more unstructured data are perceived, understood, and processed by machines. These advances are mainly due to the powerful learning ability of deep learning. Through pre-training of deep models on massive data, the models can capture the internal data patterns, thus helping many downstream tasks. With the industry and academia investing more and more energy in the research of pre-training technology, the distribution warehouses of pre-training models such as HuggingFace and Timm have emerged one after another. The open-source community release pre-training significant model dividends at an unprecedented speed. In recent years, the data form of machine modeling and understanding has gradually evolved from single-mode to multi-mode, and the semantic gap between different modes is being eliminated, making it possible to retrieve data across modes. Take CLIP, OpenAI’s open-source work, as an example, to pre-train the twin towers of images and texts on a dataset of 400 million pictures and texts and connect the semantics between pictures and texts. Many researchers in the academic world have been solving multimodal problems such as image generation and retrieval based on this technology. Although the frontier technology through the semantic gap between modal data, there is still a heavy and complicated model tuning, offline data processing, high performance online reasoning architecture design, heterogeneous computing, and online algorithm be born multiple processes and challenges, hindering the frontier multimodal retrieval technologies fall to the ground and pratt &whitney. DMetaSoul aims at the above technical pain points, abstracting and uniting many links such as model training optimization, online reasoning, and algorithm experiment, forming a set of solutions that can quickly apply offline pre-training model to online. This paper will introduce how to use the HuggingFace community pre-training model to conduct online reasoning and algorithm experiments based on MetaSpore technology ecology so that the benefits of the pre-training model can be fully released to the specific business or industry and small and medium-sized enterprises. And we will give the text search text and text search graph two multimodal retrieval demonstration examples for your reference. Multimodal semantic retrieval The sample architecture of multimodal retrieval is as follows: Our multimodal retrieval system supports both text search and text search application scenarios, including offline processing, model reasoning, online services, and other core modules: &#x200B; https://preview.redd.it/w4v4c7vcez291.png?width=1834&format=png&auto=webp&s=0687efb1fddb26e8e30cb844d398ec712b947f31 Offline processing, including offline data processing processes for different application scenarios of text search and text search, including model tuning, model export, data index database construction, data push, etc. Model inference. After the offline model training, we deployed our NLP and CV large models based on the MetaSpore Serving framework. MetaSpore Serving helps us conveniently perform online inference, elastic scheduling, load balancing, and resource scheduling in heterogeneous environments. Online services. Based on MetaSpore’s online algorithm application framework, MetaSpore has a complete set of reusable online search services, including Front-end retrieval UI, multimodal data preprocessing, vector recall and sorting algorithm, AB experimental framework, etc. MetaSpore also supports text search by text and image scene search by text and can be migrated to other application scenarios at a low cost. The HuggingFace open source community has provided several excellent baseline models for similar multimodal retrieval problems, which are often the starting point for actual optimization in the industry. MetaSpore also uses the pre-training model of the HuggingFace community in its online services of searching words by words and images by words. Searching words by words is based on the semantic similarity model of the question and answer field optimized by MetaSpore, and searching images by words is based on the community pre-training model. These community open source pre-training models are exported to the general ONNX format and loaded into MetaSpore Serving for online reasoning. The following sections will provide a detailed description of the model export and online retrieval algorithm services. The reasoning part of the model is standardized SAAS services with low coupling with the business. Interested readers can refer to my previous post: The design concept of MetaSpore, a new generation of the one-stop machine learning platform. 1.1 Offline Processing Offline processing mainly involves the export and loading of online models and index building and pushing of the document library. You can follow the step-by-step instructions below to complete the offline processing of text search and image search and see how the offline pre-training model achieves reasoning at MetaSpore. 1.1.1 Search text by text Traditional text retrieval systems are based on literal matching algorithms such as BM25. Due to users’ diverse query words, a semantic gap between query words and documents is often encountered. For example, users misspell “iPhone” as “Phone,” and search terms are incredibly long, such as “1 \~ 3 months old baby autumn small size bag pants”. Traditional text retrieval systems will use spelling correction, synonym expansion, search terms rewriting, and other means to alleviate the semantic gap but fundamentally fail to solve this problem. Only when the retrieval system fully understands users’ query terms and documents can it meet users’ retrieval demands at the semantic level. With the continuous progress of pre-training and representational learning technology, some commercial search engines continue to integrate semantic vector retrieval methods based on symbolic learning into the retrieval ecology. Semantic retrieval model This paper introduces a set of semantic vector retrieval applications. MetaSpore built a set of semantic retrieval systems based on encyclopedia question and answer data. MetaSpore adopted the Sentence-Bert model as the semantic vector representation model, which fine-tunes the twin tower BERT in supervised or unsupervised ways to make the model more suitable for retrieval tasks. The model structure is as follows: The query-Doc symmetric two-tower model is used in text search and question and answer retrieval. The vector representation of online Query and offline DOC share the same vector representation model, so it is necessary to ensure the consistency of the offline DOC library building model and online Query inference model. The case uses MetaSpore’s text representation model Sbert-Chinese-QMC-domain-V1, optimized in the open-source semantically similar data set. This model will express the question and answer data as a vector in offline database construction. The user query will be expressed as a vector by this model in online retrieval, ensuring that query-doc in the same semantic space, users’ semantic retrieval demands can be guaranteed by vector similarity metric calculation. Since the text presentation model does vector encoding for Query online, we need to export the model for use by the online service. Go to the q&A data library code directory and export the model concerning the documentation. In the script, Pytorch Tracing is used to export the model. The models are exported to the “./export “directory. The exported models are mainly ONNX models used for wired reasoning, Tokenizer, and related configuration files. The exported models are loaded into MetaSpore Serving by the online Serving system described below for model reasoning. Since the exported model will be copied to the cloud storage, you need to configure related variables in env.sh. \Build library based on text search \ The retrieval database is built on the million-level encyclopedia question and answer data set. According to the description document, you need to download the data and complete the database construction. The question and answer data will be coded as a vector by the offline model, and then the database construction data will be pushed to the service component. The whole process of database construction is described as follows: Preprocessing, converting the original data into a more general JSonline format for database construction; Build index, use the same model as online “sbert-Chinese-qmc-domain-v1” to index documents (one document object per line); Push inverted (vector) and forward (document field) data to each component server. The following is an example of the database data format. After offline database construction is completed, various data are pushed to corresponding service components, such as Milvus storing vector representation of documents and MongoDB storing summary information of documents. Online retrieval algorithm services will use these service components to obtain relevant data. 1.1.2 Search by text Text and images are easy for humans to relate semantically but difficult for machines. First of all, from the perspective of data form, the text is the discrete ID type of one-dimensional data based on words and words. At the same time, images are continuous two-dimensional or three-dimensional data. Secondly, the text is a subjective creation of human beings, and its expressive ability is vibrant, including various turning points, metaphors, and other expressions, while images are machine representations of the objective world. In short, bridging the semantic gap between text and image data is much more complex than searching text by text. The traditional text search image retrieval technology generally relies on the external text description data of the image or the nearest neighbor retrieval technology and carries out the retrieval through the image associated text, which in essence degrades the problem to text search. However, it will also face many issues, such as obtaining the associated text of pictures and whether the accuracy of text search by text is high enough. The depth model has gradually evolved from single-mode to multi-mode in recent years. Taking the open-source project of OpenAI, CLIP, as an example, train the model through the massive image and text data of the Internet and map the text and image data into the same semantic space, making it possible to implement the text and image search technology based on semantic vector. CLIP graphic model The text search pictures introduced in this paper are implemented based on semantic vector retrieval, and the CLIP pre-training model is used as the two-tower retrieval architecture. Because the CLIP model has trained the semantic alignment of the twin towers’ text and image side models on the massive graphic and text data, it is particularly suitable for the text search graph scene. Due to the different image and text data forms, the Query-Doc asymmetric twin towers model is used for text search image retrieval. The image-side model of the twin towers is used for offline database construction, and the text-side model is used for the online return. In the final online retrieval, the database data of the image side model will be searched after the text side model encodes Query, and the CLIP pre-training model guarantees the semantic correlation between images and texts. The model can draw the graphic pairs closer in vector space by pre-training on a large amount of visual data. Here we need to export the text-side model for online MetaSpore Serving inference. Since the retrieval scene is based on Chinese, the CLIP model supporting Chinese understanding is selected. The exported content includes the ONNX model used for online reasoning and Tokenizer, similar to the text search. MetaSpore Serving can load model reasoning through the exported content. Build library on Image search You need to download the Unsplash Lite library data and complete the construction according to the instructions. The whole process of database construction is described as follows: Preprocessing, specify the image directory, and then generate a more general JSOnline file for library construction; Build index, use OpenAI/Clip-Vit-BASE-Patch32 pre-training model to index the gallery, and output one document object for each line of index data; Push inverted (vector) and forward (document field) data to each component server. Like text search, after offline database construction, relevant data will be pushed to service components, called by online retrieval algorithm services to obtain relevant data. 1.2 Online Services The overall online service architecture diagram is as follows: https://preview.redd.it/jfsl8hdfez291.png?width=1280&format=png&auto=webp&s=a858e2304a0c93e78ba5429612ca08cbee69b35a Multi-mode search online service system supports application scenarios such as text search and text search. The whole online service consists of the following parts: Query preprocessing service: encapsulate preprocessing logic (including text/image, etc.) of pre-training model, and provide services through gRPC interface; Retrieval algorithm service: the whole algorithm processing link includes AB experiment tangent flow configuration, MetaSpore Serving call, vector recall, sorting, document summary, etc.; User entry service: provides a Web UI interface for users to debug and track down problems in the retrieval service. From a user request perspective, these services form invocation dependencies from back to front, so to build up a multimodal sample, you need to run each service from front to back first. Before doing this, remember to export the offline model, put it online and build the library first. This article will introduce the various parts of the online service system and make the whole service system step by step according to the following guidance. See the ReadME at the end of this article for more details. 1.2.1 Query preprocessing service Deep learning models tend to be based on tensors, but NLP/CV models often have a preprocessing part that translates raw text and images into tensors that deep learning models can accept. For example, NLP class models often have a pre-tokenizer to transform text data of string type into discrete tensor data. CV class models also have similar processing logic to complete the cropping, scaling, transformation, and other processing of input images through preprocessing. On the one hand, considering that this part of preprocessing logic is decoupled from tensor reasoning of the depth model, on the other hand, the reason of the depth model has an independent technical system based on ONNX, so MetaSpore disassembled this part of preprocessing logic. NLP pretreatment Tokenizer has been integrated into the Query pretreatment service. MetaSpore dismantlement with a relatively general convention. Users only need to provide preprocessing logic files to realize the loading and prediction interface and export the necessary data and configuration files loaded into the preprocessing service. Subsequent CV preprocessing logic will also be integrated in this manner. The preprocessing service currently provides the gRPC interface invocation externally and is dependent on the Query preprocessing (QP) module in the retrieval algorithm service. After the user request reaches the retrieval algorithm service, it will be forwarded to the service to complete the data preprocessing and continue the subsequent processing. The ReadMe provides details on how the preprocessing service is started, how the preprocessing model exported offline to cloud storage enters the service, and how to debug the service. To further improve the efficiency and stability of model reasoning, MetaSpore Serving implements a Python preprocessing submodule. So MetaSpore can provide gRPC services through user-specified preprocessor.py, complete Tokenizer or CV-related preprocessing in NLP, and translate requests into a Tensor that deep models can handle. Finally, the model inference is carried out by MetaSpore, Serving subsequent sub-modules. Presented here on the lot code: https://github.com/meta-soul/MetaSpore/compare/add\python\preprocessor 1.2.2 Retrieval algorithm services Retrieval algorithm service is the core of the whole online service system, which is responsible for the triage of experiments, the assembly of algorithm chains such as preprocessing, recall, sorting, and the invocation of dependent component services. The whole retrieval algorithm service is developed based on the Java Spring framework and supports multi-mode retrieval scenarios of text search and text search graph. Due to good internal abstraction and modular design, it has high flexibility and can be migrated to similar application scenarios at a low cost. Here’s a quick guide to configuring the environment to set up the retrieval algorithm service. See ReadME for more details: Install dependent components. Use Maven to install the online-Serving component Search for service configurations. Copy the template configuration file and replace the MongoDB, Milvus, and other configurations based on the development/production environment. Install and configure Consul. Consul allows you to synchronize the search service configuration in real-time, including cutting the flow of experiments, recall parameters, and sorting parameters. The project’s configuration file shows the current configuration parameters of text search and text search. The parameter modelName in the stage of pretreatment and recall is the corresponding model exported in offline processing. Start the service. Once the above configuration is complete, the retrieval service can be started from the entry script. Once the service is started, you can test it! For example, for a user with userId=10 who wants to query “How to renew ID card,” access the text search service. 1.2.3 User Entry Service Considering that the retrieval algorithm service is in the form of the API interface, it is difficult to locate and trace the problem, especially for the text search image scene can intuitively display the retrieval results to facilitate the iterative optimization of the retrieval algorithm. This paper provides a lightweight Web UI interface for text search and image search, a search input box, and results in a display page for users. Developed by Flask, the service can be easily integrated with other retrieval applications. The service calls the retrieval algorithm service and displays the returned results on the page. It’s also easy to install and start the service. Once you’re done, go to http://127.0.0.1:8090 to see if the search UI service is working correctly. See the ReadME at the end of this article for details. Multimodal system demonstration The multimodal retrieval service can be started when offline processing and online service environment configuration have been completed following the above instructions. Examples of textual searches are shown below. Enter the entry of the text search map application, enter “cat” first, and you can see that the first three digits of the returned result are cats: https://preview.redd.it/0n5nuyvhez291.png?width=1280&format=png&auto=webp&s=1e9c054f541d53381674b8d6001b4bf524506bd2 If you add a color constraint to “cat” to retrieve “black cat,” you can see that it does return a black cat: https://preview.redd.it/rzc0qjyjez291.png?width=1280&format=png&auto=webp&s=d5bcc503ef0fb3360c7740e60e295cf372dcad47 Further, strengthen the constraint on the search term, change it to “black cat on the bed,” and return results containing pictures of a black cat climbing on the bed: &#x200B; https://preview.redd.it/c4b2q8olez291.png?width=1280&format=png&auto=webp&s=4f3817b0b9f07e1e68d1d4a8281702ba3834a00a The cat can still be found through the text search system after the color and scene modification in the above example. Conclusion The cutting-edge pre-training technology can bridge the semantic gap between different modes, and the HuggingFace community can greatly reduce the cost for developers to use the pre-training model. Combined with the technological ecology of MetaSpore online reasoning and online microservices provided by DMetaSpore, the pre-training model is no longer mere offline dabbling. Instead, it can truly achieve end-to-end implementation from cutting-edge technology to industrial scenarios, fully releasing the dividends of the pre-training large model. In the future, DMetaSoul will continue to improve and optimize the MetaSpore technology ecosystem: More automated and wider access to HuggingFace community ecology. MetaSpore will soon release a common model rollout mechanism to make HuggingFace ecologically accessible and will later integrate preprocessing services into online services. Multi-mode retrieval offline algorithm optimization. For multimodal retrieval scenarios, MetaSpore will continuously iteratively optimize offline algorithm components, including text recall/sort model, graphic recall/sort model, etc., to improve the accuracy and efficiency of the retrieval algorithm. For related code and reference documentation in this article, please visit: https://github.com/meta-soul/MetaSpore/tree/main/demo/multimodal/online Some images source: https://github.com/openai/CLIP/raw/main/CLIP.png https://www.sbert.net/examples/training/sts/README.html

[P]MMML | Deploy HuggingFace training model rapidly based on MetaSpore
reddit
LLM Vibe Score0
Human Vibe Score1
qazmkoppThis week

[P]MMML | Deploy HuggingFace training model rapidly based on MetaSpore

A few days ago, HuggingFace announced a $100 million Series C funding round, which was big news in open source machine learning and could be a sign of where the industry is headed. Two days before the HuggingFace funding announcement, open-source machine learning platform MetaSpore released a demo based on the HuggingFace Rapid deployment pre-training model. As deep learning technology makes innovative breakthroughs in computer vision, natural language processing, speech understanding, and other fields, more and more unstructured data are perceived, understood, and processed by machines. These advances are mainly due to the powerful learning ability of deep learning. Through pre-training of deep models on massive data, the models can capture the internal data patterns, thus helping many downstream tasks. With the industry and academia investing more and more energy in the research of pre-training technology, the distribution warehouses of pre-training models such as HuggingFace and Timm have emerged one after another. The open-source community release pre-training significant model dividends at an unprecedented speed. In recent years, the data form of machine modeling and understanding has gradually evolved from single-mode to multi-mode, and the semantic gap between different modes is being eliminated, making it possible to retrieve data across modes. Take CLIP, OpenAI’s open-source work, as an example, to pre-train the twin towers of images and texts on a dataset of 400 million pictures and texts and connect the semantics between pictures and texts. Many researchers in the academic world have been solving multimodal problems such as image generation and retrieval based on this technology. Although the frontier technology through the semantic gap between modal data, there is still a heavy and complicated model tuning, offline data processing, high performance online reasoning architecture design, heterogeneous computing, and online algorithm be born multiple processes and challenges, hindering the frontier multimodal retrieval technologies fall to the ground and pratt &whitney. DMetaSoul aims at the above technical pain points, abstracting and uniting many links such as model training optimization, online reasoning, and algorithm experiment, forming a set of solutions that can quickly apply offline pre-training model to online. This paper will introduce how to use the HuggingFace community pre-training model to conduct online reasoning and algorithm experiments based on MetaSpore technology ecology so that the benefits of the pre-training model can be fully released to the specific business or industry and small and medium-sized enterprises. And we will give the text search text and text search graph two multimodal retrieval demonstration examples for your reference. Multimodal semantic retrieval The sample architecture of multimodal retrieval is as follows: Our multimodal retrieval system supports both text search and text search application scenarios, including offline processing, model reasoning, online services, and other core modules: &#x200B; https://preview.redd.it/w4v4c7vcez291.png?width=1834&format=png&auto=webp&s=0687efb1fddb26e8e30cb844d398ec712b947f31 Offline processing, including offline data processing processes for different application scenarios of text search and text search, including model tuning, model export, data index database construction, data push, etc. Model inference. After the offline model training, we deployed our NLP and CV large models based on the MetaSpore Serving framework. MetaSpore Serving helps us conveniently perform online inference, elastic scheduling, load balancing, and resource scheduling in heterogeneous environments. Online services. Based on MetaSpore’s online algorithm application framework, MetaSpore has a complete set of reusable online search services, including Front-end retrieval UI, multimodal data preprocessing, vector recall and sorting algorithm, AB experimental framework, etc. MetaSpore also supports text search by text and image scene search by text and can be migrated to other application scenarios at a low cost. The HuggingFace open source community has provided several excellent baseline models for similar multimodal retrieval problems, which are often the starting point for actual optimization in the industry. MetaSpore also uses the pre-training model of the HuggingFace community in its online services of searching words by words and images by words. Searching words by words is based on the semantic similarity model of the question and answer field optimized by MetaSpore, and searching images by words is based on the community pre-training model. These community open source pre-training models are exported to the general ONNX format and loaded into MetaSpore Serving for online reasoning. The following sections will provide a detailed description of the model export and online retrieval algorithm services. The reasoning part of the model is standardized SAAS services with low coupling with the business. Interested readers can refer to my previous post: The design concept of MetaSpore, a new generation of the one-stop machine learning platform. 1.1 Offline Processing Offline processing mainly involves the export and loading of online models and index building and pushing of the document library. You can follow the step-by-step instructions below to complete the offline processing of text search and image search and see how the offline pre-training model achieves reasoning at MetaSpore. 1.1.1 Search text by text Traditional text retrieval systems are based on literal matching algorithms such as BM25. Due to users’ diverse query words, a semantic gap between query words and documents is often encountered. For example, users misspell “iPhone” as “Phone,” and search terms are incredibly long, such as “1 \~ 3 months old baby autumn small size bag pants”. Traditional text retrieval systems will use spelling correction, synonym expansion, search terms rewriting, and other means to alleviate the semantic gap but fundamentally fail to solve this problem. Only when the retrieval system fully understands users’ query terms and documents can it meet users’ retrieval demands at the semantic level. With the continuous progress of pre-training and representational learning technology, some commercial search engines continue to integrate semantic vector retrieval methods based on symbolic learning into the retrieval ecology. Semantic retrieval model This paper introduces a set of semantic vector retrieval applications. MetaSpore built a set of semantic retrieval systems based on encyclopedia question and answer data. MetaSpore adopted the Sentence-Bert model as the semantic vector representation model, which fine-tunes the twin tower BERT in supervised or unsupervised ways to make the model more suitable for retrieval tasks. The model structure is as follows: The query-Doc symmetric two-tower model is used in text search and question and answer retrieval. The vector representation of online Query and offline DOC share the same vector representation model, so it is necessary to ensure the consistency of the offline DOC library building model and online Query inference model. The case uses MetaSpore’s text representation model Sbert-Chinese-QMC-domain-V1, optimized in the open-source semantically similar data set. This model will express the question and answer data as a vector in offline database construction. The user query will be expressed as a vector by this model in online retrieval, ensuring that query-doc in the same semantic space, users’ semantic retrieval demands can be guaranteed by vector similarity metric calculation. Since the text presentation model does vector encoding for Query online, we need to export the model for use by the online service. Go to the q&A data library code directory and export the model concerning the documentation. In the script, Pytorch Tracing is used to export the model. The models are exported to the “./export “directory. The exported models are mainly ONNX models used for wired reasoning, Tokenizer, and related configuration files. The exported models are loaded into MetaSpore Serving by the online Serving system described below for model reasoning. Since the exported model will be copied to the cloud storage, you need to configure related variables in env.sh. \Build library based on text search \ The retrieval database is built on the million-level encyclopedia question and answer data set. According to the description document, you need to download the data and complete the database construction. The question and answer data will be coded as a vector by the offline model, and then the database construction data will be pushed to the service component. The whole process of database construction is described as follows: Preprocessing, converting the original data into a more general JSonline format for database construction; Build index, use the same model as online “sbert-Chinese-qmc-domain-v1” to index documents (one document object per line); Push inverted (vector) and forward (document field) data to each component server. The following is an example of the database data format. After offline database construction is completed, various data are pushed to corresponding service components, such as Milvus storing vector representation of documents and MongoDB storing summary information of documents. Online retrieval algorithm services will use these service components to obtain relevant data. 1.1.2 Search by text Text and images are easy for humans to relate semantically but difficult for machines. First of all, from the perspective of data form, the text is the discrete ID type of one-dimensional data based on words and words. At the same time, images are continuous two-dimensional or three-dimensional data. Secondly, the text is a subjective creation of human beings, and its expressive ability is vibrant, including various turning points, metaphors, and other expressions, while images are machine representations of the objective world. In short, bridging the semantic gap between text and image data is much more complex than searching text by text. The traditional text search image retrieval technology generally relies on the external text description data of the image or the nearest neighbor retrieval technology and carries out the retrieval through the image associated text, which in essence degrades the problem to text search. However, it will also face many issues, such as obtaining the associated text of pictures and whether the accuracy of text search by text is high enough. The depth model has gradually evolved from single-mode to multi-mode in recent years. Taking the open-source project of OpenAI, CLIP, as an example, train the model through the massive image and text data of the Internet and map the text and image data into the same semantic space, making it possible to implement the text and image search technology based on semantic vector. CLIP graphic model The text search pictures introduced in this paper are implemented based on semantic vector retrieval, and the CLIP pre-training model is used as the two-tower retrieval architecture. Because the CLIP model has trained the semantic alignment of the twin towers’ text and image side models on the massive graphic and text data, it is particularly suitable for the text search graph scene. Due to the different image and text data forms, the Query-Doc asymmetric twin towers model is used for text search image retrieval. The image-side model of the twin towers is used for offline database construction, and the text-side model is used for the online return. In the final online retrieval, the database data of the image side model will be searched after the text side model encodes Query, and the CLIP pre-training model guarantees the semantic correlation between images and texts. The model can draw the graphic pairs closer in vector space by pre-training on a large amount of visual data. Here we need to export the text-side model for online MetaSpore Serving inference. Since the retrieval scene is based on Chinese, the CLIP model supporting Chinese understanding is selected. The exported content includes the ONNX model used for online reasoning and Tokenizer, similar to the text search. MetaSpore Serving can load model reasoning through the exported content. Build library on Image search You need to download the Unsplash Lite library data and complete the construction according to the instructions. The whole process of database construction is described as follows: Preprocessing, specify the image directory, and then generate a more general JSOnline file for library construction; Build index, use OpenAI/Clip-Vit-BASE-Patch32 pre-training model to index the gallery, and output one document object for each line of index data; Push inverted (vector) and forward (document field) data to each component server. Like text search, after offline database construction, relevant data will be pushed to service components, called by online retrieval algorithm services to obtain relevant data. 1.2 Online Services The overall online service architecture diagram is as follows: https://preview.redd.it/jfsl8hdfez291.png?width=1280&format=png&auto=webp&s=a858e2304a0c93e78ba5429612ca08cbee69b35a Multi-mode search online service system supports application scenarios such as text search and text search. The whole online service consists of the following parts: Query preprocessing service: encapsulate preprocessing logic (including text/image, etc.) of pre-training model, and provide services through gRPC interface; Retrieval algorithm service: the whole algorithm processing link includes AB experiment tangent flow configuration, MetaSpore Serving call, vector recall, sorting, document summary, etc.; User entry service: provides a Web UI interface for users to debug and track down problems in the retrieval service. From a user request perspective, these services form invocation dependencies from back to front, so to build up a multimodal sample, you need to run each service from front to back first. Before doing this, remember to export the offline model, put it online and build the library first. This article will introduce the various parts of the online service system and make the whole service system step by step according to the following guidance. See the ReadME at the end of this article for more details. 1.2.1 Query preprocessing service Deep learning models tend to be based on tensors, but NLP/CV models often have a preprocessing part that translates raw text and images into tensors that deep learning models can accept. For example, NLP class models often have a pre-tokenizer to transform text data of string type into discrete tensor data. CV class models also have similar processing logic to complete the cropping, scaling, transformation, and other processing of input images through preprocessing. On the one hand, considering that this part of preprocessing logic is decoupled from tensor reasoning of the depth model, on the other hand, the reason of the depth model has an independent technical system based on ONNX, so MetaSpore disassembled this part of preprocessing logic. NLP pretreatment Tokenizer has been integrated into the Query pretreatment service. MetaSpore dismantlement with a relatively general convention. Users only need to provide preprocessing logic files to realize the loading and prediction interface and export the necessary data and configuration files loaded into the preprocessing service. Subsequent CV preprocessing logic will also be integrated in this manner. The preprocessing service currently provides the gRPC interface invocation externally and is dependent on the Query preprocessing (QP) module in the retrieval algorithm service. After the user request reaches the retrieval algorithm service, it will be forwarded to the service to complete the data preprocessing and continue the subsequent processing. The ReadMe provides details on how the preprocessing service is started, how the preprocessing model exported offline to cloud storage enters the service, and how to debug the service. To further improve the efficiency and stability of model reasoning, MetaSpore Serving implements a Python preprocessing submodule. So MetaSpore can provide gRPC services through user-specified preprocessor.py, complete Tokenizer or CV-related preprocessing in NLP, and translate requests into a Tensor that deep models can handle. Finally, the model inference is carried out by MetaSpore, Serving subsequent sub-modules. Presented here on the lot code: https://github.com/meta-soul/MetaSpore/compare/add\python\preprocessor 1.2.2 Retrieval algorithm services Retrieval algorithm service is the core of the whole online service system, which is responsible for the triage of experiments, the assembly of algorithm chains such as preprocessing, recall, sorting, and the invocation of dependent component services. The whole retrieval algorithm service is developed based on the Java Spring framework and supports multi-mode retrieval scenarios of text search and text search graph. Due to good internal abstraction and modular design, it has high flexibility and can be migrated to similar application scenarios at a low cost. Here’s a quick guide to configuring the environment to set up the retrieval algorithm service. See ReadME for more details: Install dependent components. Use Maven to install the online-Serving component Search for service configurations. Copy the template configuration file and replace the MongoDB, Milvus, and other configurations based on the development/production environment. Install and configure Consul. Consul allows you to synchronize the search service configuration in real-time, including cutting the flow of experiments, recall parameters, and sorting parameters. The project’s configuration file shows the current configuration parameters of text search and text search. The parameter modelName in the stage of pretreatment and recall is the corresponding model exported in offline processing. Start the service. Once the above configuration is complete, the retrieval service can be started from the entry script. Once the service is started, you can test it! For example, for a user with userId=10 who wants to query “How to renew ID card,” access the text search service. 1.2.3 User Entry Service Considering that the retrieval algorithm service is in the form of the API interface, it is difficult to locate and trace the problem, especially for the text search image scene can intuitively display the retrieval results to facilitate the iterative optimization of the retrieval algorithm. This paper provides a lightweight Web UI interface for text search and image search, a search input box, and results in a display page for users. Developed by Flask, the service can be easily integrated with other retrieval applications. The service calls the retrieval algorithm service and displays the returned results on the page. It’s also easy to install and start the service. Once you’re done, go to http://127.0.0.1:8090 to see if the search UI service is working correctly. See the ReadME at the end of this article for details. Multimodal system demonstration The multimodal retrieval service can be started when offline processing and online service environment configuration have been completed following the above instructions. Examples of textual searches are shown below. Enter the entry of the text search map application, enter “cat” first, and you can see that the first three digits of the returned result are cats: https://preview.redd.it/0n5nuyvhez291.png?width=1280&format=png&auto=webp&s=1e9c054f541d53381674b8d6001b4bf524506bd2 If you add a color constraint to “cat” to retrieve “black cat,” you can see that it does return a black cat: https://preview.redd.it/rzc0qjyjez291.png?width=1280&format=png&auto=webp&s=d5bcc503ef0fb3360c7740e60e295cf372dcad47 Further, strengthen the constraint on the search term, change it to “black cat on the bed,” and return results containing pictures of a black cat climbing on the bed: &#x200B; https://preview.redd.it/c4b2q8olez291.png?width=1280&format=png&auto=webp&s=4f3817b0b9f07e1e68d1d4a8281702ba3834a00a The cat can still be found through the text search system after the color and scene modification in the above example. Conclusion The cutting-edge pre-training technology can bridge the semantic gap between different modes, and the HuggingFace community can greatly reduce the cost for developers to use the pre-training model. Combined with the technological ecology of MetaSpore online reasoning and online microservices provided by DMetaSpore, the pre-training model is no longer mere offline dabbling. Instead, it can truly achieve end-to-end implementation from cutting-edge technology to industrial scenarios, fully releasing the dividends of the pre-training large model. In the future, DMetaSoul will continue to improve and optimize the MetaSpore technology ecosystem: More automated and wider access to HuggingFace community ecology. MetaSpore will soon release a common model rollout mechanism to make HuggingFace ecologically accessible and will later integrate preprocessing services into online services. Multi-mode retrieval offline algorithm optimization. For multimodal retrieval scenarios, MetaSpore will continuously iteratively optimize offline algorithm components, including text recall/sort model, graphic recall/sort model, etc., to improve the accuracy and efficiency of the retrieval algorithm. For related code and reference documentation in this article, please visit: https://github.com/meta-soul/MetaSpore/tree/main/demo/multimodal/online Some images source: https://github.com/openai/CLIP/raw/main/CLIP.png https://www.sbert.net/examples/training/sts/README.html

[Discussion] When ML and Data Science are the death of a good company: A cautionary tale.
reddit
LLM Vibe Score0
Human Vibe Score0.6
AlexSnakeKingThis week

[Discussion] When ML and Data Science are the death of a good company: A cautionary tale.

TD;LR: At Company A, Team X does advanced analytics using on-prem ERP tools and older programming languages. Their tools work very well and are designed based on very deep business and domain expertise. Team Y is a new and ambitious Data Science team that thinks they can replace Team X's tools with a bunch of R scripts and a custom built ML platform. Their models are simplistic, but more "fashionable" compared to the econometric models used by Team X, and team Y benefits from the ML/DS moniker so leadership is allowing Team Y to start a large scale overhaul of the analytics platform in question. Team Y doesn't have the experience for such a larger scale transformation, and is refusing to collaborate with team X. This project is very likely going to fail, and cause serious harm to the company as a whole financially and from a people perspective. I argue that this is not just because of bad leadership, but also because of various trends and mindsets in the DS community at large. Update (Jump to below the line for the original story): Several people in the comments are pointing out that this just a management failure, not something due to ML/DS, and that you can replace DS with any buzz tech and the story will still be relevant. My response: Of course, any failure at an organization level is ultimately a management failure one way or the other. Moreover, it is also the case that ML/DS when done correctly, will always improve a company's bottom line. There is no scenario where the proper ML solution, delivered at a reasonable cost and in a timely fashion, will somehow hurt the company's bottom line. My point is that in this case management is failing because of certain trends and practices that are specific to the ML/DS community, namely: The idea that DS teams should operate independently of tech and business orgs -- too much autonomy for DS teams The disregard for domain knowledge that seems prevalent nowadays thanks to the ML hype, that DS can be generalists and someone with good enough ML chops can solve any business problem. That wasn't the case when I first left academia for the industry in 2009 (back then nobody would even bother with a phone screen if you didn't have the right domain knowledge). Over reliance on resources who check all the ML hype related boxes (knows Python, R, Tensorflow, Shiny, etc..., has the right Coursera certifications, has blogged on the topic, etc...), but are lacking in depth of experience. DS interviews nowadays all seem to be: Can you tell me what a p-value is? What is elastic net regression? Show me how to fit a model in sklearn? How do you impute NAs in an R dataframe? Any smart person can look those up on Stackoverflow or Cross-Validated,.....Instead teams should be asking stuff like: why does portfolio optimization use QP not LP? How does a forecast influence a customer service level? When should a recommendation engine be content based and when should it use collaborative filtering? etc... (This is a true story, happening to the company I currently work for. Names, domains, algorithms, and roles have been shuffled around to protect my anonymity)  Company A has been around for several decades. It is not the biggest name in its domain, but it is a well respected one. Risk analysis and portfolio optimization have been a core of Company A's business since the 90s. They have a large team of 30 or so analysts who perform those tasks on a daily basis. These analysts use ERP solutions implemented for them by one the big ERP companies (SAP, Teradata, Oracle, JD Edwards,...) or one of the major tech consulting companies (Deloitte, Accenture, PWC, Capgemini, etc...) in collaboration with their own in house engineering team. The tools used are embarrassingly old school: Classic RDBMS running on on-prem servers or maybe even on mainframes, code written in COBOL, Fortran, weird proprietary stuff like ABAP or SPSS.....you get the picture. But the models and analytic functions were pretty sophisticated, and surprisingly cutting edge compared to the published academic literature. Most of all, they fit well with the company's enterprise ecosystem, and were honed based on years of deep domain knowledge.  They have a tech team of several engineers (poached from the aforementioned software and consulting companies) and product managers (who came from the experienced pools of analysts and managers who use the software, or poached from business rivals) maintaining and running this software. Their technology might be old school, but collectively, they know the domain and the company's overall architecture very, very well. They've guided the company through several large scale upgrades and migrations and they have a track record of delivering on time, without too much overhead. The few times they've stumbled, they knew how to pick themselves up very quickly. In fact within their industry niche, they have a reputation for their expertise, and have very good relations with the various vendors they've had to deal with. They were the launching pad of several successful ERP consulting careers.  Interestingly, despite dealing on a daily basis with statistical modeling and optimization algorithms, none of the analysts, engineers, or product managers involved describe themselves as data scientists or machine learning experts. It is mostly a cultural thing: Their expertise predates the Data Science/ML hype that started circa 2010, and they got most of their chops using proprietary enterprise tools instead of the open source tools popular nowadays. A few of them have formal statistical training, but most of them came from engineering or domain backgrounds and learned stats on the fly while doing their job. Call this team "Team X".  Sometime around the mid 2010s, Company A started having some serious anxiety issues: Although still doing very well for a company its size, overall economic and demographic trends were shrinking its customer base, and a couple of so called disruptors came up with a new app and business model that started seriously eating into their revenue. A suitable reaction to appease shareholders and Wall Street was necessary. The company already had a decent website and a pretty snazzy app, what more could be done? Leadership decided that it was high time that AI and ML become a core part of the company's business. An ambitious Manager, with no science or engineering background, but who had very briefly toyed with a recommender system a couple of years back, was chosen to build a data science team, call it team "Y" (he had a bachelor's in history from the local state college and worked for several years in the company's marketing org). Team "Y" consists mostly of internal hires who decided they wanted to be data scientists and completed a Coursera certification or a Galvanize boot camp, before being brought on to the team, along with a few of fresh Ph.D or M.Sc holders who didn't like academia and wanted to try their hand at an industry role. All of them were very bright people, they could write great Medium blog posts and give inspiring TED talks, but collectively they had very little real world industry experience. As is the fashion nowadays, this group was made part of a data science org that reported directly to the CEO and Board, bypassing the CIO and any tech or business VPs, since Company A wanted to claim the monikers "data driven" and "AI powered" in their upcoming shareholder meetings. In 3 or 4 years of existence, team Y produced a few Python and R scripts. Their architectural experience  consisted almost entirely in connecting Flask to S3 buckets or Redshift tables, with a couple of the more resourceful ones learning how to plug their models into Tableau or how to spin up a Kuberneties pod.  But they needn't worry: The aforementioned manager, who was now a director (and was also doing an online Masters to make up for his qualifications gap and bolster his chances of becoming VP soon - at least he now understands what L1 regularization is), was a master at playing corporate politics and self-promotion. No matter how few actionable insights team Y produced or how little code they deployed to production, he always had their back and made sure they had ample funding. In fact he now had grandiose plans for setting up an all-purpose machine learning platform that can be used to solve all of the company's data problems.  A couple of sharp minded members of team Y, upon googling their industry name along with the word "data science", realized that risk analysis was a prime candidate for being solved with Bayesian models, and there was already a nifty R package for doing just that, whose tutorial they went through on R-Bloggers.com. One of them had even submitted a Bayesian classifier Kernel for a competition on Kaggle (he was 203rd on the leaderboard), and was eager to put his new-found expertise to use on a real world problem. They pitched the idea to their director, who saw a perfect use case for his upcoming ML platform. They started work on it immediately, without bothering to check whether anybody at Company A was already doing risk analysis. Since their org was independent, they didn't really need to check with anybody else before they got funding for their initiative. Although it was basically a Naive Bayes classifier, the term ML was added to the project tile, to impress the board.  As they progressed with their work however, tensions started to build. They had asked the data warehousing and CA analytics teams to build pipelines for them, and word eventually got out to team X about their project. Team X was initially thrilled: They offered to collaborate whole heartedly, and would have loved to add an ML based feather to their already impressive cap. The product owners and analysts were totally onboard as well: They saw a chance to get in on the whole Data Science hype that they kept hearing about. But through some weird mix of arrogance and insecurity, team Y refused to collaborate with them or share any of their long term goals with them, even as they went to other parts of the company giving brown bag presentations and tutorials on the new model they created.  Team X got resentful: from what they saw of team Y's model, their approach was hopelessly naive and had little chances of scaling or being sustainable in production, and they knew exactly how to help with that. Deploying the model to production would have taken them a few days, given how comfortable they were with DevOps and continuous delivery (team Y had taken several months to figure out how to deploy a simple R script to production). And despite how old school their own tech was, team X were crafty enough to be able to plug it in to their existing architecture. Moreover, the output of the model was such that it didn't take into account how the business will consume it or how it was going to be fed to downstream systems, and the product owners could have gone a long way in making the model more amenable to adoption by the business stakeholders. But team Y wouldn't listen, and their leads brushed off any attempts at communication, let alone collaboration. The vibe that team Y was giving off was "We are the cutting edge ML team, you guys are the legacy server grunts. We don't need your opinion.", and they seemed to have a complete disregard for domain knowledge, or worse, they thought that all that domain knowledge consisted of was being able to grasp the definitions of a few business metrics.  Team X got frustrated and tried to express their concerns to leadership. But despite owning a vital link in Company A's business process, they were only \~50 people in a large 1000 strong technology and operations org, and they were several layers removed from the C-suite, so it was impossible for them to get their voices heard.  Meanwhile, the unstoppable director was doing what he did best: Playing corporate politics. Despite how little his team had actually delivered, he had convinced the board that all analysis and optimization tasks should now be migrated to his yet to be delivered ML platform. Since most leaders now knew that there was overlap between team Y and team X's objectives, his pitch was no longer that team Y was going to create a new insight, but that they were going to replace (or modernize) the legacy statistics based on-prem tools with more accurate cloud based ML tools. Never mind that there was no support in the academic literature for the idea that Naive Bayes works better than the Econometric approaches used by team X, let alone the additional wacky idea that Bayesian Optimization would definitely outperform the QP solvers that were running in production.  Unbeknownst to team X, the original Bayesian risk analysis project has now grown into a multimillion dollar major overhaul initiative, which included the eventual replacement of all of the tools and functions supported by team X along with the necessary migration to the cloud. The CIO and a couple of business VPs are on now board, and tech leadership is treating it as a done deal. An outside vendor, a startup who nobody had heard of, was contracted to help build the platform, since team Y has no engineering skills. The choice was deliberate, as calling on any of the established consulting or software companies would have eventually led leadership to the conclusion that team X was better suited for a transformation on this scale than team Y.  Team Y has no experience with any major ERP deployments, and no domain knowledge, yet they are being tasked with fundamentally changing the business process that is at the core of Company A's business. Their models actually perform worse than those deployed by team X, and their architecture is hopelessly simplistic, compared to what is necessary for running such a solution in production.  Ironically, using Bayesian thinking and based on all the evidence, the likelihood that team Y succeeds is close to 0%. At best, the project is going to end up being a write off of 50 million dollars or more. Once the !@#$!@hits the fan, a couple of executive heads are going to role, and dozens of people will get laid off. At worst, given how vital risk analysis and portfolio optimization is to Company A's revenue stream, the failure will eventually sink the whole company. It probably won't go bankrupt, but it will lose a significant portion of its business and work force. Failed ERP implementations can and do sink large companies: Just see what happened to National Grid US, SuperValu or Target Canada.  One might argue that this is more about corporate disfunction and bad leadership than about data science and AI. But I disagree. I think the core driver of this debacle is indeed the blind faith in Data Scientists, ML models and the promise of AI, and the overall culture of hype and self promotion that is very common among the ML crowd.  We haven't seen the end of this story: I sincerely hope that this ends well for the sake of my colleagues and all involved. Company A is a good company, and both its customers and its employees deserver better. But the chances of that happening are negligible given all the information available, and this failure will hit my company hard.

Follow Along as I Flip this Website - Case Study
reddit
LLM Vibe Score0
Human Vibe Score1
jshogren10This week

Follow Along as I Flip this Website - Case Study

I am starting a new case study where I will be documenting my attempt to flip a website that I just purchased from Flippa. However, unlike most case studies where people hide certain parts and details from the public I will instead be sharing everything. That means you will know the exact URL of the site that I purchased and I will share everything with you all as I progress.I know that case studies are lot more interesting and you can learn better when you can see real examples of what I am talking about. Enough of the chatting, let's jump straight into this new case study and I will explain what this is all about. Before you get into the case study I want to give you the option of reading this one my website where all of the images can be seen within the post and it is easier to read. I also want to say that I have nothing to sell you or anything close to it. So if you want to read it there you can do so here ##Introductory Video I have put together a video that talks about many of the things that I cover in this article. So if you would rather watch a video you can watch that here - https://www.youtube.com/watch?v=EE3SxtNnqts However, I go into more detail in the actual article FYI. Also, I plan on using Youtube very frequently in this case study so be on the lookout for new videos.There is going to be a video that will accompany every single case study post because I like having it being presented in two different mediums. ##The Website I Just Bought Around a week ago I made a new website purchase from Flippa and you can view the website's Flippa listing here - https://flippa.com/6439965-hvactraining101-com Screenshot of the Homepage - http://imgur.com/T6Iv1QN I paid $1,250 for the site and you will soon see that I got a really good deal. As you might be able to tell from the URL, this site is focused around training and education for becoming a HVAC technician. This is a lucrative niche to be in and Adsense pays very well. I do not have control of the site yet due to the transfer process not being completed. However, I am hoping within a few days everything will be finalized and I will take full control of the site. In the meantime, I figured it would be a good time to put together the introduction post for this new case study! ##Why I Bought this Website Now that you have a general idea of the website that I purchased, I now want to explain the reasoning behind the purchase. There are 3 major reasons for this purchase and I will explain each one of them below. GREAT Price As I mentioned earlier, I bought this website for $1,250. However, that doesn't mean a whole lot unless you know how much the site is making each month. Screenshot of the earnings for the last 12 months - http://imgur.com/NptxCHy Average Monthly Profits: 3 Month = $126 6 Month = $128 12 Month = $229.50 Let's use the 6 month average of $128/month as our baseline average. Since it is making on average $128/month and it was sold for $1,250 then that means I bought this site at a multiple of 9.76x! Most sites in today's market go for 20x-30x multiples. As you can see, I got a great deal on this site. Although the great price was the biggest reason for me buying this site there are other factors that persuaded me as well. You need to remember that just because you can get a website for a good price it doesn't mean it is a good deal. There are other factors that you need to look at as well. Extremely Under Optimized This site is currently being monetized mainly by Adsense and a very small amount from Quinstreet. From my experience with testing and optimizing Adsense layouts for my site in my Website Investing case study I know the common ad layouts that work best for maximizing Adsense revenue. With that being said, I can quickly determine if a website is being under optimized in terms of the ad layout. One of the first things I did when analyzing this site was examine the ad layout it was using. Screenshot of the website with the ad layout the previous owner was using - http://imgur.com/wqleLVA There is only ONE ad per page being used, that's it. Google allows up to 6 total ads to be used per page and you can imagine how much money is being left on the table because of this. I am estimating that I can probably double the earnings for the site practically overnight once I add more ads to the site. Adding more ads in combination with my favorite Adsense plugin, AmpedSense, I will be able to easily boost the earnings for this site quickly. It is also worth mentioning how lucrative this niche is and how much advertisers are willing to spend on a per click basis. The average CPC for the top keywords this site is currently ranking for in Google - http://imgur.com/ifxiy8B Look at those average CPC numbers, they are insanely high! I could be making up to $25 per click for some of those keywords, which is so absurd to me. Combine these extremely high CPC with the fact that the site currently only has one ad per page and you can start to understand just how under optimized this site truly is. I also plan on utilizing other ad networks such as Quinstreet and Campus Explorer more as well. These two networks are targeted at the education niche which works very well with my site. I will be testing to see if these convert better than normal Adsense ads. Goldmine of Untapped Keywords One of the biggest opportunities I see for growing this site is to target local keywords related to HVAC training. As of right now, the site has only scratched the surface when it comes to trying to rank for state/city keywords. Currently there are only two pages on the entire website which go after local keywords, those two pages target Texas and Florida HVAC search terms. These two pages are two of the more popular pages in terms of total amount of traffic. See the screenshot of the Google Analytics - http://imgur.com/NB0xJ4G Two out of the top five most popular pages for the entire website are focused on local search terms. However, these are the ONLY two pages that target local search terms on the whole site! There are 48 other states, although there may not be search volume for all states, and countless cities that are not being targeted. Why do I think this is such a good opportunity? For a few reasons: Local keywords are a lot easier to rank for in Google than more general keywords This site has been able to rank for two states successfully already and it proves it is possible Traffic going to these local pages is WAY more targeted and will convert at a much higher rate, which means more commissions for me There are so many more states and cities that get a good amount of searches that I can target To give you an idea of the type of keywords these local pages rank for, you can see the top keywords that the Florida page is ranking for in Google: Top ranking keywords for the Florida page - http://imgur.com/j7uKzl2 As you can see these keywords don't get a ton of searches each month, but ranking 1st for a keyword getting 90 searches a month is better than being ranked 10th for a keyword getting 1,000 searches a month. I have started to do some keyword research for other states and I am liking what I am finding so far. Keywords that I have found which I will be targeting with future articles - http://imgur.com/8CCCCWU I will go into more detail about my keyword research in future articles, but I wanted to give you an idea of what my strategy will be! I also wanted to share why I am super excited about the future potential to grow this site by targeting local keywords. ##Risks Yes, there are many good things about this website, but there are always risks involved no matter what the investment is. The same thing goes for this site. Below are some of the risks that I currently see. HTML Site This website is a HTML site and I will need to transfer it to Wordpress ASAP. I have been doing some research on this process and it shouldn't be too hard to get this over to Wordpress. In doing so it will make adding content, managing the back end and just about everything else easier. Also, I am hoping that when I transfer it to Wordpress that it will become more optimized for Google which will increase keyword rankings. Declining Earnings Looking at the last 12 months of earnings you will notice a drop off from last year till now. Earnings from the last 12 months - http://imgur.com/WsotZsj In May of 2015 it looks like the site earned right around $500, which is much higher than the $128 that it is earning now. However, the last 7 or so months have been consistent which is a good sign. Even though the earnings are much lower now then they were a year ago it is good to know that this site has the potential to earn $500/month because it has done it before. Slightly Declining Traffic In the last 12 months the site's traffic has declined, however, it looks like it is picking back up. Traffic from the last 12 months - http://imgur.com/aiYZW9W The decline is nothing serious, but there is a drop on traffic. Let's take a look at the complete history of this site's traffic so we can get a better idea of what is going on here: Complete traffic history - http://imgur.com/tYmboVn The above screenshot is from 2012 all the way up to right now. In the grand scheme of things you can see that the traffic is still doing well and it looks like it is on the upswing now. Those three risks mentioned above are the three biggest risks with this site at this point. It is always good to note the risks and do everything you can to prevent them from causing a problem. ##My Growth Strategy Whenever I purchase a new site I always create an outline or plan on how I will grow the site. Right now, I have some basic ideas on how I will grow this site, but as I go on I will continue to change and optimize my strategies to be more effective. Below I have outlined my current plans to grow: Add more Adsense Ads The very first thing I will do once I get control of the site is add more ads per page. I am predicting that by just adding a few more ads per page I will be able to more than likely double the earnings. I will touch on exactly how I will be optimizing the ad layouts in future posts. Test other Ad Networks I will be doing a lot of testing and experimenting when it comes to the ad networks. I plan on trying out Adsense, Media.net, Quinstreet, Campus Explorer and finding the combination of those 4 which produces the most revenue. The Adsense and Media.net ads will perform well on the more general pages while Quinstreet and Campus Explorer ads will be geared towards the local search terms. There will probably be other ad networks I will try out but these are the four which I will be using right away. If you are aware of any other ad networks out there which are geared towards the education niche please let me know in the comments below! Target Local Keywords with new Content I have already touched on this, but I will starting to produce content targeting these local keywords ASAP. The sooner I add the content to the site the sooner it will start to rank and bring in traffic. I will not be writing my own content and instead I will be outsourcing all of it via Upwork. I will show you all how I go about outsourcing content production and you can see my process for doing that. ##Goals for this Website My goal for the website is to have it valued at $10,000+ within 12 months. Let's break down this larger goal into smaller chunks which will make achieving it easier and more attainable. Earnings - $500/month To get the site valued at $10,000 the site will need to be making $500/month using a 20x monthly multiple. Right now, the site is making around $130/month so it has a ways to before it reaches the $500 a month mark. However, after doing some Adsense optimization I think we could push the earnings to around $300/month without much work. From there, it will come down to trying to bring in more traffic! Traffic - 5,000 Visitors per Month Why 5,000 visitors? Because that is how much traffic it is going to take to get to the $500/month goal. Let me explain how I came to this conclusion: The average RPM for this site is currently $50, which means for every 1,000 page views the site earns $50. After I optimize the Adsense layout for the site and add more ads per page I think I will be able to double the RPM to $100. Using the RPM of $100 the site will need to have 5,000 monthly visitors to earn $500. So 5,000 monthly visitors is the traffic goal I have set and aiming for! The site is currently getting around 3,000 visitors per month so I will need to add an extra 2,000 visitors to get to this goal. ##Want to Follow this Case Study? I will be using Youtube a lot in this case study so make sure to follow my Youtube channel here - www.youtube.com/c/joshshogren Other than that, I think that is going to bring us to the end of the introductory post for this new case study. I hope that you enjoyed reading and that you are excited to follow along! If you have any suggestions to make this case study better PLEASE let me know in the comment below. I want to make this case study the best one I have done yet. Talk to you all in the comment section.

I got fired due to automation — lessons learned. Two-month overview.
reddit
LLM Vibe Score0
Human Vibe Score1
WebsterPepsterThis week

I got fired due to automation — lessons learned. Two-month overview.

UPD: Guys, I'm not promoting myself as some of the redditors decided. That's why to deal with contradictions I'll do next things: make additional post with short review and description of the general tools and processes you could apply. help only those who have already written me. So I won't answer on new offers or DMs. As mentioned, damn robots have taken my job. PRE-HISTORY During Covid times, I found myself without my offline job, and since I was interested in marketing and SMM, I began searching for a job there. Completed free Google and Udemy courses and finally landed my first SMM manager position with a business owner. He had several projects so, finally, I started managing three Twitter accounts, two Facebook accs, two IGs, and one TikTok. I handled posting, content editing and responding routine, while freelancers usually took care of video creation for IG and TT. THE STORY ITSELF Things took a turn for the worse in April when my employer introduced ChatGPT and Midjourney, tools I was already using. The owner insisted on integrating them into the workflow, and my wages took a 20% hit. I thought I could roll with it, but it was just the beginning. By midsummer, the owner implemented second-layer AI tools like Visla, Pictory, and Woxo for video (bye freelancers, lol), as well as TweetHunter, Jasper, and Perplexity for content. Midjourney and Firefly joined for image generation. All together, my paycheck was slashed by 50%. Finally, at the end of October, my boss told me he automated stuff with Zapier, cutting costs that way. Additionally, he adopted MarketOwl, autoposting tool for Twitter, and SocialBee for Facebook. He stated that he didn’t need me, as by now he could manage the social media accounts himself. I feel so pissed then and even thought that there's no point in searching for similar jobs. HOW I SPENT TWO MONTHS Well, for the first two weeks, I did nothing but being miserable, drinking and staring at the wall. My gf said it's unbearable and threatened to leave if I not pull myself together. It was not the final push, but definitely made me rethink things. So I decided to learn more about the capabilities of these automation covers and eventually became an AI adviser for small businesses. It's ironic that now I sometimes earn money advising on how to optimize marketing, possibly contributing to other people's job loss. FINAL THOUGHTS I am fully aware of the instability of such a job and have invested my last savings in taking an online marketing course at Columbia to gain more marketing experience and got something more stable afterwards. Message for mods: I'm not promoting myself or anything mentioned here; just sharing the experience that someone might find helpful.

Switching Gears: Implementing AI for My Agency’s Marketing After a Decade
reddit
LLM Vibe Score0
Human Vibe Score0.333
Alarming_Management3This week

Switching Gears: Implementing AI for My Agency’s Marketing After a Decade

Hi there, I’ve been running a software development and design agency for the last 10 years, mainly focusing on building custom solutions for businesses and SaaS. For the last 2 years, I’ve consistently recommended that clients use AI technologies, especially for social media and content creation to generate traffic. Funny enough, I wasn’t practicing what I preached. Most of my client projects came from platforms like Upwork and word-of-mouth referrals from clients or people from networking events. Background I started my journey in 2014, switching from an employee to a freelancer. Within the first 10 months, my initial projects grew beyond what I could handle alone, prompting me to hire additional developers. This shift turned my role from a full-stack developer to a team lead and developer. Over the years, my focus has been a blend of tech and product. About five years ago, I realized the importance of design, leading me to adding designers to the agency to provide full-cycle service development—from product ideation and design to development, testing, launch, and support. I still continue to set up dedicated teams for some clients, maintaining a strong technical role as a tech lead, solution architect, and head product designer. To enhance my skills, I even completed UI/UX design courses to offer better product solutions. Despite these changes, building products has always been the easy part. The challenge was ensuring these client products didn’t end up in the graveyard due to poor product-market fit, often caused by inadequate marketing and sales strategies but more often just absence of them. (we are talking about startup and first time founders here 🙂 ) My Journey and Observations Advising Clients: I often found myself advising clients on increasing traffic for their SaaS products and crafting strategic marketing plans. Learning: I’ve gained most of my knowledge from consuming internet materials, courses, and blog posts and learning from successful client project launches. Realization: Despite giving this advice, I wasn’t applying these strategies to my own business, leading to low visits to my agency’s website. Initial Solution: Hiring a Marketer Hiring: I brought in a marketer with a solid background in content creating and interview video editing from an educational organization. Goal: The aim was to increase website visits through a comprehensive marketing strategy. Outcome: Although the content produced was high-quality and useful for pitching services, it didn’t lead to significant traffic increases. Issue: The marketer focused more on content creation rather than distribution channels, which limited effectiveness. Shift to AI-Driven Strategy Experiment: I decided to try using AI for content creation and distribution, which aligns with my agency’s specialization in design-driven development and AI integrations. Implementation plan: I will be generating all content with minimal edits using AI and implementing a strategic backlinking approach. Backlinking Strategy Initial Plan: I initially thought of hiring a specialist for backlinks. Realization: The costs and profiles of freelancers didn’t seem promising. Solution: I found AI-driven services for backlinks, which seem more efficient and cost-effective. Plan: My plan is to use these tools for programmatic SEO-driven AI-generated articles and third-party backlinking services over the next two to three months. Current Approach Management: This approach can be managed and executed by 1 person and monitored weekly, reducing human error and optimizing efficiency. I will start it myself and then replace myself with an editor with managing skills. Reflection: It’s a bit ironic and funny that it took me 10 years to start implementing these strategies in my own agency business, but I now feel more confident with AI and automation in place. Why Increase Website Visitors? You might ask, why do I want to increase the number of visitors to the site, and how can I ensure these visitors will be qualified? Hands-On Experience: To gain hands-on experience and perform this exercise effectively. Introduce Packaged Services: I want to introduce a set of low-cost packaged services tailored for non-technical people who want to build things for themselves - the DIY kits for non-technical folks. These services will provide a foundational template for them to build upon on top of existing established solutions such as Wix, Square Why am I Posting and Sharing Here? You might also wonder, why am I posting it here and sharing this? Well, I'm doing this more for myself. Most of my career, the things I’ve done have been behind the curtains. With this small project, I want to make it public to see the reaction of the community. Perhaps there will be good and smart suggestions offered, and maybe some insights or highlights of tools I wasn’t aware of or didn’t consider. I’ll keep sharing updates on this journey of website promotion, marketing, and SEO. My current goal is to reach 2,000 visits per month, which is a modest start. Looking forward to any thoughts or advice from this community! Disclaimer: This content was not generated by AI, but it was edited by it 😛

 I just sold my startup for $200,000 after 11 months. AMA
reddit
LLM Vibe Score0
Human Vibe Score0
jeannenThis week

I just sold my startup for $200,000 after 11 months. AMA

Last August, I was looking for a startup idea I could grow and made a MVP in a week then launched it. I received the $200,000 wire from the buyer a couple of days ago I found tons of useful info online for free, so I hope this can be my way of giving back :) Here is some background: Idea I got the idea when trying to write a tweet using Google Doc's transcription tool, which was terrible. I was pretty sure I wasn't the only one too lazy to type, I made my own solution using AI to transcribe and reformat voice notes into any kind of content. I called it Talknotes, mainly because it was the only domain available lol Validation: My rule is to only reinvest what the project generates. After listing on startup directories and posting on Twitter, I generated $700 in 10 days. It wasn't much, but enough to show interest and keep me motivated. I added user-requested features, but the launch effect wore off, and daily revenues dropped to $0 after a few weeks. I almost gave up, but friends encouraged me to continue. In October, I launched on ProductHunt and it blew up. It became Product of the Day and reached $1500 MRR thanks to media coverage. I initially built everything using vanilla JS/CSS/HTML + Node for backend. But it's pretty limited for apps with lots of interactivity so, I rebuilt the app using Nuxt.js to make it easier to ship new features. Then, I launched ads on Facebook and I implemented a feedback loop: Get new users Learn about them through onboarding Make more ads based on onboarding data This doubled MRR in about 2 months. Burnout and Sale: In May, I had a bad burnout after emergency bug fixes. This made it hard to work on the app after. At this point MRR was around $7000 and total revenues around $70,0000 I listed it on Acquire.com for $200,000, a very good price for the buyer considering revenues and growth. I could've gotten $300,000 with buyer financing or earn-outs, but I wanted cash, $200,000 today is better than $300,000 in a year. Everything was smooth until we tried using Escrow, which almost fucked up the deal (details here). Long story short, had to threaten them to make a sponsored post on Twitter explaining what they did + legal action. They sent the refund the very next day, and we completed the transfer directly. Now, this isn't an overnight success. It's the result of 7 years of grind. I launched over 40 projects since I started, and most of them failed. I often worked 100 hours per week, and I rarely go out or meet many people. It's not for everyone, but I'm fine with it With the profit from the app + sale, and other projects, I have close to 1/3 of a million dollar. I could retire in Asia if I wanted Just mind blowing to think I wrote funny characters in a code editor and sold it for the price of a house lol Edit 1: A few people got confused. I said it's 7 years of grind and most of my projects failed, not that I was not making money. I also said I OFTEN worked 100h/week, not every week :) Since I learned to code 2 years ago I've made close to $400k from my app's profit + exit (this one + another one for $65k last year). And before that I was making money as a marketing freelancer. Also, I dropped after high-school, so, I had to learn everything from scratch, it takes time! Edit 2: Lots of people asked how/where I learned to code in 2 months. I wrote a blog/journal about it back then with links to resources, you can find it here if you're interested

Switching Gears: Implementing AI for My Agency’s Marketing After a Decade
reddit
LLM Vibe Score0
Human Vibe Score0.333
Alarming_Management3This week

Switching Gears: Implementing AI for My Agency’s Marketing After a Decade

Hi there, I’ve been running a software development and design agency for the last 10 years, mainly focusing on building custom solutions for businesses and SaaS. For the last 2 years, I’ve consistently recommended that clients use AI technologies, especially for social media and content creation to generate traffic. Funny enough, I wasn’t practicing what I preached. Most of my client projects came from platforms like Upwork and word-of-mouth referrals from clients or people from networking events. Background I started my journey in 2014, switching from an employee to a freelancer. Within the first 10 months, my initial projects grew beyond what I could handle alone, prompting me to hire additional developers. This shift turned my role from a full-stack developer to a team lead and developer. Over the years, my focus has been a blend of tech and product. About five years ago, I realized the importance of design, leading me to adding designers to the agency to provide full-cycle service development—from product ideation and design to development, testing, launch, and support. I still continue to set up dedicated teams for some clients, maintaining a strong technical role as a tech lead, solution architect, and head product designer. To enhance my skills, I even completed UI/UX design courses to offer better product solutions. Despite these changes, building products has always been the easy part. The challenge was ensuring these client products didn’t end up in the graveyard due to poor product-market fit, often caused by inadequate marketing and sales strategies but more often just absence of them. (we are talking about startup and first time founders here 🙂 ) My Journey and Observations Advising Clients: I often found myself advising clients on increasing traffic for their SaaS products and crafting strategic marketing plans. Learning: I’ve gained most of my knowledge from consuming internet materials, courses, and blog posts and learning from successful client project launches. Realization: Despite giving this advice, I wasn’t applying these strategies to my own business, leading to low visits to my agency’s website. Initial Solution: Hiring a Marketer Hiring: I brought in a marketer with a solid background in content creating and interview video editing from an educational organization. Goal: The aim was to increase website visits through a comprehensive marketing strategy. Outcome: Although the content produced was high-quality and useful for pitching services, it didn’t lead to significant traffic increases. Issue: The marketer focused more on content creation rather than distribution channels, which limited effectiveness. Shift to AI-Driven Strategy Experiment: I decided to try using AI for content creation and distribution, which aligns with my agency’s specialization in design-driven development and AI integrations. Implementation plan: I will be generating all content with minimal edits using AI and implementing a strategic backlinking approach. Backlinking Strategy Initial Plan: I initially thought of hiring a specialist for backlinks. Realization: The costs and profiles of freelancers didn’t seem promising. Solution: I found AI-driven services for backlinks, which seem more efficient and cost-effective. Plan: My plan is to use these tools for programmatic SEO-driven AI-generated articles and third-party backlinking services over the next two to three months. Current Approach Management: This approach can be managed and executed by 1 person and monitored weekly, reducing human error and optimizing efficiency. I will start it myself and then replace myself with an editor with managing skills. Reflection: It’s a bit ironic and funny that it took me 10 years to start implementing these strategies in my own agency business, but I now feel more confident with AI and automation in place. Why Increase Website Visitors? You might ask, why do I want to increase the number of visitors to the site, and how can I ensure these visitors will be qualified? Hands-On Experience: To gain hands-on experience and perform this exercise effectively. Introduce Packaged Services: I want to introduce a set of low-cost packaged services tailored for non-technical people who want to build things for themselves - the DIY kits for non-technical folks. These services will provide a foundational template for them to build upon on top of existing established solutions such as Wix, Square Why am I Posting and Sharing Here? You might also wonder, why am I posting it here and sharing this? Well, I'm doing this more for myself. Most of my career, the things I’ve done have been behind the curtains. With this small project, I want to make it public to see the reaction of the community. Perhaps there will be good and smart suggestions offered, and maybe some insights or highlights of tools I wasn’t aware of or didn’t consider. I’ll keep sharing updates on this journey of website promotion, marketing, and SEO. My current goal is to reach 2,000 visits per month, which is a modest start. Looking forward to any thoughts or advice from this community! Disclaimer: This content was not generated by AI, but it was edited by it 😛

I built a Word Ladder game using AI only - ZERO coding
reddit
LLM Vibe Score0
Human Vibe Score1
eibrahimThis week

I built a Word Ladder game using AI only - ZERO coding

Hey fellow devs!!! I'm excited to share a unique project I've just completed: an online Word Ladder game built entirely using AI assistance, specifically Claude.ai. The kicker? I wrote zero lines of code myself! 🔗 Check it out: https://www.wordladdergame.com Why this matters: AI-Driven Development: This project showcases the potential of AI in software development. Everything from architecture decisions to actual code implementation was guided by AI. Zero Manual Coding: As someone with a product background but limited coding experience, I was able to bring a full-fledged web app to life without writing a single line of code myself. Rapid Prototyping: The entire process, from ideation to deployment, was incredibly fast compared to traditional development methods. I did the whole thing in under 4 hours and spent another 4 hours tweaking it (also using AI) Learning Opportunity: This approach allowed me to understand modern web development practices and technologies without getting bogged down in syntax and debugging. Tech Stack (all implemented through AI guidance): Next.js TypeScript Prisma (with PostgreSQL) Tailwind CSS Vercel for deployment The game features randomly generated word pairs, a solve button, and a clean, responsive UI. But more than the game itself, I'm excited about what this development process represents for the future of software creation. I'd love to hear your thoughts: Have you experimented with AI-assisted development? How do you see this changing the landscape for entrepreneurs and non-technical founders? What potential challenges or limitations do you foresee with this approach? Feel free to try the game and ask any questions about the development process. I'm here to discuss and learn from your insights!

nine
github
LLM Vibe Score0.406
Human Vibe Score0.000678327714013925
NethermindEthMar 28, 2025

nine

NINE - Neural Interconnected Nodes Engine A flexible framework for building a distributed network of AI agents that work everywhere (STD, WASM, TEE) with a dynamic interface and hot-swappable components. One of the key concepts of the framework is a meta-layer that enables building software systems in a No-code style, where the entire integration is handled by the LLM. Documentation | Telegram | X | Discord Overview Project Structure The project is built using Rust (full-stack) and organized as a workspace consisting of two major groups: substance/ - The core components of the system, responsible for interaction. particles/ - Plugins for the system that enable additional functionalities. examples/ - Usage examples of the framework. Use cases The following cases will have a minimal implementation, and they will be used to track the progress of the framework and its flexibility in building such systems. ☑️ Chatbots - AI-driven natural language chatbots for customer support, virtual assistants, and automation. ☑️ AI-governed blockchains (ChaosChain) - Self-regulating and intelligent blockchain ecosystems with automated decision-making. ⬜ Personal AI Assistant with dynamic UI - AI that generates adaptive and context-aware user interfaces on demand. ☑️ AI-powered trading bots - Autonomous financial agents for high-frequency trading and portfolio management. ⬜ Intelligent email assistant - AI for reading, summarizing, filtering, and responding to emails autonomously. ⬜ Interactivity in home appliances - AI-powered automation for home appliances, making them responsive and adaptive. ⬜ On-demand observability and awareness in DevOps - AI-driven insights, predictive monitoring, and automated issue detection in IT systems. ⬜ AI-powered developer tools - AI agents assisting with code generation, debugging, and software optimization. ⬜ Autonomous research agent - Self-learning AI for data analysis, knowledge discovery, and hypothesis testing. Status: ⬜ Not started | ☑️ In Progress | ✅ Completed Interfaces The platform provides No-code interfaces that automatically adapt to your needs and use LLM for system management. ☑️ Stdio - A console interface that also allows interaction with models through the terminal or via scripts. ☑️ TUI - An advanced console interface with an informative dashboard and the ability to interact more comprehensively with the system. ☑️ GUI - A graphical immediate-state interface suitable for embedded systems with real-time information rendering. ⬜ WEB - The ability to interact with the system through a web browser, such as from a mobile phone. ⬜ Voice - An interface for people with disabilities or those who prefer interaction without a graphical representation (e.g., voice control). ⬜ API - On-the-fly API creation for your system, providing a formal interaction method. This includes encapsulating an entire mesh system into a simple tool for LLM. Features (goals) Built on Rust and implemented as hybrid actor-state machines. Supports various LLMs, tools, and extensibility. Hot model swapping without restarting. Real-time configuration adjustment. Distributed agents, the ability to run components on different machines. Provides a dynamic user interface (UI9) that is automatically generated for interacting with a network of agents. Usage An agent is a substance that assembles from components (particles). Connections automatically form between them, bringing the agent to life: License This project is licensed under the [MIT license]. [MIT license]: https://github.com/NethermindEth/nine/blob/trunk/LICENSE Contribution Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, shall be licensed as MIT, without any additional terms or conditions.

aion
github
LLM Vibe Score0.494
Human Vibe Score0.011340905117109681
aionnetworkFeb 28, 2025

aion

Aion Mainstream adoption of blockchains has been limited because of scalability, privacy, and interoperability challenges. Aion is a multi-tier blockchain network designed to address these challenges. Core to our hypothesis is the idea that many blockchains will be created to solve unique business challenges within unique industries. As such, the Aion network is designed to support custom blockchain architectures while providing a trustless mechanism for cross-chain interoperability. The Aion White Papers provides more details regarding our design and project roadmap. This repository contains the main (Java) kernel implementation and releases for the Aion Network. System Requirements Ubuntu 16.04 or a later version Getting Started Blockchain node concept To understand what is blockchain kernel: Node overview Developers If you're interested in building Open Applications, powered by Aion: Visit the Developer site of The Open Application Network : developer.theoan.com If you're interested in making improvements to the Java Implementation of Aion: Refer to the Build Aion kernel from source wiki for information on building this source code to a native binary or Docker image Refer to the Installation wiki for a guide on installing and configuring the kernel. The Owner's Manual wiki will include further instructions and details on working with the kernel. Please refer to the wiki pages for further documentation on mining/validating, using the Web3 API, command line options, etc. Miners/Validators If you're interested in being a validator on the Aion networks, refer to our Validator Docs Users If you're interested in interacting with dApps and using Aion, refer to our Aion Desktop Wallet Docs FAQ Where can I store my Aion? We recommend using the web-based Aion Wallet; more information can be found in “Docs”). Where can I stake my Aion? You can use the original staking interface which has support for staking pool operators, or the web-based Aion Wallet. Where can I check on a transaction on The Open Application Network? You can visit either the web-based Aion Wallet or the Aion Dashboard to view a transaction on the network. Where can I see the current network performance of The Open Application Network? You can visit the Aion Dashboard to see how the Open Application Network is performing. What should I do if the desktop wallet or the web based wallet are not functioning properly? First check in with the community on the community subreddit. If the community is not able to assist then you can submit a ticket through Github. The Open Application Network is currently providing support to help maintain the network; where can I see the funds that The Open Application Network has mined or received as a stake reward? All funds mined or rewarded for staking that the foundation receives are burned to this address: 0x0000000000000000000000000000000000000000000000000000000000000000 users can check the totals burned via the Aion Dashboard here. What is the total circulating supply of Aion? To view the current total circulating supply of Aion you can use the Aion Watch tool located here. Which networks are supported? The Mainnet network is supported. To view the dashboards for this networks use these links: Mainnet How can I export a list of my transactions? If you would like to download a copy of your transaction history you can use https://mainnet.theoan.com and search for your public address. In the bottom right of your screen is a “Download this Account” button which will allow you to select a date range and download a .csv file containing your transactions. Where can I access a copy of The OAN and Aion Brand Guidelines? The OAN and Aion Brand Guidelines can be located here they can be used by the community to create brand aligned content. My Ledger doesn’t seem to be recognized with applications in the Chrome Browser (Staking Interface or Wallet) When using your Ledger hardware wallet with Aion installed to access an account VIA the Chrome browser, users will need to enable the Aion contract on their Ledger device. This can be done by selecting: Aion > Setting > enable Contract. What happened to the Aiwa chrome extension wallet? Aiwa was owned and operated by a third-party organization called BlockX Labs, Aiwa was funded by a community grant during its lifespan. However, BlockX Labs is now reorganizing and will no longer support Aiwa. Usage of Aiwa has decreased significantly with other tools such as the web based wallet now available so the decision was made to deprecate it. I am unable to undelegate my staked Aion In order to undelegate your Aion: – You must have a sufficient Aion balance to perform the undelegation transaction (a minimum of 0.02 Aion is required for the transaction fee) – Your balance will be updated after a lock-up period of 8640 blocks (approximately 24 hours) – Ensure the amount follows this format: 999,999,999.999999999 – If you are using a ledger, please ensure that your firmware is up to date. – If you are using the desktop interface, ensure that you are using the latest version – For more information view this guide What happened to the swap process to convert ERC-20 Aion to the mainnet? As of January 31, 2022 swapping from ERC20 to Aion mainnet is no longer supported. The original Aion token swap from Ethereum to Aion was completed on December 10, 2018. However, in order to support the community members who missed the original swap deadline a manual process was available, this process has now been retired. Community Channels Newsfeed: @AionNewsfeed Info Bot: @AionTGbot Wiki: reddit.com/r/AionNetwork/Wiki Help Desk: https://helpdesk.theoan.com/ Contact To keep up to date and stay connected with current progress and development, reach out to us on the following channels: Aion Telegram Dispatch Alerts Aion on Twitter Aion Blog License Aion is released under the MIT license