Introduction


Hello, and welcome to my website. I'm jmk453, a guy who likes to write prose and code, read history, and philosophize.

This website has seventeen pages worth of content. The average person can read half a page a minute. This website is a work in progress. What's ever complete?

Don't assume that your perspective of my perspective is correct. Open your mind and learn something. Diversity of perspectives is useful. Diversity is challenging. The comfortable path is unlikely to lead to truth.

Table of Contents


  1. About Me
  2. Where To Find Me
  3. Contact Me
  4. Projects
  5. How I Work
  6. Favourite Media
    1. Books
    2. TV Series
    3. Films
    4. Games
    5. Songs
    6. DJ Sets
    7. YouTube Channels
    8. Educational Videos
    9. Funny Videos
    10. Video Game Cinematics
    11. Podcasts
  7. Photographs
  8. Important Quotes
  9. Advice
  10. Personality Tests
  11. My Time at the University of Toronto
  12. Technical Opinions

About Me


I spent the first two years of my life homeless. I started programming when I was in kindergarten. I attended St. Lawrence College for a semester when I was five. I competed in track and field tournaments in grade two. I taught chess classes in grade three, and I competed in provincial chess tournaments in grades four and five. I was in the Royal Canadian Air Cadets in grades seven and eight. I dropped out of school in grade nine. I worked in an electronic recycling facility when I was seventeen. I obtained a GED diploma when I was eighteen, the earliest age allowed. I attended Algonquin College for a year. I dropped out of the University of Toronto with one semester remaining in my bachelor's degree in computer science.

I self-host authoritative name servers, recursive DNS resolvers, and email servers. I try to limit my reliance on anonymous people for my critical infrastructure.

I prefer the night over the day. Boredom is my second greatest enemy. Night walks are one of my favourite activities.

I spent $150 travelling across Canada by train in my early twenties. It was a weird and uncomfortable experience. Someone stole the armrests from a few of the seats while I was busy sprinting across Winnipeg to get back on the train before it left multiple hours earlier than initially stated. My final stop in Vancouver had a homeless encampment with at least 100 people living in it. Teenagers were injecting heroin into their veins on the sidewalk. A few homeless people were trying to finesse money out of travellers getting on the SkyTrain. I visited a person who had a shrine to his best friend's girlfriend placed on the wall in front of his bed. I met that girl's dad. He couldn't stop staring at women in public. My brother tried to kill my mom with a makeshift bomb while I was gone. A few years earlier, I finished reading the last half of Shōgun while waiting for him to have his stomach pumped to prevent a drug overdose. I'm lucky to be deeply empathetic. Having remorse is powerful. Self-sacrifice is important.

I spent a year of my mid twenties taking sole care of my mom as she died of cancer. The worst part of the experience was defending her from her abusive family. Nature is acceptable. Human nature can be unacceptable. I had murderous rage due to how she was treated by her narcissistic father. She was sexually harassed by her father when she was a child. She fled her home as a teenager after he imagined her as a child prostitute during a drunken hotel stay. His first wife killed herself before my mom left. He was violent with his second wife up until my mom left. He was aware of a pedophile teacher who molested his daughter's friend and did nothing. He forced my mom's arm into a nest of spiders. He tried to crash his car when trying to teach his daughter how to drive. He commented on my mom's body too often throughout her life. His proudest academic achievement was his performance in grade three mathematics. He lived in almost-constant anxiety when interacting with others. Hubris defines his experience. It was weird having him force his way into my mom's life as she was dying. It was weirder having him try to force his way into my life after her death. Abusers justify their behaviour in disgusting ways. My aunt and grandmother gossiped about my feet. My grandmother accidently forwarded an email about my feet to my mom. It was very strange and something that I tried to ignore. It's strange to have family members discuss you in perverted ways. I'm glad that I didn't have to live through what my mom went through.

I've lived in eleven cities. I'm an expert in Bash, C#, C++, JavaScript, Python, Ruby, and Rust. I tend not to care about what city I live in or what language I use. I like finding problems and solving problems. I care about my home environment and my work environment.

