VibeBuilders.ai Logo
VibeBuilders.ai

Combinator

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

160 of Y Combinators 229 Startup Cohort are AI Startups with and 75% of the Cohort has 0 revenue
reddit
LLM Vibe Score0
Human Vibe Score1
DemocratizingfinanceThis week

160 of Y Combinators 229 Startup Cohort are AI Startups with and 75% of the Cohort has 0 revenue

Y Combinator (YC), one of the most prestigious startup accelerators in the world, has just unveiled its latest batch of innovative startups, providing key insights into what the future might hold. Y Combinators Summer 2023 Batch In a recent post by Garry Tan, YC's president, Tan offers a nostalgic look back at his first YC Demo Day in 2008, where he, as a budding entrepreneur, pitched his startup. Now, fifteen years later, he's at the helm, proudly launching the 37th Demo Day, this time for the Summer 2023 batch. Tan proudly declares this batch as one of YC's most impressive yet, emphasizing the deep technical talent of the participants. From a staggering pool of over 24,000 applications, only 229 startups were chosen, making this one of the most competitive batches to date. This batch marks a number of firsts and solidifies several rising trends within the startups landscape. 75% of these companies began their YC journey with zero revenue, and 81% hadn't raised any funding before joining the accelerator. YC's decision to focus on early-stage startups this round signals their commitment to nurturing raw, untapped potential. A Return to Face-to-Face Interaction After three years, YC has brought back the in-person Demo Day format, allowing startups, investors, and mentors to connect directly. While the virtual format has its merits, there's an unmistakable magic in the YC Demo Day room, filled with anticipation, hope, and innovation. AI Takes Center Stage Artificial Intelligence is the standout sector in the Summer 2023 batch. With recent advancements making waves across various industries, there's arguably no better time to launch an AI-focused startup, and no better platform than YC to foster its growth. This signals a clear trend in the startup investing and venture capital space: AI is just getting started. Of the entire Summer 2023 batch, 160 out of the entire 229 Summer 2023 batch that are utilizing or implementing artificial intelligence in some capacity. This means over 2 out of every 3 startups accepted is focused on artificial intelligence in some capacity. Some of the startups include: Quill AI: Automating the job of a financial analyst Fiber AI: Automating prospecting and outbound marketing Reworkd AI: Open Source Zapier of AI Agents Watto AI: AI-powered McKinsey-quality reports in seconds Agentive: AI-powered auditing platform Humanlike: Replace your call center with voice bots that sound human Greenlite: AI compliance team for fintech and banking atla: AI assistants to help in-house lawyers answer legal questions Studdy: An AI Match tutor Glade: League of Legends with AI-generated maps and gameplay and literally over 100 others. As you can see, there's a startup covering nearly every sector of AI in the new batch. YC By The Numbers YC continues to grow as a community. The accelerator now boasts over 10,000 founders spanning more than 4,500 startups. The success stories are impressive: over 350 startups valued at over $150 million and 90 valued at more than $1 billion. The unicorn creation rate of 5% is truly unparalleled in the industry. To cater to the ever-growing community, YC has added more full-time Group Partners than ever. This includes industry veterans such as Tom Blomfield, co-founder of billion-dollar startups GoCardless and Monzo, and YC alumni like Wayne Crosby (Zenter) and Emmett Shear (Twitch). YC Core Values YC's commitment to diversity is evident in the demographics of the S23 batch. They've also spotlighted the industries these startups operate in, with 70% in B2B SaaS/Enterprise, followed by fintech, healthcare, consumer, and proptech/industrials. Garry Tan emphasizes three core tenets for YC investors: to act ethically, to make decisions swiftly, and to commit long-term. He underlines the importance of the YC community, urging investors to provide valuable introductions and guidance to founders. The Road Ahead With YC's track record and the promise shown by the Summer 2023 batch, the future of the startup ecosystem looks promising. As always, YC remains at the forefront, championing innovation and shaping the next generation of global startups. Original Post: https://www.democratizing.finance/post/take-a-peek-into-the-future-with-y-combinators-finalized-summer-2023-batch

Zero To One [Book Review]
reddit
LLM Vibe Score0
Human Vibe Score0.5
AlmostARockstarThis week

Zero To One [Book Review]

