About
I’m Daniel. I currently work at HPE on the Chapel language team. Previously, I got my Master’s Degree in Programming Languages at Oregon State University. Due to my initial interest in calculators and compilers, I got involved in the Programming Language Theory research group in my first year of college, and ended up gaining same experience in formal verification, domain specific language, and explainable computing.
For work, school, and hobby projects, I use a variety of programming languages, most commonly C/C++, Haskell, Crystal, and Elm. I also have experience with Java, Python, Haxe, and JavaScript.
A few notes about me or this site:
- Correctness: I mostly write technical content. Even though I proofread my articles, there’s always a fairly good chance that I’m wrong. You should always use your best judgement when reading anything on this site – if something seems wrong, it may very well be. I’m far from an expert.
- Schedule: I do not have a set post schedule. There are many reasons for this: schoolwork, personal life, lack of inspiration. It also takes a very long time for me to write a single article. My article on polymorphic type checking is around 8,000 words long; besides writing it, I have to edit it, link up all the code references, and proofread the final result. And of course, I need to write the code and occasionally do some research.
- Design: I am doing my best to keep this website accessible and easy on the eyes. I’m also doing my best to avoid any and all uses of JavaScript. I used to use a lot of uMatrix, and most of the websites I browsed during this time were broken. Similarly, a lot of websites were unusable on my weaker machines. So, I’m doing my part and making this site usable without any JavaScript, and, as it seems to me, even without any CSS.
- Source code: This blog is open source, but not on GitHub. Instead, you can find the code on my Gitea instance. If you use this code for your own site, I would prefer that you don’t copy the theme.