I spent a month travelling across Japan in my mid twenties. I spent most of my time in western Honshu. It was a beautiful experience. They don't take accountability for the horror they inflicted on Asia in the second world war. The Hiroshima Peace Memorial Museum leaves a lazy implication. My mom died shortly after I returned home. My sister stole a few thousand dollars from my mom just as I was returning home. She took twelve thousand dollars from my brother. My mom was in debt in death. She would later steal my deceased mom's car from my brother. She then destroyed the car and blamed my wife. She claimed to have a spiritual connection to the car. She refused to drive with winter tires in a Canadian winter. She stayed at my mom's apartment for a few days after my mom's death to take her few remaining valuable items. She married shortly after my mom's death. Her husband pissed all over my toilet the main time that we met. He then told me that he was about to inherited his boss's moving company. I hope that he was drunk. About a decade earlier, my sister and my mom went on a trip to Portugal. My mom returned humiliated. She believed that my mom's spirit was following her and influencing her life. My sister could be bipolar. I'm not a psychologist. Morality is important. Without morality, life is war without allies. War without allies ends in disgrace.

I find cui bono to be an incredibly powerful phrase. It's prudent to remember the phrase in an era of LLM enthusiasts. It's also prudent to remember the phrase in an era of LLM luddites. Agendas exist. Some are more hidden than others. Most communication is advertising. Dialectical thinking is important.

I'm casual. I don't trust formality. Being polite is important. Imposing your rules on others is not polite. Fluidity is crucial. It's better to change yourself to fit reality than to change reality to fit you.

I'm gifted. My emotions are heightened. I think very intensely and I feel very intensely. My perception is honed. I care deeply for vulnerable people. When I was five, my father took me hostage in our apartment and threatened to kill me while my mom desperately tried to bash down the front door to save me. He was and still is a drunken fool. My paternal grandmother tried to kidnap me at least once. I'm lucky to be gifted. I'm thankful to be alive and safe as an adult. I feel sorrow for those who are vulnerable. It's difficult to accept the cruelty of many people who are in positions of power. It's especially difficult to see people be cruel to children.

I find it hard to understand the nature of non-gifted people. It's hard to understand how one can lack my intensity. There's a lot that I don't understand. Life is magical. The magic lies in understanding. I'm lucky to crave understanding. Being gifted is beautiful. It would be nice for everyone to be gifted. Give a man a fish and you feed him for a day; teach a man to fish and you feed him for a lifetime is an important proverb. Being gifted is teaching yourself. A pain point for me with non-gifted people is their slowness. Many non-gifted people would be wiser by being faster and accepting failure. Failing as quickly as possible is often a great way to learn. I don't like people who don't accept failure. People who don't want to see reality are annoying. The way that an average non-gifted person experiences a cognitively impaired person is similar to how I experience an average non-gifted person. I don't like seeing how much non-gifted people struggle. It's sad that not everyone can be gifted. I wish that my ability was the baseline. Reality isn't fair.

Music has always been a large part of my life. It would be boring to live without music. I tend to listen to loud high energy music. I find it easy to extract meaning from many genres of music. I would be surprised if I don't require hearing aids in old age. I like to process my emotions with music. Music is beautiful. Music has given me insight into my neural plasticity. The brain is a wonderful organ. Music is a great way to control your life. I suggest that everyone experiment with music. Being static is such a poor way to live. I can't be productive in an office. I need to allow myself to be my natural dynamic self when working. Verbal meetings steal my productivity. I prefer text-based communication so that I can listen to music while actively participating in conversation. Being a high performer requires accommodations. What works for the group doesn't work for the outliers.

Reading is extremely important to me. I spend the vast majority of my time reading. It's baffling to me how most people essentially don't read. A life without reading is dull to me. It pains me to see people struggling to read. It happens often. I used to think that I had a problem with communicating. I created artificial languages as a toddler. I spent periods of my youth thinking that I was dumb for needing to translate from my way of thinking to the common ways of thinking. I spent most of my childhood oscillating between thinking that I was dumb and thinking that I was a genius. I didn't accept that I'm gifted until I was almost thirty. I've very rarely thought that I was average. I had growing pains with my self-identity. The growing pains started to fade as I reached my mid twenties. I'll likely continue to have issues with my self-identity throughout my life. I didn't ask to be unique. Reality isn't fair. I read slightly below 500 words per minute. I type about 80 words per minute. I'm known to speak quickly. I tend to be easy to understand. People seem to like it when I make their job easier.

