muis.tuu.fi

Firefox user.js for privacy

// Disable automatic translation
user_pref("browser.translation.detectLanguage", false);
user_pref("browser.translation.ui.show", false);
user_pref("browser.translations.enable", false);
user_pref("browser.translations.automaticallyPopup", false);

// Disable Pocket
user_pref("extensions.pocket.enabled", false);

// Disable Firefox telemetry
user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("datareporting.policy.dataSubmissionEnabled", false);
user_pref("toolkit.telemetry.enabled", false);
user_pref("toolkit.telemetry.unified", false);
user_pref("toolkit.telemetry.server", "");
user_pref("app.shield.optoutstudies.enabled", false);
user_pref("browser.ping-centre.telemetry", false);
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry", false);

// Disable address bar suggestions
user_pref("browser.urlbar.suggest.searches", false);
user_pref("browser.urlbar.suggest.topsites", false);

// Disable new tab sponsored content
user_pref("browser.newtabpage.activity-stream.showSponsored", false);
user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false);
user_pref("browser.newtabpage.activity-stream.feeds.snippets", false);

// Disable search suggestions
user_pref("browser.search.suggest.enabled", false);
user_pref("browser.search.suggest.enabled.private", false);

// Privacy and tracking protection
user_pref("privacy.trackingprotection.enabled", true);
user_pref("privacy.trackingprotection.fingerprinting.enabled", true);
user_pref("privacy.trackingprotection.cryptomining.enabled", true);
user_pref("privacy.trackingprotection.socialtracking.enabled", true);

// Keep normal referrer behavior for OSM and other cross-origin sites
user_pref("network.http.sendRefererHeader", 2);
user_pref("network.http.referer.defaultPolicy", 2);
user_pref("network.http.referer.defaultPolicy.pbmode", 2);

// Avoid stripping cross-origin referrers
user_pref("network.http.referer.XOriginPolicy", 0);
user_pref("network.http.referer.XOriginTrimmingPolicy", 0);

// Disable connectivity checks
user_pref("network.captive-portal-service.enabled", false);
user_pref("network.connectivity-service.enabled", false);

// Misc
user_pref("browser.startup.homepage_override.mstone", "ignore");
user_pref("startup.homepage_welcome_url", "");
user_pref("startup.homepage_welcome_url.additional", "");

// Optional privacy settings that usually do not break OSM
user_pref("network.prefetch-next", false);
user_pref("network.dns.disablePrefetch", true);
user_pref("network.http.speculative-parallel-limit", 0);
user_pref("media.peerconnection.enabled", false);
user_pref("geo.enabled", false);
user_pref("webgl.disabled", true);
user_pref("dom.push.enabled", false);
user_pref("signon.rememberSignons", false);
user_pref("signon.autofillForms", false);
user_pref("extensions.formautofill.creditCards.enabled", false);
user_pref("extensions.formautofill.available", "off");

Exploring How Computers Work


https://www.youtube.com/watch?v=QZwneRb-zqA

Live overdubbing MIDI clip in Ableton

Toolbar has "Session record button" (not the normal record button). In group of four smaller buttons, the last one = small circle.

WiFi setup on Raspberry Pi Trixie (Debian 13)

WiFi setup on Raspberry Pi

Raspberry Pi with Debian Trixie (Debian 13), NetworkManager + netplan.

---

Method 1: Netplan (persistent, recommended)

WiFi is often managed by netplan. Edit or create a file under `/etc/netplan/` (e.g. `90-NM-wlan.yaml`):

```yaml
network:
version: 2
wifis:
wlan0:
renderer: NetworkManager
dhcp4: true
access-points:
"YOUR_SSID":
auth:
key-management: "psk"
password: "YOUR_PASSWORD"
```

Apply and bring up the connection:

```bash
sudo netplan apply
sudo nmcli connection up "netplan-wlan0-YOUR_SSID" # if needed; name may vary
```

---

Method 2: NetworkManager (nmcli)

Add and activate in one go:

```bash
sudo nmcli device wifi connect "YOUR_SSID" password "YOUR_PASSWORD"
```

To create a saved connection (may require storing the password in the connection file):

