t27.aiEnglish

Честный план на следующий месяц

Вы узнаете

Как написать план, где каждая строка либо измерена, либо прямо названа неизвестной, и нет обещаний о будущем.

План на следующий месяц честный, когда каждая строка одного из двух видов: то, что вы измерили, с запуском, который это напечатал, или то, чего вы пока не знаете, с запуском, который это покажет. Строке, которая обещает результат, которого никто не измерял, в плане не место. В выдуманном плане для дневника чтения 5 строк: 2 измерены, 3 неизвестны и 0 обещаны, и 2 + 3 + 0 = 5. В спецификации 4 теста: строки складываются в план, что-то измерено, что-то неизвестно и ничего не обещано. Поставьте PROMISED равным 1, и два из них покраснеют. Этот урок не даёт прогноза никакого рода: это способ писать, а не предсказание.

Попробуйте

В спецификации поставьте PROMISED равным 1 и прочитайте 2 теста, которые падают; затем верните как было. Напишите 5 строк для своего проекта и пометьте каждую измеренной или неизвестной; если строка ни то ни другое, вычеркните её.

Открыть интерактивный урок →

An honest plan: what is measured, what is not known yet ↗

A plan of five lines for a made-up reading log, each marked measured or unknown, with no promise about the future. Lesson 27 of the Vibecoding course.

specs/vibecoding/honest_plan.t27

// SPDX-License-Identifier: Apache-2.0
; Vibecoding, lesson 27: An honest plan for the next month.
; A plan is honest when every line is either something you measured or something you say you do
; not know yet, and no line is a promise about the future you cannot check.
; Made-up plan for the reading log: 5 lines. Plant a bug: set PROMISED to 1 and watch it go red.
; phi^2 + 1/phi^2 = 3 | TRINITY

module vibecoding_honest_plan;

pub const PLAN_LINES : u8 = 5;
; Lines that name a number a run printed.
pub const MEASURED : u8 = 2;
; Lines that say plainly: not known yet, and what would tell us.
pub const UNKNOWN : u8 = 3;
; Lines that promise an outcome nobody has measured.
pub const PROMISED : u8 = 0;

test every_line_is_measured_or_unknown {
    assert MEASURED + UNKNOWN + PROMISED == PLAN_LINES;
}

test the_plan_names_something_it_measured {
    assert MEASURED >= 1;
}

test the_plan_names_something_it_does_not_know {
    assert UNKNOWN >= 1;
}

test the_plan_promises_nothing_unmeasured {
    assert PROMISED == 0;
}

Открыть спеку урока в плеере ↗

Все уроки