Skip to content

Instantly share code, notes, and snippets.

View juergenhoetzel's full-sized avatar
🎯
Focusing

Jürgen Hötzel juergenhoetzel

🎯
Focusing
View GitHub Profile
@juergenhoetzel
juergenhoetzel / getstarred.sh
Last active April 16, 2023 09:50
List starred Github repos in Shell (curl + jq)
user=juergenhoetzel
while curl -s "https://api.github.com/users/$user/starred?per_page=100&page=${page:-1}" \
|jq -r -e '.[].full_name' && [[ ${PIPESTATUS[1]} != 4 ]]; do
let page++
done
@juergenhoetzel
juergenhoetzel / getstarred.ps1
Last active August 3, 2022 20:26
List starred Github repos in Powershell
$user = "juergenhoetzel"
$p = 1
do {
$full_names = Invoke-RestMethod "https://api.github.com/users/$user/starred?per_page=100&page=$p"
$full_names.ForEach({$_.full_name})
$p++
} while ($full_names.Length -gt 0)
@juergenhoetzel
juergenhoetzel / b64_encode_decode.c
Created December 12, 2020 14:32
Base64 encoding and decoding using OpenSSL
// Encodes Base64
#include <openssl/bio.h>
#include <openssl/buffer.h>
#include <openssl/evp.h>
#include <stdint.h>
// Decodes Base64
#include <assert.h>
#include <openssl/bio.h>
#include <openssl/evp.h>
#include <stdint.h>
@juergenhoetzel
juergenhoetzel / utf16.go
Created December 8, 2018 09:43
Decode utf16 (little or big endian) to string
package main
import (
"bytes"
"encoding/binary"
"fmt"
"unicode/utf16"
)
func DecodeUtf16(b []byte, order binary.ByteOrder) (string, error) {
@juergenhoetzel
juergenhoetzel / go-find-external.el
Created March 13, 2018 19:27
Faster external package indexing for go-mode
(defun go-packages-find ()
(sort
(delete-dups
(cl-mapcan (lambda (topdir)
(let ((pkgdir (concat topdir "/pkg")))
(mapcar (lambda (file)
(let ((sub (substring file 0 -2)))
(mapconcat #'identity (cdr (split-string sub "/")) "/")))
(split-string (shell-command-to-string
(format "find \"%s\" -not -path \"%s/tool*\" -not -path \"%s/obj/*\" -name \"*.a\" -printf \"%%P\\n\""
# emojify completion -*- shell-script -*-
_emojify_complte(){
local cur
_get_comp_words_by_ref -n : cur
COMPREPLY=( $(compgen -W "${_emojis[*]}" -- ${cur}) )
__ltrim_colon_completions "$cur"
}
# sanity checks

Keybase proof

I hereby claim:

  • I am juergenhoetzel on github.
  • I am juergenhoetzel (https://keybase.io/juergenhoetzel) on keybase.
  • I have a public key whose fingerprint is 355B DB97 ED47 24E6 B3A4 50E7 A3D9 562A 5898 74AB

To claim this, I am signing this object:

@juergenhoetzel
juergenhoetzel / db.clj
Created August 22, 2012 12:13
get-user
(defn get-user [handle]
(sql/with-connection db
(sql/with-query-results rs ["select * from users where handle=?" handle] (first rs))))
@juergenhoetzel
juergenhoetzel / CustomFilteringEvaluator.java
Created June 19, 2012 18:11
Neo4J in Action (revised CustomFilteringEvaluator)
import org.neo4j.graphdb.traversal.Evaluator;
import org.neo4j.graphdb.traversal.Evaluation;
import org.neo4j.graphdb.*;
// exclude Movies seen by userNode
public class CustomFilteringEvaluator implements Evaluator {
private RelationshipType hasSeenRelationshipType = DynamicRelationshipType.withName("HAS_SEEN");
private final Node userNode;
public CustomFilteringEvaluator(Node userNode) {
this.userNode = userNode;
@juergenhoetzel
juergenhoetzel / account.clj
Created May 3, 2012 14:55
Well-Grounded Java Developer: Account example revised
(defn make-account [name balance]
{:name name :balance balance})
(defn withdraw [account n]
(update-in account [:balance] - n))
; Single-Treaded withdraw/loop
(loop [a (make-account "Ben" 5000)]
(Thread/sleep 1)
(if (pos? (:balance a))