Skip to content

Instantly share code, notes, and snippets.

@jcgregorio
jcgregorio / gen-example.go
Created Oct 11, 2021
Random Integer Matrices With Inverses That Are Also Integer Matrices, aka Generating Unimodular Matrices
View gen-example.go
// Demo application for generating random Unimodular Matrices: https://en.wikipedia.org/wiki/Unimodular_matrix
package main
import (
"fmt"
"math/rand"
"time"
"gonum.org/v1/gonum/mat"
)
View ncrev.go
// ncrev is essentially "nc -l NNNN", i.e. netcat listening on a port and
// directing the traffic to stdin/stdout, but it first checks that nothing is
// already listening on port NNNN.
package main
import (
"flag"
"io"
"log"
"net"
View settings.json
{
"workbench.editor.enablePreview": false,
"workbench.editor.enablePreviewFromQuickOpen": false,
"editor.find.autoFindInSelection": "always",
"go.testFlags": [
"-count=1"
],
"go.delveConfig": {
"useApiV1": false,
"dlvLoadConfig": {
@jcgregorio
jcgregorio / helloweb.yaml
Created Jan 1, 2020
helloweb deployment + service + ingress
View helloweb.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: helloweb
labels:
app: hello
spec:
selector:
matchLabels:
app: hello
View Dockerfile
FROM debian:testing-slim
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
git \
python \
curl
RUN mkdir -p --mode=0777 /workspace/__cache \
&& groupadd -g 2000 skia \
&& useradd -u 2000 -g 2000 --home /workspace/__cache skia
View README.md

Create a Google Cloud Storage bucket, and then create a service account that has Admin access to that bucket. Export a JSON key of that service account and store it at:

~/.config/{bucket name goes here}/key.json

View Makefile
foo: foo.c foo.h bar.c bar.h
gcc bar.c foo.c -o foo -lm
clean:
rm foo foo.o bar.o
View index.html
<!DOCTYPE html>
<html>
<head>
<title>select-sk demo</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=egde,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script type="text/javascript" charset="utf-8">
// This bit of script loads the custom elements v1 polyfill, but only if required.
if (!window.customElements) {
View subreddit-van.js
window.customElements.define('subreddit-van', class extends HTMLElement {
// Only get callbacks when our 'name' attribute changes.
static get observedAttributes() { return ['name']; }
// Called when our 'name' attribute changes.
attributeChangedCallback(attr, oldValue, newValue) {
if (newValue === '') {
return
}
fetch(`https://www.reddit.com/r/${ newValue }/top.json?limit=5`).then(resp => {
@jcgregorio
jcgregorio / spinner-bw.css
Created Nov 8, 2017
An activity spinner using Custom Elements.
View spinner-bw.css
spinner-bw {
display: none;
border-radius: 50%;
width: 2em;
height: 2em;
border: 0.4em solid #A6CEE3;
border-left: 0.4em solid #1F78B4;
animation: spinner-bw-spin 1.5s infinite linear;
}