Subcurrent

A stream of content from members of the Astoria tech community

January 14, 2025

November 15, 2024

In search of the perfect pin necklace

<p>Last year, on the <a class="reference external" href="/post/collecting-pins.html">"Collecting pins" post</a>, I mentioned that I usually wear my pins on a beanie, but was still looking for a good alternative for the warmer months.</p> <p>After thinking more about it, I realized a necklace would be the way to go. It doesn't depend on any …</p>

Nicolas F. R. A. Prado

September 25, 2024

September 23, 2024

September 9, 2024

July 30, 2024

CardOS: Now compiling without Arduino!

<p>In the <a class="reference external" href="/post/cardos-writing-an-os-for-the-cardputer.html">"CardOS: Writing an OS for the Cardputer" post</a> I shared about the OS that I'm writing for the Cardputer and that the next step was to move away from the Arduino toolchain. It took me two months but I finally did it. The end product was <a class="reference external" href="https://codeberg.org/nfraprado/cardOS/commit/85553f797cf0877e4c88a8e549052a445d00e7d1">this commit …</a></p>

Nicolas F. R. A. Prado

July 13, 2024

July 8, 2024

AI-powered fun in p5.js

Using AI in p5.js by wiring up a sketch to a serverless proxy function on Val Town.

Ash Ryan Arnwine

June 25, 2024

You're going to Val Town

Val Town's runnable vals (their word for "gists") can be triggered manually, via email, or as an HTTP endpoint or cron job.

Ash Ryan Arnwine

June 23, 2024

RAG in Node.js with EmbedJS

A look at a Node.js library called EmbedJS for RAG AI applications along with a repo to help you get started.

Ash Ryan Arnwine

June 6, 2024

NYU ITP Camp 2024 sessions

NYU ITP Camp 2024 is underway. Here's Info on sessions I'm leading during the first week—one around vinyl, the other on AI.

Ash Ryan Arnwine

June 3, 2024

The 3 Cs of Developer Advocacy

The 3 Cs of Developer Advocacy state that, all things being equal, when hiring for Developer Advocates, we must look for 3 competencies: coding ability, community stewardship, and content creation.

Ash Ryan Arnwine

May 24, 2024

CardOS: Writing an OS for the Cardputer

<p>I recently got the <a class="reference external" href="https://docs.m5stack.com/en/core/Cardputer">M5Stack's Cardputer</a>. I was motivated to get it because I knew other people personally that had it too, so we would be able to share our progress, but I was worried it might end up being just another board that sits in my closet forever untouched …</p>

Nicolas F. R. A. Prado

March 21, 2024

vCard + RSS as an alternative to social media

<p>Last year after talking for a while with someone during a conference they asked me for my LinkedIn to be able to connect with me, to which I answered I didn't have one.</p> <p>It was many years ago when I decided to leave social media. I don't miss it. Instant …</p>

Nicolas F. R. A. Prado

February 10, 2024

November 22, 2023

Collecting pins

<p>It started innocently about one year ago as I was looking for a gift for a friend. We played a lot of League of Legends and Ragnarok Online back in the day, so I wanted to give him something to remember that. Eventually I came across these pins:</p> <ul class="simple"> <li><a class="reference external" href="https://www.etsy.com/listing/587004849/poring-poporing-slime-monter-fanart-hard">Poring/Poporing …</a></li></ul>

Nicolas F. R. A. Prado

April 18, 2023

April 12, 2023

Experimenting with AI in DevRel

Using AI tools like ChatGPT and GitHub Copilot to enhance DevRel work, build inspiring code samples, and enhance developer experience.

Ash Ryan Arnwine

November 7, 2022

September 28, 2022

Meeting the Linux community at my first ELC

<p>This month I attended the Embedded Linux Conference Europe, which was co-located with the Open Source Summit Europe, and took place in Dublin, Ireland. This was my first time attending a Linux conference in-person as a contributor and it was a very special experience.</p> <p>This wasn't my first ever in-person …</p>