```bash
sudo nmcli connection add type wifi con-name "MY_WIFI" ssid "YOUR_SSID"
wifi-sec.key-mgmt wpa-psk wifi-sec.psk "YOUR_PASSWORD"
802-11-wireless-security.psk-flags 0
sudo nmcli connection up "MY_WIFI"
```

OpenWrbRX+


https://hub.docker.com/r/slechev/openwebrxplus

MacOS playout software for radio

Megaseg:
https://www.megaseg.com

Radiologik:
https://macinmind.com/?area=app&app=radiologik

Meshtastic device roles & numbers


0 = CLIENT
1 = CLIENT_MUTE
2 = ROUTER
3 = ROUTER_CLIENT
4 = REPEATER (deprecated)
5 = TRACKER
6 = SENSOR
7 = TAK
8 = CLIENT_HIDDEN
9 = LOST_AND_FOUND
10 = TAK_TRACKER
11 = ROUTER_LATE
12 = CLIENT_BASE

For example with Python CLI set with:

meshtastic --set device.role 12

HamLib RPRT error codes

HamLib RPRT error codes

Error code, Name / meaning, Notes

0 RIG_OK — Success, no error
-1 RIG_EINVAL — Invalid parameter
-2 RIG_ECONF — Invalid configuration
-3 RIG_ENOMEM — Memory allocation failure
-4 RIG_ENIMPL — Function not implemented
-5 RIG_ETIMEOUT — Communication timed out
-6 RIG_EIO — I/O error
-7 RIG_EINTERNAL — Internal Hamlib error
-8 RIG_EPROTO — Protocol error
-9 RIG_ERJCTED — Command rejected by rig
-10 RIG_ETRUNC — Argument truncated
-11 RIG_ENAVAIL — Function not available
-12 RIG_ENTARGET — Invalid or non-targetable VFO
-13 RIG_BUSERROR — Hardware bus error
-14 RIG_BUSBUSY — Bus busy or collision
-15 RIG_EARG — Invalid or null pointer argument
-16 RIG_EVFO — Invalid VFO selected
-17 RIG_EDOM — Argument out of domain (value not allowed)

Reflash / flash rdzTTGOsonde with esptool from command line

./esptool-macos/esptool --chip esp32 --port /dev/tty.usbserial-56B60136781 --baud 115200 erase_flash

./esptool-macos/esptool --chip esp32 --port /dev/tty.usbserial-56B60136781 --baud 115200 --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0x1000 "dev20250523-C3-full.bin"

Introduction to the viridis color maps

“magma”, “plasma”, “inferno”, “civids”, “mako”, and “rocket”


https://sjmgarnier.github.io/viridis/articles/intro-to-viridis.html

Splitter AI (make Stems from song)


https://vocalremover.org/splitter-ai

Helado Negro – Full Performance (Live on KEXP)


https://www.youtube.com/watch?v=fjwDl1kovAE

Understanding Deep Learning – book


https://github.com/udlbook/udlbook/releases/download/v2.00/UnderstandingDeepLearning_28_01_24_C.pdf

Minipops


https://bloghoskins.blogspot.com/2016/11/korg-mini-pops-diy-drum-machine.html

Rotopops


https://hainbach.bandcamp.com/album/rotopops

Large Language Models from scratch


https://invidious.protokolla.fi/watch?v=lnA9DMvHtfI


https://invidious.protokolla.fi/watch?v=YDiSFS-yHwk

Licia He Watercolor plots


https://www.eyesofpanda.com/portfolio/

PHP exits when MySql insert fails (because of duplicate)


mysqli_report(MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_INDEX);
mysqli_report(MYSQLI_REPORT_OFF);

Halldór Eldjárn – Full Performance (Live on KEXP)


https://www.youtube.com/watch?v=eiCgslL5ino

Only and best way for clang-formatter

---
BasedOnStyle: Mozilla
AlignAfterOpenBracket: Align
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
BreakAfterJavaFieldAnnotations: 'true'
BreakBeforeBraces: Allman
BreakStringLiterals: 'false'
FixNamespaceComments: 'true'
IndentCaseLabels: 'true'
SpaceBeforeParens: ControlStatements
UseTab: Always
IndentWidth: 4
TabWidth: 4
...

Place that in file .clang-format

