Skip to content

Instantly share code, notes, and snippets.

@lmrco
lmrco / app.swift
Last active April 19, 2025 09:26
swift osx application without nib
import Cocoa
class WindowController: NSWindowController {
}
class AppDelegate: NSObject {
var mainWindow: NSWindow?
var mainController: NSWindowController?
}
(Chapters marked with * are already written. This gets reorganized constantly
and 10 or so written chapters that I'm on the fence about aren't listed.)
Programmer Epistemology
* Dispersed Cost vs. Reduced Cost
* Verificationist Fallacy
* Mistake Metastasis
The Overton Window
Epicycles All The Way Down
The Hyperspace Gates Were Just There
@msmuenchen
msmuenchen / gist:9318327
Last active April 20, 2025 09:32
KeePass v2.x (KDBX v3.x) file format
Convention: Byte array notation as it would appear in a hexeditor.
= Layout=
KDBX files, the keepass database files, are layout as follows:
1) Bytes 0-3: Primary identifier, common across all kdbx versions:
private static $sigByte1=[0x03,0xD9,0xA2,0x9A];
2) Bytes 4-7: Secondary identifier. Byte 4 can be used to identify the file version (0x67 is latest, 0x66 is the KeePass 2 pre-release format and 0x55 is KeePass 1)
@willurd
willurd / web-servers.md
Last active December 10, 2025 10:35
Big list of http static server one-liners

Each of these commands will run an ad hoc http static server in your current (or specified) directory, available at http://localhost:8000. Use this power wisely.

Discussion on reddit.

Python 2.x

$ python -m SimpleHTTPServer 8000
@Sjors
Sjors / bitcoin-pay.rb
Last active April 9, 2024 16:50
This script demonstrates how a bitcoin transaction is created and signed. Just pass in your own address and private key and it will prepare a transaction for you. You can then copy & paste that transaction into a webservice like Blockchain to send it. I wrote this mostly to understand better how it works. I sometimes had to "cheat" and look at t…
#!/usr/bin/env ruby
require 'open-uri'
require 'JSON'
require 'digest/sha2'
require 'pry'
require 'bigdecimal'
require 'bitcoin' # Because I need to cheat every now and then
# Usage:
# gem install pry json ffi ruby-bitcoin
@quchen
quchen / trolling_haskell
Last active October 10, 2025 04:32
Trolling #haskell
13:15 <xQuasar> | HASKELL IS FOR FUCKIN FAGGOTS. YOU'RE ALL A BUNCH OF
| FUCKIN PUSSIES
13:15 <xQuasar> | JAVASCRIPT FOR LIFE FAGS
13:16 <luite> | hello
13:16 <ChongLi> | somebody has a mental illness!
13:16 <merijn> | Wow...I suddenly see the error of my ways and feel
| compelled to write Node.js!
13:16 <genisage> | hi
13:16 <luite> | you might be pleased to learn that you can compile
| haskell to javascript now
@dergachev
dergachev / GIF-Screencast-OSX.md
Last active October 31, 2025 16:45
OS X Screencast to animated GIF

OS X Screencast to animated GIF

This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.

Screencapture GIF

Instructions

To capture the video (filesize: 19MB), using the free "QuickTime Player" application:

1981:cms $ rspec ./spec/models/sqs_queue_processor_spec.rb -fs --color
/Users/xxx.yyy/.rvm/gems/ruby-1.9.3-p286@mew_cms/gems/padrino-core-0.10.6/lib/padrino-core/reloader.rb:106:in `block in lock!': undefined method `split' for name(.):XPath::Expression::Name (NoMethodError)
from /Users/xxx.yyy/.rvm/gems/ruby-1.9.3-p286@mew_cms/gems/padrino-core-0.10.6/lib/padrino-core/reloader.rb:106:in `map'
from /Users/xxx.yyy/.rvm/gems/ruby-1.9.3-p286@mew_cms/gems/padrino-core-0.10.6/lib/padrino-core/reloader.rb:106:in `lock!'
from /Users/xxx.yyy/.rvm/gems/ruby-1.9.3-p286@mew_cms/gems/padrino-core-0.10.6/lib/padrino-core/loader.rb:68:in `load!'
from /Users/xxx.yyy/Documents/work/cms/config/boot.rb:66:in `<top (required)>'
from /Users/xxx.yyy/Documents/work/cms/spec/spec_helper.rb:2:in `require'
from /Users/xxx.yyy/Documents/work/cms/spec/spec_helper.rb:2:in `<top (required)>'
from /Users/xxx.yyy/Documents/work/cms/spec/models/sqs_queue_processor_spec.rb:1:in `requir
@axelpale
axelpale / combinations.js
Last active October 11, 2025 20:04
JavaScript functions to calculate combinations of elements in Array.
/**
* Copyright 2012 Akseli Palén.
* Created 2012-07-15.
* Licensed under the MIT license.
*
* <license>
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files
* (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
@hellerbarde
hellerbarde / latency.markdown
Created May 31, 2012 13:16 — forked from jboner/latency.txt
Latency numbers every programmer should know

Latency numbers every programmer should know

L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns             
Compress 1K bytes with Zippy ............. 3,000 ns  =   3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns  =  20 µs
SSD random read ........................ 150,000 ns  = 150 µs

Read 1 MB sequentially from memory ..... 250,000 ns = 250 µs