Nicolas F. R. A. Prado

August 28, 2022

Moving the blog to Codeberg

<p>As someone who cares about FOSS, I'm always happy to move to a FOSS alternative when one shows up, provided there aren't any big drawbacks.</p> <p>Back when I was in University and starting to learn the ways of Git, I only knew about two Git hosting options: GitHub, the mainstream …</p>

Nicolas F. R. A. Prado

July 19, 2022

Using emojis in matplotlib

<p>Last month, as I was writing the blog post with all the statistics for the blog's two year anniversary, the <a class="reference external" href="/post/blog-statistics-after-two-years.html">"Blog statistics after two years" post</a>, I decided that I really wanted to have a plot with emojis. From the moment I thought of this I knew it couldn't simply …</p>

Nicolas F. R. A. Prado

June 19, 2022

Blog statistics after two years

<p>Wow, it's been two years since I've started this blog! I'm really happy that I've still managed to keep up the one post per month. Hopefully I'll be able to keep it up for the third one!</p> <p>For this post I thought it would be fun to look through some …</p>

Nicolas F. R. A. Prado

May 26, 2022

Discovering the comfort of loudspeakers

<p>In 2014, while on a school trip to Germany, I bought a Razer Tiamat headset. The sound was great and for the most part it was comfortable. Its only issue was the clamping force, which was a bit too much, and gave me headaches after long hours of use.</p> <p>I …</p>

Nicolas F. R. A. Prado

April 28, 2022

Learning from SerenityOS

<p>One day I was scrolling through Reddit as usual, when I saw a post linking to this blog post: <a class="reference external" href="https://awesomekling.github.io/I-quit-my-job-to-focus-on-SerenityOS-full-time/">I quit my job to focus on SerenityOS full time</a>. I was intrigued by the backstory, the premise of this OS, and also by the fact that its development was <a class="reference external" href="https://www.youtube.com/c/AndreasKling/videos">being …</a></p>

Nicolas F. R. A. Prado

March 29, 2022

Running LineageOS on my Nexus 5X

<p>This month marks one year since I bought a Nexus 5X and started using LineageOS, so I thought I'd share my experience.</p> <div class="section" id="setting-up"> <h2>Setting up</h2> <p>About one year ago, <a class="reference external" href="https://andrealmeid.com/">a friend</a> told me he found a really good deal for a Nexus 5X online. The Nexus 5X is an old phone …</p></div>

Nicolas F. R. A. Prado

February 24, 2022

Learning x86-64 assembly basics

<p>Recently I decided to learn assembly. I already had a reasonable understanding of how it worked due to some classes that touched the subject in university, however I never had the opportunity to really write assembly code.</p> <p>Since my everyday computer is an x86-64 machine, it made most sense to …</p>

Nicolas F. R. A. Prado

January 19, 2022

Making internal linking in pelican effortless

<p>One interesting feature of <a class="reference external" href="https://github.com/getpelican/pelican">Pelican</a>, the static site generator I use for this blog, is the internal link expansion syntax with <code class="docutils literal">{}</code>. It is documented <a class="reference external" href="https://docs.getpelican.com/en/latest/content.html?highlight=static#linking-to-internal-content">here</a>. Some examples are <code class="docutils literal">{filename}</code>, <code class="docutils literal">{static}</code> and <code class="docutils literal">{author}</code>. The purpose of the syntax is to have shorter and easier aliases to link to internal content in …</p>

Nicolas F. R. A. Prado

December 27, 2021

The menus in my system

<p>Another post going through stuff I set up for my desktop environment a couple years ago and that have used ever since 🙂. This time I'll show the menus I've created using <a class="reference external" href="https://github.com/davatorium/rofi">rofi</a>.</p> <p>So, what is <a class="reference external" href="https://github.com/davatorium/rofi">rofi</a>? It's basically a program where you feed a list of options to it, and …</p>

Nicolas F. R. A. Prado

November 25, 2021