If you don't feel like reading - check out the video here ##Introduction The more I read into Peter Thiel's background, the more ridiculous it seems.. He’s been involved in controversies over: Racism, Sexism, and, [Radical Right wing libertarianism.] (https://www.bloomberg.com/news/articles/2016-07-21/the-strange-politics-of-peter-thiel-trump-s-most-unlikely-supporter) He’s built a tech company that helps the NSA spy on the world. He supported Donald Trumps presidential campaign. He’s funding research on immortality And to top it off, he helped bankrupt online media company and blog network Gawker by funding Hulk Hogan’s sex tape lawsuit - after a report of his rumoured Homosexuality rattled his chain… Zero to One clearly reflects his unique attitude and doesn't pull any punches with a genuinely interesting point of view, that has clearly worked in the past, to the tune of almost 3 billion USD. But at times, his infatuation with the All American attitude is a little much…and, quite frankly, he’s not the kind of guy I could sit and have a pint with…without grinding my teeth anyway. The content is adapted from Blake Masters' lecture notes from Thiel's 2012 Stanford Course. This definitely helped keep the book concise and fast paced, at least compared to other books I’ve reviewed. The type of content is also quite varied, with a good spread from completely abstract theories — like the Technology vs. Globalisation concept, where the book get's it's title — to practical examples such as the analysis of personalities in chapter 14, "The Founders Paradox" covering Elvis Presley, Sean Parker, Lady Gaga and Bill Gates to name a few. ###Pros Monopolies To most people a monopoly is a negative thing. But while perfect competition can drive down costs and benefit the consumer - competition is bad for business. In fact, in Thiel's opinion, every startup should aim to be a monopoly or, as he puts it: Monopoly is the condition of every successful business. I like his honesty about it. While I’m not sure about the morality of encouraging monopolies at a large scale, I can see the benefit of thinking that way when developing a startup. When you're small, you can’t afford to compete. The best way to avoid competition is to build something nobody can compete with. The concept is summed up nicely at the end of chapter 3: Tolstoy opens Anna Karenina by observing: ‘All happy families are alike; each unhappy family is unhappy in its own way.’ Business is the opposite. All happy companies are different: each one earns a monopoly by solving a unique problem. All failed companies are the same: they failed to escape competition. Pareto The Pareto Law, which you might remember as the 80/20 rule in Tim Ferris’ The Four Hour Work Week, is often used synonymously with the power law of distribution, and shows up everywhere. Thiel refers to it in his section on The Power Law of Venture Capital. If Tim Ferris recommends identifying and removing the 20% of things that take 80% of your effort - Thiel recommends finding the 20% of investments that make 80% of your return. Anything else is a waste. Soberingly, he also suggests that the Pareto Law means: ...you should not necessarily start your own company, even if you are extraordinarily talented. But to me this seems more like a venture capitalists problem, than an entrepreneurs problem - Personally, I believe there’s far more benefit in starting up your own company that purely profit. ###Cons Man and machine? Content-wise, there is very little to dislike in this book. As long as you accept that the book is written specifically for startups - where anything short of exponential growth is considered a failure - it’s exceptionally on point. However, there are a couple sections dotted throughout the book where opinion and wild speculation began to creep in. Chapter 12 is a good example of this entitled: Man and Machine. It’s a short chapter, 12 pages in total, and Thiel essentially preaches and speculates about the impact of better technology and strong AI. I like to dog ear pages with interesting or useful content so I can come back later, but this entire chapter remains untouched. America, fuck yeah! It would be really difficult for a personality as pungent as Theil's to go entirely unnoticed in a book like this, and indeed it breaks through every now and then. I only had a feint idea of Thiel's personality before I read the book, but having read up on his background, I’m actually surprised the book achieves such a neutral, if pragmatic, tone. Pretty early on in the book however, we are introduced to Thiel's concept of Economic Optimism and quite frankly the whole of chapter 6 should have been printed on star spangled, red white and blue pages. I’m not necessarily against the egotistic American spirit but when Thiel writes, in relation to European Pessimism: the US treasury prints ‘in god we trust’ on the dollar; the ECB might as well print ‘kick the can down the road’ on the euro I can smell the bacon double cheese burgers, with those tiny little American flags from here. Ooh Rah! ###TL;DR (a.k.a: Conclusion) Overall, however, I really did enjoy this book and I can see myself coming back to it. Peter Thiel IS controversial, but he has also been undeniably successful with a career punctuated by bold business decisions. The ideas in the book reflect this mind set well. Yes, he backed Trump, be he also (sadly) backed the winner.

Is my idea + progress good enough to raise pre-seed round? CRM for construction niches. Non-tech founder.
reddit
LLM Vibe Score0
Human Vibe Score1
GPT-RexThis week

Is my idea + progress good enough to raise pre-seed round? CRM for construction niches. Non-tech founder.

Is my startup idea and progress good enough to raise a pre-seed round? It’s a CRM with meaningful AI integrations for specific type of B2B construction companies. I only want to continue at my current pace if it’s realistic to start raising within the next 2 weeks. At first, I thought it was fine because simple companies still get on Y-comb such as hammr and Relate CRM , but now I’m not sure. Would love to get the community’s thoughts on this. I’ve been working on this for about a week. ​ Key Highlights (You can skip to longer section below) Product is CRM for B2B construction companies. The previous tech company I worked at used an in-house built CRM for their workflow, and I’m creating that solution and applying it to B2B construction companies that have similar workflows. No competitors I’ve found. I’m uniquely positioned to spearhead: B2B SaaS/tech sales + expertise in construction I’m a non-tech sales founder with experience in UI/UX. Will bring on CTO co-founder once I start raising as that would entice better talent Progress + Traction $400 MRR in pre-sales, can get to \~$800-1000 EOM Validated through customer interviews Created some Figma frames, product overview, user journeys, business plan Made a simple but meaningful AI tool that will be available to those that sign up for waitlist. Did this with GitHub + ChatGPT Landing page website going up this week followed by PPC campaign, email marketing, and outreach. My GF works in enterprise sales and she’ll help me generate more leads. ​ Long Version Background B2B SaaS/Tech sales. I worked at enterprise company as an Account Executive where I worked with funded startups and their development, UI/UX, and Product management teams. I have a general knowledge in all these - my best being UI/UX design as I can work with Figma well Domain expertise: my family has had a construction company since I was young. I have a large network because of this. Problem At my previous company, we had a custom in-house built CRM for our workflow. It worked okay, despite being maintained by multiple engineers costing hundreds of thousands a year. I’m creating a CRM that solves that, and applying it to construction industries that can make use of it. I have a great network here which makes it easy for me get sales quickly. Vision Building this CRM for construction niche will allow us to generate MRR fast. We will be first movers in bringing meaningful AI tools to construction, which is generating significant interest. This gives us the opportunity to build the foundational technology that can be adapted to a wider audience such as my previous company and others - think researchers, consultants, etc. Traction + Current Progress (1 week) Validated idea through user interviews and pre-sales. Currently have $400 MRR in pre-sales. I expect $800-1000 in a month if I continue at my pace. This is from doing typical B2B sales. I’ve set up a CRM for this. Created product overview, user journeys, wireframes and some Figma frames, business plan Created a simple but meaningful AI tool for the niche which will be available to those that sign up for the waitlist. Created with GitHub + ChatGPT Completing landing page website this week. Will start PPC ads (I’m experienced in this) after that to generate sign-ups. I’ll also start email marketing from lists I’ve scraped. Team Solo-founder, will bring on CTO co-founder once I start raising funds. I have promising candidates, but feel that I need to raise funds to really entice a good co-founder. I’m uniquely positioned to head this product; B2B sales having worked with many CRMs + construction expertise and network. That said, I’ve never actually done anything that* impressive besides being an AE at a known enterprise techy company (but not FAANG level). ​ I want to acknowledge that my progress might sound more impressive than it is - it's still just a CRM after all, and I'm non-technical. Should I keep going? Advice? I also have a great offer to lead sales at a profitable startup, but I could always do both if it was worth it. I’m feeling really uncertain for some reason :/ maybe it’s just burnout.

From Running a $350M Startup to Failing Big and Rediscovering What Really Matters in Life ❤️
reddit
LLM Vibe Score0
Human Vibe Score1
Disastrous-Airport88This week

From Running a $350M Startup to Failing Big and Rediscovering What Really Matters in Life ❤️

This is my story. I’ve always been a hustler. I don’t remember a time I wasn’t working since I was 14. Barely slept 4 hours a night, always busy—solving problems, putting out fires. After college (LLB and MBA), I was lost. I tried regular jobs but couldn’t get excited, and when I’m not excited, I spiral. But I knew entrepreneurship; I just didn’t realize it was an option for adults. Then, in 2017 a friend asked me to help with their startup. “Cool,” I thought. Finally, a place where I could solve problems all day. It was a small e-commerce idea, tackling an interesting angle. I worked 17-hour days, delivering on a bike, talking to customers, vendors, and even random people on the street. Things moved fast. We applied to Y Combinator, got in, and raised $18M before Demo Day even started. We grew 100% month-over-month. Then came another $40M, and I moved to NYC. Before I knew it, we had 1,000 employees and raised $80M more. I was COO, managing 17 direct reports (VPs of Ops, Finance, HR, Data, and more) and 800 indirect employees. On the surface, I was on top of the world. But in reality, I was at rock bottom. I couldn’t sleep, drowning in anxiety, and eventually ended up on antidepressants. Then 2022 hit. We needed to raise $100M, but we couldn’t. In three brutal months, we laid off 900 people. It was the darkest period of my life. I felt like I’d failed everyone—myself, investors, my company, and my team. I took a year off. Packed up the car with my wife and drove across Europe, staying in remote places, just trying to calm my nervous system. I couldn’t speak to anyone, felt ashamed, and battled deep depression. It took over a year, therapy, plant medicine, intense morning routines, and a workout regimen to get back on my feet, physically and mentally. Now, I’m on the other side. In the past 6 months, I’ve been regaining my mojo, with a new respect for who I am and why I’m here. I made peace with what I went through over those 7 years—the lessons, the people, the experiences. I started reconnecting with my community, giving back. Every week, I have conversations with young founders, offering direction, or even jumping in to help with their operations. It’s been a huge gift. I also began exploring side projects. I never knew how to code, but I’ve always had ideas. Recent advances in AI gave me the push I needed. I built my first app, as my first attempt at my true passion—consumer products for kids. Today, I feel wholesome about my journey. I hope others can see that too. ❤️ EDIT: Wow, I didn’t expect this post to resonate with so many people. A lot of you have DM’d me, and I’ll try to respond. Just a heads-up, though—I’m juggling consulting and new projects, so I can’t jump on too many calls. Since I’m not promoting anything, I won’t be funneling folks to my page, so forgive me if I don’t get back to everyone. Anyway, it’s amazing to connect with so many of you. I’d love to write more, so let me know what topics you’d be interested in!

Good at coding, bad at marketing. Summary
reddit
LLM Vibe Score0
Human Vibe Score0.4
Official-DATSThis week

Good at coding, bad at marketing. Summary

Hello. I posted a question on what to do if you are good at coding but bad at marketing four days ago, and I received so many responses and tips. The original post is here. I was really glad and excited to read comments. To return the favor to the community and add some more value, I’ve summarized all the comments I got on the original post. Here are they, with my personal comments on some of the advice I got. You’ll never believe it, but the most common advice was to learn. Really, the first and only thing you should start with if you’re bad at marketing is learning. Yet learning could be different. I highlighted 5 main areas. Educate yourself on general questions. Learn more about some basics. For example, start by finding out what the 4P’s of marketing are, and afterward, you’ll inevitably run into YouTube videos, seminars, Udemy courses, or any other resource that resonates with you on some ideas/avenues you could pursue. Read books and watch videos. There are tons of books on marketing and sales. People shared in the comments books by Dan Kennedy and “Cashvertising”, written by Drew Eric Whitman. (I’ve never heard of them, but already ordered on Amazon). For sales, the most common idea was to start with YouTube videos. For example, Alex Hormozi videos and Startup school delivered by Ycombinator videos. Check out Indie Hackers and scrutinize it for a piece of good advice from developers in the same situation. Also, there was advice to follow up and read some guy on Twitter. (Don't want to get unfairly banned from here, so won't post it) Educate yourself and hire a professional or find a co-founder to help you: Hire a seasoned marketer in this field to help you out. He will help you achieve cost-efficient scales. But it could be a real problem to find the right person. Marketing agencies are expensive. Try to look on LinkedIn or among your acquaintances. Look for professionals with credentials or extensive experience. Seek marketing referrals from startups of a similar size/industry. If you don't have those, try to bring a trusted/experienced marketer friend into the intro meetings to help assess whether the service provider knows what they are doing. Talented freelancers can often get the job done for less than hiring an entire agency. Look for a co-founder who is savvy in marketing, passionate, and ready to work hard towards mutual success. Educate and DIY Being the face of your business is way better than having faceless communication. The startup checklist is made based on the comments is next: At least have your product defined. Define your target audience. Set up the goals you want to achieve. Make domain expertise and understand the market and the direction of its development. The next stage is answering tricky questions: Have you created a business model? How do you plan to compete? What’s your unique selling point? How much do you plan to budget for marketing? Are you planning to work alone, or will you need other devs? Then you start thinking about clients… You need the exposure to truly understand the customer's pain points and build a product that they love. You need to think about how your clients would think, and you should tailor each step you take for them. Get feedback from your early users if you already have a product. Interview your potential customers to learn how they buy. This will help you narrow your choice of marketing channels. Get your product or service used by several startups and help them achieve their goals. Endorsements are very valuable marketing assets. You need a landing to validate your value proposition and start sending traffic, or you can run meta instant form campaigns... It would depend on the category of your startup. You need a benchmark of the competition's ads both in Meta and Google, blog posts, domain authority, their landing page, and average search volumes. Do affiliate marketing for your product since it's an effective strategy. Educate and use AI tools for dealing with marketing. Build an LLM-based product to automate marketing. (Sounds like an idea for a startup, right?) Learn following ChatGPT advice. In 1–3 months, you will be another updated person. Look at marketowl, an AI marketing department for startups and microbusinesses that have no budget or time to do marketing. It will automate the basic tasks your business needs, but it doesn't require your marketing expertise. Check out AI tools that are delivering very good marketing content (gocharlie, jasper, copyai). Educate yourself and run socials Start a blog or YouTube channel where you can share your expertise in coding or anything else you are good at and how your product simplifies life. Engage with your audience on social media platforms like Instagram and LinkedIn, where you can showcase your industry knowledge. Start a page on Twitter and an account on Reddit. Follow and read subreddits and pages where your potential customers are. Learn the pain from the inside. Do not simply promote, people will lose interest immediately. Start by taking focused time to create informational content, so people will eventually be naturally intrigued by what you do and want to support you when they start to “know” you. Educate your potential users about the value of your product. Create content based on what ideal customers are asking at the various stages of marketing. e.g., if they are at the beginning of the process, they may use basic language; if they are further down the process, maybe they’ll be specific. Try to get on podcasts and build as many social links as you can. In other words, don’t live in a shell! Post regularly, and eventually you’ll find sites or people that are willing to promote for you. I omitted here all personal help offers and newsletters, however you could find them in the original post. Hope that will be helpful!

Seeking co-founder to build LinkedIn’s biggest rival(curated version)
reddit
LLM Vibe Score0
Human Vibe Score1
ItzdreeThis week

Seeking co-founder to build LinkedIn’s biggest rival(curated version)

How do you connect with likeminded people? You see the polished wins everywhere, but what about the messy drafts , the awkward pitches and the moments you’re not sure you’ve got it right? Problem: The whole idea of founding and starting a business can be super intimidating for some people, specially those who don’t know any founders personally, those who don’t have a large network, those who don’t have rich parents with large networks, those not inserted in an entrepreneurial culture like in the US for example (which is my case). Sometimes all you need is the right support network, and too see others do what you want, to know that it’s possible! Everyone has an “ultimate guide” to make 7 figures or build a business on YouTube but NO ONE shoes you the HOW, just the results… I’ve tried joining founder communities, LinkedIn ,Reddit … you name it. Most of these founder communities are inaccessible for regular people and often ask for you to have an already existing business with a min ARR… or their simply geography based and if you’re not in a certain area you can’t really participate… As of LinkedIn… full of empty AI generated posts about how some random dude raised $10m in 7 days. Okay Jonathan, but what about the HOW?? How did you write your first pitch? How many rejection calls did you get? What is an MVP? There simply isn’t a platform out there to document your founding journey and find inspiration within a community of people who are doing the same as you. What better way to feel motivated then to see someone actually document their process? Solution: I’m working on building a social media platform for aspiring/founders to connect through the RAW, UNFILTERED process of turning ideas into reality in REAL time. It’s all gonna be around the “building in public “ concept and content creation. Picture an instagram/tiktok profile where instead of seeing someone’s dog you see them documenting their founding process—from the moment they had the idea, to the moment they launched, you’re going to see the successes, the fails, the rejected calls, all documented through actual content and not some AI generated LinkedIn post. Imagine if you wanted to learn about how Steve Jobs started Apple , you could simply go through his profile on this app—exactly. To make sure all interactions are meaningful people would have to apply. It’s a truly curated community, with REAL people, building REAL things in REAL time, and not just tell us the story of how they did it… Audience: I’m targeting people who have a burning desire of building a business and early stage founders starting their founder journeys, that don’t have a support network and simply don’t know where to start. People who are tired of watching 30 min “ultimate guides “ on how to make it on YouTube from “business gurus” selling courses. People who haven’t reached the min ARR required to join an “exclusive “ founder a community. People who can’t simply just move to the US to get into the “exclusive” YC combinator. People who want to connect with real people building real things and not anonymous people on Reddit, or LinkedIn influencers again trying to promote their services. I believe in the idea because I’m also part of my audience. Have always wanted to start my own thing just never knew how to and where to find a community of likeminded people . I don’t know any founders myself, I come from a non-entrepreneurial society and I’d pay good money to access a community of REAL passionate founders building REAL things, in REAL time. This would be my first ever business, and I want to share my journey building it and hopefully inspire others to just start so I’ve created a mailing list to keep anyone interested in the project updated on my fails , learnings and successes. I’m not worried about “making it” but just “starting” and hopefully reach the right audience and inspire anyone to start whatever they have marinating in their thoughts. If you’re a founder struggling with staying consistent or an aspiring founder with an insane desire of starting and don’t know how to start, I’d love to get your feedback on what’s stopping you, your challenges starting out and what you’d find useful in such platform. And finally would this be something that interests you?? PS: casually looking for a technical co-founder

GPT Weekly - 19the June Edition - OpenAI's function calling, Meta's free LLM, EU Regulation and more.
reddit
LLM Vibe Score0
Human Vibe Score0.714
level6-killjoyThis week

GPT Weekly - 19the June Edition - OpenAI's function calling, Meta's free LLM, EU Regulation and more.

This is a recap covering the major news from last week. 🔥Top 3 news - OpenAI’s updates, Meta’s upcoming free LLM and EU Regulation 🗞️Interesting reads include PSA about protecting your keys, The GPT ouroboros, Reddit - OpenAI’s moat, and more.. 🧑‍🎓Learning includes a Step-by-step guide from a non-technical founder who launched his MVP, Chatbot for your Gdrive and more 🔥Top 3 AI news in the past week OpenAI: New Pricing, Models, & Functions OpenAI has been on a roll. Last week we saw the release of OpenAI best practice on using GPT. This week we saw some amazing updates. Three major buckets were: First, the price decreases for both embeddings and GPT-3.5 tokens. Second, new models for gpt-4 and gpt-3.5. A new longer context model for gpt-3.5. Third, a new function calling capability. Why is it important? Previously, the output from OpenAI was all text. So, calling an external API from GPT was quite difficult. You had to parse the text data and things were often incorrect. Langchain created the Agents and Tools feature to tackle this problem. It was still unreliable and prone to issues. Now you get native support to generate a fixed format output. You can use the output to generate functional calls and also pass functions which need to be called. For example, if your app has multiple API endpoints then you can use GPT to generate the API calls with parameters. You can also pass the endpoints as function calls to ensure the correct function is executed. This functionality can further be used to generate structured data (JSON) out of GPT. So, you can generate data from GPT and load it into your backend. What’s next? This functionality allows turning natural language responses into structured data. This can be used to create “intelligent” backends using LLMs. We might see implementations in no-code tools to allow more robust and natural-language tools for non-technical folks. The structured data process goes both ways. You can also feed structured data into GPT for better responses. This feature also has its share of issues. Function calling suffers from the same prompt injection issues. Malicious actors can pass malicious code in function or the responses. For example, creation of queries using functions might contain malicious code to delete data. Without proper user validation this code will be executed automatically and delete data. So, using LLM as the back-end layer needs proper security implementation. Meta's LLM: Commercial Use Ahead Llama has been a boon for the open source community. Many of the open source models rely on Llama. The issue is that Llama is research-only and cannot be used commercially. So, no one can use it to build any product. Meta is now working on the next version of the model. This model will be available for commercial use. This is in stark contrast to both OpenAI and Google. Both safe-guarde their models and make it available through API. Why is it important? Certain industries cannot use LLM APIs because of strict restrictions on data privacy. These companies would want to run their own instance of a foundational model. A commercially available foundational model is also going to help people who want to keep their “API call” costs next to 0. A commercially available free-for-all model will also help push the open source community further. Just like Llama. What’s next? Sam Altman has said OpenAI didn’t release GPT-3 as open-source because they didn’t think people would be able to run it. Now OpenAI is working on an open-source model. This is going to be weaker than GPT-4. Let the battle of LLMs begin. EU's Proposed Legislation and Its Impact on AI Usage The EU parliament voted to move ahead with the E.U. AI Act. This act aims to ensure consumer protection against the dangers of AI. Why is it important? OpenAI and Sam Altman want regulations for models. They have proposed a IAEA-type of agency to stop the proliferation of LLM models. As per OpenAI, all models should be regulated and monitored. The suggestion of a license based regulation has led to significant backlash. Many people have called it “regulatory capture” - with the aim of shutting down competing LLMs. Licensing based regulations might not really be effective. The EU is approaching regulation from a different angle. It doesn’t focus on how models are developed. Rather focuses on how AI will/can be used. They have broken down use cases into 4 categories - unacceptable (prohibited), high, medium and low risk. For example, Building a Pre-Crime software,on%20crimes%20not%20yet%20committed.) to predict crimes? Building a Social credit system? Unacceptable. Using tools to influence elections or recommendation algorithms? High (Highly regulated). Using generative AI tools to create text or images on news sites? Medium (Add label that the content is AI generated) AI providers also need to disclose their training source. To me this sounds like good legislation. What do you guys think? But, OpenAI has warned that EU regulations might force them to pull out completely. What’s next? The disclosure requirements might help various publishing companies. AI and media companies are in talks to pay for training data. Google has been leading the charge. Additionally, OpenAI and Deepmind will open their models for safety and research purposes to the UK government. 🗞️10 AI news highlights and interesting reads PSA: If you are using Repl to write code, you might want to check your OpenAI API keys. If you have left them embedded then people can pirate and steal the keys. LLMs rely on human annotation or human feedback to learn. And one way to generate human annotation is crowdsourcing. But what if the crowdsource human annotators use LLMs? Research shows 33-46% workers used LLMs. So, basically we go from Human -> AI -> Human -> AI. The AI ouroboros. Researchers also say generated data to train models might cause serious issue. All the talks about moats \- Reddit might be OpenAI’s \future\ moat. Given the amount of complaints about how Google search experience has deteriorated during the blackout, this might be true? Doctors are using ChatGPT but not to diagnose.Rather to be more empathetic. We discussed this just a month ago. And guess where the data for this study came from? Reddit AskDocs. Moat FTW?! Beatles to make a comeback…using Generative AI. SnapFusion - Text to Image diffusion on mobile phones. Large context lengths are important for better GPT experience. The secret sauce for 100k context length. There is a lot of bad AI research out there. Some border on snake oil. Most AI “research” should be double checked and challenged. A new research on huggingface said that GPT-4 can ace MIT curriculum. Now someone is replicating the results and say that GPT-4 can’t beat MIT. Are we seeing peak AI? Especially when people from Deepmind and Meta are involved? Mistral AI raised $113 million in seed round with no product. Some might say this funding is for the team and the team is really solid. The issue though is whether the valuation is justified when OpenAI and Google already have a head start. The AI Hype Wall of Shame. \- Collection of articles which mislead people about AI in various aspects. 🧑‍🎓3 Learning Resources Building and Launching a company using GPT-4 with prompts. (The author didn’t know how to code but created and launched the MVP in a month). Chatbot for your Gdrive - https://www.haihai.ai/gpt-gdrive/ Building ChatGPT plugin using Supabase - https://supabase.com/blog/building-chatgpt-plugins-template That’s it folks. Thank you for reading and have a great week ahead. If you are interested in a focused weekly recap delivered to your inbox on Mondays you can subscribe here. It is FREE!