Run in MacOS:
find -E . -regex '.*.(cpp|hpp|cc|cxx|h)' -exec clang-format -style=file -i {} ;

Bi-Quad Antenna


https://www.changpuak.ch/electronics/bi_quad_antenna_designer.php

Springtime Carnivore – Other Side Of The Boundary


https://invidious.protokolla.fi/watch?v=cD0dVHhPFT4

RF Resistive Equal Power Divider


https://www.changpuak.ch/electronics/resistive_power_split.php

Code obfuscation by lambda


https://github.com/hnybom/AoC2022/blob/main/src/main/kotlin/fi/solita/hnybom/aoc2022/days/Day3.kt#L23C26-L23C26


(sorry henri! :))

Arduino and Vaisla RS41


https://github.com/marcotchella/radiosonda_arduino/tree/master

Opentopomaps for Garmin


https://garmin.opentopomap.org/

433Mhz license free radio frequency

433.050 - 434.790 Mhz license free radio frequency EU decision

Ham Radio Software Build package installations


http://kb6ibb-15.ham-radio-op.net/Ham-Radio/HamRadioBuild/

Inviduous Instances


https://docs.invidious.io/instances/

Satellite stuff


https://www.karhukoti.com/

Marc Rebillet


https://yewtu.be/kiLE5wHeH6U?t=426

Where’s the feel of the old Internet gone, and what sites do you use?


https://sopuli.xyz/post/611544

Good videos & article on IQ and modulations


https://witestlab.poly.edu/blog/capture-and-decode-fm-radio/

Goertzel algorithm


https://stackoverflow.com/questions/8835806/c-c-goertzel-algorithm-with-complex-output-or-magnitudephase

HF Propagation Prediction and Ionospheric Communications Analysis


https://www.voacap.com/

ATS-20 firmware


https://blog.marxy.org/2021/06/ats-20-si4732-receiver-firmware-update.html

LNA preamp


https://store.uputronics.com/index.php?route=product/product&path=59&product_id=102

Topographic map (heatmap for elevation)


https://en-gb.topographic-map.com/map-5hpgt/Finland/?center=61.49731%2C23.73133&zoom=13

Mikrotik


https://mikrotik.com/products

Python – the correct way


https://bitecode.substack.com/p/relieving-your-python-packaging-pain



https://bitecode.substack.com/p/installing-python-the-bare-minimum

Arrow APRS TNC


https://repo.curiouselectron.com/curiousmuch/arrow-firmware

Xiegu X6100

UKHas


https://ukhas.org.uk/doku.php?id=guides:tracking_guide

LibAPRS


https://unsigned.io/libaprs/

Friction velocity given wind speed at height above surface Calculator

Friction velocity = Von Kármán Constant*(Wind Speed/(ln(Height z above the Surface/Roughness Height of the Surface)))
V* = k*(U/(ln(Z/z0)))

Get data from APRS-IS




https://www.aprs-is.net/javAPRSFilter.aspx


1) Telnet to telnet rotate.aprs.net 10152
2) Send "user AE5PL-TS pass -1 vers testsoftware 1.0_05 filter r/61/23/25"
3) Enjoy data flood

