I'm a PhD student in biomathematics, working on stochastic individual-based models of evolution in spatially structured populations. My other interests include cryptography, programming games and puzzles, photography and graphic design.
Please consider any (original) code I post to Stack Overflow and other Stack Exchange sites to be released under CC-Zero unless stated otherwise. You may do whatever you want with it and don't have to credit me in any way, although of course that would be nice.
In addition, to avoid ambiguity regarding the open source status of CC-Zero, you may also use, copy, modify, and/or distribute any original code I have posted on any Stack Exchange sites under the terms of the ISC license or any other OSI approved open source license, unless explicitly stated otherwise. If doing so, please use the copyright statement "Copyright <year of posting> Ilmari Karonen" if no other copyright statement is provided.
I am the main author and maintainer of the Stack Overflow Unofficial Patch (SOUP), a user script for browsers with GreaseMonkey-compatible user script support (Firefox, Chrome, Opera, Safari, possibly Edge) that fixes or works around a number of outstanding issues with the Stack Exchange user interface.
I tend to answer a lot more questions than I ask. Some answers I'm rather proud of:
- How does light bend around my finger tip? — my first ever 100+ score answer!
- An implementation of the ISAAC cipher in PHP
- Galois fields in cryptography, or, "what is that GF(pn) thing anyway?"
- Making the background of an image transparent in Gimp
- Improve your game physics with Velocity Verlet
- Computing the Pareto frontier when you can choose multiple options
- Why is the letter “h” used to denote entropy?
- Damm check digit algorithm for base 2n (2 ≤ n ≤ 32)
- Estimating a variable event rate using exponential smoothing