RSSAmplifier

Blog

aduros.com

Recent content on aduros.com

aduros.comRSS feed ↗25 posts

Latest posts

March 2021 Update

Today is March 394th, 2020, and this blog is due for an update. Here are some things I’ve been up to. For the past couple months, I’ve been living on part of an island mainly accessible by boat. I came here to escape the city for a while. Not to flee Corona exactly, but more to shake myself out of the state of mind that it brought about. If I was going to be isolated anyways, it would…

Quick Update

(Day 24 of 30 Days of Blogging ) I think this is going to be my last post for a little while. Updating this blog every single day has gotten to be a bit of a slog, and I don’t want to just start spamming junk posts. I also don’t want to completely burn myself out of the whole thing. I’m still very happy with how everything with the blog experiment turned out! I’m getting a…

Managing Ctags for Vim

(Day 23 of 30 Days of Blogging ) Ctags is the plugin-free way to do code navigation in vim. For single projects it works great out of the box. Just build your ctags file and point vim at it. But what about when you have multiple distinct project directories but still need to frequently jump around between them? That calls for multiple ctags index files, and managing that can be a bit of a hassle.

In Defense of the Twitter Bot

(Day 22 of 30 Days of Blogging ) Remember before the time of the “Russian troll”, when Twitter bots carried a different connotation? They were fun little ideas like @PepitoTheCat and @big_ben_clock , never actually useful but just a bit of fun. An aside, a few years back there were some who thought useful versions of chat bots would take off and become the next big Internet platform.…

Slow News Day

(Day 21 of 30 Days of Blogging ) I don’t have anything meaningful to write about today. Come back later. In about a week I’m going to be moving out of the city to an Airbnb on the beach. It’s going to be a nice change of pace. I have some projects that I’m going to start while I’m there, but none of them are tech-blog material. There might be a slight shift in the…

Hacking i3: Automatic Layout

(Day 20 of 30 Days of Blogging ) Another post about making a good window manager even better! Window layouts in i3 basically come in two types: horizontally or vertically stacked. By combining those two you can arrange windows however you want. The default layout in i3 is horizontal, which means when you open up too many windows it ends up looking like this: (The video could not be played)

Introducing pjs

(Day 19 of 30 Days of Blogging ) I’ve been working on a small project that can basically be summed up as awk for JS developers. pjs is a command-line tool for processing text-based files by writing snippets of JavaScript. For example, converting each line to upper-case: cat document.txt | pjs '_.toUpperCase()' Or filtering lines: seq 10 | pjs '_ % 2 == 0' And a whole bunch of other stuff ,…

Ramblings From a Dirty Apartment

(Day 18 of 30 Days of Blogging ) I started reading some philosophy disguised as a housekeeping manual called Home Comforts and it’s been pretty illuminating. I’ve always loathed housework. I’m not exactly sure why. It could be the feeling of futility from the cycle of cleaning something that will soon become dirty again. Or maybe my pseudo-nomadism/quasi-Buddhism prevents me from…

Returning to Text

(Day 17 of 30 Days of Blogging ) I’ve been replacing the way I store personal todo lists and notes. Previously I was using Trello. Before that I used Tiddlywiki for a couple years. I used to work with a guy that swore by simply using a text file, so I started giving that a shot. In theory this approach has some major perks: It’s easy to add stuff: Just start typing. Just as…

Hacking i3: Window Promoting

(Day 16 of 30 Days of Blogging ) One of the only things I miss from when I used xmonad many years ago was being able to hit a keybind to swap the currently focused window with the “master” window. I think the default keybind for that in xmonad is alt-Enter. i3 doesn’t have the concept of a master window, but if we consider the master window to just be the largest window, the same…

A Blog Half Full

I’m halfway through 30 Days of Blogging . When I was a kid I really wanted to be a cartoonist. I wanted it so much that my first “job” was doing a daily comic strip for the local newspaper. I did that for 10 months straight, 6 days a week. At the end I was so sick of it I never wanted to pick up a pencil ever again. Hopefully blogging doesn’t end up the same way!

Simple Clipboard Management

(Day 14 of 30 Days of Blogging ) Greenclip is really useful for recording your clipboard history and showing a menu to switch between items. Along the same lines I had an idea to write a tiny script that allows editing of the clipboard in vim. This has been handy when I need to quickly fix up some text before pasting it into a GUI application: #!/bin/sh -e file = ` mktemp /tmp/clipboard-XXX ` xsel…

Firefox Minimalism

