Skip to content

Instantly share code, notes, and snippets.

View cipherself's full-sized avatar

Mohamed Attia cipherself

View GitHub Profile
@xeubie
xeubie / datascript+xitdb.md
Last active July 4, 2026 11:58
Datascript + xitdb: your humble, single-file, mini Datomic

xitdb-clj is a new immutable database for Clojure. It can time travel like Datomic, and store data in a single file like SQLite. On its own, though, it has no query language. Enter Datascript...

Datascript is normally an in-memory database, but it lets you use anything as backing storage. What if we combined them?

Datascript's storage feature doesn't tell us exactly what changed, so I added one more trick: Editscript, the diffing library. I use it to figure out how to update the database with the minimal number of changes.

The end result is a sort of mini Datomic that writes to a single file. And yet, this setup can do something Datomic can't: it can branch off of any old copy of the database. The example below reverts to an older copy of the database.

Keep in mind that all reads and writes are incremental. The database is not being loaded into memory at once, so you can use it to

@ericelliott
ericelliott / essential-javascript-links.md
Last active April 30, 2026 08:09
Essential JavaScript Links
@chrisdone
chrisdone / typing.md
Last active May 7, 2026 09:33
Typing Haskell in Haskell

Typing Haskell in Haskell

MARK P. JONES

Pacific Software Research Center

Department of Computer Science and Engineering

Oregon Graduate Institute of Science and Technology

@staltz
staltz / introrx.md
Last active September 11, 2026 21:25
The introduction to Reactive Programming you've been missing
#!/usr/bin/env python
# Quick and dirty demonstration of CVE-2014-0160 by
# Jared Stafford (jspenguin@jspenguin.org)
# Modified so that it finds cookies
import sys
import struct
import socket
import time
import select
@wsargent
wsargent / docker_cheat.md
Last active May 27, 2026 15:46
Docker cheat sheet
@willurd
willurd / web-servers.md
Last active August 22, 2026 05:03
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
@JeffreyWay
JeffreyWay / gist:5695346
Created June 2, 2013 23:33
And we wonder why we get overwhelmed.
So you want to accept payments online with PHP?
- Well, you probably don't want to handle that process manually. Too dangerous and risky.
- So learn the Stripe API. Works great!
- But you'll still need to setup SSL. So go learn how to do that.
- Stripe provides a PHP package, so download that through Composer. If you're not familiar with Composer, you'll need to learn that too.
- If you want the most flexibility, you'll want to manually create the payment form.
- So you'll need to send an AJAX request with a special token to Stripe's API. jQuery makes this easy, so go learn jQuery.
- Once the payment completes, you'll likely want to send the buyer a "Purchased" email, so learn how to send email.
- But don't make the user wait for the email to send. That takes too long. Add that to a background job.
@gfixler
gfixler / OpenCourseOnline
Created February 11, 2013 10:14
OpenCourseOnline youtube channel links, prettied up. These were so hard to find, and so inconsistently named.
Probabilistic Graphical Models with Professor Daphne Koller - Stanford University {{{1
01.01 - Welcome | https://www.youtube.com/watch?v=WPSQfOkb1M8
01.02 - Overview and Motivation | https://www.youtube.com/watch?v=6AVurePzK3Y
01.03 - Distributions | https://www.youtube.com/watch?v=Y1i7Tzj9YFg
01.04 - Factors | https://www.youtube.com/watch?v=5R5ixMmKQzg
02.01 - Semantics & Factorization | https://www.youtube.com/watch?v=6ODl1rxoT14
02.02 - Reasoning Patterns | https://www.youtube.com/watch?v=dSLlBMOKWF4
02.03 - Flow of Probabilistic Influence | https://www.youtube.com/watch?v=PfirsYouObw
@arvearve
arvearve / gist:4158578
Created November 28, 2012 02:01
Mathematics: What do grad students in math do all day?

Mathematics: What do grad students in math do all day?

by Yasha Berchenko-Kogan

A lot of math grad school is reading books and papers and trying to understand what's going on. The difficulty is that reading math is not like reading a mystery thriller, and it's not even like reading a history book or a New York Times article.

The main issue is that, by the time you get to the frontiers of math, the words to describe the concepts don't really exist yet. Communicating these ideas is a bit like trying to explain a vacuum cleaner to someone who has never seen one, except you're only allowed to use words that are four letters long or shorter.

What can you say?