Tôi không phải là một lập trình viên chuyên gia nên đây có thể là lý do, nhưng tôi nhận thấy rằng bất cứ khi nào tôi tạo mã phức tạp (như trò chơi Cờ vua tôi mới thực hiện), tôi có thể viết mã chính xác để chương trình hoạt động, mặc dù tôi thấy rằng sau này - hoặc thậm chí vài giây sau! - Tôi thường phải tạm dừng và nghĩ, làm thế nào để nó hoạt động?
Không chỉ vậy, nhưng tôi cũng có xu hướng không nghĩ về mã, và thay vào đó tôi chỉ gõ đi. Ví dụ, trong trò chơi Cờ vua của tôi, tôi đã quyết định sử dụng một mảng năm chiều để xử lý các động tác và tôi thấy tôi có thể làm điều này mà không cần suy nghĩ quá nhiều. Tuy nhiên, khi tôi dừng lại và đọc nó, tôi thấy thật khó khăn khi phải xoay quanh toàn bộ khái niệm năm chiều, và tôi phải mất vài phút để hiểu đầy đủ những gì tôi đã làm và cách thức hoạt động của mã.
Có phải bình thường cho các lập trình viên khi viết mã phức tạp để không hiểu những gì họ đang làm một nửa thời gian?