name: tufte-viz description: | Ideate and critique data visualizations using Edward Tufte's principles from "The Visual Display of Quantitative Information." Use this skill when: (1) Designing new data visualizations or charts (2) Critiquing or improving existing visualizations (3) Reviewing dashboards or reports for graphical integrity (4) Deciding between visualization approaches (5) Reducing chartjunk or improving data-ink ratio (6) Planning small multiples or high-density displays
It turns out that MacOS Tahoe can generate and use secure-enclave backed SSH keys! This replaces projects like https://github.com/maxgoedjen/secretive
There is a shared library /usr/lib/ssh-keychain.dylib that traditionally has been used to add smartcard support
to ssh by implementing PKCS11Provider interface. However since recently it also implements SecurityKeyProivder
which supports loading keys directly from the secure enclave! SecurityKeyProvider is what is normally used to talk to FIDO2 devices (e.g. libfido2 can be used to talk to your Yubikey). However you can now use it to talk to your Secure Enclave instead!
| ;;; package --- Fix permissions for Emacs.app on macOS Catalina | |
| ;;; Author: Artem Loenko | |
| ;;; Mail-To: <artyom.loenko@mac.com> | |
| ;;; Commentary: | |
| ;;; Code: | |
| (defconst _default-emacs-app-plist-path "/Applications/Emacs.app/Contents/Info.plist") | |
| (defconst _temp-buffer-name "*fixing Emacs permissions*") | |
| (defconst _temp-buffer (get-buffer-create _temp-buffer-name)) | |
| (with-current-buffer _temp-buffer (erase-buffer)) |
| ; Short guide to TCP/IP Client/Server programming in Common Lisp using usockets | |
| ; | |
| ; The main reason for this guide is because there are very few examples that | |
| ; explain how to get started with socket programming with Common Lisp that I | |
| ; could understand. After spending a day trying, I finally came up with a small | |
| ; bit of code that makes it easy to understand the basics. I've written this | |
| ; primarily for myself, but should help others get started as well. | |
| ; As usual, we will use quicklisp to load usocket. |
Note: this was written in April/May 2014 and the API may has definitely changed since. I have nothing to do with Tinder, nor its API, and I do not offer any support for anything you may build on top of this. Proceed with caution
I've sniffed most of the Tinder API to see how it works. You can use this to create bots (etc) very trivially. Some example python bot code is here -> https://gist.github.com/rtt/5a2e0cfa638c938cca59 (horribly quick and dirty, you've been warned!)
| (load-file "./watch_service.clj") | |
| (refer 'watch-service) | |
| (defn print-ev | |
| [ev ctx] | |
| (println "[foo]" ev " --> " ctx) | |
| (println "Parent Dir:" (.getParent ctx))) | |
| (defn print-ev-2 | |
| [ev ctx] |