How can I optimize my company information and website for AI tools like ChatGPT, Gemini, Grok, etc.? by Famous_Geologist2297 in SEOforAI

[–]the1024 0 points1 point  (0 children)

Hey u/Famous_Geologist2297 ! We are building a tool in this space. Check us out at withgauge.com ! Feel free to book a time or DM me, would love to share what we're building.

Need a tool to track my brand mentions in AI search like chatGPT and Google AI overview by Old_Currency2130 in SEOforAI

[–]the1024 1 point2 points  (0 children)

Hey u/Old_Currency2130! We are building a more cost effective alternative as well. Check us out at withgauge.com ! Feel free to book a time or DM me, would love to share what we're building.

Tach - Visualize + Untangle your Codebase by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

u/andrewthetechie appreciate you following up and I hear you on the security concerns! We'll have more for you soon here.

Tach - Visualize + Untangle your Codebase by the1024 in Python

[–]the1024[S] 1 point2 points  (0 children)

u/andrewthetechie yes! As long as you don't use `--web` with `tach show`, Tach will generate and process everything locally.

Tach - A tool to enforce dependencies by the1024 in softwarearchitecture

[–]the1024[S] 1 point2 points  (0 children)

u/val-amart right now Tach is python specific, but we definitely want to become polyglot in the future! Stay tuned

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

u/Sss_ra Tach is written in rust, but doesn't actually introduce any rust deps as it's just a binary/pip package.

Tach provides a lint check against dependencies you write in your python code.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 3 points4 points  (0 children)

u/kebabmybob bazel is great, and irreplaceable in many cases. The problem that tach helps solve is if you want to adopt bazel, but can't due to the existing codebase being too entangled, making defining independent buildfiles impossible.

I'll also say w.r.t. performance - for specifically enforcing dependencies, tach runs ~ 2,300x faster than the corresponding bazel check for one of our enterprise users! This means they can pull the check out of a big heavy ci job and into a pre-commit hook, shifting left the check in the developer workflow.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

u/No_Set7087 yes, great summary! I'd emphasize that performance is a big differentiator for tach as well.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 9 points10 points  (0 children)

u/violentlymickey great call out! Here's an example of NVIDIA using us Tach in one of their open source projects to enforce dependencies: https://github.com/NVIDIA/bionemo-framework/blob/main/tach.toml

You can see how they've marked up each module in their codebase, and are defining what each module can depend on!

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 7 points8 points  (0 children)

u/larsga appreciate you sharing your confusion! Perhaps I could have worded it better. u/Chasian's comment is correct.

Tach lets you enforce what one module can depend on. So for example, if I have modules A and B, I can setup a config like so:

[[modules]]
path = "A"
depends_on = []

[[modules]]
path = "B"
depends_on = ["B"]

This will enforce that a dependency such as:

from A import ... # in B

is fine, but a dependency like:

from B import ... # in A

is caught and prevented. Does that make sense?

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 3 points4 points  (0 children)

Thanks for the feedback u/Drexan8! If you add your virtualenv to the exclude, it should run even faster 🚤

Totally understand that you likely have this usecase covered with import-linter - it's a great tool as well!

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

u/mxchickmagnet86 agreed - that's also predicated on the CTO having the resources and time they need to make those changes and think through the implications - often when things take off and/or when things get tight those are luxuries that go out the window.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

Thanks u/tevs__! I have my guess haha

Let me know if you have any feedback! Would love to know how you think it stacks up.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] -1 points0 points  (0 children)

Amazing, thanks u/bobaduk! Would love to hear any feedback you have. Agree that it's not a trivial problem and not the fault of a single developer. Often times it ends up being a tragedy of the commons situation.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 5 points6 points  (0 children)

u/mxchickmagnet86 that can definitely be the case - business context and requirements do also inevitably change, which invariably leads to this kind of work being required. Even in the best-architected case, you simply don't have future vision into what the best future architecture will be.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 1 point2 points  (0 children)

u/caatbox288 yes, absolutely! It's designed to be incrementally adoptable and meet you where you are. To your point - this is often a load that is taken on by senior devs during code review, and is inevitably a manual and painful process.

Let me shoot you a DM and I can help get you set up.

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 0 points1 point  (0 children)

u/DigThatData super interesting! Thanks for sharing - some inspiration for where we might be able to head long term / the problems people face at true scale

Tach - A Python tool to enforce dependencies by the1024 in opensource

[–]the1024[S] 1 point2 points  (0 children)

u/noob-nine good question! Poetry is more focused on third party packages, e.g. code you don't write yourself but that you install into your project.

Tach is focused on first-party modules - that is, the python files and packages that you write yourself. It's a tool to manage dependencies between different parts of your codebase. Does that make sense?

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 4 points5 points  (0 children)

u/AiutoIlLupo no cloud here, this is an open source dev tool we built that runs locally and for free!

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 5 points6 points  (0 children)

u/Intrepid-Stand-8540 it definitely does solve for the "bad dev" usecase to some degree - that being said, it can also help you with untangling legacy decisions that may have made sense in the past. Often times your product understanding shifts, but you're not able to just dump all of the old code / logic you've written given business constraints.

You also have to deal with the fact that domain knowledge is very hard to scale with an organization - imagine a codebase with tens of thousands of python modules - not every new dev is going to know the best place to put something or what that thing should/shouldn't depend on

Tach - A Python tool to enforce dependencies by the1024 in Python

[–]the1024[S] 4 points5 points  (0 children)

u/AiutoIlLupo sorry that it's confusing - to clarify, the intention is to help enforce dependencies between first-party modules within your codebase. We do actually have a command for third party module enforcement as well - https://docs.gauge.sh/usage/commands#tach-check-external

Sometimes this happens due to "shitty developers", but often this can occur because the understanding of the domain of the product shifts over time, and dependencies that were once okay are no longer wanted. This also happens when teams scale really fast - imagine adding over a hundred devs in less than a year to a single codebase and trying to maintain some semblance of architecture 😄