Goals: Add links that are reasonable and good explanations of how stuff works. No hype and no vendor content if possible. Practical first-hand accounts of models in prod eagerly sought.

// Types for the result object with discriminated union | |
type Success<T> = { | |
data: T; | |
error: null; | |
}; | |
type Failure<E> = { | |
data: null; | |
error: E; | |
}; |
# frozen_string_literal: true | |
# For now, run like this: `ruby --rjit --rjit-disable fjit.rb` | |
# | |
# Once RJIT is removed, the extra flags will not be necessary | |
require "fiddle" | |
require "ffi" | |
require "jit_buffer" | |
require "hacks" |
from enum import Enum | |
import time | |
TEMP_PATH = "/sys/devices/virtual/thermal/thermal_zone0/temp" | |
FAN_PATH = "/sys/class/thermal/cooling_device0/cur_state" | |
class FanSpeed(Enum): | |
OFF = 0 | |
LOW = 1 |
#!/bin/sh | |
# time execution | |
time bin/rubocop -L --stderr $(git diff --name-only --cached | grep '\.rb') | |
# bare minimum | |
bin/rubocop $(git diff --name-only --cached | grep '\.rb') | |
# -L = list files (good to see which one got checked since we don't see the nested command's output | |
# --stderr = may or may not be useful to pipe output there |
Presented by Evadne Wu at Code BEAM Lite in Stockholm, Sweden on 12 May 2023
We have celebrated 10 years of Elixir and also nearly 25 years of Erlang since the open source release in December 1998.
Most of the libraries that were needed to make the ecosystem viable have been built, talks given, books written, conferences held and training sessions provided. A new generation of companies have been built on top of the Elixir / Erlang ecosystem. In all measures, we have achieved further reach and maturity than 5 years ago.
For years, people have been using jemalloc with ruby. There were various benchmarks and discussions. Legend had it that Jemalloc 5 didn't work as well as Jemalloc 3.
Then, one day, hope appeared on the horizon. @wjordan offered a config for Jemalloc 5.
FROM ruby:3.1.2-bullseye
RUN apt-get update ; \
# From page 16 of https://ntruprime.cr.yp.to/nist/ntruprime-20201007.pdf | |
# Linked from https://www.imperialviolet.org/2021/08/26/qrencoding.html | |
def rebase(innums, indenoms, limit, newbase): | |
if len(innums) != len(indenoms): | |
raise "Bad" | |
syms = [] | |
if len(innums) == 1: | |
num, denom = innums[0], indenoms[0] | |
while denom > 1: |
# From https://datatracker.ietf.org/doc/html/draft-msporny-base58-03 | |
# The description on that page is misleading or just wrong. | |
# This was derived from converting the Rust code here: | |
# https://github.com/hachi-bitto/btc-wallet/blob/5dde65a262d3239a23292fc2a4a692994603aeb0/wallet/src/base58.rs | |
TABLE = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" | |
FORWARD = {k:v for (k, v) in enumerate(TABLE)} | |
BACK = {k:v for (v, k) in enumerate(TABLE)} |
I want Microsoft to do better, want Windows to be a decent development platform-and yet, I constantly see Microsoft playing the open source game: advertising how open-source and developer friendly they are - only to crush developers under the heel of the corporate behemoth's boot.
The people who work at Microsoft are amazing, kind, talented individuals. This is aimed at the company's leadership, who I feel has on many occassions crushed myself and other developers under. It's a plea for help.
You probably haven't heard of it before, but if you've ever used win32 API bindings in C#, C++, Rust, or other languages, odds are they were generated from a repository called microsoft/win32metadata.