The blocks in my status bar

<p>Five years ago when I moved to the i3 window manager, I started using its status bar, the i3bar. It is text based, and it's up to you what gets shown there. However it is not very modular: it's weird to combine different information to be shown since everything has …</p>

Nicolas F. R. A. Prado

October 22, 2021

Resurrecting a computer on the go

<p>Earlier this month I was spending a few weeks in another country. It was late at night and I was once again looking over my personal files and thinking if there was a better way to organize them in folders.</p> <p>After thinking for a bit I decided on a new …</p>

Nicolas F. R. A. Prado

September 26, 2021

My journey to a good backup system

<p>I'm a bit of a data hoarder. I still have some of the first programs I've ever written, photos I've taken on trips and drawings I did many years ago, to name a few. And since I don't trust some company to store all of this data for me, it …</p>

Nicolas F. R. A. Prado

August 28, 2021

Owning my Kindle

<p>Several years ago my mother gave me a Kindle Paperwhite 2. I have read a few books on it since, but it never felt like it was really mine. Locking the screen showed some annoying ad, all books bought from Amazon were protected by DRM, books transferred through USB only …</p>

Nicolas F. R. A. Prado

July 23, 2021

Blog customizations

<p>I've been using <a class="reference external" href="https://github.com/getpelican/pelican/">pelican</a> as my static blog generator since I started this blog about one year ago. It only took a bit of configuration to get the blog up and running, and a bit of searching through <a class="reference external" href="http://pelicanthemes.com/">pelicanthemes</a> to find <a class="reference external" href="https://github.com/gunchu/nikhil-theme">nikhil-theme</a> which is the theme I'm still using.</p> <p>While …</p>

Nicolas F. R. A. Prado

June 21, 2021

One year of blog

<p>It's been a full year since I started this blog! So I thought I'd take this chance to talk a bit about the blog itself: How it started and my thoughts on it.</p> <div class="section" id="origins"> <h2>Origins</h2> <p>I had already thought a bit about having my own blog. Having a little corner of …</p></div>

Nicolas F. R. A. Prado

June 16, 2021

gRPC: The front door for Node.js developers

As I've been learning more about gRPC over the last couple of months, I've worked with a few resources that have been quite helpful. I'd like to share those here.

Ash Ryan Arnwine

May 19, 2021

Keeping track of my packages

<p>As I previously mentioned in the <a class="reference external" href="/post/moving-to-wayland.html">"Moving to Wayland" post</a>, I recently moved to a new computer. Moving can be very annoying if you use a heavily configured system and don't have all the configurations easily available to just move over. Since I do regular backups of my files, which …</p>

Nicolas F. R. A. Prado

April 19, 2021

Learning music theory by writing melodies

<p>Hey, first non-technical blog post 🙂.</p> <p>Anyway, I haven't talked about this before here, but I'm really interested in playing the piano. When I was younger I took some guitar classes, but I always wanted to play the piano, and a couple years ago I finally got one! I've been playing …</p>

Nicolas F. R. A. Prado

March 20, 2021

Moving to Wayland

<p>In the middle of January, my computer decided to surprise me, and not in a good way. Differently from all the quirks I've come to expect from it after all these 6 years of use — faulty keyboard, flashing screen, bad audio jack — this time it was worse, and it wasn't …</p>

Nicolas F. R. A. Prado

February 19, 2021

Ledsticker: My first holistic SW + HW project

<p>It was in the middle of 2019. I was taking classes in Embedded Systems Laboratory and had to make the final project of my choice. I had the idea to do some sort of a Guitar Hero using a keyboard for the input, an 8x8 LED matrix to display the …</p>

Nicolas F. R. A. Prado

January 19, 2021

Organization beyond Taskwarrior

<p>In the previous article of this series, I went into all my Taskwarrior and VIT customizations, and my workflow with them, that enables me to organize my tasks and get them done. Tasks, however, aren't the whole story when getting organized.</p> <p>Another crucial component of organization is having a calendar …</p>

