Sprint Calendar — S1 through S26

Two-week sprints are the operational unit of this campaign. Each one has a start date, an end date, a primary phase, a specific deliverable, an honest learning load (in hours), and a lab-notebook expectation. The calendar below is a contract with yourself — the moment you start negotiating with it, the plan starts eroding.

Four of the 26 sprints are buffer sprints (one per quarter). They exist to absorb slippage, weddings, festivals, heat, and life. If a quarter runs clean, the buffer becomes a teaching sprint — write, publish, teach. Do not use it to start a new project.

The convention:

  • Learning load is personal-time hours (evenings + weekends), not including your Zoho day job.

  • Lab-notebook expectation is the minimum entries. S-plan = 1 planning entry at start. S-retro = 1 retro entry at end. Predict/Measure = at least one predict-then-measure entry inside the sprint (from ../13_discipline/02_lab_notebook.md).


The Sprint Table

Sprint

Weeks / Dates

Phase

Deliverable

Load (hrs)

Lab-notebook

S1

Jul 6 – Jul 19, 2026

01 Fundamentals

Env locked; programs 1–12 committed

24–30

S-plan, S-retro

S2

Jul 20 – Aug 2, 2026

01 Fundamentals

Programs 13–25; collections notes

24–30

S-plan, S-retro, Predict/Measure

S3

Aug 3 – Aug 16, 2026

01 Fundamentals02 DSA

Programs 26–40; Phase 01 exit check

24–30

S-plan, S-retro

S4

Aug 17 – Aug 30, 2026

02 DSA

Rung 1 shipped (50 programs repo + Hashnode post)

24–30

S-plan, S-retro, Predict/Measure

S5

Aug 31 – Sep 13, 2026

02 DSA

30 DSA solutions (arrays, strings) + MiniArrayList skeleton

24–30

S-plan, S-retro

S6

Sep 14 – Sep 27, 2026

02 DSA

30 more solutions; MiniArrayList complete; JMH benchmark #1

24–30

S-plan, S-retro, Predict/Measure

S7

Sep 28 – Oct 11, 2026

02 DSA

Trees + graphs solutions (25–30); MiniHashMap skeleton

24–30

S-plan, S-retro

S8

Oct 12 – Oct 25, 2026

02 DSA

Rung 2 shipped (150 DSA solutions, pattern-tagged)

24–30

S-plan, S-retro

Oct 26 – Nov 1, 2026

Q1 Buffer Week

Catch-up OR: write a Rung 2 blog + Phase 02 recap post

5–10

Q1 review entry

S9

Nov 2 – Nov 15, 2026

03 OOP/Modern Java

Phase 03 files 01–02 read; refactor-catalog repo scaffolded

20–26

S-plan, S-retro

S10

Nov 16 – Nov 29, 2026

03 OOP/Modern Java

Phase 03 files 03–04 read; smelly ORDER PROCESSOR refactor v1

18–24

S-plan, S-retro

S11

Nov 30 – Dec 13, 2026

03 OOP/Modern Java

Refactor v2 + before/after diff; blog outline

20–26

S-plan, S-retro, Predict/Measure

S12

Dec 14 – Dec 27, 2026

0304 Streams/Functional

Rung 4 shipped (repo + Hashnode blog)

20–26

S-plan, S-retro

S13

Dec 28 – Jan 10, 2027

04 Streams/Functional

Phase 04 files 01–02 read; MiniLinkedList shipped

20–26

S-plan, S-retro

S14

Jan 11 – Jan 24, 2027

04 Streams/Functional

Phase 04 files 03–05 read; log-analyzer v1

20–26

S-plan, S-retro, Predict/Measure

Jan 25 – Jan 31, 2027

Q2 Buffer Week

Absorb wedding-season slippage; preload Phase 05

5–10

Q2 review + halfway retro (Hashnode post)

S15

Feb 1 – Feb 14, 2027

05 Concurrency

Phase 05 files 01–03 read; rate limiter v1

26–32

S-plan, S-retro

S16

Feb 15 – Feb 28, 2027

05 Concurrency

🚨 Rung 5 HARD GATE shipped (rate limiter + virtual threads)

26–32

S-plan, S-retro, Predict/Measure

S17

Mar 1 – Mar 14, 2027

06 JVM/Performance

Phase 06 files 01–03 read; Async Profiler flame graphs of Rung 5

24–30

S-plan, S-retro

S18

Mar 15 – Mar 28, 2027

06 JVM/Performance

Rung 6 shipped (JVM case study with ≥1 reverted optimization)

24–30

S-plan, S-retro, Predict/Measure

S19

Mar 29 – Apr 11, 2027

07 Enterprise/Spring

Phase 07 files 01–02 read; URL Shortener scaffolded