(Day 13 of 30 Days of Blogging ) I’ve been working on an opinionated and ultra-minimalist Firefox theme that pairs nicely with Tridactyl . I thought I’d share a few notes here. But first some pretty screenshots! Here’s what you’re greeted with when you open a Firefox window: Nope, it’s not a terminal, that text prompt is the address bar. Here’s what it looks…

Media Companies are Complicit

(Day 12 of 30 Days of Blogging ) Facebook, Twitter, and other media companies shouldn’t be applauded for finally deplatforming the American president after profiting off controversy for so many years. It took up until the very day that the American president lost the election for TV outlets to finally start calling out his bullshit. It took an act of terrorism to force social media’s…

Access Recent Files From the Command Line

(Day 11 of 30 Days of Blogging ) If you don’t already use Z you absolutely need to check it out. Z is a CLI tool that cd’s to a recently used directory, so that typing z foo will cd /my/deeply/nested/project/foobar7 , as long as you’ve cd’ed into foobar7 sometime in the past. Z is great for jumping to recent directories… but is there an equivalent for opening…

XTerm: It's Better Than You Thought

(Day 10 of 30 Days of Blogging ) A couple months back I switched my terminal from xfce4-terminal to the venerable xterm. For some reason I always put xterm in the same bucket as xclock, xmessage, or any other prehistoric command starting with X that comes pre-installed on any graphical Linux distribution. It was surprising to learn that xterm is still very much actively developed . Even more…

Remote Movie Nights With Popcord

(Day 9 of 30 Days of Blogging ) Several months ago during the height of the 2020 quarantine I released Popcord , a Chrome extension for watching videos with friends remotely. It’s designed to be used while on voice chat with friends and family, and simply handles synchronizing the playback position and state of the movie you’re all watching together. I’m pretty proud of how it…

What's My IP Address?

(Day 8 of 30 Days of Blogging ) Sometimes you need to determine your own IP address. There’s ip addr (the new ifconfig ), which will tell you your local network IP. What about your external Internet-addressible IP? Use this: dig @resolver4.opendns.com myip.opendns.com +short This is faster than curl icanhazip.com or equivalent URLs, and more reliable too.

Implementing a Slow Life

(Day 7 of 30 Days of Blogging ) There’s a famous experiment where subjects (typically poor university students) are left alone in a small, empty room with blank walls and no windows. They are asked to sit at a table and “entertain themselves with their own thoughts” for 15 minutes. No music, no phone, no TV. On the table is a button that applies a mild electric shock. It turns…

Generating Strong Passwords

(Day 6 of 30 Days of Blogging ) APG is a command line program for generating random passwords. On Ubuntu/Debian it can be installed with sudo apt install apg . Here are the flags I use with it: apg -a 1 -n 1 -m 25 -x 30 -M SNCL -d -E ''\'\`\\' -a 1 : Specifies to use true random instead of the default mode of pronounceable passwords. The assumption is that these passwords are going to be…

Hacking i3: Window Swallowing

(Day 5 of 30 Days of Blogging ) Tiling window managers are a big reason why I use Linux. Not having to manually drag windows around is absolutely game changing, especially on a laptop with a small screen. Tiling WMs work by resizing other windows when a new window is opened, so that no windows ever overlap. Most of the time this is perfect, but there’s a certain case where it’s not so…

TODO-based Development

(Day 4 of 30 Days of Blogging ) I use TODO comments a lot when working on small projects. Projects where the “issue tracker” is just a text file in my editor, and mainly to stub out empty methods that I’ll implement later. TODOs are easy to insert, and they move with the source code. The main drawback is that they usually get lost and end up as bitrot. Keeping track of TODOs by…

Experiments With Rockstar

(Day 3 of 30 Days of Blogging ) I recently stumbled across a toy programming language called Rockstar , in which programs are also heavy metal lyrics. Basically COBOL for metalheads. The syntax can be almost completely poetic, even with programming features with numeric literals, functions, arrays, and arithmetic hidden in its text. The grand-daddy of esoteric programming languages is Brainfuck ,…

Final Thoughts on Flash

(Day 2 of 30 Days of Blogging ) On December 31 2020, Flash was finally, officially, 100% for real this time, discontinued. It’s already been dead for ages of course, but damned if that won’t stop me from adding my own hot take about Flash. I was involved with Flash game development from around 2008-2014 or so. I’d like to note a few things I think the platform did well, and not…

30 Days of Blogging

Happy new year! I’ve had this domain kicking around for ages and have always wanted to do something more with it. So, I’m making a commitment to write a blog post every single day for this month. This won’t be easy for me. I do not write. Hell, most days I can barely even read . I worry about writing about the wrong thing, or too little, or too much. But I’m also stubborn,…