Fulkod är inom programmering en bit programkod, vars syfte är att på ett enkelt och snabbt sätt lösa ett tillfälligt problem. Det resulterar oftast i att koden blir svårbegriplig, svår att underhålla eller gör programmet instabilt.

Ett exempel, skrivet i C:

//Fulkod
void getline(char *buf, int len) {
        while (((*buf++ = getchar()) == '\n' ? *--buf = '\0' : 1)  && --len > 0);
}

//Tydligare lösning
void getline(char *buf, int len) {
	int i;
	char c;

	for (i = 0; i < len; i++) {
		c = getchar();

		if (c == '\n') {
			buf[i] = '\0';
			break;
		} else {
			buf[i] = c;
		}
	}

	return;
}

Glöm funktionsnamnet och säg vad det första exemplet gör. De båda exemplen gör exakt samma sak med skillnaden att exempel2 är mycket lättare att läsa.

Se även redigera