Skip to content

Instantly share code, notes, and snippets.

View onbjerg's full-sized avatar

Oliver Nordbjerg onbjerg

  • Copenhagen
  • 02:47 (UTC +02:00)
  • X @onbjerg
View GitHub Profile
@yorickdowne
yorickdowne / HallOfBlame.md
Last active May 9, 2024 08:32
Great and less great SSDs for Ethereum nodes

Overview

Syncing an Ethereum node is largely reliant on IOPS, I/O Per Second. Budget SSDs will struggle to an extent, and some won't be able to sync at all.

This document aims to snapshot some known good and known bad models.

For size, 4TB comes recommended as of mid 2024. The smaller 2TB drive should last an Ethereum full node until early 2025 or thereabouts, with crystal ball uncertainty. Remy wrote a migration guide to 4TB.

High-level, QLC and DRAMless are far slower than "mainstream" SSDs. QLC has lower endurance as well. Any savings will be gone when the drive fails early and needs to be replaced.

@paniq
paniq / ecs.md
Last active May 27, 2023 10:34
Entity Component Systems
@huw
huw / runes.py
Last active March 16, 2024 00:42
import string
def find_position(char):
for set_num in range(len(table)):
if char in table[set_num]:
return set_num
return False
def forge_offsets(key, direction, offset):
if type(key) is str:
@lukad
lukad / hello.dasm
Last active January 18, 2024 09:58
My hello world program in DCPU-16 ASM.
JSR main
; Main
:main
JSR setup ; Setup the hardware
SET A, msg ; Store msg in A for print_message
JSR print_message ; Print our message
SET PC, end ; End the program
@naholyr
naholyr / enableMultipleViewRoots.js
Created May 27, 2011 15:23
Allow multiple views roots in Express.js
// Usage:
// var express = require('express')
// require('enableMultipleViewRoots')(express)
module.exports = function(express) {
var old = express.view.lookup;
function lookup(view, options) {
// If root is an array of paths, let's try each path until we find the view
if (options.root instanceof Array) {