A collection of random disconnected things that I learn on given days.
My occasional/semi-regular checkins that I wrote to account my time at Recurse Center. The point of checkins are to keep track of what I work on, who I work with, and the social events I go to. These are short but down to the point summaries of what I've done.
An introduction to Nix and its ecosystem. The basics of Nix as a language, its use as a package manager, build tool, and much more. Some brief discussion of core concepts like derivations and flakes, and a walkthrough of simple examples packaging programs. Learn how Nix can help create reproducible builds and consistent development environments, and do fun things like allow bash scripting with any binary, or making pure latex documents. Post is still in progress.
This is my portfolio for Professor Ronald Loui's CSDS285 @ CWRU, a class that teaches various Linux tools and concepts, like bash, awk, regex, and bottom-up design. It's an eclectic mix of scripts and Linux-y things I've done with the stuff I've learned throughout the semester in the course. There are a few projects towards the beginning, and then I have a bunch of random bash scripts and more Linux-y things towards the bottom portion.
A neat hack that I figured out to get the titles on my website to render in a very specific way. Many titles on my homepage fill in automatically with a typewriter animation. Instead of the titles rendering where their darker background grows wider as the typewriter types, which was the default since I was using fitting width, I found a hack to get the widths to be correct to the size that the text would end up being on the initial load.
I talk about how I got my markdown to include image groups with many images side-by-side, automatically. I’ve scoured my way through eclectic convoluted docs, pained past unsensical bugs, and have finally begun to wrap my head around the world of JS markdown parsing. With a general overview and some useful snippets, you’ll too learn how to customize markdown rendering for your own purposes.
In my quest to automate SVG file generation, I discovered Chrome's ability to convert complex SVGs with imports into self-contained PDFs through its printing protocol. My aim was to write a script to easily convert Chrome-preview-able files into PDFs. With Selenium and Chrome's Devtools Protocol, I was able to figure out how to perform the conversion, but wasn't satisfied. In this post, I discuss my script to convert complex files like SVGs to PDFs without any file handling, from memory to memory, headless-ly to allow for a smooth and efficient conversion process.
A few years ago I discovered a Microsoft account creation captcha bypass exploit that allowed you to create @msn.com email accounts through an old piece of microsoft software called MSN explorer. I submitted a vulnerability report and got it approved, and a captcha added to the endpoint. I talk about how the process works, how I was able to figure it out, and, at the end, I provide an explanation of how it's still possible (in 2023+!) to create a Microsoft account with the domain via a straightforward step-by-step walk through.