Running and selling multiple side projects alongside a 9-5
reddit
LLM Vibe Score0
Human Vibe Score1
leanpreneur1This week

Running and selling multiple side projects alongside a 9-5

My current side project started 56 days ago when I started writing 1,000 words per day. My core businesses are an agency and job board, and I just needed a creative outlet. The likes of Chris Guillebeau and Nathan Barry attribute their progression to writing so I thought I’d see if it might do the same for me. At first I was just vomiting words onto the screen, I made a blog and wrote mainly technical guides related to my skills. Over time I realised I was writing more and more about running a business as a solopreneur, or lean operator. There is tons of content out there giving you the Birds Eye of going from 0 to £10m. Inspiring stuff, but I think there is a void in real content, explaining the nuts and bolts of the how.  What is the day-to-day like for the solopreneurs who make a good living and have plenty of free time? That’s what I’m striving for anyway. I’m not talking about the 7-figure outliers. Or the ones teaching you to make content so you can have a business teaching others how to make content, and so on. I’m also sick of the ‘I made $X in 5 minutes and how you can too’  So, I started chatting to people in my network who run lean businesses and/or side hustles. I ask them a bit about their journey and ask them to teach something - how they operate, or a skill/process/system/tool that other people like you/me will find useful. One of my first chats was with Sam Dickie, who runs multiple side projects so thought I’d share here, see if others find it useful and get some feedback. I’ve removed all links as I’ve never posted on Reddit before so conscious of not being promotional, I’m posting this stuff to a tiny email list of friends with no upsells. Just finding my feet on whether others find it useful or not: — Sam is a serial entrepreneur who builds projects in his spare time whilst working a 9-5. He’s scaled and sold multiple ventures and currently runs one of the best newsletters out there for builders and entrepreneurs. Building audience through newsletters has always been a cornerstone strategy for him, so, along with sharing his advice on solopreneurism, he’s also generously shared his lean newsletter writing process. About Sam Sam is a Senior Product Manager who has spent the last 15 years working in the tech sector after starting his career as a town planner. In addition to his job he spends some of his spare time building side projects. These have included a 3D printing startup, a tech directory, a newsletter, a beta product directory, and consultancy. Sam is the epitome of making a success out of following your interest and curiosity. It’s clear he enjoys his business ventures and builds in a risk-free way.   It’s often touted by business gurus to avoid building around your interests, but Sam bucks the trend successfully. I think he’s someone who has already found his 1,000 true fans.  Descending rabbit holes, Sam’s journey of invention and curation 3D printing Sam’s first foray into launching a startup was with Fiilo, a 3D printing business. This was at the height of the 3D printing craze and he self-admits that he used the launch as an excuse to buy a 3D printer. He ended up with two and launching a product called GrowGo. GrowGo is a sustainable 3D-printed product that turns any bottle into somewhere that you can grow plants and herbs. He eventually sold this business and the printers, making around £10k. Along the way, he was exposed to various business tasks, including building a website in Weebly, the biggest nocode website builder of the time, and built an API that enabled print on demand for his product. NoCode.Tech The experiences of building as someone non-technical led to numerous friends asking how he built all of this tech. Back then, nocode wasn’t popular, and it had almost zero search volume, so Sam created a basic directory. A quick landing page on Weebly with a basic value prop, a short explanation and a list of the tools he had used before. It hit the top spot on Product Hunt, and he landed 2,000 subscribers in the first 48 hours. But, he hadn’t built it at this point, so he set about getting to work. He built the directory and list to 30,000 subs and monetised the site through advertising. At its peak with Sam, it was receiving about £2,000 per month in ad revenue. He was still working his 9-5 at this point, so thought it might be a good time to exit. The site was still growing, but it was becoming anxiety inducing whilst he was still working full-time. So, he ended up selling the site and making friend’s with the buyer. Fast forwarding a bit, Nocode.tech was eventually acquired by Stackr, a nocode app. Sam was working for their competitor at the time and ended up being offered a job by his friend who acquired the site. All of this from a side project in his area of passion. Creator Club After selling the directory, Sam lost his outlet for sharing his tools and learnings.  Being fascinated with curation and loving sifting through for nuggets, he invested more time into his personal website and launched Creator Club newsletter. Sam writes monthly and currently has over 8,000 subs. It’s one of the few newsletters that I let bypass my email filters and land in my main inbox. Life as a Part-Time Multipreneur Side Hustler If it’s not obvious already Sam is a curiosity led business creator. He’s found that the products without a revenue focus or intention have ironically outperformed those created for the sole purpose of creating money. He enjoys working on his side hustles. He could have run the Nocode.Tech for 10 more years and wouldn’t have tired of it as it’s a byproduct of his interest. For this reason, he has also created the Beta Directory, simply because he loves unearthing early-stage products. He admits he gets the fear when he thinks about quitting his 9-5, although he suspects if he devoted the same energy to one of his projects it could replace his income (no doubts from me here). This same fear means that he can run his ventures with less fear. This way, he can experiment with freedom and isn’t risking the ranch with a young family to consider. For example, recently he stopped paid sponsors on his newsletter as it was more stress than the value of the income to him. Sam divides his time on evenings and weekends (unequally) between the following: Creator Club Validation Co Beta directory Consultancy The pure side hustle status magnifies the need to run lean, let’s jump into his process…. Sam’s lean newsletter curation and creation process Starting out publishing his personal newsletter Going against his expertise, Sam originally over-engineered his process.  He curated with Feedly and tried to automate the full writing process with Zapier. The trouble is that there are too many points of failure which can lead the whole  chain to break down, and you spend more time fixing the system. For a 200 subscriber newsletter, he needed to pare things back. His set-up now Sam scaled back and now simple builds automations when he needs them. He keeps the process simple, right down to the design and any welcome automations. Keeping things real We touched on the trend that keeping things raw is better. Content has come full circle with the advent of AI. Everything looks too perfect and consequently, people’s tastes are changing. Sam mentioned watermarks that show content isn’t AI written, and we referenced content such as Greg Isenberg’s sketches, and Chris Donnelly’s image posts. \\Step by Step Process:\\ Using Stoop Inbox to manage sources Curation with Pocket Managing content with Airtable and Zapier Using Bearly to summarise Substack for writing Monitoring content sources Sam uses Stoop Inbox, an RSS curation tool, to manage his content sources. It gives him a dedicated email address for newsletters and he follows an Inbox Zero methodology. He checks in daily in Stoop, and on X, Reddit and IndieHackers. With X, he just uses the standard interface but has been careful to curate his feed, sometimes adding in extra notifications to hear from interesting people. Highlighting content When curating links, Sam uses Arc browser and the Pocket extension to save links. It’s super simple and lightweight. He creates tags which trigger an automation that curates the link to Airtable. If you watch the video, here’s a shoutout to Alice, the AI interface I use which has recently featured on Product Hunt. It’s a fantastic tool with bags of potential to enhance a solopreneur’s life. Ranking and sorting content He sends the links indexed using Pocket to a basic Airtable base via Zapier. From there, he grades the content and sets aside some time to read it in more depth. Pocket pulls through the title, metadata, and URL link. Review Sam does this manually but has used a tool as a shortcut for digesting long form content — Bearly.ai. Bearly.ai was created by Trung Phan and linking back to raw content, Trung is 1/3 of the hosts on the Not Investment Advice podcast. Its irreverent style and thumbnail are an example of a successful podcast that doesn’t over polish. Writing it all up Being a huge Notion fan (check out the free templates on his site), Sam originally used Notion for writing and linked it into Revue. When Elon sunsetted Revue, he switched to Substack. He loves the Substack interface so drafts in Substack based on a duplication of last month’s edition. Before publishing, Sam runs through a 10-point Notion checklist, which he shared with me. Parting Advice Keep your tool stack as lean as possible. Avoid tool switching to the shiny new object. Getting launched quickly is key. Don’t think that you have to be everywhere for distribution, Sam sticks with what he knows on X and LinkedIn. Overall, he advises just keeping things simple and therefore minimising risk. Resources He says they’re cliche, but I don’t agree; they’re timeless. Paul Graham of Y Combinator is someone Sam recommends following. He doesn’t write much, which is great as Sam gets anxiety when someone good often writes and he can’t keep up with the writing. His content is well thought out and distills complex concepts in entrepreneurship and startups. In addition, Sam loves Naval Ravikant’s approach. He mentions checking out the Almanac of Naval Ravikant for collected wisdom. Follow Sam’s Journey Again, not going to link here but you can find Sam’s stuff easily enough if you want to. His personal website is beautiful and contains loads of free downloads. He has also curated personal websites he admires if you need some inspiration. Sam is a super nice guy so reach out to him, I did before I started my personal blog recently, and he gave me some great advice. Also, worth keeping an eye on Validation Co, where he aims to help early-stage makers and creators validate their ideas. He’s building super slow — trying to enjoy the process without unachievable deadlines. Maintaining his stamina and passion. Amazing, I hope he writes more about that soon! -- That’s my second shot at an interview, hope you enjoyed it and found something useful in it. I’m talking to a marketplace founder who spends 2–3 hours per month his project, a multiple job board owner with a 9-5 and a leading book designer next. As this is my side project, should I keep going?

Looking for a technical co-founder to build LinkedIn’s rival
reddit
LLM Vibe Score0
Human Vibe Score1
ItzdreeThis week

Looking for a technical co-founder to build LinkedIn’s rival

How do you connect with likeminded people? You see the polished wins everywhere, but what about the messy drafts , the awkward pitches and the moments you’re not sure you’ve got it right? Problem: The whole idea of founding and starting a business can be super intimidating for some people, specially those who don’t know any founders personally, those who don’t have a large network, those who don’t have rich parents with large networks, those not inserted in an entrepreneurial culture like in the US for example (which is my case). Sometimes all you need is the right support network, and too see others do what you want, to know that it’s possible! Everyone has an “ultimate guide” to make 7 figures or build a business on YouTube but NO ONE shoes you the HOW, just the results… I’ve tried joining founder communities, LinkedIn ,Reddit … you name it. Most of these founder communities are inaccessible for regular people and often ask for you to have an already existing business with a min ARR… or their simply geography based and if you’re not in a certain area you can’t really participate… As of LinkedIn… full of empty AI generated posts about how some random dude raised $10m in 7 days. Okay Jonathan, but what about the HOW?? How did you write your first pitch? How many rejection calls did you get? What is an MVP? There simply isn’t a platform out there to document your founding journey and find inspiration within a community of people who are doing the same as you. What better way to feel motivated then to see someone actually document their process? Solution: I’m working on building a social media platform for aspiring/founders to connect through the RAW, UNFILTERED process of turning ideas into reality in REAL time. It’s all gonna be around the “building in public “ concept and content creation. Picture an instagram/tiktok profile where instead of seeing someone’s dog you see them documenting their founding process—from the moment they had the idea, to the moment they launched, you’re going to see the successes, the fails, the rejected calls, all documented through actual content and not some AI generated LinkedIn post. Imagine if you wanted to learn about how Steve Jobs started Apple , you could simply go through his profile on this app—exactly. To make sure all interactions are meaningful people would have to apply. It’s a truly curated community, with REAL people, building REAL things in REAL time, and not just tell us the story of how they did it… Audience: I’m targeting people who have a burning desire of building a business and early stage founders starting their founder journeys, that don’t have a support network and simply don’t know where to start. People who are tired of watching 30 min “ultimate guides “ on how to make it on YouTube from “business gurus” selling courses. People who haven’t reached the min ARR required to join an “exclusive “ founder a community. People who can’t simply just move to the US to get into the “exclusive” YC combinator. People who want to connect with real people building real things and not anonymous people on Reddit, or LinkedIn influencers again trying to promote their services. I believe in the idea because I’m also part of my audience. Have always wanted to start my own thing just never knew how to and where to find a community of likeminded people . I don’t know any founders myself, I come from a non-entrepreneurial society and I’d pay good money to access a community of REAL passionate founders building REAL things, in REAL time. This would be my first ever business, and I want to share my journey building it and hopefully inspire others to just start so I’ve created a mailing list to keep anyone interested in the project updated on my fails , learnings and successes. I’m not worried about “making it” but just “starting” and hopefully reach the right audience and inspire anyone to start whatever they have marinating in their thoughts. If you’re a founder struggling with staying consistent or an aspiring founder with an insane desire of starting and don’t know how to start, I’d love to get your feedback on what’s stopping you, your challenges starting out and what you’d find useful in such platform. And finally would this be something that interests you?? Feel free to subscribe to get new updates 🫶🏼 : https://mailchi.mp/037c56b89994/d-founder PS: casually looking for a technical co-founder

