Skip to content

Instantly share code, notes, and snippets.

Avatar
🦊
not a fox

Jakob Voß nichtich

🦊
not a fox
View GitHub Profile
@nichtich
nichtich / README.md
Last active January 19, 2023 19:19
Ubuntu at Lenovo ThinkPad P14s
View README.md

Install and setup Ubuntu at a new Lenovo ThinkPad P14s Gen 3 with NVIDIA T550.

Lenovo is certified for Ubuntu

Lenovo provides a short document how to install Ubuntu 20.04

  • Enter BIOS and disable secure boot, to boot from USB Stick
  • Install Ubuntu, with "Install third-party software" enabled to include NVIDIA drivers

Update firmware

@nichtich
nichtich / README.md
Last active August 18, 2022 08:10
Abfrage von Proceedings-Daten aus dem K10plus
View README.md

Abfrage von Proceedings-Daten aus dem K10plus

Schritt 1: Finden des Normdatensatz der Proceedings-Reihe z.B. PPN 669696374 für CEUR-WS.

Die Verknüpften Publikationen sind im OPAC unter related publications aufrufbar.

Schritt 2: SRU-Abfrage der verknüpften Publikationen

Wie in der K10plus-SRU-Dokumentation beschrieben setzt sich die entsprechende CQL-Query aus drei Teilen zusammen:

@nichtich
nichtich / comparison.md
Last active March 3, 2022 10:29
JSON query languages
View comparison.md

JSON query languages

  • JSONPath is was created 2007, inspired by XPath. A formal standard is being created at https://github.com/ietf-wg-jsonpath/draft-ietf-jsonpath-base
  • SQL/JSON path was created inspired by JSONPath and other query languages.
  • jq is a programming language with strong support of JSON transformation
  • JSON Pointer only references a single element

Most important conflicting difference between JSONPath and SQL/JSON path is $.["name"] vs $."name" and $[? filter ] vs $?(filter).

Other JSON query languages

@nichtich
nichtich / wikidata-kdl.md
Last active November 15, 2021 23:11
Wikidata in KDL
View wikidata-kdl.md

Serialization of Wikidata data model in KDL

Two years ago a experimented with a data language for Wikibase. Maybe using KDL as syntax is a better approach.

# simple statement
Q4115189 P31=Q1   # KDL property
Q4115189 P31 Q1   # two KDL arguments

# multiple stataments on same item
@nichtich
nichtich / README.md
Last active April 28, 2021 15:27
Overlapping Markup Data Language (OMDL)
View README.md

This is a quick draft of a data format specification to encode annotated character data to support overlapping markup, also known as standoff markup.

Everything is subject to discussion

Related work

  • By now this is kind of a fork of atjson
  • Ted Nelson's xanadoc EDL format
  • OCR formats ALTO, PAGE, hOCR
  • Mac OSX Core Text
View install-sd-card.sh
#/bin/bash
# Directly install Raspberry OS to SD card
IMAGE=https://downloads.raspberrypi.org/raspios_full_armhf/images/raspios_full_armhf-2020-12-04/2020-12-02-raspios-buster-armhf-full.zip
DEV=/dev/sdd
curl -o - $IMAGE | zcat | sudo dd bs=4M of=$DEV conv=fsync
# as one-liner
IMAGE=... DEV=/dev/sdd bash -c 'curl -o - $IMAGE | zcat | sudo dd bs=4M of=$DEV conv=fsync'
@nichtich
nichtich / README.md
Last active December 6, 2020 21:46
Minecraft PI
View README.md

Minecraft Pi Edition (mcpi) ist eine kostenlose Version von Minecraft, die speziell für den Raspberry Pi herausgegeben wurde. Sie basiert auf der Bedrock Version 0.6.0 aus dem Januar 2013, ist also schon etwas älter. Das Spiel bietet standardmäßig nur den Kreativmodus mit einer eingeschränkten Karte, kann allerdings programmiert werden.

Es gibt einige Anleitungen und Beispiele, die meisten davon allerdings schon etwas älter.

@nichtich
nichtich / webcam.md
Last active September 14, 2020 20:32
Any Webcam
View webcam.md

How to use an external webcam as local webcam for video conferencing.

An external webcam is a video (and possibly audio) source that isn't build into the local computer or connected to it via USB.

Solution: v4l2loopback

Use Android phone as video source

On Android Start DroidCam and get the webcam URL.

@nichtich
nichtich / pp.js
Created August 11, 2020 07:11
PICA Plain parser in JavaScript
View pp.js
/* PICA Plain parser in JavaScript */
const pp=s=>s.split(/\n/)
.map(l=>l.match(/^([012][0-9][0-9][A-Z@])(\/([0-9]{2,3}))?\s*(\$([A-Za-z0-9]).+)+/)
.filter(m=>m)
.map(m=>[m[0],m[2],...m[3].split(/\$([A-Za-z0-9])/).slice(1).map(s=>s.replace(/\$\$/g,'$'))])
@nichtich
nichtich / notes.md
Last active October 22, 2019 10:17
Visual-Meta data format