Settings

Theme

My chatbot builder is over-engineered and I love it

fastmind.ai

58 points by jamwt a year ago · 13 comments

Reader

joshstrange a year ago

> convex

I've been tempted by a number of these types of backends (also like Firebase and Supabase) but every time I can't bring myself to use them. It's not even concerns on cost, it's mostly lock-in. That word(s?), lock-in, means a million things to a million people but my current comfort level is AWS. I use a number of managed services and they are some of the most stable things I've ever used. They also don't change so often that I'm being deprecated or struggling to keep up. Bare metal would have the least lock in but I'm sorry, I really don't want to manage DB servers, worry about the app server(s) tipping over, deal with the queue or cache server running out of memory, or that my disk is full, I'm just too lazy to do that. That's the self-deprecating answer, the truth is I am lazy but also I need the time I save so I can focus on other, more important, things, so I'm happy to make the trade off.

I spent a good 15+ min browsing the Convex docs because I love reading docs and letting my mind imagine the possibilities, it's like a drug, but I just kept thinking "I'd have to change everything about my web/apps around this". I'll try new things, I'm loving Neon.tech, but only if I feel like I have a fallback to something else if I need it (Like RDS or another Postgres-aaS company). Even Lambda is relatively "new" and I had to structure my app around using it but it's been solid and I don't have to worry about AWS being acquired or running out of money. That's my "over-engineering", trying to make sure I don't get caught flat-footed.

funfunfunction a year ago

This is cool! I don’t see many people doing write ups on their tech stack as much any more. It’s nice to see the inside of a production-grade app like this.

I’m curious, why command+r for the model? What benefits does it have over other SOTA models?

  • yding a year ago

    The short answer is he works at Cohere. But longer answer is that the model probably doesn’t matter that much.

ffsm8 a year ago

Oh man, reading this article gives me mixed feelings.

I think they're fundamentally misunderstanding where the over engineered critique generally comes from. I've done my fair share of over engineered software, because it's frickin fun to make them, especially if you're working alone or with 1-2 other people.

The issue from these projects pop up later, after we moved on to the next project or employer and other (usually junior) people need to support this. From the Greenfield developer POV, I love that as well. It's just bad for the business, not for the developer (it's called resume driven development for a reason)

  • Knajjars a year ago

    Hi there, I'm the author of the blog post. I realize I could have explained "over-engineering" more clearly. I don't mean it in a technical sense, but rather that I approached the project more like an engineer than a founder. The key takeaway is to learn when to take off your engineer hat and think like a founder instead.

    • ffsm8 a year ago

      I did read the whole article and based my comment on the coontents, not the title.

      I think you're vastly underestimating the mental context we've gotten used to, and how hopelessly lost juniors are when confronted with such a large array of technologies that intertwine and only work in conjunction with each other.

      The reason why these gigantic tech stacks exist in enterprise isn't because that's more stable, or better. It's because there are so many people working on the same software, and is hard to organize so many gears making all this tooling a necessity.

      But the domain of a chat bot builder doesn't strike me as something you'll ever put multiple teams on, which was the reason for my mixed feelings.

      Take a step back and look at your graph at the start of your article and imagine you've got ~1 month to introduce a junior developer to the whole tech stack. Do you feel confident that this is feasible? Because these kinds of projects almost always end up getting passed on, as they're usually not the core value products of the company

efilife a year ago

What a great read. I love how much info about it is revealed and all of the advice. Makes me feel a bit better about my unreleased software that I think people would find useful

  • toomuchtodo a year ago

    When in doubt, ship it. Some may get value, and ignore anyone who is providing criticism that is less than constructive. Please consider shipping that unreleased software.

  • Knajjars a year ago

    Ship it!

stevenicr a year ago

Love the flowchart graphic in the post - what did you use to make that?

yding a year ago

Looks great! thanks for sharing your architecture choices here.

ac130kz a year ago

React, Shadcn, Vercel, Railway and TailwindCSS are surely not the tools to perform "over-engineering" with, they allow for fast delivery of products and are very commonly used.

Ahmed_rza a year ago

Really appreciate you for going into so much detail

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection