I worked as an actuary for about 2 years in life insurance. Actuaries work with regulators to make sure the insurance company can pay for any insurance claims.
It is a technical profession but a lot of processes are done in Microsoft Excel or proprietary software. I got my first actuarial job in 2018 and published my first actuarial software package in 2019 - https://www.soa.org/globalassets/assets/library/newsletters/the-modeling-platform/2019/november/mp-2019-is10-caseres.pdf
After about 2 years of working I was having problems with my mental health and took an extended break from work. I wasn’t sure when it would feel right to return to the workforce, and I wasn’t sure I wanted to continue actuarial work. So I was just writing open source educational software, I wanted to make free interactive electronic books.
One day Alec Loudenback the creator of the JuliaActuary GitHub organization invited me to join Fumito Hamamura’s (creator of LifeLib) LinkedIn group/Github Org for open source actuarial software. I joined and eventually built them a website.
I built this website using Next.js, TypeScript, TailwindCSS - https://www.actuarialopensource.org/
I recently added internationalization. Electronic books with Python exercises are sort of hidden since it isn’t internationalized right now. https://www.actuarialopensource.org/book/welcome
There is this trick I have for having content-based react components build themselves. You write the exercise on the page and can copy and paste JSX. https://www.actuarialopensource.org/render
We also run performance tests and validations for open source actuarial software https://github.com/actuarialopensource/benchmarks
I knew that the linkedin group didn’t have any SEO visibility. So I made the website so that people could find the linkedin group mostly.
Now I’m trying to make the website help people find open source software and open source efforts. We can do a much better job at this.
I care a lot about reproducible research. Business processes in insurance companies can’t be reproduced by the general public, due to closed source software and proprietary data.
Also without open source software it is challenging to communicate results. Everything is math notation. If you came to a paper hoping to implement a technique you will often have to implement it from scratch.
If someone would refactor and improve the codebase that would be great. Also we need some tests in Playwright.
Also the GitHub API requests are slow during development, so we need a nice workflow for toggling mock data in its place.
Taking code contributions takes time, since I’m in school I’m not in the best position to do big code reviews for new features.
Experiments on optimizing memory and runtime in life insurance models - https://github.com/actuarialopensource/benchmarks/blob/memory_optimizations/computation_graph/experiments.ipynb
- Fave food: my mom’s oatmeal
- Fave beyonce song: CUFF IT - WETTER REMIX
Overall any advice on what it means to build community and how to do it?