Things I did to promote my product, and how they turned out
reddit
LLM Vibe Score0
Human Vibe Score1
laike9mThis week

Things I did to promote my product, and how they turned out

(I will share more updates in the future, you can find me on Twitter and/or Mastodon) Ask any ten indie developers about the toughest part of their job, and nine will likely say "marketing." I recently got a taste of this firsthand when I launched Xylect. Here's a rundown of my promotional attempts - hopefully, my experiences can help fellow developers out there. Podcast Community (✅ Success) I kicked things off by promoting Xylect in my podcast listener group. It wasn't a blockbuster, but I managed to sell a few copies and got some invaluable feedback from friends. Shoutout to those early supporters! Reddit r/macapps (✅ Success) Having had some luck promoting open-source projects on Reddit before, I decided to make r/macapps my first stop in the English-speaking world. I made an app to help you automate boring tasks with one click This post turned out to be a hit! I sold about ten copies and got a ton of useful feedback. Users pointed out compatibility issues with PopClip and suggested improvements for the website. One Italian user even requested localization, which I happily added. https://preview.redd.it/y4fuwh6hleqd1.png?width=959&format=png&auto=webp&s=7bb1b68cbf8a4f94998999e0832b9b7bd85bac67 https://preview.redd.it/8uu4cmyhleqd1.png?width=683&format=png&auto=webp&s=8f1744636aee8074b0e7491a334ef06076b143b0 I also got an intriguing email from a French user - more on that later. More Reddit Posts (❌ Failure) Riding high on my r/macapps success, I branched out to r/SideProject, r/Entrepreneur, and r/indiehackers. These subreddits frown upon direct self-promotion, so I took a softer approach with an article: The unexpected emotional cost of being an indiehacker While the article was heartfelt, it fell flat. Across all three posts, I got a grand total of three comments - two of which were complaints about the font size on mobile. Needless to say, I didn't sell a single copy. Hacker News (❌ Failure) As one of the tech world's major forums, I had to give Hacker News a shot. I wasn't too optimistic, given my past experiences there. Posting on HN feels like a mix of luck and dark magic. As expected, my post vanished without a trace - no comments, no sales. I might give it another go someday. If you're curious, you can check out my previous HN submissions. Tools Directory Websites (❌ Failure) These sites have a simple premise: you list your app, they display it. Seemed like an easy way to get some backlinks, right? Well, I learned the hard way that it's not that simple. I stumbled upon a Reddit post where someone claimed to have made a killing with their directory site in just a few days. The catch? Each listing cost $19. The site had a handful of apps listed, so I thought, "Why not? Early bird gets the worm." I paid up and listed Xylect. Spoiler alert: all I got was $19 poorer 🥲 Lesson learned: These directory sites won't magically sell your product. At best, they're just glorified backlinks. There might be some value in paid promotions on these platforms, but I can't speak to that from experience. V2EX (❌ Failure) After striking out in the English-speaking world, I turned my attention to the Chinese market, starting with V2EX (think of it as China's hybrid of HN and Reddit). This turned out to be my most unexpected flop. Here's the post: [\[Launch Discount\] Mac's most powerful AI search (Perplexity + Wikipedia + Google), boost your efficiency tenfold with one click. No API key required, no prompt needed, no token limit 🔥 - V2EX](https://www.v2ex.com/t/1064930?p=1#reply36) I'd seen decent engagement on other promo posts, so I had high hopes. I posted late at night (US time) and went to bed dreaming of waking up to a flood of comments. Reality check: The next morning, I had exactly one reply - from Kilerd, a loyal podcast listener showing some love. I was baffled. After re-reading my post, I realized I'd missed a crucial element: promo codes. A quick scan of popular posts confirmed my suspicion. Nearly every successful promo post was offering codes, and most comments were just base64-encoded email addresses. Talk about a facepalm moment. I scrambled to add a note about an upcoming free trial and invited users to drop their emails. This got the ball rolling with some code requests, but by then, the damage was done. The post fizzled out, and I didn't sell a single copy 🫠 A French Friend's Newsletter (✅ Success) At this point, my promotional efforts were looking pretty grim. My sales chart had a depressing stretch of flatline. But then, a glimmer of hope appeared in my inbox. Remember that French user I mentioned earlier? He ran a newsletter called vvmac and offered to feature Xylect if I added French support and sent him a free license. It was an offer I couldn't refuse. What followed was a crash course in French localization (thank you, Claude!) and the start of an incredible partnership. This guy was the most thorough beta tester I've ever encountered. We exchanged over sixty emails, covering everything from translations to UI tweaks to bug fixes. His response time was lightning-fast - I'd fix a bug, and five minutes later, he'd confirm it was sorted. The result? A much-improved Xylect and a glowing feature in his newsletter. https://preview.redd.it/ylcq2wxoleqd1.png?width=991&format=png&auto=webp&s=ee395110f50417d5c7f61318f27bf3dc30247809 I'm still in awe of his dedication. He single-handedly transformed Xylect from a buggy mess into a polished product. I'll be forever grateful for his help. The newsletter feature led to a few more sales, but honestly, that felt like a bonus at that point. Influencers (❌ Failure) I knew from the start that to really make waves, I'd need influencer backing. So, I added a note offering free licenses to content creators willing to collaborate. https://preview.redd.it/tyb2m1rqleqd1.png?width=799&format=png&auto=webp&s=56eabf126e772515322595613c546e6ba69fb431 I did get one taker: Hey, I'll be honest, I am not a huge content creator but I think I put a lot of effort in evaluating and figuring out which apps work... So I was wondering if I could get a license in case you are willing to share it. Thank you for considering. Have a great weekend. But I knew I needed to aim higher. With the new French localization, I thought I'd try my luck with some French-speaking Mac YouTubers. I crafted emails highlighting how Xylect could help their French audience with English content. https://preview.redd.it/07oqzemrleqd1.png?width=542&format=png&auto=webp&s=3d160c1d149f28e9029816a277c6ab2496fcd57e After days of silence, I got one reply. It was... not what I was hoping for: Hi, Thank you for your proposal. I can help you to promote your service on Tiktok, Instagram et YouTube, with unique short video. Price for this project is 3500€. Unless I've completely lost my marbles, there's no way I'm dropping 3500€ on promotion. Sure, given their follower count (YouTube: 348K, TikTok: 2.7M, Instagram: 400K), it's not an outrageous ask. For some products, it might even be worth it. But for Xylect? No way. I also reached out to a Chinese influencer on Xiaohongshu, but they weren't interested. Back to the drawing board. Conclusion If you've made it this far, you've probably realized this isn't exactly a success story. My search for effective promotional channels came up largely empty-handed. I'd naively thought that my success with open-source projects would translate seamlessly to the indie dev world. Boy, was I wrong. As I mentioned in my previous article, open-source projects create a dynamic where users feel indebted to developers for their free labor. But in the commercial world of indie development, that dynamic completely flips. While this experience was often frustrating, it was also enlightening - which was kind of the point. As my first foray into indie development, my main goal was to learn the ropes and understand the process. Making money would've been nice, sure, but it wasn't my primary focus. Thanks for sticking with me through this post. I will share more updates in the future, you can follow me on  Twitter and/or Mastodon.

[D] Why I'm Lukewarm on Graph Neural Networks
reddit
LLM Vibe Score0
Human Vibe Score0.6
VodkaHazeThis week

[D] Why I'm Lukewarm on Graph Neural Networks

