programming notes