Looks like this:
F4JKL>APDW16,TCPIP*,qAC,T2FRA:!4345.79NI00141.46E#PHG0000 W2MMD APRS RX iGate 1200bps/A=00112
BH4FDZ-8>SQRSR1,TCPIP*,qAC,T2HAKATA:`19OE_/`"4+}46001 46021 438.600 Tetra 22.6C 1023.6hPa S08
OM3ZCK-2>APOT21,WIDE1-1,WIDE2-1,qAR,SR9NFB:!4919.09N/02041.96E#13.7V 6C OM3ZCK-2 Digi Stara Lubovna
9W2DVZ-13>APRS,TCPIP*,qAC,T2DENMARK:=0132.63N/10343.15E_.../...g...t077r000p000P000h94b10108L000APRSuWX 0.1.7i | Malaysia microWX Node | MARTS & HUSAR | AC-powered: 5.00 volts
SV2CSN>TPTU43,WIDE2-2,qAO,SV2HNH:'2&l -/].73' EDESSA QRX 145700
WB4YAL-S>APDG01,TCPIP*,qAC,WB4YAL-GS:;WB4YAL B *051852z2842.36ND08152.38WaRNG0001/A=000010 440 Voice 439.92500MHz +0.0000MHz
KI5MMC-B>APJI43,TCPIP*,qAC,KI5MMC-GS:!3038.75ND09621.43W&RNG0040 440 Voice 443.400 +5.00 MHz
HB9CRE-D>APDG03,TCPIP*,qAC,HB9CRE-DS:!4657.33ND00732.99E&/A=000000440 MMDVM Voice 434.25000MHz +0.0000MHz, APRS for DMRGateway
KC3IRF-N>APDG03,TCPIP*,qAC,T2FZ:!4023.47ND07959.71W&/A=000000440 MMDVM Voice 439.55000MHz +0.0000MHz, KC3IRF_Pi-Star
N3TJJ-12>APMI06,qAR,W3PC-1:;146.64-PG*111111z4030.39N/07622.60Wr146.640MHz C082 -060 AARG
W1WWS-D>APDG03,TCPIP*,qAC,W1WWS-DS:!4156.56ND07120.36W&/A=000000440 MMDVM Voice 445.80000MHz +0.0000MHz, APRS for DMRGateway
DX6RAN-6>APWW10,TCPIP*,qAC,T2ROMANIA:@131149h1040.22N/12257.86E`
AI6ZW-N>APDG03,TCPIP*,qAC,AI6ZW-NS:!3345.46ND11659.94W&/A=000000440 MMDVM Voice 433.50000MHz +0.0000MHz, AI6ZW_Pi-Star_ND
SQ8L-3>APNV10,TCPIP*,qAC,SQ8L-S:T#782,000,029,000,077,073,10000000
DB0PM-10>APLG0,qAO,DL8MCO-10:=4745.28NI01151.17E&LoRa iGATE & Digi, DB0PM-10
6K5ZUH-B>APDG02,TCPIP*,qAC,6K5ZUH-BS:!3550.94ND12834.63E&RNG0001/A=000010 440 Voice 439.50000MHz +0.0000MHz
DO2FRK-L4>APLG01,TCPIP*,qAC,T2SPAIN:=5235.20NL01152.21E&DO2FRK LoRa iGATE & Digi
KC6SSM-10>BEACON,N6ZX-4*,qAR,KC6SSM-5:RMS Packet (WINLINK) - Kensington, CA (CM87UV)
W7ION-10>APRX29,TCPIP*,qAC,T2IRELAND:T#304,14.3,0.9,76.0,4.0,3.0,00000000

HTML5 UP free templates


https://html5up.net/

vscodium


https://github.com/VSCodium/vscodium

Croc


https://schollz.com/blog/croc6/

Helen Frankenthaler


https://www.frankenthalerfoundation.org/artworks/paintings

Calculate look angles, bearing, azimuth, elevation


https://github.com/projecthorus/sondehub-tracker/blob/master/js/tracker.js#L414


// calculates look angles between two points
// format of a and b should be {lon: 0, lat: 0, alt: 0}
// returns {elevention: 0, azimut: 0, bearing: "", range: 0}
//
// based on earthmath.py
// Copyright 2012 (C) Daniel Richman; GNU GPL 3
function calculate_lookangles(a, b) {
// degrees to radii
a.lat = a.lat * DEG_TO_RAD;
a.lon = a.lon * DEG_TO_RAD;
b.lat = b.lat * DEG_TO_RAD;
b.lon = b.lon * DEG_TO_RAD;

var d_lon = b.lon - a.lon;
var sa = Math.cos(b.lat) * Math.sin(d_lon);
var sb = (Math.cos(a.lat) * Math.sin(b.lat)) - (Math.sin(a.lat) * Math.cos(b.lat) * Math.cos(d_lon));
var bearing = Math.atan2(sa, sb);
var aa = Math.sqrt(Math.pow(sa, 2) + Math.pow(sb, 2));
var ab = (Math.sin(a.lat) * Math.sin(b.lat)) + (Math.cos(a.lat) * Math.cos(b.lat) * Math.cos(d_lon));
var angle_at_centre = Math.atan2(aa, ab);
var great_circle_distance = angle_at_centre * EARTH_RADIUS;

ta = EARTH_RADIUS + a.alt;
tb = EARTH_RADIUS + b.alt;
ea = (Math.cos(angle_at_centre) * tb) - ta;
eb = Math.sin(angle_at_centre) * tb;
var elevation = Math.atan2(ea, eb) / DEG_TO_RAD;

// Use Math.coMath.sine rule to find unknown side.
var distance = Math.sqrt(Math.pow(ta, 2) + Math.pow(tb, 2) - 2 * tb * ta * Math.cos(angle_at_centre));

// Give a bearing in range 0 <= b < 2pi
bearing += (bearing 90 && bearing 270 && bearing < 360)) ? 90 - value : value;

var str_bearing = "" + ((bearing 270) ? 'N' : 'S')+ " " + value + '° ' + ((bearing < 180) ? 'E' : 'W');

return {
'elevation': elevation,
'azimuth': bearing,
'range': distance,
'great_circle_distance': great_circle_distance,
'bearing': str_bearing
};
}

Actually great MacOS tips


https://www.macrumors.com/guide/10-macos-tips-boost-productivity/

jealousmarkup


https://jealousmarkup.xyz/

The 3D Line Art Engine for Go


https://github.com/fogleman/ln

Turtletoy


https://turtletoy.net/turtle/90e6288a6b

Filtered sawtooth function form athibaul’s ditties:

// filtered sawtooth function form athibaul's ditties:
function softclip(x) {
return x 1 ? 1 : 1.5*(1 - x*x/3)*x;
}
function varsaw(p, formant) {
let x = p%1;
return (x - 0.5) * softclip(formant*x*(1-x));
}

From:
https://dittytoy.net/ditty/24373308b4

Thing ico Cassette Tape Necklace Adapter


https://www.thingiverse.com/thing:5736778

APRS LoRa


LoRa transmission

433.775 MHz
spreading factor 12
error coding rate cr4/5
preamble length: 8
bandwidth: 125kHz
sync word: 0x12

data format
Two known formats:

OE_: -header and then: destinationcallsign>sourcecallsign:aprsdata
e.g.: 3c ff 01 50 44 39 46 56 48 31 3e 41 50 52 53 3a 21 35 31 35 38 2e 33 39 4e 2f 30 30 35 34 30 2e 31 38 45 5b 77 77 77 2e 76 61 6e 68 65 75 73 64 65 6e 2e 63 6f 6d
AX.25 packets


https://www.lora-aprs.nl/

C++ as functional programming language


https://stackoverflow.com/questions/21471836/what-can-c-offer-as-far-as-functional-programming



https://medium.com/swlh/doing-it-the-functional-way-in-c-5c392bbdd46a

Dendrite m


https://github.com/matrix-org/dendrite

Decentraleyes

Replaces CDN files with local ones = less tracking


https://addons.mozilla.org/fi/firefox/addon/decentraleyes/?utm_source=addons.mozilla.org&utm_medium=referral&utm_content=recommended

Analog telephone


https://www.aliexpress.com/item/1005003715075614.html

Mastodon on Raspberry Pi


https://www.raspberrypi.com/news/host-your-own-mastodon-instance-on-a-raspberry-pi/

Quicktype


https://quicktype.io/

Secret Hitler Game


https://www.secrethitler.com/

Degrowth

"Degrowth emphasizes the need to reduce global consumption and production (social metabolism) and advocates a socially just and ecologically sustainable society with social and environmental well-being replacing GDP as the indicator of prosperity"


https://en.wikipedia.org/wiki/Degrowth

Qt basic + good thread / threading class example


https://github.com/DanielArnett/qt-basic-thread-example

Laravel PHP


https://laravel.com/

Qt downloads

Direct page for downloading Qt installers
https://download.qt.io/official_releases/

Organicmaps app


https://organicmaps.app/

spot-hinta.fi


https://lampopumput.info/foorumi/threads/yksinkertainen-ohjelmistorajapinta-api-s%C3%A4hk%C3%B6n-p%C3%B6rssihinnan-hakemiseen.33938/

Rigmor – Full Performance (Live on KEXP)


https://yewtu.be/watch?v=-wYMVMMsE4k

Quadrant method


https://appfluence.com/productivity/time-management-strategies-for-busy-people-using-the-4-quadrant-method/

Felix Krause


https://krausefx.com/

GPS Jam & ADS-B Exchange map


https://gpsjam.org/



https://globe.adsbexchange.com/

Main-in-a-box


https://mailinabox.email/

Steve Porcaro Synth tips


https://yewtu.be/watch?v=d0YovLglTuY



https://yewtu.be/watch?v=AphEAZKRx8U

BlueARP and Ableton Live

- Create Midi-track for BlueARP
- Setup: Midi from: your input device. Monitor: Auto
- Create Midi track for your synth
- Set Midi from (input type and input channel) both to your BlueARP midi track. Set monitor to "In".

Keyboard shops in Germany


https://keycapsss.com/



https://keygem.store/

Littles-50g-italian-instant


https://www.k-ruoka.fi/kauppa/tuotehaku/juomat/kahvi-ja-suodatinpussit/pikakahvit/tuote/littles-50g-italian-instant-coffee-5034718070029

Memoria Jazz Session


https://soundcloud.com/0music4/memoriajazzsession

CSS grid


https://flexboxfroggy.com/



https://css-tricks.com/snippets/css/a-guide-to-flexbox/



https://css-tricks.com/snippets/css/complete-guide-grid/

Petra Stavast — Ramya


https://fw-books.nl/product/677/

Nicola Nunziata — ALBUM


https://fw-books.nl/product/nicola-nunziata-album/

Lora Webb Nichols — Encampment, Wyoming


https://fw-books.nl/product/encampment-wyoming/

A Shadow at The Edge of Every Moment of The Day


https://www.kehrerverlag.com/en/ida-pimenoff-a-shadow-at-the-edge-of-every-moment-of-the-day-978-3-86828-235-1



https://www.kehrerverlag.com/en/ara-oshagan-dis-placed-978-3-96900-014-4

LY-Drawbot-Tool-by-LOD


https://github.com/love-open-design/LY-Drawbot-Tool-by-LOD

poisson-disk-sampling


http://devmag.org.za/2009/05/03/poisson-disk-sampling/

HalftonePAL


https://github.com/ehufsted/HalftonePAL

LIC (Line Integral Convolution)


http://www.zhanpingliu.org/research/flowvis/LIC/LIC.htm

half-toning-projects


https://estebanhufstedler.com/half-toning-projects/

acrylicodes-drawing-tool


https://www.acrylicode.com/acrylicodes-drawing-tool/

how-to-make-generative-art-feel-natural


https://www.generativehut.com/post/how-to-make-generative-art-feel-natural

potrace in javascript


https://github.com/kilobtye/potrace/blob/master/potrace.js

ly-drawbot-make-it-pro


https://www.generativehut.com/post/ly-drawbot-make-it-pro

LY-Drawbot-Tool-by-LOD


https://github.com/love-open-design/LY-Drawbot-Tool-by-LOD

https://www.instagram.com/themarinus/


https://www.instagram.com/themarinus/

Watercolor robot


https://www.dirtalleydesign.com/blogs/news/how-to-watercolor-painting-with-a-robotic-drawing-machine-an-interview-with-licia-he

marinusdebeer


https://www.marinusdebeer.nl/

Is it art?


https://chrisduesing.com/is-it-art

Sigmoid curve

y=0,5+0,5*TANH(x/2)

x range -6 .. 6

Mies ja elämä – Vaimon faija


https://soundcloud.com/theofficialjorihulkkonen/mies-ja-el-m-vaimon-faija

Firefox redirects to https


https://stackoverflow.com/questions/30532471/firefox-redirects-to-https

Fast web pages for everybody


https://txti.es/

World smallest office suite


https://zserge.com/posts/awfice/

bettermotherfuckingwebsite


http://bettermotherfuckingwebsite.com/

Quite OK Image format


https://qoiformat.org/

Ego Death


https://old.reddit.com/r/AskReddit/comments/rp8usc/whats_something_everyone_should_experience_in/hq3s0ny/

Mask-wearing cuts Covid incidence by 53%

"Results from more than 30 studies from around the world were analysed in detail, showing a statistically significant 53% reduction in the incidence of Covid with mask wearing and a 25% reduction with physical distancing."


https://www.theguardian.com/world/2021/nov/17/wearing-masks-single-most-effective-way-to-tackle-covid-study-finds

Three types of irony

Dramatic Irony: "In Macbeth, the title character appears to be loyal to Duncan. However, Macbeth is actually plotting Duncan’s murder. Duncan doesn't know this, the audience does. "

Situational Irony: "In The Wonderful Wizard of Oz, Dorothy and her friends search for external forces to help them get what they need, but discover that they always had what they needed. "

Verbal Irony: "I just love watching the same cartoon five times every afternoon. It’s such a delight."


Dramatic irony occurs when the audience knows more about what's going on than the characters. It can create suspense as the audience waits to see if the characters will realize what’s happening before it’s too late.

Situational irony occurs when something happens that is completely different from what was expected.

Verbal irony occurs when a character says one thing, but means another.

From:
https://examples.yourdictionary.com/examples-of-irony.html


Homemade developer based on modern lith / Ilford MGRC

1g hydroquinone
0.8g ascorbic acid
0.8g sodium sulphite
6g potassium oxalate
800ml water to dissolve
12g sodium carbonate
Water to 1L

The most secure and hardest to pick locks

Abus 37RK/80
Kasp 19070X
Abloy 362
Sargent & Greenleaf 831
Assa Ruko 4-5
Mul-t-lock C16
Mul-t-lock e18h
Hi-Shear LK1200
Squire SS80CS

By Lockpicking Layer

How meditation works?


https://old.reddit.com/r/educationalgifs/comments/qki1bc/how_meditation_works/

Good transparent inkjet films for alternative processes

Agfa CopyJet & Pictorico Pro Ultra

Safe ESP32 pins


https://randomnerdtutorials.com/esp32-pinout-reference-gpios/


2,4,5,13,14,15-33

Alternative to “expose for the shadows”

We should say instead "Your preferred shadow taste is adjusted with exposure".

Foma liquid emulsion consumption

8" x 10" plate needs 11.5 gr of the emulsion

5" x 7" plate needs 5 gr of the emulsion

4" x 5" plate needs 3 gr of the emulsion

Delete large amount of files in linux shell

find . -maxdepth 1 -name "filename.ext.*" -print0 | xargs -0 rm

Darkroom paper print dynamic range

Log density range 2.0, brightness range of 100:1 or 6 2/3 stops.

Density range, paper grade and ISO(R)





Lux seconds and stops and negative notation

Every change of 0.3 (log lux seconds) is one stop change in exposure. That's the key to it all.

The negative notation (1.5 with a minus over the 1) or "bar one point five" is actually (-1 +.5) or -0.5.

1 lux second is equivalent to 48 lux at 24fps/180shutter.


https://www.cinematography.net/edited-pages/ExposureInLuxSeconds.htm

Coldinal film developing with rodinal

- use 10 degrees celcius for rodinal
- use 1/50 to 1/100 dilution
- use double the time (26 mins / Tri-X 400)

Salt print recipe

Salting:
100% sol Loch Nevis, Scotland sea-water +
2g Sodium Citrate

Sensitiser:
1ml 10% sol Silver Nitrate +
1ml 6% sol Citric Acid

24 min Exposure

1st wash in sea-water
2nd wash tap water
Fix: Sodium Thiosulphate
3rd wash tap water


https://mastodon.green/@analoguelife

Subject Luminance Range

The Subject Luminance Range (SBR) is the exposure range of the subject and therefore could contain a wide range of values; a high contrast scene may have 10 stops of luminance range from the object the darkest object to brightest object.

Our visual system has a DR of about 7 2/3 of a stop when stabilized at a specific light level

It was earlier remarked that the eye is capable of operating over a huge dynamic range of light intensities, on the order of ten trillion to one. But for any single scene with which the eye can deal, the intensity ratio of the brightest to the dimmest object rarely exceeds 200 to 1, and this is about the limit of differences that can be signaled by a visual neuron (Haber and Hershenson 1980, 50-51; Evan 1974, 195; Barlow and Mollen 1982, 102).


http://www.gordonarkenberg.com/blog/2017/8/7/death-of-the-zone-system-part-iv