Skip to content

Instantly share code, notes, and snippets.

@jnschaeffer
jnschaeffer / actress.scm
Created March 3, 2020 23:13
demonstration of concurrency in 8sync
(use-modules (oop goops)
(8sync)
(ice-9 atomic))
(define-actor <actress> (<actor>)
((recv actress-recv)))
(define (actress-recv actress message)
(8sleep 1)
(format #t "received message at ~a\n" (strftime "%c" (localtime (current-time)))))
@jnschaeffer
jnschaeffer / indego.rs
Last active January 20, 2020 04:24
Indego CSV parsing
use std::env;
use std::error::Error;
use std::process;
use csv::Reader;
use serde::Deserialize;
#[derive(Debug, Deserialize)]
enum PassholderType {
Indego30,
@jnschaeffer
jnschaeffer / cm-logs.log
Created November 9, 2019 14:56
cert-manager logs
I1109 02:46:50.691921 1 controller.go:129] cert-manager/controller/ingress-shim "level"=0 "msg"="syncing item" "key"="default/test-ingress-1"
I1109 02:46:50.708872 1 controller.go:129] cert-manager/controller/certificates "level"=0 "msg"="syncing item" "key"="default/cm-tls-staging"
I1109 02:46:50.711988 1 sync.go:361] cert-manager/controller/certificates "level"=0 "msg"="no existing CertificateRequest resource exists, creating new request..." "related_resource_kind"="Secret" "related_resource_name"="cm-tls-staging" "related_resource_namespace"="default" "resource_kind"="Certificate" "resource_name"="cm-tls-staging" "resource_namespace"="default"
E1109 02:46:50.788099 1 controller.go:131] cert-manager/controller/ingress-shim "msg"="re-queuing item due to error processing" "error"="certificates.cert-manager.io \"cm-tls-staging\" already exists" "key"="default/test-ingress-1"
I1109 02:46:50.788143 1 controller.go:129] cert-manager/controller/ingress-shim "level"=0 "msg"="synci
@jnschaeffer
jnschaeffer / septa_postgis.sql
Created February 19, 2019 01:49
Some useful SEPTA GIS stuff
CREATE VIEW closest_vehicles AS
SELECT v.*, ST_ClosestPoint(r.wkb_geometry, v.geom) AS closest_geom
FROM vehicles v
INNER JOIN routes r
ON v.route = r.name;
CREATE INDEX vehicles_geom_idx ON vehicles USING GIST (geom);
UPDATE vehicles AS v
SET closest_geom = ST_ClosestPoint(r.wkb_geometry, v.geom)
@jnschaeffer
jnschaeffer / caffe_device_query.txt
Created February 27, 2018 03:03
caffe device_query output
$ ./build/tools/caffe device_query
I0226 22:02:30.074386 13595 common.cpp:438] Total devices: 1
I0226 22:02:30.074512 13595 common.cpp:439] CUDA devices: 0
I0226 22:02:30.074517 13595 common.cpp:440] OpenCL devices: 1
I0226 22:02:30.074522 13595 common.cpp:464] Device id: 0
I0226 22:02:30.074525 13595 common.cpp:466] Device backend: OpenCL
I0226 22:02:30.074528 13595 common.cpp:468] Backend details: Advanced Micro Devices, Inc.: OpenCL 2.1 AMD-APP (2527.3)
I0226 22:02:30.074545 13595 common.cpp:470] Device vendor: Advanced Micro Devices, Inc.
I0226 22:02:30.074551 13595 common.cpp:472] Name: Ellesmere
I0226 22:02:30.074555 13595 common.cpp:474] Total global memory: 8377053184
@jnschaeffer
jnschaeffer / clinfo.txt
Created February 27, 2018 03:01
clinfo output
Number of platforms 1
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.1 AMD-APP (2527.3)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Host timer resolution <printPlatformInfo:5: get CL_PLATFORM_HOST_TIMER_RESOLUTION : error -30>
Platform Extensions function suffix AMD
Platform Name AMD Accelerated Parallel Processing
@jnschaeffer
jnschaeffer / caffe_opencl_test.py
Created February 27, 2018 02:55
Caffe OpenCL failing test
"""This script is made from pieces of the example in examples/00-classification.ipynb"""
import caffe
import os
import numpy as np
# This should be run from the caffe distribution root.
caffe_root = './'
model_def = caffe_root + 'models/bvlc_reference_caffenet/deploy.prototxt'
model_weights = caffe_root + 'models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel'
package main
import (
"fmt"
"log"
"strconv"
)
type errConsumer struct {
err error
@jnschaeffer
jnschaeffer / errorhandling.go
Created September 16, 2014 17:15
Error handling
type MyType struct {
// ...
}
// bad, unpleasant
func someFunc() (*MyType, error) {
x, err := errorableFunc()
if err != nil {
return nil, err
}
@jnschaeffer
jnschaeffer / zipper.go
Created September 9, 2014 20:57
Zipper interface
package zipper
import "fmt"
type Ord int
const (
LeftLess Ord = iota
Equal
RightLess