TL;DR: GNNs can provide wins over simpler embedding methods, but we're at a point where other research directions matter more I also posted it on my blog here, has footnotes, a nicer layout with inlined images, etc. I'm only lukewarm on Graph Neural Networks (GNNs). There, I said it. It might sound crazy GNNs are one of the hottest fields in machine learning right now. [There][1] were at least [four][2] [review][3] [papers][4] just in the last few months. I think some progress can come of this research, but we're also focusing on some incorrect places. But first, let's take a step back and go over the basics. Models are about compression We say graphs are a "non-euclidean" data type, but that's not really true. A regular graph is just another way to think about a particular flavor of square matrix called the [adjacency matrix][5], like this. It's weird, we look at run-of-the-mill matrix full of real numbers and decide to call it "non-euclidean". This is for practical reasons. Most graphs are fairly sparse, so the matrix is full of zeros. At this point, where the non-zero numbers are matters most, which makes the problem closer to (computationally hard) discrete math rather than (easy) continuous, gradient-friendly math. If you had the full matrix, life would be easy If we step out of the pesky realm of physics for a minute, and assume carrying the full adjacency matrix around isn't a problem, we solve a bunch of problems. First, network node embeddings aren't a thing anymore. A node is a just row in the matrix, so it's already a vector of numbers. Second, all network prediction problems are solved. A powerful enough and well-tuned model will simply extract all information between the network and whichever target variable we're attaching to nodes. NLP is also just fancy matrix compression Let's take a tangent away from graphs to NLP. Most NLP we do can be [thought of in terms of graphs][6] as we'll see, so it's not a big digression. First, note that Ye Olde word embedding models like [Word2Vec][7] and [GloVe][8] are [just matrix factorization][9]. The GloVe algorithm works on a variation of the old [bag of words][10] matrix. It goes through the sentences and creates a (implicit) [co-occurence][11] graph where nodes are words and the edges are weighed by how often the words appear together in a sentence. Glove then does matrix factorization on the matrix representation of that co-occurence graph, Word2Vec is mathematically equivalent. You can read more on this in my [post on embeddings][12] and the one (with code) on [word embeddings][13]. Even language models are also just matrix compression Language models are all the rage. They dominate most of the [state of the art][14] in NLP. Let's take BERT as our main example. BERT predicts a word given the context of the rest of the sentence. This grows the matrix we're factoring from flat co-occurences on pairs of words to co-occurences conditional on the sentence's context, like this We're growing the "ideal matrix" we're factoring combinatorially. As noted by [Hanh & Futrell][15]: [...] human language—and language modelling—has infinite statistical complexity but that it can be approximated well at lower levels. This observation has two implications: 1) We can obtain good results with comparatively small models; and 2) there is a lot of potential for scaling up our models. Language models tackle such a large problem space that they probably approximate a compression of the entire language in the [Kolmogorov Complexity][16] sense. It's also possible that huge language models just [memorize a lot of it][17] rather than compress the information, for what it's worth. Can we upsample any graph like language models do? We're already doing it. Let's call a first-order embedding of a graph a method that works by directly factoring the graph's adjacency matrix or [Laplacian matrix][18]. If you embed a graph using [Laplacian Eigenmaps][19] or by taking the [principal components][20] of the Laplacian, that's first order. Similarly, GloVe is a first-order method on the graph of word co-occurences. One of my favorites first order methods for graphs is [ProNE][21], which works as well as most methods while being two orders of magnitude faster. A higher-order method embeds the original matrix plus connections of neighbours-of-neighbours (2nd degree) and deeper k-step connections. [GraRep][22], shows you can always generate higher-order representations from first order methods by augmenting the graph matrix. Higher order method are the "upsampling" we do on graphs. GNNs that sample on large neighborhoods and random-walk based methods like node2vec are doing higher-order embeddings. Where are the performance gain? Most GNN papers in the last 5 years present empirical numbers that are useless for practitioners to decide on what to use. As noted in the [OpenGraphsBenchmark][4] (OGB) paper, GNN papers do their empirical section on a handful of tiny graphs (Cora, CiteSeer, PubMed) with 2000-20,000 nodes. These datasets can't seriously differentiate between methods. Recent efforts are directly fixing this, but the reasons why researchers focused on tiny, useless datasets for so long are worth discussing. Performance matters by task One fact that surprises a lot of people is that even though language models have the best performance in a lot of NLP tasks, if all you're doing is cram sentence embeddings into a downstream model, there [isn't much gained][23] from language models embeddings over simple methods like summing the individual Word2Vec word embeddings (This makes sense, because the full context of the sentence is captured in the sentence co-occurence matrix that is generating the Word2Vec embeddings). Similarly, [I find][24] that for many graphs simple first-order methods perform just as well on graph clustering and node label prediction tasks than higher-order embedding methods. In fact higher-order methods are massively computationally wasteful for these usecases. Recommended first order embedding methods are ProNE and my [GGVec with order=1][25]. Higher order methods normally perform better on the link prediction tasks. I'm not the only one to find this. In the BioNEV paper, they find: "A large GraRep order value for link prediction tasks (e.g. 3, 4);a small value for node classification tasks (e.g.1, 2)" (p.9). Interestingly, the gap in link prediction performance is inexistant for artificially created graphs. This suggests higher order methods do learn some of the structure intrinsic to [real world graphs][26]. For visualization, first order methods are better. Visualizations of higher order methods tend to have artifacts of their sampling. For instance, Node2Vec visualizations tend to have elongated/filament-like structures which come from the embeddings coming from long single strand random walks. See the following visualizations by [Owen Cornec][27] created by first embedding the graph to 32-300 dimensions using a node embedding algorithm, then mapping this to 2d or 3d with the excellent UMAP algorithm, like this Lastly, sometimes simple methods soundly beat higher order methods (there's an instance of it in the OGB paper). The problem here is that we don't know when any method is better than another and we definitely don't know the reason. There's definitely a reason different graph types respond better/worse to being represented by various methods. This is currently an open question. A big part of why is that the research space is inundated under useless new algorithms because... Academic incentives work against progress Here's the cynic's view of how machine learning papers are made: Take an existing algorithm Add some new layer/hyperparameter, make a cute mathematical story for why it matters Gridsearch your hyperparameters until you beat baselines from the original paper you aped Absolutely don't gridsearch stuff you're comparing against in your results section Make a cute ACRONYM for your new method, put impossible to use python 2 code on github (Or no code at all!) and bask in the citations I'm [not][28] the [only one][29] with these views on the state reproducible research. At least it's gotten slightly better in the last 2 years. Sidebar: I hate Node2Vec A side project of mine is a [node embedding library][25] and the most popular method in it is by far Node2Vec. Don't use Node2Vec. [Node2Vec][30] with p=1; q=1 is the [Deepwalk][31] algorithm. Deepwalk is an actual innovation. The Node2Vec authors closely followed the steps 1-5 including bonus points on step 5 by getting word2vec name recognition. This is not academic fraud -- the hyperparameters [do help a tiny bit][32] if you gridsearch really hard. But it's the presentable-to-your-parents sister of where you make the ML community worse off to progress your academic career. And certainly Node2Vec doesn't deserve 7500 citations. Progress is all about practical issues We've known how to train neural networks for well over 40 years. Yet they only exploded in popularity with [AlexNet][33] in 2012. This is because implementations and hardware came to a point where deep learning was practical. Similarly, we've known about factoring word co-occurence matrices into Word embeddings for at least 20 years. But word embeddings only exploded in 2013 with Word2Vec. The breakthrough here was that the minibatch-based methods let you train a Wikipedia-scale embedding model on commodity hardware. It's hard for methods in a field to make progress if training on a small amount of data takes days or weeks. You're disincentivized to explore new methods. If you want progress, your stuff has to run in reasonable time on commodity hardware. Even Google's original search algorithm [initially ran on commodity hardware][34]. Efficiency is paramount to progress The reason deep learning research took off the way it did is because of improvements in [efficiency][35] as well as much better libraries and hardware support. Academic code is terrible Any amount of time you spend gridsearching Node2Vec on p and q is all put to better use gridsearching Deepwalk itself (on number of walks, length of walks, or word2vec hyperparameters). The problem is that people don't gridsearch over deepwalk because implementations are all terrible. I wrote the [Nodevectors library][36] to have a fast deepwalk implementation because it took 32 hours to embed a graph with a measly 150,000 nodes using the reference Node2Vec implementation (the same takes 3min with Nodevectors). It's no wonder people don't gridsearch on Deepwalk a gridsearch would take weeks with the terrible reference implementations. To give an example, in the original paper of [GraphSAGE][37] they their algorithm to DeepWalk with walk lengths of 5, which is horrid if you've ever hyperparameter tuned a deepwalk algorithm. From their paper: We did observe DeepWalk’s performance could improve with further training, and in some cases it could become competitive with the unsupervised GraphSAGE approaches (but not the supervised approaches) if we let it run for >1000× longer than the other approaches (in terms of wall clock time for prediction on the test set) I don't even think the GraphSAGE authors had bad intent -- deepwalk implementations are simply so awful that they're turned away from using it properly. It's like trying to do deep learning with 2002 deep learning libraries and hardware. Your architectures don't really matter One of the more important papers this year was [OpenAI's "Scaling laws"][38] paper, where the raw number of parameters in your model is the most predictive feature of overall performance. This was noted even in the original BERT paper and drives 2020's increase in absolutely massive language models. This is really just [Sutton' Bitter Lesson][39] in action: General methods that leverage computation are ultimately the most effective, and by a large margin Transformers might be [replacing convolution][40], too. As [Yannic Kilcher said][41], transformers are ruining everything. [They work on graphs][6], in fact it's one of the [recent approaches][42], and seems to be one of the more succesful [when benchmarked][1] Researchers seem to be putting so much effort into architecture, but it doesn't matter much in the end because you can approximate anything by stacking more layers. Efficiency wins are great -- but neural net architectures are just one way to achieve that, and by tremendously over-researching this area we're leaving a lot of huge gains elsewhere on the table. Current Graph Data Structure Implementations suck NetworkX is a bad library. I mean, it's good if you're working on tiny graphs for babies, but for anything serious it chokes and forces you to rewrite everything in... what library, really? At this point most people working on large graphs end up hand-rolling some data structure. This is tough because your computer's memory is a 1-dimensional array of 1's and 0's and a graph has no obvious 1-d mapping. This is even harder when we take updating the graph (adding/removing some nodes/edges) into account. Here's a few options: Disconnected networks of pointers NetworkX is the best example. Here, every node is an object with a list of pointers to other nodes (the node's edges). This layout is like a linked list. Linked lists are the [root of all performance evil][43]. Linked lists go completely against how modern computers are designed. Fetching things from memory is slow, and operating on memory is fast (by two orders of magnitude). Whenever you do anything in this layout, you make a roundtrip to RAM. It's slow by design, you can write this in Ruby or C or assembly and it'll be slow regardless, because memory fetches are slow in hardware. The main advantage of this layout is that adding a new node is O(1). So if you're maintaining a massive graph where adding and removing nodes happens as often as reading from the graph, it makes sense. Another advantage of this layout is that it "scales". Because everything is decoupled from each other you can put this data structure on a cluster. However, you're really creating a complex solution for a problem you created for yourself. Sparse Adjacency Matrix This layout great for read-only graphs. I use it as the backend in my [nodevectors][25] library, and many other library writers use the [Scipy CSR Matrix][44], you can see graph algorithms implemented on it [here][45]. The most popular layout for this use is the [CSR Format][46] where you have 3 arrays holding the graph. One for edge destinations, one for edge weights and an "index pointer" which says which edges come from which node. Because the CSR layout is simply 3 arrays, it scales on a single computer: a CSR matrix can be laid out on a disk instead of in-memory. You simply [memory map][47] the 3 arrays and use them on-disk from there. With modern NVMe drives random seeks aren't slow anymore, much faster than distributed network calls like you do when scaling the linked list-based graph. I haven't seen anyone actually implement this yet, but it's in the roadmap for my implementation at least. The problem with this representation is that adding a node or edge means rebuilding the whole data structure. Edgelist representations This representation is three arrays: one for the edge sources, one for the edge destinations, and one for edge weights. [DGL][48] uses this representation internally. This is a simple and compact layout which can be good for analysis. The problem compared to CSR Graphs is some seek operations are slower. Say you want all the edges for node #4243. You can't jump there without maintaining an index pointer array. So either you maintain sorted order and binary search your way there (O(log2n)) or unsorted order and linear search (O(n)). This data structure can also work on memory mapped disk array, and node append is fast on unsorted versions (it's slow in the sorted version). Global methods are a dead end Methods that work on the entire graph at once can't leverage computation, because they run out of RAM at a certain scale. So any method that want a chance of being the new standard need to be able to update piecemeal on parts of the graph. Sampling-based methods Sampling Efficiency will matter more in the future Edgewise local methods. The only algorithms I know of that do this are GloVe and GGVec, which they pass through an edge list and update embedding weights on each step. The problem with this approach is that it's hard to use them for higher-order methods. The advantage is that they easily scale even on one computer. Also, incrementally adding a new node is as simple as taking the existing embeddings, adding a new one, and doing another epoch over the data Random Walk sampling. This is used by deepwalk and its descendants, usually for node embeddings rather than GNN methods. This can be computationally expensive and make it hard to add new nodes. But this does scale, for instance [Instagram][49] use it to feed their recommendation system models Neighbourhood sampling. This is currently the most common one in GNNs, and can be low or higher order depending on the neighborhood size. It also scales well, though implementing efficiently can be challenging. It's currently used by [Pinterest][50]'s recommendation algorithms. Conclusion Here are a few interesting questions: What is the relation between graph types and methods? Consolidated benchmarking like OGB We're throwing random models at random benchmarks without understanding why or when they do better More fundamental research. Heree's one I'm curious about: can other representation types like [Poincarre Embeddings][51] effectively encode directed relationships? On the other hand, we should stop focusing on adding spicy new layers to test on the same tiny datasets. No one cares. [1]: https://arxiv.org/pdf/2003.00982.pdf [2]: https://arxiv.org/pdf/2002.11867.pdf [3]: https://arxiv.org/pdf/1812.08434.pdf [4]: https://arxiv.org/pdf/2005.00687.pdf [5]: https://en.wikipedia.org/wiki/Adjacency_matrix [6]: https://thegradient.pub/transformers-are-graph-neural-networks/ [7]: https://en.wikipedia.org/wiki/Word2vec [8]: https://nlp.stanford.edu/pubs/glove.pdf [9]: https://papers.nips.cc/paper/2014/file/feab05aa91085b7a8012516bc3533958-Paper.pdf [10]: https://en.wikipedia.org/wiki/Bag-of-words_model [11]: https://en.wikipedia.org/wiki/Co-occurrence [12]: https://www.singlelunch.com/2020/02/16/embeddings-from-the-ground-up/ [13]: https://www.singlelunch.com/2019/01/27/word-embeddings-from-the-ground-up/ [14]: https://nlpprogress.com/ [15]: http://socsci.uci.edu/~rfutrell/papers/hahn2019estimating.pdf [16]: https://en.wikipedia.org/wiki/Kolmogorov_complexity [17]: https://bair.berkeley.edu/blog/2020/12/20/lmmem/ [18]: https://en.wikipedia.org/wiki/Laplacian_matrix [19]: http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=1F03130B02DC485C78BF364266B6F0CA?doi=10.1.1.19.8100&rep=rep1&type=pdf [20]: https://en.wikipedia.org/wiki/Principalcomponentanalysis [21]: https://www.ijcai.org/Proceedings/2019/0594.pdf [22]: https://dl.acm.org/doi/10.1145/2806416.2806512 [23]: https://openreview.net/pdf?id=SyK00v5xx [24]: https://github.com/VHRanger/nodevectors/blob/master/examples/link%20prediction.ipynb [25]: https://github.com/VHRanger/nodevectors [26]: https://arxiv.org/pdf/1310.2636.pdf [27]: http://byowen.com/ [28]: https://arxiv.org/pdf/1807.03341.pdf [29]: https://www.youtube.com/watch?v=Kee4ch3miVA [30]: https://cs.stanford.edu/~jure/pubs/node2vec-kdd16.pdf [31]: https://arxiv.org/pdf/1403.6652.pdf [32]: https://arxiv.org/pdf/1911.11726.pdf [33]: https://en.wikipedia.org/wiki/AlexNet [34]: https://en.wikipedia.org/wiki/Googledatacenters#Original_hardware [35]: https://openai.com/blog/ai-and-efficiency/ [36]: https://www.singlelunch.com/2019/08/01/700x-faster-node2vec-models-fastest-random-walks-on-a-graph/ [37]: https://arxiv.org/pdf/1706.02216.pdf [38]: https://arxiv.org/pdf/2001.08361.pdf [39]: http://incompleteideas.net/IncIdeas/BitterLesson.html [40]: https://arxiv.org/abs/2010.11929 [41]: https://www.youtube.com/watch?v=TrdevFK_am4 [42]: https://arxiv.org/pdf/1710.10903.pdf [43]: https://www.youtube.com/watch?v=fHNmRkzxHWs [44]: https://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.csr_matrix.html [45]: https://docs.scipy.org/doc/scipy/reference/sparse.csgraph.html [46]: https://en.wikipedia.org/wiki/Sparsematrix#Compressedsparserow(CSR,CRSorYaleformat) [47]: https://en.wikipedia.org/wiki/Mmap [48]: https://github.com/dmlc/dgl [49]: https://ai.facebook.com/blog/powered-by-ai-instagrams-explore-recommender-system/ [50]: https://medium.com/pinterest-engineering/pinsage-a-new-graph-convolutional-neural-network-for-web-scale-recommender-systems-88795a107f48 [51]: https://arxiv.org/pdf/1705.08039.pdf

🌟 Introducing DarwinAI: An Open-Source Platform for the Evolution of Intelligent Agents 🚀 [Project]
reddit
LLM Vibe Score0
Human Vibe Score1
Interesting-Fox-6758This week

🌟 Introducing DarwinAI: An Open-Source Platform for the Evolution of Intelligent Agents 🚀 [Project]

🌱 The Vision: Evolutionary AI at Your Fingertips Imagine a world where AI agents aren't just programmed to perform tasks but evolve over time, adapting and improving through generations, much like living organisms. Welcome to DarwinAI, an open-source platform inspired by biological evolution, designed to breed, train, and evolve AI agents that can tackle complex, dynamic, and unpredictable challenges. 🧬 The Genetic Blueprint: Building Blocks of Intelligence At the core of DarwinAI is the concept of a digital DNA for each AI agent. This DNA is a modular structure that defines the agent's capabilities, behaviors, and adaptability. Here's what makes up this digital DNA: Genes of Ability: These are snippets of code that represent specific functions, like data classification, text analysis, or optimization. Think of them as the skills your AI agent possesses. Genes of Adaptation: These genes control how the agent responds to different environments or contexts. They determine its flexibility and resilience in the face of changing conditions. Genes of Connection: These define how the agent interacts with other agents or external resources. They are the social and collaborative aspects of the agent. This digital DNA is stored in a structured, version-controlled database, allowing us to track the evolution of each agent and ensure that beneficial mutations are preserved over time. 🛠️ The Evolutionary Process: From Genesis to Mastery The evolution of AI agents in DarwinAI happens through a series of generations, each building upon the strengths of the previous one: Selection of Parents: The fittest agents, those that excel at specific tasks, are chosen as parents. These agents have proven their worth in the simulated environment and are prime candidates for breeding the next generation. Genetic Crossover: The digital DNA of these parent agents is combined to create new agents. This can happen in two ways: Direct Crossover: Where entire genes are copied from the parents. Combinatorial Crossover: Where parts of different genes are fused to create entirely new abilities. Mutations: Random, small changes are introduced into the genes to promote diversity and explore new solutions. These mutations are the wildcards that can lead to breakthrough abilities. 🌍 The Simulated Environment: A Playground for Evolution Agents don't just exist in a vacuum; they operate in a dynamic, simulated environment where they must adapt and survive. This environment is designed to challenge the agents with: Evolutionary Tasks: Problems that agents must solve, such as data classification, prediction, or content generation. Changing Contexts: Factors like noisy data, resource constraints, or new rules that force agents to adapt on the fly. 🐣 The Life Cycle of an Agent: From Birth to Legacy Each agent goes through a life cycle that mirrors the process of natural selection: Initial Learning: Agents receive initial training based on their digital DNA. Task Execution: They perform tasks in the simulated environment, where their abilities are put to the test. Performance Evaluation: Their effectiveness, adaptability, and efficiency are measured. Reproduction: The top-performing agents produce offspring with improved genetic traits. Discard and Archive: Less effective agents are archived for future analysis, ensuring that their lessons are not lost. 🧩 Knowledge Transfer: Passing the Torch One of the key aspects of DarwinAI is the ability for agents to pass on their learned knowledge to future generations: Weight Persistence: Trained models retain their learned weights, allowing them to inherit capabilities from their ancestors. Modular Transfer: Optimized ability genes can be directly copied to new generations, ensuring that valuable skills are preserved. 🛠️ Modularity and Extensibility: Build, Mix, and Evolve DarwinAI is designed to be highly modular and extensible, allowing for: New Capabilities: Easily incorporate new genes to expand the agents' abilities over time. Hybridization: Combine agents from different specializations to create more complex and versatile agents. Directed Evolution: Introduce controlled mutations to address specific problems or challenges. 🚀 Innovative Use Cases: The Future is Bright The potential applications of DarwinAI are vast and varied: Adaptive Automation: Create agents that can adapt to new market conditions or evolving industrial requirements. Collaborative Robots: Develop robots that evolve to improve teamwork in dynamic environments. Scientific Discovery: Agents that combine skills to uncover patterns or solutions that were previously unknown. 🚀 Vision for the Future: An Ecosystem of Evolving Intelligence By fostering an ecosystem where knowledge is accumulated and adaptability is paramount, DarwinAI aims to produce agents that are not only intelligent but also diverse and efficient. These agents will be equipped to handle complex, unpredictable challenges, opening up new frontiers in AI research and application. 🌐 Join Us in Shaping the Future of AI! DarwinAI is more than just a project; it's a community-driven movement towards a new era of AI. We invite you to join us, contribute your ideas, and help shape the future of evolutionary AI. Whether you're a developer, researcher, or simply someone excited about the potential of AI, there's a place for you in this journey. Let's evolve together! 🌱💻

Raised $450k for my startup, here are the lessons I've learned along the way
reddit
LLM Vibe Score0
Human Vibe Score1
marin_smiljanicThis week

Raised $450k for my startup, here are the lessons I've learned along the way

2021 has been a pretty amazing year for Omnisearch. Having started initial work on Omnisearch at the end of 2020, we entered the new year with a working MVP yet no revenue, no significant partnerships, and no funding. Fast forward to the end of 2021, and we now have fantastic revenue growth, a partnership with a public company, and a far more powerful, complete and polished product. But one milestone really changed Omnisearch’s trajectory: our $450,000 USD pre-seed round by GoAhead Ventures. In this post I want to share the story of how it came about and offer a couple of takeaways to keep in mind when preparing for fundraising. ​ The story Contrary to most advice, my co-founder Matej and I didn’t allocate a specific time to switch to “fundraising mode” but rather talked to investors on an ongoing basis. It was a bit of a distraction from working on the product, but on the positive side we were able to constantly get feedback on the idea, pitch, go-to-market strategy and hiring, as well as hearing investors’ major concerns sooner rather than later. That being said, our six-month long fundraising efforts weren’t yielding results - we talked to about twenty investors, mostly angels or smaller funds, with no success. The feedback was generally of the “too early for us” variety (since we were still pre-revenue), with additional questions about our go-to-market strategy and ideal customer persona. The introduction to our eventual investors, California-based GoAhead Ventures, came through a friend who had pitched them previously. We wrote a simple blurb and sent our pitch deck. We then went through GoAhead’s hyper-efficient screening process, consisting of a 30-minute call, a recorded three-minute pitch, and filling out a simple Google doc. Throughout the whole process, the GoAhead team left an awesome impression thanks to their knowledge of enterprise software and their responsiveness. They ended up investing and the whole deal was closed within two weeks, which is super fast even by Silicon Valley standards. While our fundraising experience is a single data point and your case might be different, here are the key takeaways from our journey. ​ Perseverance wins: Like I said above, we talked to about twenty investors before we closed our round. Getting a series of “no”s sucks, but we took the feedback seriously and tried to prepare better for questions that caught us off guard. But we persevered, keeping in mind that from a bird’s eye perspective it’s an amazing time to be building startups and raising funds. Focus on traction: Sounds pretty obvious, right? The truth is, though, that even a small amount of revenue is infinitely better than none at all. One of the major differences between our eventual successful investor pitch and the earlier ones was that we had actual paying customers, though our MRR was low. This allows you to talk about customers in the present tense, showing there’s actual demand for your product and making the use cases more tangible. And ideally, highlight a couple of customer testimonials to boost your credibility. Have a demo ready: In Omnisearch’s case, the demo was oftentimes the best received part of the pitch or call. We’d show investors the live demo, and for bonus points even asked them to choose a video from YouTube and then try searching through it. This always had a “wow” effect on prospective investors and made the subsequent conversation more exciting and positive. Accelerators: Accelerators like Y Combinator or Techstars can add enormous value to a startup, especially in the early stages. And while it’s a great idea to apply, don’t rely on them too heavily. Applications happen only a few times a year, and you should have a foolproof fundraising plan in case you don’t get in. In our case, we just constantly looked for investors who were interested in our space (defined as enterprise SaaS more broadly), using LinkedIn, AngelList, and intros from our own network. Practice the pitch ad nauseam: Pitching is tough to get right even for seasoned pros, so it pays to practice as often as possible. We took every opportunity to perfect the pitch: attending meetups and giving the thirty-second elevator pitch to other attendees over beer and pizza, participating in startup competitions, going to conferences and exhibiting at our own booth, attending pre-accelerator programs, and pitching to friends who are in the startup world. Show an understanding of the competition: Frankly, this was one of the strongest parts of our pitch and investor conversations. If you’re in a similar space to ours, Gartner Magic Quadrants and Forrester Waves are an awesome resource, as well as sites like AlternativeTo or Capterra and G2. By thoroughly studying these resources we gained a great understanding of the industry landscape and were able to articulate our differentiation more clearly and succinctly. Presenting this visually in a coordinate system or a feature grid is, from our experience, even more effective. Remember it’s just the beginning! Getting your first round of funding is just the beginning of the journey, so it’s important to avoid euphoria and get back to building and selling the product as soon as possible. While securing funding enables you to scale the team, and is a particular relief if the founders had worked without a salary, the end goal is still to build a big, profitable, and overall awesome startup.

Unmasking Fake Testimonials on a YC backed company
reddit
LLM Vibe Score0
Human Vibe Score0.75
Far-Amphibian3043This week

Unmasking Fake Testimonials on a YC backed company

As developers, marketeers and builders, we often rely on trusted platforms to guide us in finding tools that meet our unique needs. Recently, I stumbled upon Overlap, a site marketed as a haven for collaboration tools. Its sleek interface and glowing testimonials initially convinced me I had found a gem. But as I dug deeper, I uncovered a jaw-dropping reality: their testimonials featured stock images, all of which were easily identified through a quick reverse image search. Even more shocking was the realization that Overlap is a Y Combinator-backed company—an organization renowned for nurturing some of the most innovative startups in the world. With significant funding at their disposal, the decision to cut corners with fake testimonials felt like a slap in the face to their user base. They could easily afford a robust testimonial platform, yet chose a path that undermined their credibility. As developers, marketeers and builders, we often rely on trusted platforms to guide us in finding tools that meet our unique needs. Recently, I stumbled upon Overlap, a site marketed as a haven for video AI tools. Its sleek interface and glowing testimonials initially convinced me I had found a gem. But as I dug deeper, I uncovered a jaw-dropping reality: their testimonials featured stock images, all of which were easily identified through a quick reverse image search. Even more shocking was the realization that Overlap is a Y Combinator-backed company—an organization renowned for nurturing some of the most innovative startups in the world. With significant funding at their disposal, the decision to cut corners with fake testimonials felt like a slap in the face to their user base. They could easily afford a robust testimonial platform, yet chose a path that undermined their credibility. A screenshot of Overlap's landing page https://preview.redd.it/zosmdl0v01ce1.png?width=1000&format=png&auto=webp&s=83ced4af92ca284486281f00b020f1f0114b4fcd This discovery was nothing short of a wake-up call. For a developer-focused website—an audience that prizes authenticity and technical precision above all else—faking testimonials with stock photos isn’t just misleading, it’s a catastrophic betrayal of trust. It left me questioning the integrity of their entire operation and serves as a stark reminder for businesses everywhere: your audience notices when you’re not authentic, and they won’t forgive it easily. Position of Fake Testimonials One of the stock images https://preview.redd.it/a7ugasrw01ce1.png?width=341&format=png&auto=webp&s=5261df741f1198a92e537f1e61640e7d6ec60a7f Lessons for Startup Founders and Developers This experience offers several critical lessons for startup founders and developers alike: Authenticity is Non-Negotiable: In a competitive market, trust and transparency can make or break your brand. Fake testimonials might provide a short-term boost, but the long-term damage to credibility far outweighs any temporary gains. Invest in Genuine Solutions: If you have the resources, like a Y Combinator-backed company, prioritize tools and practices that enhance authenticity. Platforms like RapidFeedback allow businesses to dynamically update reviews and manage feedback efficiently. Leverage Real User Feedback: Authentic testimonials not only build trust but also provide actionable insights into your product’s strengths and weaknesses. This feedback loop can be invaluable for refining and growing your business. Understand Your Audience: Developers value precision, integrity, and honesty. Catering to this audience requires a commitment to these principles in every aspect of your business. Let’s ensure that the tools we build and the businesses we run prioritize authenticity. In the long run, a commitment to transparency and user trust will always yield greater rewards than any shortcut could provide. Why Fake Testimonials Are a Problem Fake testimonials damage your brand in more ways than one: Loss of Credibility: Developers are a discerning audience. Trust is everything, and losing it can be catastrophic for your reputation. Hurt User Experience: Knowing a platform misrepresents itself makes users skeptical about its features and promises. Missed Opportunities: Genuine feedback can provide valuable insights for growth and improvement, which fake testimonials completely overlook. A Smarter Way: Authentic Testimonials with RapidFeedback This experience reminded me of why tools like RapidFeedback are invaluable. RapidFeedback helps businesses maintain authenticity by dynamically updating reviews and images in real time. Here’s why it stands out: Real-Time Updates: Reviews are fetched and displayed dynamically, ensuring they’re always up-to-date. Dashboard Management: Businesses can monitor and manage good vs. bad reviews from a centralized dashboard, enabling them to address concerns promptly. Authenticity Guaranteed: Dynamic updates ensure that testimonials reflect real users and their experiences, which builds trust and credibility. Lessons for Developers and Businesses If there’s one takeaway from my Overlap experience, it’s this: authenticity isn’t optional. Whether you’re building tools for developers or selling consumer products, your audience values transparency. Using tools like RapidFeedback ensures your business maintains trust while gaining actionable insights to grow. Let’s commit to prioritizing honesty in our work. Because in the end, authentic relationships with users are what truly drive success.

Seeking co-founder to build LinkedIn’s biggest rival(curated version)
reddit
LLM Vibe Score0
Human Vibe Score1
ItzdreeThis week

Seeking co-founder to build LinkedIn’s biggest rival(curated version)

How do you connect with likeminded people? You see the polished wins everywhere, but what about the messy drafts , the awkward pitches and the moments you’re not sure you’ve got it right? Problem: The whole idea of founding and starting a business can be super intimidating for some people, specially those who don’t know any founders personally, those who don’t have a large network, those who don’t have rich parents with large networks, those not inserted in an entrepreneurial culture like in the US for example (which is my case). Sometimes all you need is the right support network, and too see others do what you want, to know that it’s possible! Everyone has an “ultimate guide” to make 7 figures or build a business on YouTube but NO ONE shoes you the HOW, just the results… I’ve tried joining founder communities, LinkedIn ,Reddit … you name it. Most of these founder communities are inaccessible for regular people and often ask for you to have an already existing business with a min ARR… or their simply geography based and if you’re not in a certain area you can’t really participate… As of LinkedIn… full of empty AI generated posts about how some random dude raised $10m in 7 days. Okay Jonathan, but what about the HOW?? How did you write your first pitch? How many rejection calls did you get? What is an MVP? There simply isn’t a platform out there to document your founding journey and find inspiration within a community of people who are doing the same as you. What better way to feel motivated then to see someone actually document their process? Solution: I’m working on building a social media platform for aspiring/founders to connect through the RAW, UNFILTERED process of turning ideas into reality in REAL time. It’s all gonna be around the “building in public “ concept and content creation. Picture an instagram/tiktok profile where instead of seeing someone’s dog you see them documenting their founding process—from the moment they had the idea, to the moment they launched, you’re going to see the successes, the fails, the rejected calls, all documented through actual content and not some AI generated LinkedIn post. Imagine if you wanted to learn about how Steve Jobs started Apple , you could simply go through his profile on this app—exactly. To make sure all interactions are meaningful people would have to apply. It’s a truly curated community, with REAL people, building REAL things in REAL time, and not just tell us the story of how they did it… Audience: I’m targeting people who have a burning desire of building a business and early stage founders starting their founder journeys, that don’t have a support network and simply don’t know where to start. People who are tired of watching 30 min “ultimate guides “ on how to make it on YouTube from “business gurus” selling courses. People who haven’t reached the min ARR required to join an “exclusive “ founder a community. People who can’t simply just move to the US to get into the “exclusive” YC combinator. People who want to connect with real people building real things and not anonymous people on Reddit, or LinkedIn influencers again trying to promote their services. I believe in the idea because I’m also part of my audience. Have always wanted to start my own thing just never knew how to and where to find a community of likeminded people . I don’t know any founders myself, I come from a non-entrepreneurial society and I’d pay good money to access a community of REAL passionate founders building REAL things, in REAL time. This would be my first ever business, and I want to share my journey building it and hopefully inspire others to just start so I’ve created a mailing list to keep anyone interested in the project updated on my fails , learnings and successes. I’m not worried about “making it” but just “starting” and hopefully reach the right audience and inspire anyone to start whatever they have marinating in their thoughts. If you’re a founder struggling with staying consistent or an aspiring founder with an insane desire of starting and don’t know how to start, I’d love to get your feedback on what’s stopping you, your challenges starting out and what you’d find useful in such platform. And finally would this be something that interests you?? PS: casually looking for a technical co-founder

machine-learning-blackjack-solution
github
LLM Vibe Score0.42
Human Vibe Score0.022610872675250356
GregSommervilleMar 27, 2025

machine-learning-blackjack-solution

machine-learning-blackjack-solution Introduction A genetic algorithm is a type of artificial intelligence programming that uses ideas from evolution to solve complex problems. It works by creating a population of (initially random) candidate solutions, then repeatedly selecting pairs of candidates and combining their solutions using a process similar to genetic crossover. Sometimes candidate solutions even go through mutation, just to introduce new possibilities into the population. After a large number of generations, the best solution found up to that point is often the optimal, best solution possible. Genetic algorithms are particularly well-suited for combinatorial problems, where there are huge numbers of potential solutions to a problem. The evolutionary process they go through is, in essence, a search through a huge solution space. A solution space so large that you simply could never use a brute force approach. This project is a demonstration of using a genetic algorithm to find an optimal strategy for playing the casino game Blackjack. Please see this article for a story about how this program was used, and what the results were. The article describes some of the available settings, and shows how different values for those settings affect the final result. The source code is for a Windows application written in Cthat allows you to play with different settings like population size, selection style and mutation rate. Each generation's best solution is displayed, so you can watch the program literally evolve a solution. !blackjack strategy tester screenshot The property grid located at the upper left of the screen is where you adjust settings. There's an informational area below that, and the right side of the screen is the display area for the three tables that represent a strategy for playing Blackjack. The tall table on the left is for hard hands, the table in the upper right is for soft hands, and the table in the lower right is for pairs. We'll talk more about how to interpret this strategy in a bit. The columns along the tops of the three tables are for the dealer upcard. When you play Blackjack the dealer has one of his two cards initially turned face up, and the rank of that card has a big impact on recommended strategy. Notice that the upcard ranks don't include Jack, Queen or King. That's because those cards all count 10, so we group them and the Ten together and simplify the tables. To use the tables, first, determine if you have a pair, soft hand, or hard hand. Then look in the appropriate table, with the correct dealer upcard column. The cell in the table will be "H" when the correct strategy is to hit, "S" when the correct strategy is to stand, "D" for double-down, and (in the pairs table only) "P" for split. A Word About This "Optimal" Strategy Before we go any further, it needs to be stated that this problem of finding an optimal Blackjack strategy has already been solved. Back in the 1960s, a mathematician named Edward O. Thorp authored a book called Beat the Dealer, which included charts showing the optimal "Basic" strategy. That strategy looks like this: !optimal blackjack strategy So we're solving a problem that has already been solved, but that's actually good. That means we can compare our results to the known best solution. For example, if our result strategy tells us to do anything but stand when holding a pair of Tens, Jacks, Queens or Kings, we know there's a problem. There's one other thing to get out of the way before we go any further, and that's the idea of nondeterministic code. That means that if we run the same code twice in a row, we're likely to get two different results. That's something that happens with genetic algorithms due to their inherent randomness. There's no guarantee you'll find the absolute optimal solution, but it is assured that you will find an optimal or near-optimal solution. It's something that isn't typical when writing code, so it takes some adjustment for most programmers. Genetic Algorithms Now let's talk about the details of a genetic algorithm. Fitness Scores First of all, we need a way to evaluate candidates so we can compare them to each other. That means a numeric fitness score, which in this case is quite simple: you simulate playing a certain number of hands using the strategy, and then count the number of chips you have at the end. The big question is, how many hands should we test with? The challenge of trying to test a strategy is that due to the innate randomness of Blackjack, you could use the same strategy ten times and get ten completely different results. Obviously, the more hands you play, the more the randomness gets smoothed out, and the quality of the underlying strategy starts to emerge. If you doubt this, just think about flipping a coin. If you only flip it five times, there's certainly a possibility that it'll come up heads all five times (in fact, that happens just over 3% of the time). However, if you flip it 500 times, there's no way it's going to end up all heads - the odds of it happening are 0.5500, which works out to be roughly once every 3 x 10150 times you try it. After some testing and analysis, it was determined that a minimum of 100,000 hands per test is needed for a reasonable level of accuracy. There's still variance even at that number, but in order to cut the variance in half, you'd need to bump the number of hands to 500,000. One reason this accuracy is important is that in the later generations, the differences between candidates are very small. Evolution has caused the main parts of the strategy to converge on a particular approach, and towards the end all it's doing is refining the minor details. In those cases it's important to accurately determine the difference between two similar candidates. Representation Representation is simply the idea that we need to use a data structure for a candidate solution that can be combined via crossover, and possibly mutated. In this case, that's also quite simple because the way that human beings represent a Blackjack strategy is to use three tables, as we've seen. Representing those in code with three two-dimensional arrays is the obvious approach. Each cell in those three tables will have "Hit", "Stand", "Double-Down", or (only for pairs) "Split". By the way, since there are 160 cells in the hard hands table, and 80 cells in the soft hands table, and 100 cells in the pairs table, we can calculate exactly how many possible distinct strategies there are for Blackjack: 4100 x 380 x 3160 = 5 x 10174 possible Blackjack strategies That's a big number, which is obviously impossible to search using brute force. Genetic algorithms (GAs) are extremely helpful when trying to find an optimal solution from a very large set of possible solutions like this. Blackjack Rules and Strategies The rules of Blackjack are fairly simple. The dealer and the player both are dealt two cards. The player sees both of their cards (they are usually dealt face up), and one of the dealer's cards is dealt face up. Each card has a value - for cards between 2 and 10, the value is the same as the card's rank (so an Eight of Spades counts as 8, for example). All face cards count as 10, and an Ace can either be 1 or 11 (it counts as 11 only when that does not result in a hand that exceeds 21). The suit of a card does not matter. After the cards are dealt, if the player has Blackjack (a total of 21) and the dealer does not, the player is immediately paid 1.5 times their original bet, and a new hand is dealt. If the player has 21 and the dealer does also, then it's a tie and the player gets their original bet back, and a new hand is dealt. If the player wasn't dealt a Blackjack, then play continues with the player deciding whether to Stand (not get any more cards), Hit (receive an additional card), Double-down (place an additional bet, and receive one and only one more card), or, in the case of holding a pair, splitting the hand, which means placing an additional bet and receiving two new cards, so the end result is that the player is now playing two (or, in the case of multiple splits, more than two) hands simultaneously. If the player hits or double-downs and has a resulting hand that exceeds 21, then they lose and play continues with the next hand. If not, then the dealer draws until their hand totals at least 17. If the dealer exceeds 21 at this point, the player receives a payment equal to twice their original bet. If the dealer doesn't exceed 21, then the hands are compared and the player with the highest total that doesn't exceed 21 wins. Because of these rules, certain effective strategies emerge. One common strategy is that if you hold a hard hand with a value of 20, 19 or 18, you should Stand, since you avoid busting by going over 21, and you have a nice hand total that might win in a showdown with the dealer. Another common strategy is to split a pair of Aces, since Aces are so powerful (due to the fact that count as 11 or 1, you can often Hit a hand with a soft Ace with no risk of busting). Likewise, splitting a pair of 8s is a good idea because with a hard total of 16, it's likely you will bust if you take a Hit (since so many cards count as 10). As a human being, all it takes is a little knowledge about the rules in order to construct a strategy. The GA program doesn't have that advantage, and operates completely without any pre-programmed knowledge of Blackjack. It simply uses the relative fitness scores and the mechanism of evolution to find the solution. GA Settings There are many variables or settings for a GA. You can adjust population size, how parent candidates are selected, how the resulting children may be mutated, and several other items. The following sections describe some of these settings: Setting: Selection Style Once we've solved representation and have a fitness function, the next step is to select two candidates for crossover during the process of building a new generation. There are three common styles for selection, and this program supports all of them. First, you can choose Roulette Wheel selection. It's named for a Roulette wheel because you can imagine each candidate's fitness score being a wedge in a pie chart, with a size proportionate to its relative fitness compared to the other candidates. (Of course, this assumes that all fitness scores are positive, which we will talk about shortly). The main benefit of Roulette Wheel selection is that selection is fitness-proportionate. Imagine if you had only three candidates, with fitness scores of 1, 3, and 8. The relative selection probabilities for those candidates will be 1/12, 3/12, and 8/12. The downside of Roulette Wheel selection is that it tends to be somewhat slow in terms of processing. The selection process is done by iterating through the candidates until a particular condition is matched - in other words, O(N) performance. Another potential problem with Roulette Wheel selection is that there may be situations where fitness scores vary widely, to such an extent that only certain candidates have any reasonable chance of being selected. This happens frequently in early generations, since the majority of candidates are mostly random. Although this might sound like a positive (since you ultimately want to select candidates with high fitness scores), it also results in a loss of genetic diversity. In other words, even though a particular candidate may have a low fitness score in an early generation, it may contain elements that are needed to find the ultimate solution in later generations. Ranked Selection is the solution to this problem. Instead of using raw fitness scores during the selection process, the candidates are sorted by fitness, with the worst candidate receiving a score of 0, the second worse receiving 1, and so forth, all the way to the best candidate, which has a score equal to the population size - 1. Ranked Selection is quite slow, since it combines the O(N) performance of Roulette Wheel, with the additional requirement that the candidates be sorted before selection. However, there may be circumstances where it performs better than other selection approaches. Finally, the fastest selection method of all is called Tournament Selection. This method simply selects N random candidates from the current generation, and then uses the one with the best fitness score. A tournament size of 2 means two random candidates are selected, and the best of those two is used. If you have a large tournament size (like 10), then 10 different candidates will be selected, with the best of those being the ultimate selection. That obviously tilts the balance between randomness and quality. Tournament selection works well in most cases, but it does require some experimentation to find the best tourney size. Setting: Elitism Elitism is a technique that helps ensure that the best candidates are always maintained. Since all selection methods are random to some degree, it is possible to completely lose the best candidates from one generation to another. By using Elitism, we automatically advance a certain percentage of the best candidates to the next generation. Elitism does have a negative impact on performance since all of the candidates must be sorted by fitness score. Typically Elitism is done before filling the rest of a new generation with new candidates created by crossover. Crossover Details Once two candidate solutions have been selected, the next step in building a new generation is to combine those two into a single new candidate, hopefully using the best of both parent strategies. There are a number of ways to do crossover, but the method used in this program is quite straightforward - the two fitness scores are compared, and crossover happens in a relatively proportionate way. If one candidate has a fitness of 10, and the other has a fitness of 5, then the one with fitness 10 contributes twice as much to the child as the parent with a fitness of 5. Since the fitness scores in this program are based on how much the strategy would win over thousands of hands, almost all fitness scores will be negative. (This is obviously because the rules are set up so the house always wins.) This makes it difficult to calculate relative fitnesses (how do you compare a positive number with a negative, and find relative proportions?), and also causes problems with selection methods like Roulette Wheel or Ranked. To solve this, we find the lowest fitness score of the generation and add that value to each candidate. This results in an adjusted fitness score of 0 for the very worse candidate, so it never gets selected. Mutation As has been mentioned a few times, maintaining genetic diversity in our population of candidate solutions is a good thing. It helps the GA ultimately find the very best solution, by occasionally altering a candidate in a positive direction. There are two settings for mutation. MutationRate controls what percentage of new candidates have mutation done on them. MutationImpact controls what percentage of their strategy is randomized. Population Size Population size has a significant impact on performance. The smaller the population size, the faster the GA will execute. On the other hand, if the size is too low the population may not have enough genetic diversity to find the ultimate solution. During testing, it looks like 700 to 1000 is a good balance between speed and correctness. Performance Notes This program consumes a lot of processing power. Running tests of hundreds of thousands of hands of Blackjack for hundreds or thousands of candidates consumes a lot of time. It's really imperative to write the code so that it works as efficiently as possible. If your CPU isn't consistently at or above 95% usage, there's still room for improvement. Multi-threading is a natural fit for genetic algorithms because we often want to perform the same action on each candidate. The best example of this is when we calculate fitness scores. This is often an operation that takes quite a bit of time. In our case, we're dealing out 100,000 hands, and each hand has to be played until the end. If we're single-threading that code, it's going to take a long time. Multi-threading is really the way to go. Luckily, there's a ridiculously simple way to efficiently use all of your processors for an operation like this. This code loops over all of the candidates in the currentGeneration list, calls the fitness function and sets the fitness property for each: Regardless of the number of items in the list or the number of processors on your machine, the code will efficiently run the code in a multi-threaded manner, and continue only when all of the threads are complete. One of the side effects of making this code multi-threaded is that all of the code relating to evaluating a candidate must be thread-safe, including any Singleton objects. When making code thread-safe, pay attention that you don't accidentally introduce code that will slow your program down unintentionally, because sometimes it can be quite subtle. Random numbers are central to how genetic algorithms work, so it's critical that they can be used correctly from a multithreaded environment. That means that each random number generator must be separate from the others, and it also means that each must produce a distinct series of random numbers. Random number generators use seed values which are usually time-based, like the number of milliseconds the computer has been turned on. Starting with that seed, subsequent calls will return a series of numbers that look random, but really aren't. If you start with the same seed, you get the same sequence. And that's a problem because if you create multiple random number generator objects in a loop using the default time-based seed, several of them will have the same time-based initial seed value, which will result in the same sequence of "random" numbers. That's a bug, because it can reduce the true randomness of the program a great deal, and that's vital to a genetic algorithm. There are a couple of ways to solve this problem. First, you can make the random object truly a singleton, and restrict access to it by using a Clock statement. The makes all access serialized for any random number need, which reduces performance. Another approach is to make the variable static per thread. By declaring the variable as static and also marking it with the [ThreadStatic] attribute, the .NET runtime allocates one static variable per thread. That eliminates the locking/serialization, but also has performance issues. The approach used in this application is to use a non-default seed value. In this case we call Guid.NewGuid().GetHashCode(), which generates a new, unique GUID, then gets an integer hashcode value that should be unique, depending on how GetHashCode is implemented. While multithreading really helps performance, there are also other things we can do to improve performance. For example, when dealing with large populations, the hundreds or thousands of objects that will be generated each generation can quickly turn into a huge problem related to garbage collection. In the end, the easiest way to solve that is to look through the code and find objects being allocate inside a loop. It's better to declare the variable outside of the loop, and then clear it in the loop, rather than reallocate it. In a program like this one where you could be looping hundreds of thousands of times, this can result in a very significant performance boost. For example, in an early version of this code, a Deck object was created for each hand. Since there are hundreds of candidate solutions running hundreds of thousands of trial hands, this was a huge inefficiency. The code was changed to allocate one deck per test sequence. The deck was shuffled as needed, so it never needs to be reallocated. Beyond the cards in the deck, another object type that was repeatedly created and destroyed were the candidate strategies. To mitigate this problem, a StrategyPool class was created that handles allocation and deallocation. This means that strategy objects are reused, rather than dynamically created when needed. The pool class has to be thread-safe, so it does serialize access to its methods via a Clock statement, but overall using the pool approach produced a good performance increase. Finally, a subtle form of object allocation is conversion. In an early version of the code, a utility card function used Convert.ToInt32(rankEnum). Obviously, the easiest way to convert from an enum to an int is simply to cast it, like (int)rankEnum. But it's hard to know exactly what the difference is between that approach, int.Parse(), int.TryParse(), or Convert.ToInt32(), since they can all be used and are roughly equivalent. Perhaps the compiler was boxing the enum value before passing it to Convert.ToInt32(), because the profiler identified this as a function that had large amounts of thread contention waiting - and the problem got much, much worse as the generations passed. By rewriting the conversion to use a simple cast, the program performance increased threefold (3x). Contributing Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us. Author Greg Sommerville - Initial work* License This project is licensed under the Apache 2.0 License - see the LICENSE.md file for details

How-to-learn-Deep-Learning
github
LLM Vibe Score0.524
Human Vibe Score0.1392403398579415
emilwallnerMar 23, 2025

How-to-learn-Deep-Learning

Approach A practical, top-down approach, starting with high-level frameworks with a focus on Deep Learning. UPDATED VERSION: 👉 Check out my 60-page guide, No ML Degree, on how to land a machine learning job without a degree. Getting started [2 months] There are three main goals to get up to speed with deep learning: 1) Get familiar to the tools you will be working with, e.g. Python, the command line and Jupyter notebooks 2) Get used to the workflow, everything from finding the data to deploying a trained model 3) Building a deep learning mindset, an intuition for how deep learning models behave and how to improve them Spend a week on codecademy.com and learn the python syntax, command line and git. If you don't have any previous programming experience, it's good to spend a few months learning how to program. Otherwise, it's easy to become overwhelmed. Spend one to two weeks using Pandas and Scikit-learn on Kaggle problems using Jupyter Notebook on Colab, e.g. Titanic, House prices, and Iris. This gives you an overview of the machine learning mindset and workflow. Spend one month implementing models on cloud GPUs. Start with FastAI and PyTorch. The FastAI community is the go-to place for people wanting to apply deep learning and share the state of the art techniques. Once you have done this, you will know how to add value with ML. Portfolio [3 - 12 months] Think of your portfolio as evidence to a potential employer that you can provide value for them. When you are looking for your first job, there are four main roles you can apply for Machine Learning Engineering, Applied Machine Learning Researcher / Residencies, Machine Learning Research Scientist, and Software Engineering. A lot of the work related to machine learning is pure software engineering roles (category 4), e.g. scaling infrastructure, but that's out of scope for this article. It's easiest to get a foot in the door if you aim for Machine Learning Engineering roles. There are a magnitude more ML engineering roles compared to category 2 & 3 roles, they require little to no theory, and they are less competitive. Most employers prefer scaling and leveraging stable implementations, often ~1 year old, instead of allocating scarce resources to implement SOTA papers, which are often time-consuming and seldom work well in practice. Once you can cover your bills and have a few years of experience, you are in a better position to learn theory and advance to category 2 & 3 roles. This is especially true if you are self-taught, you often have an edge against an average university graduate. In general, graduates have weak practical skills and strong theory skills. Context You'll have a mix of 3 - 10 technical and non-technical people looking at your portfolio, regardless of their background, you want to spark the following reactions: the applicant has experience tackling our type of problems, the applicant's work is easy to understand and well organized, and the work was without a doubt 100% made by the applicant. Most ML learners end up with the same portfolio as everyone else. Portfolio items include things as MOOC participation, dog/cat classifiers, and implementations on toy datasets such as the titanic and iris datasets. They often indicate that you actively avoid real-world problem-solving, and prefer being in your comfort zone by copy-pasting from tutorials. These portfolio items often signal negative value instead of signaling that you are a high-quality candidate. A unique portfolio item implies that you have tackled a unique problem without a solution, and thus have to engage in the type of problem-solving an employee does daily. A good starting point is to look for portfolio ideas on active Kaggle competitions, and machine learning consulting projects, and demo versions of common production pipelines. Here's a Twitter thread on how to come up with portfolio ideas. Here are rough guidelines to self-assess the strength of your portfolio: Machine learning engineering: Even though ML engineering roles are the most strategic entry point, they are still highly competitive. In general, there are ~50 software engineering roles for every ML role. From the self-learners I know, 2/3 fail to get a foot in the door and end up taking software engineering roles instead. You are ready to look for a job when you have two high-quality projects that are well-documented, have unique datasets, and are relevant to a specific industry, say banking or insurance. Project Type | Base score | -------------| -----------| Common project | -1 p || Unique project | 10 p | Multiplier Type | Factor -----------------|----------------- Strong documentation | 5x 5000-word article | 5x Kaggle Medal | 10x Employer relevancy | 20x Hireable: 5,250 p Competative: 15,000 p Applied research / research assistant/ residencies: For most companies, the risk of pursuing cutting edge research is often too high, thus only the biggest companies tend to need this skillset. There are smaller research organizations that hire for these positions, but these positions tend to be poorly advertised and have a bias for people in their existing community. Many of these roles don't require a Ph.D., which makes them available to most people with a Bachelor's or Master's degrees, or self-learners with one year of focussed study. Given the status, scarcity, and requirements for these positions, they are the most competitive ML positions. Positions at well-known companies tend to get more than a thousand applicants per position. Daily, these roles require that you understand and can implement SOTA papers, thus that's what they will be looking for in your portfolio. Projects type | Base score --------------| ----------- Common project | -10 p Unique project | 1 p SOTA paper implementation | 20 p Multiplier type | Factor ----------------| --------------- Strong documentation | 5x 5000-word article | 5x SOTA performance | 5x Employer relevancy | 20x Hireable: 52,500 p Competitive: 150,000 p Research Scientist: Research scientist roles require a Ph.D. or equivalent experience. While the former category requires the ability to implement SOTA papers, this category requires you to come up with research ideas. The mainstream research community measure the quality of research ideas by their impact, here is a list of the venues and their impact. To have a competitive portfolio, you need two published papers in the top venues in an area that's relevant to your potential employer. Project type | Base score -------------| ---------------- Common project | -100 p An unpublished paper | 5 p ICML/ICLR/NeurIPS publication | 500p All other publications | 50 p Multiplier type | Factor ------------------| ------------------ First author paper | 10x Employer relevancy | 20x Hireable: 20,000 p Competitive roles and elite PhD positions: 200,000 p Examples: My first portfolio item (after 2 months of learning): Code | Write-up My second portfolio item (after 4 months of learning): Code | Write-up Dylan Djian's first portfolio item: Code | Write-up Dylan Djian's second portfolio item: Code | Write-up Reiichiro Nakano's first portfolio item: Code | Write-up Reiichiro Nakano's second portfolio item: Write-up Most recruiters will spend 10-20 seconds on each of your portfolio items. Unless they can understand the value in that time frame, the value of the project is close to zero. Thus, writing and documentation are key. Here's another thread on how to write about portfolio items. The last key point is relevancy. It's more fun to make a wide range of projects, but if you want to optimize for breaking into the industry, you want to do all projects in one niche, thus making your skillset super relevant for a specific pool of employers. Further Inspiration: FastAI student projects Stanford NLP student projects Stanford CNN student projects Theory 101 [4 months] Learning how to read papers is critical if you want to get into research, and a brilliant asset as an ML engineer. There are three key areas to feel comfortable reading papers: 1) Understanding the details of the most frequent algorithms, gradient descent, linear regression, and MLPs, etc 2) Learning how to translate the most frequent math notations into code 3) Learn the basics of algebra, calculus, statistics, and machine learning For the first week, spend it on 3Blue1Brown's Essence of linear algebra, the Essence of Calculus, and StatQuests' the Basics (of statistics) and Machine Learning. Use a spaced repetition app like Anki and memorize all the key concepts. Use images as much as possible, they are easier to memorize. Spend one month recoding the core concepts in python numpy, including least squares, gradient descent, linear regression, and a vanilla neural network. This will help you reduce a lot of cognitive load down the line. Learning that notations are compact logic and how to translate it into code will make you feel less anxious about the theory. I believe the best deep learning theory curriculum is the Deep Learning Book by Ian Goodfellow and Yoshua Bengio and Aaron Courville. I use it as a curriculum, and the use online courses and internet resources to learn the details about each concept. Spend three months on part 1 of the Deep learning book. Use lectures and videos to understand the concepts, Khan academy type exercises to master each concept, and Anki flashcards to remember them long-term. Key Books: Deep Learning Book by Ian Goodfellow and Yoshua Bengio and Aaron Courville. Deep Learning for Coders with fastai and PyTorch: AI Applications Without a PhD by Jeremy Howard and Sylvain. Gugger. Deep Learning with Python by François Chollet. Neural Networks and Deep Learning by Michael Nielsen. Grokking Deep Learning by Andrew W. Trask. Forums FastAI Keras Slack Distill Slack Pytorch Twitter Other good learning strategies: Emil Wallner S. Zayd Enam Catherine Olsson Greg Brockman V2 Greg Brockman V1 Andrew Ng Amid Fish Spinning Up by OpenAI Confession as an AI researcher YC Threads: One and Two If you have suggestions/questions create an issue or ping me on Twitter. UPDATED VERSION: 👉 Check out my 60-page guide, No ML Degree, on how to land a machine learning job without a degree. Language versions: Korean | English