Điều này thực sự phụ thuộc vào mức độ phức tạp của mã và toán học. Bản thân mã phải - như mọi khi - phải tự viết tài liệu càng tốt. Đặt tên cho các biến chính xác, triển khai các phương thức logic và súc tích (chứ không phải các hàm mega), thêm tài liệu nội tuyến khi thích hợp (nghĩa là khi không rõ ràng mã đang thực sự làm gì).
Nếu bạn đang sử dụng một thuật toán không rõ ràng, hãy thêm một liên kết đến một tham chiếu đó là nguồn. Đây là một thực tiễn hợp lý vì nó cung cấp cho nhà phát triển một cách rất nhanh để tìm hiểu những gì bạn đang làm. Như tôi đã nói, điều này rất hữu ích nếu nó là một thuật toán không rõ ràng nhưng phức tạp. Điều này sẽ chứng minh rằng (a) bạn đang làm điều gì đó có ý nghĩa và (b) ai đó đã chứng minh rằng nó hoạt động.
Một ví dụ điển hình là một số công việc tôi đã làm xung quanh kết hợp văn bản mờ. Tôi đã nghiên cứu đáng kể về các thuật toán và thực hiện cái được gọi là 'Thuật toán Smith-Waterman' (thực sự được sử dụng cho các chuỗi DNA, nhưng áp dụng cho 'khớp' nói chung). Vì vậy, thay vì chỉ đơn giản là thực hiện thuật toán, tôi đã tìm thấy các tài liệu tham khảo trực tuyến và bao gồm một hoặc hai liên kết. Như trên, điều này chứng tỏ rằng (a) thuật toán của tôi phù hợp với thuật toán được xuất bản và (b) thuật toán đã được xem xét và hiển thị để hoạt động.
Tuy nhiên, điều này không nhất thiết giải thích cách thức hoạt động của mã và các lớp khác nhau phải làm gì. Khi bạn đi viết một số tài liệu 'thực' - hướng dẫn dành cho nhà phát triển hệ thống - bạn nên giải thích những gì bạn đã làm và cung cấp đủ thông tin cho hỗ trợ trong tương lai. Theo tôi tài liệu này nên được đọc bởi một người không biết kỹ thuật; nó không cần phải 'chết lặng' nhưng nó nên loại trừ biệt ngữ và không dựa vào kiến thức giả định.