History is important to me. I've spent large portions of my life studying history. I spent much of my childhood researching historical figures. I found Alexander the Great and Augustus to be the most interesting people to study. I also found Justinian the Great and his wife Theodora to be interesting people to study. I find English, Ottoman, and Japanese history to be important for understanding the modern world. If you start with those three histories, you touch most of the broad strokes of world history. Understanding ancient Roman and Greek culture is important for understanding the broad strokes of modern culture in developed nations. History is extremely complex. I like to think of history in terms of grand strategy. It's my personal way of understanding the world.

I invited my cognitively impaired cousin to live with me after I learned that he was living in poverty. I discovered that he was physically abused by his step father and mother. His step father played a game where he would stare into my cousin's eyes and punch him if he stopped staring back. His mother tried to run him over with her car multiple times. While he was living with me, he tried to hide a lean addiction. He also tried to hide that he was growing a few dozen cannabis plants in his room. He stole about $2,000 from me. He was in a state of psychosis. He spent much of his time believing that he was a video game character or an actor in a movie. He revealed that he had physically abused his ex-wife. He refused to believe that they weren't going to eventually get back together. He fled his ex-wife's country and changed his name. I decided to cut off contact with my extended family after he took advantage of my charity. He had many delusions of grandeur. He believed that I was his brother and that I would save him. He was certain that I stole five million in Bitcoin from him. He claimed to have superpowers. His parents wanted to sue me. It was an interesting experience to live with a crazy person. I don't regret it. I learned a lot about my extended family. He was quite racist. He had hate in his heart. I love learning. I tried to give my cousin the tools to change his life but he decided not to put in the effort required to get clean and become educated. He kept talking as if he was going to turn his life around, but he constantly went back to abusing drugs and people. I've learned in my life that most people don't change. Most people are aware of what they need to do. But they fail to act. It's incredibly powerful to simply say you'll do something and then do it.

My mom had surgery within eight months of initially thinking that she had cancer. A few weeks before the surgery, my brother was evicted from a room that he was renting and then tried to live with my mom and me. Her doctors told her not to consume THC. She was a veteran and used prescribed cannabis for almost a decade to manage her traumatic military experience. My brother promised to stop smoking weed. He secretly kept smoking weed. He threatened to kill himself when we found out and asked him to leave. A few years earlier, he was living in my mom's apartment with us and she asked him to stop vaping nicotine. He threatened to kill himself and then moved out. While living in my other brother's wife's parent's house, he impregnated a woman who he knew from high school. He slashed her tires shortly after she gave birth. He threatened to murder rideshare drivers when inconvenienced. He was rude to waiters. He was arrested for assaulting a stranger with a weapon. He was imprisoned at the Ottawa-Carleton Detention Centre for threatening to murder a security guard with a fake gun while stealing from a grocery store before being released on bail with my mom as his surety. While being transferred to the detention centre, he called someone a nigger and was beaten up in response. He was then placed in protective custody. He's oddly homophobic for a man who's used to living in urban Canada. He didn't shower while imprisoned. He got into a physical fight with our sister over a curtain dispute. He lost the fight and decided to break her toilet. He learned through experiencing our mom that people are vulnerable. He learns through experiencing our world that people resist.

It's strange that I'm related to so many fiends. I've always had a strong connection with my mom. Her issue was that she was always searching for guidance. My problem has been that I don't want to guide anyone. I've needed to accept my role. It's taken me a long time. It's emotionally difficult to lead people. It's difficult to not take on the emotions of people who I'm leading. It's difficult to surrender yourself to the needs of a group while remaining an individual. Most of my problems in life have been derived from difficulty in integrating my emotions with my intellect. Most of my relatives are drug addicts or alcoholics. Most of my relatives have been shunned from every community that they tried to join. It's strange to have grown up as a highly empathetic gifted kid with many antisocial people in my extended family. I'm very lucky to be gifted and to have been able to forge my own path in life. People tend to reveal exactly who they are if you're empathetic and pay attention.

Alex Parise, a person that I met in elementary school went down a dark path. In middle school, he engaged in bestiality. He molested both men and women. He brought a knife to school in an attempt to stab someone. Anxiety stopped him. He had a specific voice that he used when lying to people. He had a child with a woman at a fairly young age. He used his lying voice with her every time that I observed them together. His dad greeted me at his house while wearing a male thong when we were in grade six. The child was raised by her mom and her grandparents.

I operate a Tor relay. This website is available as an onion service. Access this website in the Tor Browser and you'll be presented with the onion address.

