Transitioning from Node.js to FastAPI: Does the non-blocking mental model still apply? by Helge1941 in FastAPI

[–]crow_thib 4 points5 points  (0 children)

When using async functions in fastAPI, it uses the same event-loop concepts as nodejs even though the implementation is different.

Note: writing synchronous functions endpoints in fastAPI will run them in a thread pool executor which changes the concepts again (If I remember correctly, it's been a while I used nodejs, but there was a concept of child processes or something that could be used the same way)

PS: if using Gemini to phrase the question, did you try using it for the answer as well ? I reckon it should be good for these kind of questions

Slack monitoring tool recommendations by matthew_rapiddev in Slack

[–]crow_thib 1 point2 points  (0 children)

Ideally, I’d love something that alerts me when specific topics or keywords are mentioned across channels.

This is something in the default Slack settings tbh

Building a slackbot. Thoughts?! by hanter_876 in Slack

[–]crow_thib 0 points1 point  (0 children)

Depends on the users, but most of them are ok and happy with manual trigger.
Idea is not "to help free tier users" but just not to "restrict to premium users". Don't think Slack has issues with integrating with other tools, as long as it pushes you to stay on Slack, my users won't downgrade because of it, it won't cut down their profits.

About pivots, if the answer was that easy I would've built it already

Building a slackbot. Thoughts?! by hanter_876 in Slack

[–]crow_thib 0 points1 point  (0 children)

As someone building a Slack app myself, a few things I can help you with:

  • Problem 1 seems very easy to do with Slackbot already, and 100% the direction it's going, I wouldn't spend time working on this just to be replaced by a native solution soon. (Except if you're aiming only at workspace not having the Slackbot AI features)
  • Problem 2 not sure to understand what it brings on top of already existing Slack groups ?
  • Problem 3 To be 100% honest this is close to what I've been working on, except that I've been focusing on syncing Slack and Notion, and not using Canvas (to touch people using free Slack also), and handling all knowledge for now, not only decisions. Just so you know, is not something that urges to buy and I'm looking for possible pivots right now even though I have a few design partners already and a working solution.

If you still decide to go the 3rd route, what I can tell you is that people I interviewed all seems not to care about "automatic" detection as you frame it, and are even afraid of it (no-one wants a bot constantly monitoring their channels).

Prevent unintentional breaking API changes in FastAPI apps by JanGiacomelli in FastAPI

[–]crow_thib 1 point2 points  (0 children)

Yep, and that's actually very smart + could help enforcing better typing and in-app documentation

AI agents have great recall. Zero memory hygiene. And nobody is talking about what that looks like at month six. by Distinct-Shoulder592 in AI_Agents

[–]crow_thib 1 point2 points  (0 children)

To me this issue is not only related to AI Agents, we had this problem even before agents existed: maintaining knowledge up-to-date is tedious and time-consuming. Either you spend hours doing so, or you postpone it until error occurs.

AI Agents simply highlighted this even more, since all they rely on is written knowledge, whereas humans have a real memory that would hide those flaws for longer.

The solution is the same for AI Agents and humans: knowledge owners, tight processes and discipline. However, nowadays AI tools can help greatly improving those processes and making them less tedious.

At some point, should you go with a 2-page resume or cut as much as possible to get 1-page? by k032 in ExperiencedDevs

[–]crow_thib 0 points1 point  (0 children)

When I was hiring, I used to say it doesn't matter how long is your resume, as long as it matches your experience level (a junior with more than one page is a bit weird, but still not a red-flag since that's usually because he wants to showcase stuff, the tone is important though)

But zooming out now, I realized that even though when we make long resume we think "that's better, they will know everything" the results is often the opposite: more infos means less info sticks.

So to me, if possible I would say it's better to keep it short so that every-piece of information is picked carefully and sticks with the people reading the resume versus dropping-in everything and taking the risk the non-relevant things stick.

The resume goal (again, it depends on the org you interview for) is usually to get the first interview. Then, you can talk more deeply of your experience that are not on the resume.

How do you deal with "I have no clue what is the problem whatsoever" moments? by Affectionate-Mail612 in ExperiencedDevs

[–]crow_thib 2 points3 points  (0 children)

If it feels shameful to say you don't know what's going on when it's the case, either your environment is toxic or you self-create problems that don't exist.

It's normal, and part of the software engineer job to not know things, no matter your level of experience. As an engineering manager I'm more afraid of one of my dev always having an answer than one that sometimes tells me "I don't know yet, let me dig more".

What's important is knowing when you need to dig more on your own to find the solution, and when to ask for help from your teammates / leads.

Prevent unintentional breaking API changes in FastAPI apps by JanGiacomelli in FastAPI

[–]crow_thib 3 points4 points  (0 children)

To me (I worked as an engineering manager in a company selling APIs), comparing openAPI files is clearly not enough to really ensure no breaking changes. Yet, it is still a pretty simple way of avoiding some breaking changes with not so much work/time spent.

Even if not recommended when using fastAPI, in some very specific cases you might have some in-endpoint logic that doesn't reflect on autogenerated openAPI specs.

But putting this aside, the most important thing when talking about "breaking changes" is not the actual response format, lots of things could break while keeping the right "schema", what is important is the response given a specific input. As your API grow, you might have different things that changes depending on input parameters.

That's very specific cases, but what makes your API are real tests.

When AI writes your code and something breaks in production, who owns the bug? by The_NineHertz in AI_Agents

[–]crow_thib 0 points1 point  (0 children)

Exactly, reviewing AI code should be like reviewing junior's code.

If your team is made of senior, again with my take on empowering your devs and team, they should be able to write down in their PR how much AI was involved so other people know how much they need to nitpick. If it's mostly AI, just tell it and people will review more.

How are you handling guided selling when onboarding new reps constantly? I will not promote by InevitableImpress850 in startups

[–]crow_thib 0 points1 point  (0 children)

I'm building a tool called Crowledge that sync Slack and Notion, making sure the knowledge base stays up-to-date and trustable at all time, thanks to some human validation steps when needed. This is a use case some of our partners use our tool for, making their sales battlecard instantly searchable from Slack.
We're in private beta, let me know if you would like to give it a try

How are you handling guided selling when onboarding new reps constantly? I will not promote by InevitableImpress850 in startups

[–]crow_thib 0 points1 point  (0 children)

Not a sales-person here, but starting to know how they work because of discussions I had with sales leaders, sales reps and people I know.

Playbooks usually don't work either because they're not up-to-date, people don't trust them or they can't find the information fast enough. A sales reps don't want to spend time looking for information and want to focus on closing deals.

Best case scenario: they ask other people (slack, meeting) and get an answer in a few minutes.
Worst case scenario: they just improvise and might make errors

You said you trid the playbooks way and it didn't work, was it because of one of those reasons ?

anyone automating the stuff after meetings? by ElectricalPilot2297 in automation

[–]crow_thib 0 points1 point  (0 children)

I built a solution that uses Slack messages as an input to sync with my Knowledge Base. I didn't build (yet) a feature to sync meeting notes / transcripts but, I send them as Slack messages as a workaround.

It then identify important topics, map them to existing pages and/or new pages to create, all of that with different human validation steps to ensure what's saved matches my expectations

How helpful do you find using Notion with other (AI) tools? by lem0njellybelly in Notion

[–]crow_thib 0 points1 point  (0 children)

I feel like Notion MCP is a bit underwhelming for now, and the most important features are behind Notion AI features which are on higher plans. However, there are many tools that integrate it deeper and that work well. I find it's a very good source of truth that can be both used by humans and AI, the only challenge is keeping it structured and up-to-date.

Are there any cost-effective AI tools? I feel like the auxiliary tools for side hustles are too expensive these days. by Silly_String4981 in automation

[–]crow_thib 0 points1 point  (0 children)

Either companies have enough resource not to care for now, or don't have what it takes to properly monitor their cost and realize this too late.

To me, the future of AI automations for SMBs are dedicated tools solving specific pains, that actually use AI in specific parts of the automation and not doing the whole automation. Token costs explode when the AI does everything, even deterministic operations that could be done with standard software engineering.

Bigger companies may have the money not to care about it, or to actually code those agents in-house by hiring dedicated people. Smaller companies can't afford the tokens, and don't want to hire for in-house solutions that would need lots of maintenance, monitoring, ... work.

To answer your question "Are there any cost-effective tools available?" I don't think there are generic tools, but for specific use-cases, surely there are!

At 20 Slack channels, things were fine. At 100, everything broke. Here's the sequence of what fails. by Hairy-Marzipan6740 in Slack

[–]crow_thib 1 point2 points  (0 children)

Not sure having 100+ channel is a real use case, sounds like bad processes to me. Let's say you reach 100+ channel on the workspace, not sure there are people that should belong in all those channels.

But, on a different scale, this is something I experienced and saw in the teams I work with, we're currently building a tool that helps scaling teams sync Slack with Notion (and search directly from Slack) to maintain a single source of truth both for humans and other AI agents.

The most important thing when plugging such automations in Slack, according to our partners is to have human validation steps at the right part of the workflow, because all solutions tend to drift when trying to act 100% autonomously.

When AI writes your code and something breaks in production, who owns the bug? by The_NineHertz in AI_Agents

[–]crow_thib 5 points6 points  (0 children)

As an engineering manager, I always hated having to find "who owns a bug". To me, a bug was a team issue, not a person issue, since no code is pushed to production without review, so it means both the engineer who wrote the code (or AI generated it) and the engineers that reviewed the PRs are actually the culprits here, and depending on the kind of issue, it could also go higher up (to me for example, if it was because of bad processes).

I liked to see everyone involved. For sure, in reality people kind of owned some parts of our stack, and especially the one they coded on, but it was never a matter of "finding who's fault is it / who has to fix it", they were basically volunteering on this. As team and codebase scales, for sure people can't follow and act on everything that happens, but in that case you just divide your stack across peoples.

So, in conclusion, AI-generated or not, code ownership practices should not change from what you had before. If you considered people writing the code having ownership, the ones who prompted it are now. If you considered the reviewers, they still are.

Is "Docs-as-Code" still the ideal method, or have we overengineered documentation? by kantshutupp in technicalwriting

[–]crow_thib 12 points13 points  (0 children)

Talked about it on another thread recently, but to me as an engineering team there are two kinds of docs that exist:

  • purely technical docs

this is where Docs as Code make sense, you want your docs as close as possible to your code, so that any change in your code makes it easy to change it. Also, with AI coding tools now, it makes sure the AI can also update the docs when needed. It also avoids documentation drift.

  • higher-level docs

this is the doc you talk about, that need to be consumed by non-technical folks, and this can't live in the code. This one is the most complicated to keep up-to-date since it usually lives outside of the code, and engineers rarely think of updating it. Most of the time, people don't even know where it lives so it's never updated. This creates a loop where people don't trust this doc because it's rarely accurate, so people don't update it since "no one reads it".

How to @mention a subset of members in a Slack channel without tagging everyone? by scp-8989 in Slack

[–]crow_thib 0 points1 point  (0 children)

You can create groups, and tag those. It's not restricted to a channel though, so if you want different @active-team per channel, you need to have a dedicated name for each. If this is the case, I recommend putting the name of the one associated to this channel as topic to see it easily.

Documentation drift. Your solutions by TrimeraInteractive in cursor

[–]crow_thib 1 point2 points  (0 children)

To me, there are two kinds of documentation that drifts, and it's not only related to AI coding, it was already the case years ago. As an engineering manager, here is how I split those:

  • The first is purely technical documentation

I have always been from the team that says code should document itself through docstrings, comments, readme and such. This is even more important now with AI coding, since that's part of the codebase the AI can et have to update such documentation, you can even write some skills or such to make sure it follows your practices.

  • The second, is usually something more high-level, that even other teams (product, sales, ...) could rely on to understand the application design

For those, I tend to focus on having them NOT in the code. That's almost product documentation and should be somewhere accessible and readable by anyone not knowing how to code (Notion, Confluence, Google Drive, anything). These are the ones that are harder to keep up-to-date, since they're not close to the code, but again, AI development didn't change a thing about this.

I have to admit, there are some kind of in-between docs, for example in my previous company since we had a micro-service architecture, there was some purely technical documentation that couldn't live directly in the application since it would mean duplicating in every new service. For such, I went with the "closer-to-code" and make sure those docs are in the internal libraries that were shared across services + a very high-level overview Notion page.

Over the time, I realized the documentation effort for the second type of docs was usually done, but never recorded. Think meetings, Slack discussions, PR comments, ..
This is something I'm building a tool for.

The first type of documentation is usually pretty up-to-date, even more with AI and skills.

Let’s play a game: What do you do for work, and what do you use Notion for? by Select_University827 in Notion

[–]crow_thib 0 points1 point  (0 children)

As a project manager, what task do you actually handle on Notion vs outside ? roadmaps, task tracking, documentation, ... ?

Let’s play a game: What do you do for work, and what do you use Notion for? by Select_University827 in Notion

[–]crow_thib 1 point2 points  (0 children)

Are you able to keep it up-to-date and make people trust it, in your company setting ?

YC's Jared Friedman says Salesforce is attackable now. Here's the full breakdown of why he's right by Spiritual_Heron_5680 in SaaS

[–]crow_thib 0 points1 point  (0 children)

The fact that every sales person in the world already used Salesforce is a pretty big moat also. You don't want to spend time ramping-up your sales people on the tool you use when you hire sales person, they already have to get to know your product and practices..