I'm Soham: a student of mathematics, functional programmer, and enthusiastic explorer of the endless unfamiliar, slowly working towards being able to coherently talk about arithmetic geometry and number theory.
This is my (heavily under-construction) personal website, and also the latest in a long line of blogs, each subjectively better than the last (even if this is essentially a direct ripoff of the Bootstrap docs.css style at the moment).
I am an avid user and advocate of Arch Linux, and enjoy using text-based interfaces and Unix command-line and stream processing tools. I do all my work in Spacemacs, an Emacs package distribution that extends the Vim keybindings provided by evil-mode to provide an enjoyable text editing experience.
Among other things, I'm interested in and enjoy thinking about expressive type systems, classical music, jazz(-fusion), post-rock, "literature" (especially magical realism), "hard" science fiction, and psychology, and also sometimes indulge in aimless cogitation about AI, consciousness, and related philosophical subjects.
I currently live in Kolkata, India, where I am in my last year of high school.
Refinator is an under-construction collaborative database of online references and lecture notes, with an emphasis on math and the sciences, written using Django.
"So what are schemes?" is an ongoing blogging project where I write about algebraic geometry, mostly as I work through Ravi Vakil's notes from Stanford's Math 216, and other references.
I am working on an expository paper that works through a 1945 result of Artin and Whaples in number theory (specifically, it proves an axiomatic characterization only satisfied by number fields and function fields).
I am currently exploring creating scientific and music-theoretic visualizations in ClojureScript, with the intent to switch over to PureScript when I feel comfortable enough with it.
You can find more in the archives.
twmn-mpd is a Python package, installable via pip, that listens for changes in the state of the Music Player Daemon (mpd) on a (usually Linux) machine ad creates alerts, either using the standard DBus notify-send mechanism, or directly to the twmn notification daemon (which I use heavily).
I maintain, and use as a significant vehicle of procrastination, a dotfiles repository that contains a featureful notification framework made using twmn and lots of shell scripts.
Macroni is a LaTeX macro organizer that significantly reduces the pain of having to write multiple macros that are variations on the same theme and generally takes the pain out of the whole thing.
ects is a write-only backup system I wrote for my school's CS lab around the middle of 2016.
I live-TeXed mostly-coherent notes from classes I took as a camper at Canada/USA Mathcamp in the summer of 2016.
I also used to write up solutions to exercises in math textbooks at one point, but I eventually replaced the repo with this blog.
(I haven't worked on these in a while: most of these are from when I was in tenth grade, or younger, but I guess they're non-incriminating and just mildly embarrassing at best.)
TermAnim is a proof-of-concept, highly hacky, and eminently non-portable animation program for the BlueJ console.
Pebble is a small library for symbolic differentiation in Haskell that I wrote when I was still wrestling with algebraic datatypes.