Skip to content

Instantly share code, notes, and snippets.

@Oppodelldog
Oppodelldog / main.go
Created August 29, 2020 21:35
app icon creation
package main
import (
"bytes"
"fmt"
ico "github.com/Kodeworks/golang-image-ico"
"github.com/nfnt/resize"
"image"
"image/gif"
"image/png"
@Oppodelldog
Oppodelldog / main.go
Last active May 27, 2020 19:30
one sample of non blocking coroutine safe boolean access
package main
import (
"fmt"
"time"
)
func newT() T {
t := make(T)
export class Observer<T> {
protected handlers: Array<(arg0: T) => void>;
constructor() {
this.handlers = new Array<(arg0: T) => void>();
}
public subscribe(f: (arg0: T) => void) {
this.handlers.push(f)
}
@Oppodelldog
Oppodelldog / main.c
Created April 16, 2020 20:51
Control of Stepper Motor (28BYJ-48) via its driver - used on ATMEGA-88A
/*
* main.c - Control of Stepper Motor (28BYJ-48) via its driver
* written for ATMEGA-88A
*
* Created: 16.04.2020 19:00:00
* Author : nils
*/
#define F_CPU 8000000UL
@Oppodelldog
Oppodelldog / random-firstnames.sh
Created April 9, 2020 22:41
get some random first names
#!/bin/bash
filename="first-names.txt"
targetFilename="names.txt"
wget https://raw.githubusercontent.com/dominictarr/random-name/master/${filename}
length=$(cat ${filename} | wc -l)
truncate -s 0 ${targetFilename}
for i in {1..42}
@Oppodelldog
Oppodelldog / tcpproxy.go
Created March 27, 2020 20:59
TCP proxy
package main
import (
"context"
"flag"
"fmt"
"io"
"log"
"net"
"os"
@Oppodelldog
Oppodelldog / sshupload.go
Created March 25, 2020 23:56
uploading a file via ssh using golang.org/x/crypto/ssh
package sshupload
import (
"fmt"
"golang.org/x/crypto/ssh"
"io"
"net"
"os"
"path"
"path/filepath"
@Oppodelldog
Oppodelldog / waveshare_keys.go
Last active March 25, 2020 23:43
accessing keys of waveshare epaper 2.7 using github.com/stianeikeland/go-rpio/v4 in a convenient way
package main
import (
"fmt"
"github.com/stianeikeland/go-rpio/v4"
"log"
"time"
)
// Key defines a type for keys
@Oppodelldog
Oppodelldog / portcheck.go
Created January 31, 2020 21:57
port check
package main
import (
"fmt"
"net"
"time"
)
func main() {
@Oppodelldog
Oppodelldog / logAccessInfo.go
Last active January 23, 2020 22:04
When staring a server on all interfaces, log hints of how to access it easily. Nice to have in development of the app
func logAccessInfo(addr string, port int, path, protocol string) {
ifaces, err := net.Interfaces()
if err != nil {
logrus.Infof("access it via %s://%s%s", protocol, addr, path)
}
for _, i := range ifaces {
addrs, err := i.Addrs()
if err != nil {
continue
}