Ten Thousand Hours: A Practice Tracker for the Long Game


https://play.google.com/store/apps/details?id=com.pullub.ten_thousands_hours_rule


You've probably heard the "10,000-hour rule" — the idea, popularized by Malcolm Gladwell's Outliers, that world-class skill in almost anything comes down to roughly ten thousand hours of deliberate practice. Whether or not the number is exact, the underlying truth holds up: mastery is measured in years, not weeks, and the only way to get there is to keep showing up.


The problem is that "keep showing up" is hard to see. A single 40-minute guitar session feels like nothing. Skipping a week feels like nothing, too. Without a running total, the long game stays invisible.


That's why I built Ten Thousand Hours — a small Android app (written in Flutter) that does one thing: it keeps an honest count of the hours you put into the skills you care about, and shows you how that count is growing over days, weeks, months, and years.


Everything on one screen





The home screen is a stack of activity cards, one per skill. Each card shows three numbers:


Total — every hour you've ever logged for this activity

Today — what you've done so far today

Now — the live timer for the current session


Above the numbers sit your goals: a daily goal, a weekly goal, or both, each with the time remaining. Tap the play button and the clock starts. That's the whole daily interaction — no forms, no categories, no friction.


In the screenshot you can see my three current activities: Classical Guitar (570 hours and counting), Latin Reading & Translation, and Bouldering. Each one has its own goal and its own history.


Goals that fit your actual week


A flat "practice one hour a day" goal never survived contact with my real schedule. Weekdays are short; weekends are wide open. So the goal editor lets you set a weekly total and then decide how it should land on each day.





Switch between a Daily and a Weekly goal at the top, set the hours and minutes, and then — if you want — turn on Advanced (per-day allocation). From there you can toggle individual days on or off and give each one its own share. In the example above, a 27-hour week is split into 3 hours on weekdays and 6 hours on Saturday and Sunday. The Distribute evenly button spreads it out uniformly if you'd rather not think about it, and the app tells you how much is still left to distribute so the numbers always add up.


At the bottom, the app does the arithmetic for you: at this pace, it estimates how many years it will take to reach ten thousand hours. It's a small line, but it turns an abstract goal into a concrete horizon.





The Goal Report screen shows how you're doing against those goals right now. Three panels — the weekly goal, today's goal, and the weekly goal pro-rated to today — each with an achievement percentage, time spent, and time left. If you're behind, you know exactly by how much.


A timer that follows you out of the app





When a session is running, the active card highlights and shows a red indicator so you can't accidentally leave two timers running. There's also a Floating checkbox next to the stop button.





Turn it on, and a small overlay with the activity name and elapsed time stays pinned on top of whatever else you're doing — the home screen, a sheet-music app, YouTube, anything. For guitar practice this is exactly what I wanted: the phone can sit on the music stand showing a tab or a video, and the timer stays visible in the corner without switching apps.


Seeing the long game: Stats


This is the part that motivated the whole project. The Stats screen has four views, and each one tells a different story.





Day view lets you scroll through individual days of a month and see what each one looked like.





Week view lines up your weekly totals so you can spot trends — in this case, a strong week at the end of July and a quiet August I'd rather not talk about.





Month view zooms out further. Here you can see May was a huge month (over 21 hours) followed by a drop in June, and the chart makes that pattern impossible to ignore.





Year view is the one I open when I need perspective. Five years of classical guitar are on this chart: 316 hours in 2022, 113 in 2023, almost nothing in 2024, then a return in 2025 and 2026. A single glance shows both the long dry spell and the recovery — something no daily to-do list could ever tell me.


Every session, on the record





The record by date screen gives you a calendar with each recorded day shaded and labeled with its total. Days where you hit your goal are marked as complete; days with any practice at all are marked as recorded. You can also add a session by hand with the plus button, for the times you practiced but forgot to start the timer.





The List tab shows the same data as a scrollable log, grouped by week with weekly subtotals and a grand total at the top — down to the second. It's the place to go when you want to answer "how much did I actually practice last week?" with a real number.


Why I made it this way


There are plenty of habit trackers and time trackers out there. What I wanted was narrower and, I think, more honest:


One number that only goes up. The lifetime total is the point. Everything else is in service of making that number bigger.

Goals shaped like a real week. Per-day allocation means the plan matches the calendar instead of fighting it.

Zero-friction logging. Press play, practice, press stop. The floating timer means you never have to leave what you're doing.

Charts that go back years. Progress toward ten thousand hours is only visible at the yearly scale, so the app makes that scale a first-class view.


If you're working on something that takes years — an instrument, a language, a sport — I hope this helps you see the hours adding up, even on the days when it doesn't feel like they are.


https://play.google.com/store/apps/details?id=com.pullub.ten_thousands_hours_rule

댓글