RSSAmplifier

Blog

Adam's Blag

Recent content on Adam's Blag

/RSS feed ↗14 posts

Latest posts

Building A Basic File Scanning Tool With Rust

Bare bones scanning 
 Early AV scanning relied mostly on signature scanning. Mostly looking for string patterns in a file or something as simple as just hashing a file and comparing it against a set of known hashes. For our first pass, we’re going to do exactly that. We’re going to load up a list of hashes we know to be bad and then we’re going to check if a given file…

Monty Hall

The Monty Hall problem is a classic game theory and probability puzzle that most people have heard of in their grade school mathematics classes. The problem comes from the TV show “Let’s
Make A Deal” where a contestant is shown three closed doors. Behind one door is a prize, behind the other two doors are goats. The odds of choosing the prize in this scenario are 1 in 3 . But…

I Can't Program in C++

H. Jon Benjamin, known for voicing Sterling Archer, and Bob in the shows Archer, and Bobs burgers released a Jazz album in 2015 titled: “Well, I should have… Learned How To Play Piano” . As the title of the album and the second track “I can’t play piano” suggests, Jon can’t play piano, nor does he really like Jazz. Feel free to listen to some of the music…

Creating a Résumé in Doom

Crafting an effective Résumé 
 My current résumé looks professional and lays out all the information I need to convey to potential employers. I made it with a LaTeX template that I’ve modified over the years to suit my needs. This format allows me to comment out information like employers from years ago that I don’t want to include, skills that aren’t relevant, and of course…

Creating Launch Plugins for Pop Os [Updated for 21.10]

Background 
 This is an update to a previous post . In 2021, I wrote a short blog post on an easy way to create a plugin using the Pop_launcher in Pop!_OS. Unfortunately for me, Pop!_OS completely changed the way the their plugins work in 21.10! I found out when I received an email from someone saying that they had followed my instructions but didn’t have any success with the plugin.…

Why I use Lynx

Lynx may be the oldest, currently maintained browser around. Though it looks nothing like a modern browser and will probably break trying to load any react based webpage, I still think it’s one of the most underrated and underutilized browsers, which is why I still find myself using it on an almost daily basis. 
 What Lynx offers: 
 
 VI (and Emacs) bindings 
 its own dotfile…

Creating Launch Plugins for Pop!_OS

Update 
 This post was written in 2021 for Pop!_OS 21.04. These instructions no longer work for Pop!_OS 21.10. Please see the new, updated post 
 Background 
 I’ve been running linux on all of my machines for almost 15 years. For the first five I probably used a dozen or more flavours of Linux including OpenSuse, Fedora, Arch, Ubuntu, and many others. Eventually wiping my…

Debugging CHIP8 code

The first time I wrote a program in hexidecimal or assembly was using a made up, educational cpu called Pep8, this was before I had read anything about how to properly organize code, programming practices, and before I had read clean code . Over the last month and a half, I’ve been working on a CHIP8 emulator, which you can find here , so for the first time in a while, I’m revisiting…

Scraping Wikipedia With Rust

Writing a toy scraper 
 As the quarantine continues and many things are still closed, I’m still spending a lot of time looking for fun side projects I can complete in a few days or less. As I drifted off to sleep one night wondering about some correlations between countries and various other data points. I realized that wikipedia probably had all the data I needed to find out. What if I…

Building a Cli Tool in Rust

Like almost everyone I know, I’ve been sitting pacing inside for almost 8 weeks, waiting out the sars-cov-2 pandemic. I’ve been “zooming” with friends, phoning my family members, and catching up on reading. Gone are the days of concerts and movie theaters. Now is the time for reading, Animal Crossing, and updating one’s websites. So here it is, a new theme for a new year and a new post to help…

Random Numbers

Random numbers from the second volume of TAOCP and experimentation with PRNGs. 
 It’s been about nine months since I finished reading the first volume. Though it’s likely not a surprise to many, it’s one of the more daunting reads however, I found it to be surprisingly entertaining and well written. My summary of the experience reading through the first volume was more or…

Functional Programming in Racket

A dive into functional programming in Racket. 
 Preface 
 I’ve been playing around with functional languages for a few years now; I’d pick up an ebook on scala or Clojure some Saturday afternoon and try going through a tutorial or two. Maybe attend a workshop on it over a weekend with a friend who found the event on meetup.com and get a somewhat shallow overview of the…

The Art of Computer Programming

An attempt at making my way through one of the most infamous computer science books 
 I was recently gifted the first volume of Donald Knuth’s: “The Art of Computer Programming”. Being the computer geek that I am, I have never been so excited yet, intimidated about sitting down and working through what some people would call a Reference book.

Reading Parquet Files With Java

A simple way of reading Parquet files without the need to use Spark. 
 I recently ran into an issue where I needed to read from Parquet files in a simple way without having to use the entire Spark framework. Though inspecting the contents of a Parquet file turns out to be pretty simple using the spark-shell , doing so without the framework ended up being more difficult because of a lack of…