• Home
  • Blog
    • Programming
    • Art
    • Recipes
    • Home Automation
    • Life
    • Friday Faves
    • Books
    • Writing
    • Games
    • Web Accessibility
    • Advent of Code
  • Projects
  • GLSL Shader Art
  • Glitch Art

  • Github
  • Bluesky
  • Mastodon
  • Duolingo
  • LinkedIn
  • RSS
  • Bridgy Fed

mary.codes

Web development, art, and tinkering with fun projects. JavaScript, Python, WebGL, GLSL, Rust, Lua, and whatever else I find interesting at the moment.

Programming

  • How I'm organizing my work in 2024

    I'm always looking for good ways to organize my work notes. Here's a few new tactics I've been using for work and personal projects.

  • Finding the Design Engineer within the Full-Stack Developer

    I just learned about design engineering, and it sounds like a small part of what I already do.

  • Displaying the current Git branch in my Linux terminal prompt

    A feature I didn't realize I was missing.

  • Generating a 3D map with OpenStreetMap and A-Frame

    Part 2 of my experiment with OSM data. This time, instead of a canvas, I'm going to render the data in A-Frame to visualize it in 3D.

  • Translating OpenStreetMap data to HTML5 Canvas with Rust and WebAssembly

    Using the Overpass API to read OSM data, parsing the data with Rust, and then drawing the map onto HTML5 canvas.

  • Why can't I make a pull request in GitHub mobile?

    The GitHub mobile app lacks a basic functionality that many people need. Why hasn't it been implemented?

  • Fix misbehaving grid children with display: contents CSS

    A programmatically added child element can blow up your grids. Fix them with this CSS.

  • Making a static word of the day site with Google AI Studio and GitHub Actions

    An experiment using Google's Gemini Pro AI to generate new Japanese vocabulary words on a daily basis, with an automatic build step using GitHub Actions.

  • Menu and sun/moon animated icons with CSS

    Replacing static icon fonts with CSS animations.

  • New Year's CSS Cleanup

    Overhauling my site with cleaner, more performant CSS for the new year.

  • Updating blog deployments with Github Actions

    Moving from Gatsby Cloud back to GitHub pages, with automatic deployments.

  • How I blog from my phone using Termux

    I now have everything set up so I can remote into my blogging machine.

  • Moving my blog from Netlify to Gatsby Cloud

    Employing Reactive Site Generation on my site by moving from Netlify to Gatsby Cloud

  • Creating a Wordle command line clone in Rust

    Hopping on the Wordle craze a little too late, I decided to create a command-line Wordle clone in Rust called NOT THAT WORD GAME.

  • Updating drivers again for Ubuntu 21.10

    How updating to Ubuntu 21.10 and the Linux 5.13 kernal broke the Realtek 8812au driver for my Wi-Fi dongle and how I fixed it.

  • My first mobile game, six years later

    I resurrected a mobile game that I made in 2015 that helped me get my first programming job.

  • JavaScript error handling with try/catch

    How I like to describe a try/catch block.

  • Developing on a Chromebook via SSH

    How I'm setting up my old ASUS Chromebook to do some development outside in nice weather.

  • Quick and dirty React.js and CSS dark mode

    The only thing in my life that doesn't have a dark mode is my own website.

  • Rust, WebAssembly, and FCKed Editor, a cursed markdown editor

    Another intentionally useless website! This time, I'm using Rust to create a markdown parser that returns emojified text.

  • Lines of code and word counts with xargs and wc

    An easy way to count lines and words within a directory using xargs and wc on Ubuntu.

  • Updating a Raspberry Pi to Python 3.9

    Steps for updating and compiling newer versions of Python on the Raspbian operating system.

  • Optional chaining and nullish coalescing in JavaScript

    Using optional chaining and the nullish coalescing operator to clean up JavaScript object references.

  • Useful git commands

    Git commands that I use daily, and git commands that I've squirreled away in notes that occasionally come in useful.

  • Domain redirects with Netlify and Gatsby

    Using Netlify's DNS to forward to a new domain name for my Gatsby blog.

  • Server-side Rendering and API Calls in Rust

    Making one of my useless websites in Rust, with server-side rendering and parsing JSON from external APIs.

  • Intentionally Useless Websites

    Making websites that are intentionally useless for fun and learning.

  • Creating a ROT13 Encoder/Decoder in Rust

    Dipping my toes into Rust by making a CLI that will encode and decode ROT13 cyphers.

  • Creating a Fitbit watch face

    Creating my first Fitbit Versa 2 watch face.

  • New Project - Thinkery, a Laravel Self-Hosted Markdown Microblog

    I created my own personal microblogging platform for maryknize.com and learned Laravel along the way.

  • Ubuntu 19.04 Disco Dingo Driver Drama

    How updating to Ubuntu 19.04 Disco Dingo borked the Realtek 8812au driver for my Wi-Fi dongle and how I fixed it.

  • Creating a Duolingo Widget in React and PHP

    Attempting to create a widget to display my Duolingo progress with the Duolingo API, React, and some back-end PHP.

  • Using Exif Data to Annotate Images in GatsbyJS

    Creating image gallery pages using exif data for titles and descriptions after migrating to Gatsby and GraphQL.

  • Custom Domains with GitHub Pages and Namecheap

    Instructions for easily setting up a custom domain on GitHub pages with a Namecheap domain.

  • Lessons Learned From Shipping a Large Project

    These are the lessons I've learned from shipping a year-long software project.

  • Spotify Mini From The Command Line

    How I made a mini Spotify player happen from the MacOS command line.

  • A Static Blog Generator From Scratch

    How I couldn't find the static blog generator I wanted, so I quickly coded my own.