|
3244
|
My awesome macropad! by @NotALarp | Stardance
|
|
0
|
1.03
|
0
|
[]
|
[{"post_id": 43653, "ts": "202 [{"post_id": 43653, "ts": "2026-08-09T01:21:38Z", "hours": 1.0258, "text": "SPEEDRUNNING MY HACKPAD AS FAST AS PHYSICALLY POSSIBLE: I tried to speedrun my hackpad as fast as possible, I started with the schematic by placing everything down and connecting it as fast as humanly possible. Then I assigned the footprints quickly and moved onto the PCB, where I moved all the parts around and routed them together. The routing wasn’t difficult, just tedious. Then I moved on to the case. I did some research, and turns out there’s types of fillets in fusion, with G1 (tangent) being the default, where it turns/rounds the same across the entire curve, but there’s another called G2 (curvature) which actually turns/rounds more in the middle then the edges, and apple choose to use G2 because it looks more luxurious. Based on this, I’ll never use G1 again and will always be using G2 from now on. Anyways, I CADed the cause by importing all the parts first and then design the box around it (and yes, I used G2 fillets)."}]...
|
Title: My awesome macropad! by @NotALarp | Stardan Title: My awesome macropad! by @NotALarp | Stardance
Devlogs:
SPEEDRUNNING MY HACKPAD AS FAST AS PHYSICALLY POSSIBLE: I tried to speedrun my hackpad as fast as possible, I started with the schematic by placing everything down and connecting it as fast as humanly possible. Then I assigned the footprints quickly and moved onto the PCB, where I moved all the parts around and routed them together. The routing wasn’t difficult, just tedious. Then I moved on to the case. I did some research, and turns out there’s types of fillets in fusion, with G1 (tangent) being the default, where it turns/rounds the same across the entire curve, but there’s another called G2 (curvature) which actually turns/rounds more in the middle then the edges, and apple choose to use G2 because it looks more luxurious. Based on this, I’ll never use G1 again and will always be using G2 from now on. Anyways, I CADed the cause by importing all the parts first and then design the box around it (and yes, I used G2 fillets)....
|
1791821302.6523352
|
1792685302.6523352
|
|
51105
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821305.8001535
|
1792685305.8001535
|
|
29037
|
Frictionless by @SG56 | Stardance
|
SG56
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @SG56 | Stardance
|
1791821306.2988758
|
1792685306.2988758
|
|
51118
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821308.096827
|
1792685308.096827
|
|
51122
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821308.7118626
|
1792685308.7118626
|
|
51125
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821309.2227814
|
1792685309.2227814
|
|
51127
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821309.863131
|
1792685309.863131
|
|
51128
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821309.9858668
|
1792685309.9858668
|
|
51130
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821310.1075687
|
1792685310.1075687
|
|
30740
|
Frictionless by @pepper | Stardance
|
pepper
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @pepper | Stardance
|
1791821310.5010343
|
1792685310.5010343
|
|
51147
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821311.7331579
|
1792685311.7331579
|
|
46257
|
My awesome macropad! by @Zdogj101 | Stardance
|
Zdogj101
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Zdogj101 | Stardan Title: My awesome macropad! by @Zdogj101 | Stardance...
|
1791821312.0192626
|
1792685312.0192626
|
|
38329
|
Untitled by @Shish | Stardance
|
Shish
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Shish | Stardance
|
1791821315.4200234
|
1792685315.4200234
|
|
44755
|
ClockPal Reformed by @Nuno | Stardance
|
Nuno
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ClockPal Reformed by @Nuno | Stardance
|
1791821323.3926535
|
1792685323.3926535
|
|
44756
|
portfolio-site by @bali0531 | Stardance
|
bali0531
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: portfolio-site by @bali0531 | Stardance
|
1791821323.5224075
|
1792685323.5224075
|
|
28007
|
Untitled by @Aliexpress_enjoyer | Stardance
|
Aliexpress_enjoyer
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Aliexpress_enjoyer | Stardance
|
1791821328.6988292
|
1792685328.6988292
|
|
12433
|
My first slack bot! by @Spiyse | Stardance
|
Spiyse
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Spiyse | Stardance
|
1791821329.4731824
|
1792685329.4731824
|
|
40031
|
FlareBisect by @Kaorii | Stardance
|
Kaorii
|
0
|
26.32
|
0
|
[]
|
[{"post_id": 35686, "ts": "202 [{"post_id": 35686, "ts": "2026-07-27T08:58:27Z", "hours": 4.6644, "text": "07:35 — Back at it. Package’s live on PyPI, install works, so this session’s about making the repo itself look like it belongs to a finished project instead of a hackathon fork. 07:55 — Wanted a banner for the README. Kept going back and forth on whether it should be a screenshot of the actual CLI output or something more abstract. Landed on abstract — a line of commit dots going from dull gray to a lit flare mark, wordmark next to it. Felt more “brand” than a terminal screenshot would. 08:30 — First SVG attempt had the flare rays overlapping the wordmark at smaller widths. Pushed the text further right, widened the canvas. Basic stuff but took a few passes to get spacing right by eye. 08:50 — Rendered a PNG fallback version for anywhere that doesn’t support inline SVG. Font fell back to a generic system font on the PNG since I didn’t bundle one, looks noticeably worse than the SVG. Decided the SVG is the primary asset for the README since GitHub renders those natively anyway, PNG’s just a backup. 09:15 — While in the repo, noticed –runs wasn’t being validated, someone could pass –runs 0 and it’d silently divide by zero computing flake rate. Added a floor of 1 and a proper error message instead of a traceback. 09:40 — Also caught that flarebisect config would happily let you set a provider without a model name, then blow up later when it actually tried to call the API. Added validation at config-set time instead of at call time, better to fail fast with a clear message than five minutes into a bisect run. 10:05 — Cleaned up the –help text, some of the flag descriptions were leftover placeholder text from when I first scaffolded the CLI and never got a proper pass. 10:25 — Dropped the banner into the README at the top, tested how it renders on GitHub’s actual page (not just the local markdown preview) since GitHub sometimes handles SVG differently. Looked fine. 10:45 — Version bump, rebuilt the package, twine check again to make sure everything’s still clean before pushing to PyPI. Small thing but wanted the fixes from earlier (the runs validation, the config validation) actually live and pip-installable, not just sitting in the repo. 11:10 — Published the update. Reinstalled in a clean venv just to confirm the new version actually pulls and the fixes are really there, not trusting past-me on this after the API key incident last session. 11:35 — Went back through the README end to end as if I were a judge seeing this cold for the first time. Tightened a couple of sentences that were doing too much work, moved the install command higher since that’s probably the first thing anyone actually copies. 12:14 — Banner’s in, small CLI footguns are patched, PyPI’s current. v1."}, {"post_id": 35128, "ts": "2026-07-26T11:33:11Z", "hours": 21.6511, "text": "FlareBisect - Find Flare in your codebase. Hour 0 — 23:40 — Locked the idea: bisect on flake rate instead of pass/fail. Repo’s up, README written before any code so I remember why this is cool by hour 10. Hour 2 — 01:33 — Core loop: walk commit range, checkout each into a git worktree, run tests N times, count pass/fail. First time scripting worktrees, cleanup semantics bit me immediately. Hour 3 — 02:20 — Needed a demo repo with an actual flaky bug. Wrote a throwaway project: module-level dict mutated by a thread with no lock. Good commit passes clean, bad commit fails ~30-40% of the time. Perfect. Hour 4 — 03:05 — First real bug: worktree checkouts were reusing the same directory, so “parallel” runs were actually serialized and reading stale files. Race condition in the tool that detects race conditions. Fixed with per-run temp dirs. Hour 7 — 05:30 — Wired up the actual bisection walk, narrowing the range by comparing midpoint flake rate to baseline. First full run against the demo repo — it found the real seeded bug commit. Stared at the terminal for a second like an idiot. Hour 9 — 07:02 — Slept ~40 min on the floor next to the desk. Hour 10 — 07:50 — AI explanation layer. First prompt was too open, got a 4-paragraph essay nobody’s reading in a 30s demo. Rewrote for one or two sentences, plain English. Hour 11 — 08:41 — API key wasn’t loading — .env was being read after typer’s own startup. Moved load_dotenv() to the top of main . 25 minutes lost to printing None. Hour 13 — 10:22 — Demo run was too slow for a 30s video (5 runs × 12 commits). Trimmed the demo repo’s range, made –runs configurable without touching real defaults. Hour 14 — 11:15 — Built flarebisect demo as its own command so I’m not fumbling flags live. Should’ve done this at hour 3. Hour 16 — 12:50 — Existential dip — is “flake rate as a bisectable signal” actually novel or just a dressed-up loop. Decided it doesn’t matter, demo’s good, keep going. Hour 19 — 15:05 — Recorded the demo. Six takes. Too-small font, fat-fingered hash, then a clean one under 30 seconds. Hour 20 — 15:50 — Slides — kept text minimal, letting the terminal recording carry it. Hour 21 — 16:40 — Packaging pass so this is pip install-able, not clone-and-pray. pyproject.toml metadata, GitHub Actions build/publish workflow, twine check clean. Also ripped out the hardcoded Claude API call — didn’t want to ship something that only works with my personal key. Abstracted behind a provider interface, added flarebisect config, verified it against local Ollama too (worse explanations, but the abstraction’s real). Ended up redoing the CLI output a third time as a side effect of the provider switch. Wasn’t planning on it, no regrets. Pushed to github.com/kaorii-ako/FlareBisect, stripped the Claude Code co-author trailer first. Still not done — demo needs a re-record since the output changed again, slides aren’t finished. Going."}]...
|
Title: FlareBisect by @Kaorii | Stardance
Devlogs Title: FlareBisect by @Kaorii | Stardance
Devlogs:
FlareBisect - Find Flare in your codebase. Hour 0 — 23:40 — Locked the idea: bisect on flake rate instead of pass/fail. Repo’s up, README written before any code so I remember why this is cool by hour 10. Hour 2 — 01:33 — Core loop: walk commit range, checkout each into a git worktree, run tests N times, count pass/fail. First time scripting worktrees, cleanup semantics bit me immediately. Hour 3 — 02:20 — Needed a demo repo with an actual flaky bug. Wrote a throwaway project: module-level dict mutated by a thread with no lock. Good commit passes clean, bad commit fails ~30-40% of the time. Perfect. Hour 4 — 03:05 — First real bug: worktree checkouts were reusing the same directory, so “parallel” runs were actually serialized and reading stale files. Race condition in the tool that detects race conditions. Fixed with per-run temp dirs. Hour 7 — 05:30 — Wired up the actual bisection walk, narrowing the range by comparing midpoint flake rate to baseline. First full run against the demo repo — it found the real seeded bug commit. Stared at the terminal for a second like an idiot. Hour 9 — 07:02 — Slept ~40 min on the floor next to the desk. Hour 10 — 07:50 — AI explanation layer. First prompt was too open, got a 4-paragraph essay nobody’s reading in a 30s demo. Rewrote for one or two sentences, plain English. Hour 11 — 08:41 — API key wasn’t loading — .env was being read after typer’s own startup. Moved load_dotenv() to the top of main . 25 minutes lost to printing None. Hour 13 — 10:22 — Demo run was too slow for a 30s video (5 runs × 12 commits). Trimmed the demo repo’s range, made –runs configurable without touching real defaults. Hour 14 — 11:15 — Built flarebisect demo as its own command so I’m not fumbling flags live. Should’ve done this at hour 3. Hour 16 — 12:50 — Existential dip — is “flake rate as a bisectable signal” actually novel or just a dressed-up loop. Decided it doesn’t matter, demo’s good, keep going. Hour 19 — 15:05 — Recorded the demo. Six takes. Too-small font, fat-fingered hash, then a clean one under 30 seconds. Hour 20 — 15:50 — Slides — kept text minimal, letting the terminal recording carry it. Hour 21 — 16:40 — Packaging pass so this is pip install-able, not clone-and-pray. pyproject.toml metadata, GitHub Actions build/publish workflow, twine check clean. Also ripped out the hardcoded Claude API call — didn’t want to ship something that only works with my personal key. Abstracted behind a provider interface, added flarebisect config, verified it against local Ollama too (worse explanations, but the abstraction’s real). Ended up redoing the CLI output a third time as a side effect of the provider switch. Wasn’t planning on it, no regrets. Pushed to github.com/kaorii-ako/FlareBisect, stripped the Claude Code co-author trailer first. Still not done — demo needs a re-record since the output changed again, slides aren’t finished. Going.
07:35 — Back at it. Package’s live on PyPI, install works, so this session’s about making the repo itself look like it belongs to a finished project instead of a hackathon fork. 07:55 — Wanted a banner for the README. Kept going back and forth on whether it should be a screenshot of the actual CLI output or something more abstract. Landed on abstract — a line of commit dots going from dull gray to a lit flare mark, wordmark next to it. Felt more “brand” than a terminal screenshot would. 08:30 — First SVG attempt had the flare rays overlapping the wordmark at smaller widths. Pushed the text further right, widened the canvas. Basic stuff but took a few passes to get spacing right by eye. 08:50 — Rendered a PNG fallback version for anywhere that doesn’t support inline SVG. Font fell back to a generic system font on the PNG since I didn’t bundle one, looks noticeably worse than the SVG. Decided the SVG is the primary asset for the README since GitHub renders those natively anyway, PNG’s just a backup. 09:15 — While in the repo, noticed –runs wasn’t being validated, someone could pass –runs 0 and it’d silently divide by zero computing flake rate. Added a floor of 1 and a proper error message instead of a traceback. 09:40 — Also caught that flarebisect config would happily let you set a provider without a model name, then blow up later when it actually tried to call the API. Added validation at config-set time instead of at call time, better to fail fast with a clear message than five minutes into a bisect run. 10:05 — Cleaned up the –help text, some of the flag descriptions were leftover placeholder text from when I first scaffolded the CLI and never got a proper pass. 10:25 — Dropped the banner into the README at the top, tested how it renders on GitHub’s actual page (not just the local markdown preview) since GitHub sometimes handles SVG differently. Looked fine. 10:45 — Version bump, rebuilt the package, twine check again to make sure everything’s still clean before pushing to PyPI. Small thing but wanted the fixes from earlier (the runs validation, the config validation) actually live and pip-installable, not just sitting in the repo. 11:10 — Published the update. Reinstalled in a clean venv just to confirm the new version actually pulls and the fixes are really there, not trusting past-me on this after the API key incident last session. 11:35 — Went back through the README end to end as if I were a judge seeing this cold for the first time. Tightened a couple of sentences that were doing too much work, moved the install command higher since that’s probably the first thing anyone actually copies. 12:14 — Banner’s in, small CLI footguns are patched, PyPI’s current. v1....
|
1791821335.4409516
|
1792685335.4409516
|
|
26266
|
Untitled by @harshexperiments0 | Stardance
|
harshexperiments0
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @harshexperiments0 | Stardance
|
1791821335.4443562
|
1792685335.4443562
|
|
42705
|
Mugen by @dylankaru | Stardance
|
dylankaru
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Mugen by @dylankaru | Stardance
|
1791821337.3167543
|
1792685337.3167543
|
|
42727
|
Unicard by @CadenO | Stardance
|
CadenO
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Unicard by @CadenO | Stardance
|
1791821338.0689406
|
1792685338.0689406
|
|
29219
|
My awesome macropad! by @marina | Stardance
|
marina
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @marina | Stardance
|
1791821338.9628885
|
1792685338.9628885
|
|
51151
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821340.7369525
|
1792685340.7369525
|
|
51158
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821341.50443
|
1792685341.50443
|
|
51175
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821342.516995
|
1792685342.516995
|
|
51183
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821343.6294534
|
1792685343.6294534
|
|
51187
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1791821344.5303102
|
1792685344.5303102
|
|
35156
|
Untitled project by @pavithra_venkatesh | Stardanc Untitled project by @pavithra_venkatesh | Stardance...
|
pavithra_venkatesh
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @pavithra_venkatesh | S Title: Untitled project by @pavithra_venkatesh | Stardance...
|
1791821346.8983817
|
1792685346.8983817
|
|
36328
|
musical portfolio by @anshud33p | Stardance
|
anshud33p
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: musical portfolio by @anshud33p | Stardance
|
1791821354.1448538
|
1792685354.1448538
|
|
29184
|
Redacted by @aamosm | Stardance
|
aamosm
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Redacted by @aamosm | Stardance
|
1791821355.548155
|
1792685355.548155
|
|
10416
|
Untitled by @sidmaji | Stardance
|
sidmaji
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @sidmaji | Stardance
|
1791821356.1598463
|
1792685356.1598463
|
|
24698
|
Untitled project by @ujjwal | Stardance
|
ujjwal
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @ujjwal | Stardance
|
1791821356.9285154
|
1792685356.9285154
|
|
6531
|
My first slack bot! by @Lamparter | Stardance
|
Lamparter
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Lamparter | Stardan Title: My first slack bot! by @Lamparter | Stardance...
|
1791821360.227701
|
1792685360.227701
|
|
334
|
test by @tecknet | Stardance
|
tecknet
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: test by @tecknet | Stardance
|
1791821361.868577
|
1792685361.868577
|
|
6185
|
KiwiHacks PreFlight by @pakkid | Stardance
|
pakkid
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: KiwiHacks PreFlight by @pakkid | Stardance
|
1791821363.5203533
|
1792685363.5203533
|
|
41427
|
den blog by @denis | Stardance
|
denis
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: den blog by @denis | Stardance
|
1791821363.8851914
|
1792685363.8851914
|
|
41437
|
tiny bot by @colyflower | Stardance
|
colyflower
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: tiny bot by @colyflower | Stardance
|
1791821365.2589123
|
1792685365.2589123
|
|
28882
|
My first slack bot! by @ajay | Stardance
|
ajay
|
0
|
1.0
|
0
|
[]
|
[{"post_id": 20469, "ts": "202 [{"post_id": 20469, "ts": "2026-07-02T02:12:43Z", "hours": 1.0, "text": "Bot done yayyy!!"}]...
|
Title: My first slack bot! by @ajay | Stardance
D Title: My first slack bot! by @ajay | Stardance
Devlogs:
Bot done yayyy!!...
|
1791821372.6057882
|
1792685372.6057882
|
|
4303
|
My first slack bot! by @satvikhardat | Stardance
|
satvikhardat
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @satvikhardat | Star Title: My first slack bot! by @satvikhardat | Stardance...
|
1791821372.620523
|
1792685372.620523
|
|
16656
|
Orbital (name is in progress) by @sqrilizz | Stard Orbital (name is in progress) by @sqrilizz | Stardance...
|
sqrilizz
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Orbital (name is in progress) by @sqrilizz Title: Orbital (name is in progress) by @sqrilizz | Stardance...
|
1791821372.6395144
|
1792685372.6395144
|
|
54781
|
SOFT-LIFE by @adunnimad | Stardance
|
adunnimad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SOFT-LIFE by @adunnimad | Stardance
|
1791821372.6591616
|
1792685372.6591616
|
|
54782
|
SOFT-LIFE by @adunnimad | Stardance
|
adunnimad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SOFT-LIFE by @adunnimad | Stardance
|
1791821372.7561088
|
1792685372.7561088
|
|
54783
|
SOFT-LIFE by @adunnimad | Stardance
|
adunnimad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SOFT-LIFE by @adunnimad | Stardance
|
1791821372.8791635
|
1792685372.8791635
|
|
54785
|
KEYBOARD by @adunnimad | Stardance
|
adunnimad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: KEYBOARD by @adunnimad | Stardance
|
1791821373.153357
|
1792685373.153357
|
|
54786
|
KEYBOARD by @adunnimad | Stardance
|
adunnimad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: KEYBOARD by @adunnimad | Stardance
|
1791821373.2608602
|
1792685373.2608602
|
|
54789
|
WarioWare Game by @thesarg | Stardance
|
thesarg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: WarioWare Game by @thesarg | Stardance
|
1791821373.5146706
|
1792685373.5146706
|
|
54794
|
3d design for my character by @Karam_Abed | Starda 3d design for my character by @Karam_Abed | Stardance...
|
Karam_Abed
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: 3d design for my character by @Karam_Abed | Title: 3d design for my character by @Karam_Abed | Stardance...
|
1791821373.7657673
|
1792685373.7657673
|
|
30762
|
Untitled by @SirYanni | Stardance
|
SirYanni
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @SirYanni | Stardance
|
1791821375.4001174
|
1792685375.4001174
|
|
42761
|
AI voice project by @theodora | Stardance
|
theodora
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: AI voice project by @theodora | Stardance
|
1791821376.6939476
|
1792685376.6939476
|
|
42788
|
My first slack bot! by @duckyviolin | Stardance
|
duckyviolin
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @duckyviolin | Stard Title: My first slack bot! by @duckyviolin | Stardance...
|
1791821378.3220277
|
1792685378.3220277
|