All Posts

View Directory

Zed

| 5 Minutes
Call me a follower. I’m trying out the Zed Editor for the first time, and these are my initial thoughts. Simplicity Out of the box, Zed feels quite similar to Sublime Text. Very stripped down, all business, no fluff. Don’t let that fool you; it is plenty powerful. The more you use it, the more its functionality seems to present itself to you. Sure, you can use it like a basic text editor with syntax highlights and contextual code completions. But eventually, you’ll learn what makes Zed special. …
Read more ⟶

New PHP Vulnerability

| 1 Minute
Recently, a critical vulnerability was discovered in PHP, specifically with the iconv function in the GNU C library versions 2.39 and older. This function is used to switch between different language encodings. The vulnerability takes advantage of language encoding escape sequences to trigger a buffer overflow, allowing memory to be read and written outside of the intended memory area. Security researcher Charles Fol discovered that this could be used for remote code execution. The vulnerability is over 24 years old. Although it has been patched in newer versions of glibc, the default version included with PHP has not been patched. The specifics of how to perform remote code execution have not been published yet, but Charles Fol has plans to publish them soon. Users of PHP are advised to update to the latest glibc as soon as they can. …
Read more ⟶

Racist Robots

| 7 Minutes
First of all, I feel like as a baseline we have to acknowledge that racism is, in fact, a problem. It’s not just people being intentionally mean to each other, it’s unconscious biases slowly leaking into our outward expressions. And it’s the accumulation of those expressions within the systems that drive society. This is just a discussion I’d like to start based on some observations I’ve made. I don’t have a concrete solution to any of them and I don’t think there ever will be one. It’s so subjective and such a slippery slope, but it is an absolute necessity for engineers and the people who rely on this technology to take into account. Now that that’s out of the way, we can move to the meat of this discussion. …
Read more ⟶

Privacy pt. 2: Actionables

| 8 Minutes
Right off the bat I want to say that it is impossible to live a 100% private life. The truth is that on some level someone has to know something about you for you to do anything. Privacy exists on a spectrum and it’s 100% up to the individual to decide what they are comfortable with, at least it should be. Even this website uses Google Analytics to gather audience statistics. It allows me as the creator to know how people view my content and what they try to get out of it. I have absolutely no problem with people using tools like UBlock Origin to block the fingerprinting or even disabling Javascript altogether. Good web design is stable functionality across all use cases and situations. …
Read more ⟶

Privacy pt. 1: Introduction

| 4 Minutes
To be clear, I’m specifically talking about data/online privacy. Privacy exists in so many other contexts too. Just because you have nothing to hide doesn’t mean it’s not important I hear this sentiment all the time from people who try to detract away from the value of privacy. Privacy is a human right Regardless of what you’re doing, there is an underlying truth that you should be able to live your life autonomously and free from constant surveillance. …
Read more ⟶

Distributing Ironmind + Rust Continuous Integration

| 11 Minutes
Featuring Cargo, Snap, and Homebrew Believe it or not, I’d like people to use my software, especially Ironmind. I’m finally reaching a point in the project where I feel content with it. So it’s time to share it with the world. Unit Tests Cargo Test The first step was setting up automated unit tests to build and test my project each time I merged with the master branch. Fortunately, Rust’s build system, Cargo, makes this super easy. To read the documentation for it click here but to paraphrase, tests work off of Cargo’s existing module system. Tests go into the src/tests/ directory. When cargo test is run the compiler will first run the mod.rs file in the directory. Like other rust modules, supplementary files can be stored around the mod.rs file. …
Read more ⟶

Print Your Photos: storage volatility, the impermanence of the cloud, & life after death💀

| 6 Minutes
Introduction I take a lot of pictures, and I mean a lottt of pictures. If you’ve read my past blog posts you’d know that. I want to be able to remember such a critical part of my life. I want to be remembered. And I want to capture these memories in as much detail as I can. In a strange twist, it is difficult at times to live in the moment without thinking about how this moment will be remembered. So the topic of data storage is very near and dear to my heart. Three things in particular contributed to my decision to write about this. …
Read more ⟶

Random Update: The Sims

| 1 Minute
Recently, I’ve been playing The Sims a lot. Outside of Minecraft I’m not much of a gamer but this game has really gripped me. The last time I played a Sims game I was in elementary school and it was on my 3DS. For some reason I find myself enjoying it much more now than I ever did. There’s probably some depressing observation about the burden of adulthood and escapism of fantasy to be had but I’m not that philosophical. Big shout out to CaryandConnieGaming for appearing in my YouTube recommendations and catalyzing my latest hyperfixation. …
Read more ⟶