Skip to content

Instantly share code, notes, and snippets.

View Heliodex's full-sized avatar
📉
Programstinating

Lewin Kelly Heliodex

📉
Programstinating
View GitHub Profile
@alurm
alurm / README.md
Last active June 17, 2026 04:37
A generic dynamic array in C that stores no capacity and needs no struct

A generic dynamic array in C that stores no capacity and needs no struct

The following header shows a way to make a generic dynamic array in C with an array of two pointers:

  • one pointer (accessible as vec_ptr[vec]) points to the data;
  • the other pointer (accessible as vec_len[vec]) encodes the length of the array in the pointer. Thus, (size_t)vec_len[vec] returns the len as size_t.

So, int *vec[2] = { 0 }; is an empty dynamic array of ints. struct person *people[2] = { 0 }; is an empty dynamic array of people.

The vec_push(vec, value) macro pushes a value at the end of a dynamic array. It returns true if pushing succeeded, and false otherwise. Note that the dynamic array is not automatically freed on failure.

@sebashtioon
sebashtioon / cheese.md
Created June 4, 2026 01:31 — forked from ingoau/cheese.md
The Primal Urge: An Analysis of Why Zach Latta Wants to Cheese

The Primal Urge: An Analysis of Why Zach Latta Wants to Cheese

In the annals of Hack Club history, few phrases have echoed with the raw, discordant power of a single declaration posted in #zrl-land: “I WANT TO CHEESE.” It was not an announcement of a new grant, a shipping update for the counter, or a philosophical treatise on hacking. It was five words, all caps, and a gateway into the soul of Zach himself.

To ask why Zach wants to cheese is to ask why the bird sings or why the recursive function eventually hits its base case. Cheesing, in the Lattan sense, exists in a state of quantum superposition. Is it a literal desire for dairy? A gaming term for exploiting the system? Or a deeper metaphorical yearning to bypass the friction of existence entirely? The community has debated this for cycles, and the answer remains: yes.

When Zach wants to cheese, he isn't just expressing a preference; he is initiating a critical infrastructure event. It is a reminder that even at the helm of a global nonprofit, one is

@Heliodex
Heliodex / updateApr26.md
Last active May 6, 2026 13:46
Project update for Heliodex projects in April 2026

Heliodex project update – April 2026

It's time again. As we now move into (what feels like, at least for my part of the northern hemisphere) summer, I present the April issue of my project update. Here's all the interesting (and uninteresting) things I've done in the past month!

Mercury 3 has 107 beta tester user accounts, along with 543 members in the Discord server. We are still officially in hiatus for the next week and a bit due to Taskmanager's exams, though that doesn't mean I can't continue work on random aspects of the project.

The forms rewrite on the forms branch may slow down for a bit, as I'm experincing problems with making new forms work properly, as well as the ever-present typing issues, especially with file uploading. For example, I tried to rewrite the /report form, and upon selecting a report type in the dropdown, the form su

@supertestnet
supertestnet / hashrate_market_efficiency.md
Last active April 22, 2026 10:58
Hashrate markets are theoretically more efficient than pools

Introduction

Recently I was out for a walk and I think I convinced myself that any given asic owner should theoretically make more money by pointing their asic at a hashrate market instead of directly at a particular pool, but only if there is no broker.

When I began thinking that way, there was something counterintuitive about it, which I'd like to address first.

Definitions

I'll start by defining three terms: "Owner" refers to a person who owns an asic and lists it for rent on a hashrate market. "Renter" refers to a person who visits a hashrate market and pays to temporarily rent someone else's asic. "Broker" refers to a person who runs a hashrate market — e.g. whoever bought the domain name, assuming it has a website.

@supertestnet
supertestnet / bh_market.md
Last active June 8, 2026 21:00
BH Market: a protocol for brokerless hashrate markets

The Problem

