Instantly share code, notes, and snippets.

# weakish/code.md

Last active April 17, 2023 13:15
The Six Most Common Species Of #Code #java #fun

# The Six Most Common Species Of Code

http://www.willa.me/2013/11/the-six-most-common-species-of-code.html

## code Written By A CS 101 Student

```public int fibonacci(int, x) {
if (x == 1) {
return 1;
} else if (x == 2) {
return 1;
) else {
return fibonacci(x - 1) + fibonacci(x - 2);
}
}```

## Code Written At A Hackathon

```public int getFibonacciNumber(int n) {
switch(n) {
case 1: return 1;
case 2: return 1;
case 3: return 2;
case 4: return 3;
case 5: return 5;
case 6: return 8;
case 7: return 13;
default:
// good enough for the demo, 1o1
return - 1;
}
}```

## Code Written At A Startup

```// TODO add Javadoc comments
/**
* getFibonacciNumber
*/
// TODO Should we move this to a different file?
public int getFibonacciNumber(int n) {
// TODO Stack may overflow with recursive implementation, switch over to
// iteration approach at some point?
if (n < 0) {
// TODO This should probably throw an exception. Or maybe just print
// a log message?
return - 1;
} else if (n == 1) {
// TODO Generalize the initial conditions?
return 0;
} else if (n == 1) {
return 1;
} else {
// TODO Spend some thime with my family and kids, I've been at work for
// over 48 hours straight.
return getFibonacciNumber(n - 1) + getFibonacciNumber(n - 2);
}
}```

## Code Written At A Large Company

```/**
* getFibonacciNumber is a method that, given some index n, returns the nth
* Fibonacci number.
* @param n The index of the Fibonacci number you wish to retrieve.
* @return The nth Fibonacci number.
*/
public CustomInteger64 getFibonacciNumber(CustomInteger64 n) {
FibonacciDataViewBuilder builder =
FibonacciDataViewBuilderFactory.createFibonacciDataViewBuilder(
new FibonacciDataViewBuilderParams(n, null, null, 0, null));
if (builder == FibonacciDataViewBuilderConstants.ERROR_STATE) {
throw new FibonacciDataViewBuilderFactoryException();
}
FibonacciDataView dataView = builder.GenerateFibonacciDataView(this);
if (dataView == FibonacciDataViewConstants.ERROR_STATE) {
throw new FibonacciDataViewGenerationException();
}
return dataView.accessNextFibonacciNumber(null, null, null);
}```

## Code Written By A Math Ph.D.

```public int getFibonacciNumber(int n) {
return (int divide(subtract(exponentiate(phi(), n), exponentiate(psi(), n)),
subtract(phi(), psi()));
}

public double exponentiate(double a, double b) {
if (equal(b, zero())) {
return one();
} else {
return multiply(a, exponentiate(a, subtract(b, one())));
}
}

public double phi() {
}

public double psi() {
return subtract(one(), phi());
}```

## Code Written By Your Cat

```public static final int UNITE = 1;
public static final int UNITED = 2;

// meowwwww meow
public int meow(int KITTENS_OF_THE_WORLD) {
// MEOW
if (KITTENS_OF_THE_WORLD < UNITED) {
return KITTENS_OF_THE_WORLD;
} else {
// meeoowwwwwwwww
// meooowwwwwwwwwwwwwwwwwwwwww
return meow(KITTENS_OF_THE_WORLD - UNITE)
+ meow(KITTENS_OF_THE_WORLD - UNITED);
}
}```

:D

nice one

### bmick commented Mar 5, 2019

Does the Startup code even work? It doesn't have an initial condition for n = 0, and the condition for n = 1 is repeated. Or is that part of the joke?

### icguy commented Apr 16, 2021

@bmick No, it's most likely a typo. AFAIK this picture is the (repost of the) original and it has the correct code.