The evolution of a computation:
- Derive a finite element for consistent electromechanical simulation.
- Try to explain to a friend what I just did. Fail. Swear.
- Try to explain to an advisor what I just did. Have error in derivation pointed out. Swear.
- Finish working out the formulas.
- Think about implementing formulas. Shudder
- Eat a bowl of ice cream.
- Implement the element. Write sanity checks, which fail.
- Tell the computer it's mother was a goat.
- Debug. Swear. Debug.
- Tell Matlab
thou'rt a stupid-head!
- Element passes sanity tests. Try it in a more complete test.
- Give up. Sleep.
- Discover the inevitable sign error. Roll eyes.
- Puzzle over why the simulation doesn't behave as expected.
- Puzzle more.
- Discover expectations were incorrect. Swear.
- Get consistent results. Try larger example.
- Large example is painfully slow.
- Think about appropriate insults for an inanimate object.
- Rewrite element in C. Now bottleneck is elsewhere.
- Rewrite assembly in C. No more bottleneck!
- Try larger example. Bottleneck is now where expected.
- Record pointless list on bloc.
- Go to sleep.
Mmm. Sleep.
(Editorial note: Mentally calling the computer a foolish pig-dog in
a Monty-Pythoneseque pseudo-French accent counts as
swearing.
)