Skip to content

Instantly share code, notes, and snippets.

@mping
mping / ducky.md
Created July 4, 2022 12:49 — forked from rizalgowandy/ducky.md
Programming media keys on the Ducky One 2 Skyline
View ducky.md

Programming Media Keys on the Ducky One 2

To use media keys on the Ducky One 2, you must record a macro to bind the media function to a hotkey combination, i.e. Fn plus some key.

Example

Important: In the instructions below, "Press X+Y+Z" means press and hold key X, press and hold key Y, press and hold key Z in that order, and then release all three.

As an example, to bind Fn+PgUp to the play/pause media function:

@mping
mping / README.md
Last active October 1, 2021 16:43
Certs
View README.md
@mping
mping / example.sh
Created February 23, 2021 09:48
jvisualvm with logging
View example.sh
bin/jvisualvm --jdkhome /home/mping/.asdf/installs/java/adopt-openjdk-11.0.1+13 -J-Djava.util.logging.config.file=vvm.properties --openjmx localhost:10101
❯ cat /home/mping/Devel/visualvm_204/vvm.properties
handlers=java.util.logging.ConsoleHandler
.level=INFO
java.util.logging.ConsoleHandler.level=FINEST
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
javax.management.level=FINEST
javax.management.remote.level=FINEST
@mping
mping / either.clj
Created February 15, 2021 19:19 — forked from mping-exo/either.clj
View either.clj
(require '[clojure.spec.alpha :as s])
(s/def ::test (s/and (s/keys :req-un [(or ::key1 ::key2)])
(fn [{:keys [key1 key2]}]
(not (and key1 key2)))))
;; s/or validates some of the keys
;; the (fn..) ensures that both keys CANNOT be present
@mping
mping / lazy_channel.clj
Created November 27, 2020 13:15
lazy channel
View lazy_channel.clj
(require '[clojure.core.async :as a])
(defn pull-seq
"Returns a (blocking!) lazy sequence read from a channel."
[c]
(lazy-seq
(a/>!! c :ready)
(when-let [v (a/<!! c)]
(cons v (pull-seq c)))))
@mping
mping / sliding_window.clj
Created November 19, 2020 13:36
Sliding window example
View sliding_window.clj
(defn- new-window [counter prev ts]
(assoc counter :curr 0 :prev prev :last-ts ts))
(defn- increase-count [counter val ts]
(assoc counter :curr val :last-ts ts))
(defn- inc! [counter]
(swap! counter
(fn [{:keys [prev curr last-ts window-ms window-allow] :as atm}]
@mping
mping / defmulti.clj
Last active May 25, 2020 09:11
Clojure hierarchy with multimethods
View defmulti.clj
(defn dispatch-fn [o]
(println (vals (select-keys o [:type :entity])))
[(or (get o :type) ::any)
(or (get o :entity) ::any)])
(def hiera (atom (-> (make-hierarchy)
(derive :string ::any)
(derive :object ::any))))
View doc.org

Kubernetes the Exoscale way

Prerequisites

  • exo CLI
  • cs
  • jq

Creating the infrastructure

Private network

@mping
mping / columns.md
Last active February 14, 2020 10:54
Markdown columns side by side
View columns.md

Document Title

The usual Markdown Cheatsheet does not cover some of the more advanced Markdown tricks, but here is one. You can include verbatim HTML in your Markdown document. This is particularly useful for tables. Check this out:

Version 1Version 2
@mping
mping / test.js
Last active May 13, 2019 21:25
geojson > svg through d3
View test.js
const json = {
"routes": [{
"legs": [{
"summary": "Avenida Infante Dom Henrique, Autoestrada do Norte",
"weight": 11481.1,
"duration": 10976.2,
"steps": [{
"intersections": [{
"out": 0,
"entry": [true],