I have a strong ability to visualize. I have an incredible memory. I naturally think of abstract concepts in a way that's similar to how people utilize memory palaces. I cry when I interact with people and remember that my way of thinking isn't natural to others. Mathematical thinking is essentially impossible to those who can't build mathematical structures in their mind. The language of math is hidden to the vast majority of people. It's incredibly sad to understand that not everyone can combine intuition and reasoning in the way that I do. There's an internal feedback loop that others are missing. It's incredibly exciting to understand how I can help others see concepts that they could never see on their own. Everyone that I've personally known has had to understand mathematical relations through rote memorization. I used to think that math was boring based on how everyone around me studied math in school. I have to study math on my own. Studying math with others is an exercise in pain. Teaching math to others tends to be enjoyable. Operating in abstract structures is fun. It's beautiful to see abstract relations. Intelligence is likely general. Humans are surprisingly similar in nature. Racism is nonsense. The idea of different types of intelligences quickly leads to scientific racism. Intelligence is mostly genetic. Culture is mutable and explains many of the differences between people. Most racism is misplaced cultural opposition. All aspects of a culture should be questioned. Religion and culture are almost equivalent. I don't trust people who see religion as immutable. Those who see religion as immutable are dangerously close to being racist.

I find it important to remember that we're all going to die. Everything is temporary. None of us are immortal. I like to delusionally think that we'll all live forever when I fall asleep. I like to remember that I'm lucky to be alive when I wake up. It's important to remember the beauty and destruction in life.

My best ideas tend to be revealed to me in dreams. My dreams are vivid. My visions can be bright enough to almost blind me. If I was raised in a religious environment, I could see how I'd attribute my visions to a god. It's a gift to be able to automatically solve problems in my sleep. The unconscious mind is powerful. Not everything can be understood. I find bathing to be helpful in processing my emotions. My bathroom was a place that I felt safe from the world in childhood.

I lived with an illegal immigrant Hindu nationalist for a year. It was an odd experience. She tried to convert me to Hinduism on Christmas. She was fired from her job as a personal support worker for being physically rough with clients. She faked a nursing credential in India to immigrate to Canada. She faked employment history to avoid being sent back to India. She claimed that I stole tens of thousands of dollars worth of gold from her, which caused her to refuse to pay rent for half a year. She invited strange people who she didn't seem to know from Brampton for her birthday. They trashed the house. She accused me of being homosexual for not liking badminton. She thought that Gandhi deserved to be assassinated. My ex who was in a long distance arranged marriage was also living with us. Her husband claimed to be from a family that's in the top 0.01% of net worths in India. He worked a 9-5 at a job that he doesn't like while earning 25% below the average income for someone with his experience in his city. I was told that I'm not welcome at their wedding. I was later told to never contact her or anyone that she knows. A few years earlier we were going to get married before her father decided that I'm not a member of an appropriate ethnicity.

Meeting my ex's family
Meeting my ex's family

I liked to climb large trees and buildings when I was in elementary school. I'm terrified of heights. I'm not sure why I climbed so much. It was probably due to boredom. In middle school, I liked to skip class and walk through a forest near my school. I spent a lot of time sitting on a cliff overlooking the Pacific Ocean instead of sitting in class. I took every opportunity I had to avoid school. I can confidently say that school was a net-negative experience for me. School taught me how to be lazy. I tended to either be a class clown or simply not talk to anyone. Some teachers didn't know who I was. It made it easy to skip class. I spent too much time in middle school flirting with girls. Some of those girls were overall awful people. I put a lot of effort into trying to forget my past. I got into a lot of fights. I was never the aggressor. I wasn't a victim. I was bored and put myself into situations that I could have easily avoided. Fighting was annoying. It was also thrilling.

I spent eight months working as a software developer intern at SOTI. It was boring. Upper management seemed directionless. The lead backend architect micro managed and produced a very poorly performing product. He got into intense arguments with a remote software developer during our daily scrum meeting. I asked him to review my code once. He simply said that I should wrap everything in a try catch block. I showed him that my code couldn't throw errors. I received no follow up. My manager's advice was for the most part counterproductive and generic. He was stuck in the past. The office that we were working at was closed soon after I left. I spent about five hours a week working. The rest of my time was spent casually thinking. I worked on two projects that I'm proud of completing. I developed a security scanning tool that wrapped ZAP, and I containerized the CI system, improving performance by 50% to 250%. I thought that it was a cool improvement. One of the senior developers had trouble understanding how to attach a debugger to the containerized services. I thought that it was not so cool trying to help him out. I felt that I had to hold his hand too much. It was a decent experience working there. I wouldn't do it again.

