Skip to content
View karpovantonme's full-sized avatar
😼
Do my best!
😼
Do my best!

Block or report karpovantonme

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
karpovantonme/README.md

Go-to-market and marketing is what I do for a living. Reading other people's code is the habit next to it, and at some point I wrote my own screener for it.

driftkit

github.com/karpovantonme/driftkit

Every check in it has the same shape: two statements about the same thing, in two places, and nobody compares them. A docstring against the signature under it. A \param name against the declaration it documents. A CI matrix against the versions a package claims to support. A vendored copy against the upstream commit that fixed it. A link in the docs against the server that stopped answering.

Linters don't find these, because a linter reads the code. Here you have to read the code and the thing next to it. Python 3.9+, standard library only, MIT.

What came out of it

44 merged pull requests across 33 projects so far, among them scikit-learn, OpenCV, rclone, etcd, OpenTelemetry Collector, Thanos, AFL++, Traefik, four Boost libraries, NetworkX, statsmodels, MNE-Python, QuTiP and ibis.

Also merged into the Go standard library, through Gerrit — you open the pull request on GitHub, they merge it there: golang.org/cl/811340.

The tool proposes and I decide. Every finding is read by hand before it becomes a pull request, and the ones that turn out to be wrong go into FALSE-POSITIVES.md instead of quietly disappearing.

Things I've shipped

Verba · Поток menu-bar dictation for macOS, one codebase and two brands: English-first and Russian-first. Bring your own key, no server of mine in between
VerbaLite the small free one: hold a key, speak, release
Assay a video compressor that looks inside the file and picks the settings itself
GameDevTitan a game-dev tycoon in Godot 4.6
TabZen local-first tab workspaces for Chrome, no servers and no tracking

karpovanton.com

Pinned Loading

  1. tabzen tabzen Public

    TabZen — a local-first tab workspace manager for Chrome (Manifest V3). Spaces, sessions, smart local sorting, tab memory tools. No servers, no tracking.

    JavaScript 1

  2. driftkit driftkit Public

    Tools that compare what a project says against what it does: docstrings against signatures, CI matrices against declared support, vendored copies against upstream fixes, docs against dead links.

    Python 1 1

  3. gamedevtitan gamedevtitan Public

    GameDevTitan — a deep game-dev tycoon built in Godot 4.6, a tribute to the games community. Run a studio from garage to legend across seven eras.

    GDScript 1

  4. assay assay Public

    Assay (Сжиматор) — a video compressor that looks inside the file and picks the compression settings itself. macOS and Windows.

  5. verba verba Public

    Verba — menu-bar voice dictation for macOS. Hold a key, speak, release: the text lands at your cursor. Your own API key, no server in between.

  6. verbalite verbalite Public

    VerbaLite — free menu-bar dictation for macOS. Hold a key, speak, release. No account, no server, bring your own key.