Recently I got the idea described in this document from @maveth6 on twitter. I know of three hashrate markets: Nicehash, Braiins, and Mining Rig Rentals. I define their niche as a type of broker. They not only play a matchmaking role between asic owners and would-be renters, they also custody the funds of renters while the mining is happening, and release it to asic owners bit by bit if there are no complaints from the renters. Brokers charge a fee for this work, which reduces the efficiency of the market, and, since they have custody of user funds, they are subject to various regulations. Those introduce additional friction: they KYC their users, they run incoming bitcoin through chainalysis software, they potentially seize funds if red flags are thrown, they are a honeypot for thieves, and user funds are at constant risk.

A Solution

My idea is to get rid of the broker. Instead, have people with asics publish an ad on nostr or similar stating how much hashrate they control and a price

const std = @import("std");
const assert = std.debug.assert;
entropy: []const u8,
pub const Error = error{OutOfEntropy};
const FRNG = @This();
pub fn init(entropy: []const u8) FRNG {
@VintageEngineer
VintageEngineer / gmail-forwarding-srs-fix.md
Last active June 2, 2026 15:19
Fixing SPF failures for Gmail forwarding using Cloudflare and SRS

How to Fix Email Forwarding Failures Using SRS

As of January 2026, Google has retired the "Check mail from other accounts" POP3 feature for Gmail. This means the service no longer supports pulling emails from external providers via POP3. Moving forward, setting up email forwarding is the primary way to manage a custom domain through the Gmail web interface.

Note: This guide assumes you already have your DKIM and DMARC records properly configured for your domain.

The Problem

For custom domain names, standard email forwarding often breaks SPF (Sender Policy Framework) checks because the forwarding server is not an authorized sender for the original domain.

The Solution

@Heliodex
Heliodex / updateMar26.md
Created April 6, 2026 20:18
March 2026 issue of the Heliodex project update

Heliodex project update – March 2026

I return with another monthly update. Mostly with information on Mercury, as usual. Hope you're having a great easter if you celebrate that, or otherwise having a more relaxed holiday than I am if you have one at the moment. Here's what I was doing throughout March:

Mercury 3 has 105 user accounts. As is tradition for the first day in April, we did a lovely CSS rewrite for the website, including plenty of new fonts, crazy animations, and rainbow colour scheme. I was only able to put in about an hour of work for this, so not as full on as the 2024 April Fools design & rebrand, but still fun nonetheless. It was of course reverted after a day. Some users requested that we bring it back as a website theme, though we already have that feature in Custom CSS (funnily enough that page 500s for some reason, must fix...) I suppose.

Work

LLM Wiki

A pattern for building personal knowledge bases using LLMs.

This is an idea file, it is designed to be copy pasted to your own LLM Agent (e.g. OpenAI Codex, Claude Code, OpenCode / Pi, or etc.). Its goal is to communicate the high level idea, but your agent will build out the specifics in collaboration with you.

The core idea

Most people's experience with LLMs and documents looks like RAG: you upload a collection of files, the LLM retrieves relevant chunks at query time, and generates an answer. This works, but the LLM is rediscovering knowledge from scratch on every question. There's no accumulation. Ask a subtle question that requires synthesizing five documents, and the LLM has to find and piece together the relevant fragments every time. Nothing is built up. NotebookLM, ChatGPT file uploads, and most RAG systems work this way.

@umgefahren
umgefahren / art002e000192.jpg.exif
Created April 3, 2026 21:19
EXIF from Hello, World image
ExifTool Version Number : 13.52
File Name : art002e000192.jpg
Directory : /Users/hannes/Downloads
File Size : 6.2 MB
File Modification Date/Time : 2026:04:03 23:12:02+02:00
File Access Date/Time : 2026:04:03 23:12:03+02:00
File Inode Change Date/Time : 2026:04:03 23:12:02+02:00
File Permissions : -rw-r--r--
File Type : JPEG
File Type Extension : jpg