I'm somewhat impatient with slowness and inefficiency. I dislike how easily bureaucracy forms in any organization. It physically pains me to accept mediocrity from people who I know can do better. I have no problem with someone performing their best and coming short of my standard. My problem lies with people refusing to be the best version of themselves. I believe that the vast majority of people are capable of being greater than they already are.

Visit my wife's website.

Where To Find Me


I microblog with Mastodon. I subscribe to forums with Lemmy. I write experimentally with WriteFreely.

I sometimes contribute to Wikipedia.

Contact Me


I prefer to be reached by email.

Grab my GPG key to securely communicate with me.

gpg --locate-external-keys hello@jmk453.dev

Projects


Nettowoku

Nettowoku is an overlay network that uses Tor to connect nodes and WireGuard to encrypt regular communication between nodes. It's free software licensed under the AGPLv3, and it works on Linux and macOS.

Mini Storage

Mini Storage is a distributed object storage that implements a subset of the S3 API. It's free software licensed under the AGPLv3, and it works on Linux.

Crucible

Crucible is a tool for maintaining a fleet of Gentoo systems. It's free software licensed under the AGPLv3, and it works on Linux.

Nemusaba

Nemusaba is an authoritative name server. It's free software licensed under the AGPLv3, and it works on Linux and macOS.

Jellyshare

Jellyshare is a plugin for Jellyfin that lets you share libraries between servers. It's free software licensed under the AGPLv3.

Media Home

Media Home is a web application for viewing and organizing your personal media. It's free software licensed under the AGPLv3, and it works on Linux.

jmkLab

jmkLab is where I host my public infrastructure.

jmkOS

jmkOS is a Gentoo-based operating system.

Anki Chinese Helper

Anki Chinese Helper is a plugin for Anki that automates some tedious parts of creating Chinese-language flash cards. It's free software licensed under the MIT License.

Tsuno

Tsuno is a tool for tracking your university progress. It's free software licensed under the MIT License.

ZeroMarket

ZeroMarket is a web application for selling items. It's free software licensed under the AGPLv3.

SteamTracker

SteamTracker is a tool for calculating Steam user statistics. It's free software licensed under the AGPLv3.

AverageFrame

AverageFrame is a tool for generating an image that represents a video. It's free software licensed under the MIT License.

Image Board

Image Board is a web application for sharing and categorizing images. It's free software licensed under the MIT License.

Tickets

Tickets is a web application for selling tickets to events. It's proprietary software.

Mood

Mood compares your Spotify listening habits to the average person. It's free software licensed under the AGPLv3.

Dacado

Dacado is a tool for encoding arbitrary data into images. It's free software licensed under the MIT License.

Mikan

Mikan is a game engine. It's free software licensed under the MIT License.

JellyfinJav

JellyfinJav is a plugin for Jellyfin that helps to organize Japanese adult video libraries. It's free software licensed under the AGPLv3.

Bitsu

Bitsu is a C++ URL routing library. It's free software licensed under the MIT License.

Forthan

Forthan is an interpreter that implements a subset of Forth. It's free software licensed under the MIT License.

Dashboard

Dashboard is a browser extension that replaces your new tab page with a set of user defined links to websites along with related website availability information. It's proprietary software, and it only works on Firefox.

BookSorter

BookSorter is a tool for sorting ebooks according to the Dewey Decimal System. It's free software licensed under the MIT License.

PaxAtlas

PaxAtlas is an application for displaying custom geographical maps. It's free software licensed under the MIT License.

teamspeak-ruby

teamspeak-ruby is a Ruby library for interacting with TeamSpeak. It's free software licensed under the MIT License.

Oppai

Oppai is an application for viewing and organizing Japanese adult video libraries. It's free software licensed under the AGPLv3.

Lineup

Lineup is a compiler that implements a subset of Markdown. It's free software licensed under the MIT License.

Pyrostorm

Pyrostorm is a JavaScript library for interacting with DigitalOcean. It's free software licensed under the MIT License.

