Skip to content

Commit 9aa23aa

Browse files
committed
docs: frame README around the F5 Experience problem
Add a 'problem we're solving' section that explains the inner-loop / F5 Experience motivation for local build and startup metrics, linking to the F5 Experience blog series.
1 parent bbadbc8 commit 9aa23aa

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,34 @@
22

33
Local build and application startup metrics for Kotlin projects.
44

5+
## The problem: you can't improve an F5 Experience you can't see
6+
7+
The **[F5 Experience](https://beerandserversdontmix.com/2024/08/15/an-introduction-to-the-f5-experience/)**
8+
is the idea that setting up and running a project should take exactly three steps:
9+
clone the repo, open it in your IDE, press F5. Everything after that — the compile,
10+
the startup, the first response, the test run — is the **inner loop** of development,
11+
and the speed of that loop largely determines how productive and how happy your
12+
engineers are.
13+
14+
The trouble is that the inner loop is invisible. It happens hundreds of times a day
15+
on each engineer's machine, and none of it shows up anywhere. So when a build slowly
16+
creeps from 20 seconds to two minutes, nobody notices until developers have already
17+
started
18+
[context switching away every time they hit F5](https://beerandserversdontmix.com/2024/08/15/the-f5-experience-speed/)
19+
— going for coffee, checking Slack, losing their flow state. By then the damage is
20+
done and there's no data to explain when or why it happened. As the blog series puts
21+
it: **measure first.** You can't optimize an inner loop you've never measured, and
22+
compile time alone doesn't tell the whole story — the full cycle from pressing F5 to
23+
a workable application is what actually matters.
24+
25+
This project instruments that inner loop on the developer's own machine. It captures
26+
local Gradle build metrics and Ktor application startup metrics and ships them to a
27+
metrics backend, so a team can see its real F5 Experience — build times, compilation
28+
times, startup times, and the context around them — and drive it down over time
29+
instead of guessing. Collection is deliberately local-only, asynchronous, and
30+
best-effort: it never fails or slows the build or app it's measuring, and it skips
31+
CI entirely.
32+
533
The Gradle build metrics plugin from
634
[issue #1](https://github.com/agoda-com/kotlin-local-metrics/issues/1) is implemented.
735

0 commit comments

Comments
 (0)