Nicolas F. R. A. Prado

December 21, 2020

Managing my tasks using VIT

<p>Two years ago I decided to get more organized about my life. During that time I read the <a class="reference external" href="https://en.wikipedia.org/wiki/Getting_Things_Done">Getting Things Done</a> book and discovered <a class="reference external" href="https://taskwarrior.org/">Taskwarrior</a>, a task manager for the terminal which doesn't get in the way.</p> <p>I greatly appreciated Taskwarrior's simplicity and customizability, but after some time, the need …</p>

Nicolas F. R. A. Prado

November 23, 2020

November 22, 2020

Number sorting gotcha with JavaScript

Problem: Sorted arrays are coming back in an unexpected order... sometimes. Safari is behaving differently than Chrome and Node.js. Let’s look at what to do.

Ash Ryan Arnwine

November 19, 2020

Porting a flash LED driver upstream

<p>Now that I had a working serial cable for my Nexus 5, as described in the <a class="reference external" href="/post/making-an-uart-cable-for-the-nexus-5.html">"Making an UART cable for the Nexus 5" post</a>, I was ready to face some action and help in upstreaming.</p> <p>Looking through <a class="reference external" href="https://masneyb.github.io/nexus-5-upstream/TODO.html">Brian Masney's TODO page</a> there were a couple options, but the one …</p>

Nicolas F. R. A. Prado

November 15, 2020

October 19, 2020

Bulk file editing with ranger

<p>My file manager of choice is <a class="reference external" href="https://ranger.github.io/">ranger</a>. It's terminal-based, provides keybind mapping for everything making me more efficient in navigating my files, and it's incredibly extensible by enabling the creation of custom commands in <strong>python</strong>. If that wasn't enough, it also has a ton of other great features (extensible file …</p>

Nicolas F. R. A. Prado

September 19, 2020

Playlist generation with MPD

<p>Music is life. I really love listening to music, although not the same kind of music all the time. Most of the time though, anything goes: I like to listen to any of the songs I have at random. But when I'm doing something that needs concentrating (like writing this …</p>

Nicolas F. R. A. Prado

August 23, 2020

Automatic context detection for Taskwarrior

<p>One of the main ideas of <a class="reference external" href="https://en.wikipedia.org/wiki/Getting_Things_Done">GTD</a> is to have a context associated with each task, so that it is very easy to see which tasks can be done in your current context. I organize my tasks with <a class="reference external" href="https://taskwarrior.org/">Taskwarrior</a>, so to make it work with contexts, when adding a new …</p>

Nicolas F. R. A. Prado

July 29, 2020

Setting up mbsync to work with XOAUTH2

<p>For a long time I used <a class="reference external" href="https://www.offlineimap.org/">offlineimap</a> to synchronize my emails between the email providers and my computer. Having access to all my emails offline on my computer is pretty handy. But after seeing the <a class="reference external" href="https://people.kernel.org/mcgrof/replacing-offlineimap-with-mbsync">brutal efficiency advantage of mbsync over offlineimap</a>, and having had delay issues with offlineimap myself …</p>

Nicolas F. R. A. Prado

June 29, 2020

Making an UART cable for the Nexus 5

<p>Recently, me and <a class="reference external" href="https://andrealmeid.com/">a friend</a> started digging into making the Nexus 5 run the mainline Linux kernel. The purpose of this is, apart from a great learning experience, to make the Nexus 5 run a Linux distro, like <a class="reference external" href="https://postmarketos.org/">PostmarketOS</a>, instead of Android, while also having lifetime updates delivered from the …</p>

Nicolas F. R. A. Prado

May 24, 2020

Creating movie and game lists using Taskwarrior

<p>I like watching movies and playing games, but I also like to keep track of which movies I've watched and which games I've beaten. I also got into the habit of rating each movie I watch. For the longest time, though, I have kept track of these collections informally in …</p>

Nicolas F. R. A. Prado