Caddy Geolocator

Caddy Geolocator is a tool for generating geolocation data from Caddy logs. It's free software licensed under the AGPLv3.

DicewareGen

DicewareGen is a tool for generating random passphrases. It's free software licensed under the GPLv3.

MiniC

MiniC is a compiler that implements a subset of C. It's proprietary software, and it only works on Linux.

Bario

Bario is a version control tool. It's free software licensed under the MIT License.

Snakelike

Snakelike is a Snake clone. It's free software licensed under the GPLv3 License. I developed it from a tutorial when I was twelve and addicted to playing flash games on Kongregate.

Rokunet

Rokunet is a C++ networking library. It's free software licensed under the MIT License, and it works on Linux and Windows.

Properties

Properties is a web application for listing and renting properties. It's free software licensed under the AGPLv3.

ext2-tool

ext2-tool is a userspace program for interacting with ext2-formatted data. It's proprietary software, and it only works on Linux.

Othelli

Othelli is an Othello clone. It's free software licensed under the GPLv3.

ActionScript2-Classes

ActionScript2-Classes is a collection of ActionScript classes for implementing user interfaces in CryEngine 3. It's free software licensed under the MIT License.

Shipinator

Shipinator is an HTTP API for creating Canada Post shipping labels. It's free software licensed under the GPLv3.

SimpleServer

SimpleServer is an HTTP server. It's free software licensed under the MIT License.

jmkLisp

jmkLisp is an interpreter that implements a custom Lisp. It's proprietary software, and it only works on Linux.

Pong++

Pong++ is a pong clone. It's free software licensed under the MIT License.

Documentaries

Documentaries is a web application for sharing documentaries. It's free software licensed under the MIT License.

WaniKani Tracker

WaniKani Tracker is a browser extension for tracking your Japanese learning progress on wanikani.com It's free software licensed under the AGPLv3.

Neapolis

Neapolis is a C++ library for interacting with Neocities. It's free software licensed under the MIT License.

UofT Prof Ratings

UofT Prof Ratings is a browser extension that embeds ratemyprofessors.com information on the UofT course selection website. It's free software licensed under the MIT License, and it only works on Firefox.

Gazou

Gazou is a web application for hosting images. It's free software licensed under the AGPLv3.

GemTracker

GemTracker is an application for tracking the daily download rate of Ruby gems. It's free software licensed under the MIT License.

Price Hawk

Price Hawk is a browser extension that tracks the price of any item on any website. It's proprietary software, and it works on Firefox and Chromium-based browsers.

How I Work


I use a 15-inch M3 Macbook Air with 16 GB of RAM. I use Zed as my editor. I use Fish as my shell. I use Dvorak as my keyboard layout. I use Homebrew as my package manager. I use Neovim for editing in my shell. I use Ghostty as my terminal emulator. I use Mosh for accessing my shell on my servers.

I sometimes use two 27-inch 4K 160 Hz IPS monitors with a Ryzen 9 9950x CPU, a Radeon RX 7600 GPU, 96 GB of 5600 MHz DDR5 RAM, and 2 TB of Btrfs-formatted four-lane PCIe 5.0 NVMe SSD storage. This computer runs jmkOS, my Gentoo-based Linux distribution. It's currently in storage.

I have a server with a Ryzen 9 9950x CPU, 96 GB of 5600 MHz DDR5 RAM, 1 TB + 500 GB of four-lane PCIe 3.0 NVMe SSD storage, 2 TB of four-lane PCIe 5.0 NVMe SSD storage, and 144 TB of RAID 10-configured 7200 RPM HDD storage. All storage is Btrfs-formatted. It also runs jmkOS. And it's also in storage.

I have a mostly assembled computer with a Ryzen 7 9800x3D CPU, a GeForce RTX 5080 GPU, 32 GB of 6000 MHz DDR5 RAM, and 2 TB of four-lane PCIe 5.0 NVMe SSD storage. It's going to run Windows. It's also in storage.

I have a server with an Intel N100 CPU, 16 GB of 3200 MHz DDR4 RAM, and 500 GB of Btrfs-formatted one-lane PCIe 3.0 NVMe SSD storage. It runs jmkOS.

Favourite Media


Art is a window into a soul. One's choice of media is an art form. Compression is probably equivalent to intelligence.

Install uBlock Origin and SponsorBlock.

Books