22–28

S-plan, S-retro

S20

Apr 12 – Apr 25, 2027

07 Enterprise/Spring

Phase 07 files 03–04 read; JPA + Testcontainers wired

22–28

S-plan, S-retro

Apr 26 – May 2, 2027

Q3 Buffer Week

Absorb Chennai-heat energy loss; prep Rung 7

5–10

Q3 review entry

S21

May 3 – May 16, 2027

07 Enterprise/Spring

Phase 07 files 05–07 read; Rung 7 auth + observability

22–28

S-plan, S-retro

S22

May 17 – May 30, 2027

0708 Distributed/ML

Rung 7 shipped (URL Shortener production-ready)

22–28

S-plan, S-retro, Predict/Measure

S23

May 31 – Jun 13, 2027

08 Distributed/ML

Phase 08 files 01–03 read; ONNX Runtime Java hello-world

22–28

S-plan, S-retro

S24

Jun 14 – Jun 27, 2027

08 Distributed/ML

Phase 08 files 04–05 read; Rung 8 v1 (model serving endpoint)

22–28

S-plan, S-retro, Predict/Measure

S25

Jun 28 – Jul 11, 2027

08 Distributed/ML

Phase 08 files 06–07 read; Rung 8 on Kubernetes (k3d/minikube)

22–28

S-plan, S-retro

S26

Jul 12 – Jul 25, 2027

08 Distributed/ML

🚨 Rung 8 HARD GATE shipped (ML capstone on K8s)

26–32

S-plan, S-retro, Predict/Measure

Jul 26 – Aug 1, 2027

Q4 Buffer Week

Rest. Portfolio landing page live. Final Hashnode retro post.

5–10

Final review entry + M13 pitch rehearsals

Total: 26 sprints (of which 22 execute, 4 buffer). Roughly 560–720 personal-time hours across 13 months.


Sprint Load Budget

The load column is honest, not optimistic. Notice:

  • S9–S14 dip to 18–26 hrs — this covers the wedding-season months (Nov 2026 – Feb 2027, M5–M7). You will lose weekends. Plan for it.

  • S15–S16 climb to 26–32 hrs — the hard-gate sprint. If you cannot get to 26 real hours in these two sprints, use Q2 buffer week preemptively to preload Phase 05 reading in January.

  • S26 climbs to 26–32 hrs — capstone finish. Same principle: use Q3 or Q4 buffer proactively if June looks light.

If you consistently miss 20-hour weeks, you are not lazy — the plan is oversized for your current life, and you should compress rungs (drop MiniLinkedList, drop the stretch goals) rather than skip the sprint retros.


Slippage Log Template

Copy this into ../13_discipline/02_lab_notebook.md or a dedicated SLIPPAGE.md in your notes repo. Fill it out the day the slippage happens, not later.

### Slippage Log Entry

- **Sprint:** S__
- **Date logged:** YYYY-MM-DD
- **Planned deliverable:** ___
- **Actual state:** ___ (% done)
- **Root cause (one of):** work / family / health / scope-underestimate / motivation / other: ___
- **Buffer week available this quarter?** yes / no / already spent
- **Decision (choose one):**
    - [ ] Absorb into buffer week (write plan for buffer week here)
    - [ ] Cut scope (specify what drops)
    - [ ] Slide deliverable one sprint (specify what shifts)
    - [ ] Pause plan for 1 week (see 99_pre_mortem/08_fm_life_and_health.md)
- **Next-sprint impact:** ___
- **Learned:** ___

Two rules for the slippage log:

  1. You are allowed to slip. You are not allowed to be quiet about it. A logged slip is data. An unlogged slip is a lie you’re telling yourself, and it will compound.

  2. If you log 3 slips in a row without using a buffer week, stop and go read ../99_pre_mortem/09_summary_and_reset_protocol.md. That is the reset trigger.


What Not To Do With This Calendar

  • Do not front-load. The temptation in M1 is to blow through Phase 01 in three weeks and be “ahead.” What happens next: burnout by M4, plan feels stale by M6, quit by M8. The sprints are two weeks for a reason — the reason is your body and your job.

  • Do not skip retros. The S-retro is the smallest ritual with the largest compound return. Even 10 minutes at the end of a sprint writing “what shipped, what didn’t, what I learned” is worth more than the last hour of coding.

  • Do not renegotiate deliverables mid-sprint. If a sprint deliverable is wrong, note it in the retro and adjust the next sprint. Mid-sprint negotiation is how scope creep enters the plan — see ../99_pre_mortem/07_fm_scope_creep_and_shiny_objects.md.


Return to 00_command README · Previous: 01_month_by_month.md · Next: 03_north_star_artifacts.md