TV Series

Films

Games

Songs

DJ Sets

YouTube Channels

Educational Videos

Funny Videos

Video Game Cinematics

Podcasts

Photographs


The Trans Canada Trail at night
The Trans Canada Trail at night
A cloudy suburban night
A cloudy suburban night
A developing storm
A developing storm
My grandchilren's memory
My grandchildren's memory
A partial life
A partial life
A step back
A step back

Important Quotes


Historical quotes tend not to be attributed properly. Many people surrender critical thinking in exchange for repeating another's thoughts. Distrust all thoughts. Don't ignore any thought. Integration of many thoughts is important. Don't use quotes as slogans. Watch out for propaganda.

Socrates
The unexamined life is not worth living.
Wonder is the beginning of wisdom.
Theodore Roosevelt
The light has gone out of my life.
Horatio Nelson
A fleet of British ships at war are the best negotiators.
Adolf Eichmann
I will leap into my grave laughing because the feeling that I have five million human beings on my conscience is for me a source of extraordinary satisfaction.
Linus Torvalds
Who the fuck does idiotic things like that? How did they not die as babies, considering that they were likely too stupid to find a tit to suck on?
Alexander the Great
If I were not Alexander, I should wish to be Diogenes.
In future whenever you communicate with me, send to me as king of Asia; do not write to me as an equal, but state your demands to the master of all your possessions.
Vegetius
Therefore let him who desires peace prepare for war.
Confucius
To study and not think is a waste. To think and not study is dangerous.
Homer
Without a sign, his sword the brave man draws, and asks no omen but his country's cause.
Gandhi
As a man changes his own nature, so does the attitude of the world change towards him.
Augustus
I found Rome a city of bricks and left it a city of marble.
Leonidas
Come and take them.

Advice


The less we lie to ourselves, the more we see others lie.

Personality Tests


I took the Truity Big Five personality traits test on June 26th, 2026. I scored 88% on openness, 69% on conscientiousness, 52% on extraversion, 54% on agreeableness, and 46% on neuroticism. View an archive of my results.

I took the 8values political test on June 21st, 2026. I scored economically centrist, diplomatically balanced, civilly liberal, societally progressive, and overall liberal. View an archive of my results.

My Time at the University of Toronto


My time was spent abstractly. I learned about the limitations of the mind. The average teaching assistant gave me insight into why the ancients used slaves as tutors. Many of the professors had rigid thinking. I observed many of the professors be violent and rude to their students. Many were aggressive while playing the victim. It was odd to watch 40+-year-old professors get into conflict with 20-year-old students. The power imbalance was obvious.

CSC108 - Introduction to Computer Programming

I completed CSC108 in the fall of 2018. Computer science students took it as their first semester programming course. The course used Python to teach the basics of programming. I didn't attend any lectures or labs since I already knew how to program.

CSC148 - Introduction to Computer Science

I completed CSC148 in the winter of 2019. During one of the first few tutorials, Arnold Rosenbloom asked a technical question. I gave an answer. He stared at me in a quite disturbing manner and didn't continue the conversation. I was creeped out. I luckily never saw him come into the tutorial room again. I'm not sure why he was ever in the room. He wasn't an instructor for the course.

CSC309 - Programming on the Web

The first lecture was awkward. The professor presented his screen while walking us through how web requests work. He typed xxx.com into his browser. The class was almost entirely Chinese people. I sat next to my girlfriend. I was one of the only people who wasn't using a laptop.

Technical Opinions


Unix sockets should be used over TCP when available. Use the lowest possible abstraction. This is an art. Disagreement is inevitable.

Dynamically typed interpreted languages are worse than statically typed compiled languages. Paying the higher upfront costs incurred with a statically typed compiled language are worth it for the lower marginal costs during long running development.

Dynamic linking is preferred over static linking. Software should have publicly available test suites. Dynamic linking allows operating systems to update libraries without having access to all dependent software. Updating dynamically linked libraries typically makes software brittle. This is mostly solved by running test suites on known software after updating libraries. Unknown software can continue to use non-updated versions of libraries. Test suites should be run after updating all software.

Conclusion


This website is in memory of my mom, Charlene. She suffered on Earth for fifty years. She transcended her suffering by dedicating her life to her family.

This website was last updated on .

All original content written by me is licensed under a Creative Commons Attribution 4.0 International license.