Skip to content

Commit e148c39

Browse files
committed
notes
1 parent 1514a18 commit e148c39

39 files changed

Lines changed: 811 additions & 53 deletions
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[Daylight Saving Time Explained - YouTube](https://www.youtube.com/watch?v=84aWtseb2-4) claims:
2-
>Sleep depravation can lead to heart attacks and suicides and the Daylight Saving Time Monday has a higher than normal spike in both.
2+
>Sleep deprivation can lead to heart attacks and suicides and the Daylight Saving Time Monday has a higher than normal spike in both.
33
44
But [Humble Pi: When Math Goes Wrong in the Real World by Matt Parker](https://www.amazon.com/dp/B07R8QSXYB) points out
55
>It seems the clocks going forward and depriving people of sleep did cause extra heart attacks, but only in people who would have had a heart attack at some point anyway. The heart attack merely happened sooner. And likewise, the clocks going back gave people a rest and bought them a few more days until their heart turned on them. This could be relevant information for a hospital planning its staffing around when the clocks go forward, but it does not mean daylight saving time is net dangerous.
66
7-
So, daylight savings only decreases [[lifespan]] by a couple days (but decreasing [[healthspan]] of people's pre-heart-attack days too?)
7+
So, daylight savings only decreases [[lifespan]] by a couple of days (and decreases [[healthspan]] of people's pre-heart-attack days too)

apps/HardProblemOfConsciousness.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#stub
2+
https://en.wikipedia.org/wiki/Hard_problem_of_consciousness
3+
>In the [philosophy of mind](https://en.wikipedia.org/wiki/Philosophy_of_mind "Philosophy of mind"), the **hard problem of consciousness** (or simply the **hard problem**) is to explain how and why [organisms](https://en.wikipedia.org/wiki/Organisms "Organisms") have [qualia](https://en.wikipedia.org/wiki/Qualia "Qualia"), [phenomenal consciousness](https://en.wikipedia.org/wiki/Phenomenal_consciousness "Phenomenal consciousness"), or [subjective experience](https://en.wikipedia.org/wiki/Subjective_character_of_experience "Subjective character of experience").[[1]](https://en.wikipedia.org/wiki/Hard_problem_of_consciousness#cite_note-Chalmers-1)[[2]](https://en.wikipedia.org/wiki/Hard_problem_of_consciousness#cite_note-Harnad-2) It is contrasted with the "easy problems" of explaining why and how physical systems give rise to the ability to discriminate, to integrate information, and to perform behavioural functions such as watching, listening, speaking (including generating an utterance that appears to refer to personal behaviour or belief), and so forth

apps/Internet adages and named laws.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
- [ ] source from [Laws of Software Engineering](https://lawsofsoftwareengineering.com/),
2+
- [ ] couldn't find the source on GitHub, but somebody has helpfully scraped them a few hours ago: [https://github.com/pascalandy/dotfiles/blob/main/docs/refere...](https://github.com/pascalandy/dotfiles/blob/main/docs/references/ideas/references/2026-04-23-software-engineering-laws/md_pages/TOC.md)
3+
- [ ] Also more listed in discussion https://news.ycombinator.com/item?id=47847179
4+
- [ ] [globalcitizen/taoup: The Tao of Unix Programming (Ruby-powered ANSI colored fortunes)](https://github.com/globalcitizen/taoup)
5+
- [ ] [dwmkerr/hacker-laws: 🧠 Laws, Theories, Principles and Patterns for developers and technologists.](https://github.com/dwmkerr/hacker-laws)
6+
- [ ] maybe contribute back
7+
18
- [ ] source many from https://twitter.com/G_S_Bhogal/status/1438972527838117895?s=09
29
- [ ] https://newsletter.manager.dev/p/the-13-software-engineering-laws
310

apps/LLM AI are like System One thinking.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ From [Maps well to Kahneman's "Thinking Fast and Slow" framework system 1 thinki
2323
> system 1 = 4o/llama 3.1
2424
> system 1 + system 2 = o1/r1 reasoning models
2525
26+
I think it's too ambitious to say Reasoning models are system 2... See [[ai.thinking]] for state-of-the-art models using scratchpads.
2627
## Related Concepts
2728

2829
- [[📝Consciousness_flashcards_2026-01-22_163913]] - Fluid reasoning, metacognition, abstract reasoning

apps/Quantifying Risk with Micromort or Microlives.todo.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
1+
---
2+
aliases:
3+
- Lifespan
4+
- healthspan
5+
---
16
[Micromort](https://en.wikipedia.org/wiki/Micromort) quantifies the "risk of dying during an activity" and helps you quantify the immediate risk of death
27
- [ ] read this, take notes, try out some basic calculation
38

49
[Microlife](https://en.wikipedia.org/wiki/Microlife) is 30 minutes, and `30min * 1e6 = 57years` so unless you live to 114 it's a decent approximation of 1 millionth of a life.
5-
Compared to micromort, this is a much better way to think about cumulative health negative/positive changes (but still focuses Lifespan, not to Healthspan)
10+
Compared to micromort, this is a much better way to think about cumulative health negative/positive changes (but still focuses Lifespan, not to [[healthspan]])
611
- [ ] Healthspan lifespan from mudd https://healthylifecalculator.org/ useful once you're 65 🛫 2058-04-20
712

813

apps/RenovateDefaultConfig.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Then look for the log line `DEBUG: packageFiles with updates (repository=local)`
1919
To see upgrades, look for `.kind.[].deps[].updates`
2020
## My suggestion
2121
### Reduce chance of supply-chain attack
22-
*If you have access to a virtual package feed (socket.dev, artifactory, etc.) then this might not be an issue.*
22+
*If you have access to a virtual package feed (socket.dev, artifactory, etc.) **configured with a delay** then this might not be an issue.*
2323
With the constant news of malicious NPM packages getting uploaded, a tool that blindly upgrades to latest is not the best idea!
2424

2525
For OSS projects, you probably don't have budget for a premium, validated virtual package feed. It would be nice to use Socket.dev as a required github check for PRs, but that also seems to be a premium feature.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
1+
#stub
2+
13
https://old.linguistlist.org/ask-ling/sapir.cfm
24
>The Sapir-Whorf hypothesis is the theory that an individual's thoughts and actions are determined by the language or languages that individual speaks.
35
>The **strong** version of the hypothesis states that **all human thoughts and actions are bound by the restraints of language**, and is generally less accepted
46
>than the **weaker** version, which says that **language only somewhat shapes** our thinking and behavior.
7+
8+
https://en.wikipedia.org/wiki/Linguistic_relativity
9+
>**Linguistic relativity** asserts that [language](https://en.wikipedia.org/wiki/Language "Language") influences [worldview](https://en.wikipedia.org/wiki/Worldview "Worldview") or [cognition](https://en.wikipedia.org/wiki/Cognition "Cognition"). One form of linguistic relativity, [linguistic determinism](https://en.wikipedia.org/wiki/Linguistic_determinism "Linguistic determinism"), regards peoples' languages as determining and influencing the scope of cultural [perceptions](https://en.wikipedia.org/wiki/Perception "Perception") of their surrounding world.
10+
>
11+
> the term _Sapir–Whorf hypothesis_ is sometimes considered a [misnomer](https://en.wikipedia.org/wiki/Misnomer "Misnomer") for several reasons. [Edward Sapir](https://en.wikipedia.org/wiki/Edward_Sapir "Edward Sapir") (1884–1939) and [Benjamin Lee Whorf](https://en.wikipedia.org/wiki/Benjamin_Lee_Whorf "Benjamin Lee Whorf") (1897–1941) never stated their ideas in terms of a hypothesis. The distinction between a weak and a strong version of this hypothesis is also a later development; Sapir and Whorf never used such a dichotomy, although often their writings and their opinions of this relativity principle expressed it in stronger or weaker terms.[[6]](https://en.wikipedia.org/wiki/Linguistic_relativity#cite_note-FOOTNOTEHillMannheim1992-6)[[7]](https://en.wikipedia.org/wiki/Linguistic_relativity#cite_note-:1-7)

apps/Slack.md

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,20 @@
1-
Communication tool that we use.
2-
## Changing Status
3-
- [ ] [A command line utility for changing your Slack status.](https://gist.github.com/AGresvig/ff269904abdb7826be9f54c9ab4d7d71)
4-
- [ ] Create webhook: [[strava]] run -> change status to run. end -> clear status
51
## Webhooks
6-
It's very easy to create a Slack App, pick a channel, and get a URL you can POST messages to.
2+
Easiest integration: create a Slack App, pick a channel, get a URL to POST messages to. No OAuth needed.
3+
4+
More complex actions (replies per thread, DMs) require OAuth.
5+
6+
## Changing Status
7+
- [ ] [CLI utility for changing Slack status](https://gist.github.com/AGresvig/ff269904abdb7826be9f54c9ab4d7d71)
8+
- [ ] Webhook: [[strava]] run → change status to "running"; end → clear status
9+
10+
## Calling Slack from a CLI script
11+
Slack's [search API](https://api.slack.com/methods/search.messages) supports `is:saved` to query saved-for-later items.
12+
[[mcp#Auth|`mcptools` auth]] is not supported!
713

8-
Doing anything more complicated seems to require OAuth so I haven't looked into it:
9-
- Sending reply messages per topic
10-
- Sending DMs
14+
| | AI Option A: Slack MCP like Cursor | AI Option B: REST API |
15+
| ---------------- | -------------------------------------------------------------------------- | -------------------------------------------------- |
16+
| App registration | None — reuse Cursor's public client ID `3660753192626.8903469228982` | Register own Slack app with `search:read:*` scopes |
17+
| Client secret | Not needed — uses [PKCE](https://docs.slack.dev/authentication/using-pkce) | Needed (or PKCE if you enable it) |
18+
| Endpoint | `https://mcp.slack.com/mcp` (MCP JSON-RPC) | `https://slack.com/api/search.messages` |
19+
| Enterprise risk | Low — same app Cursor already authorized | Enterprise may block new app installations |
20+
| My next steps | related to [[withings.py]] | See [[Tasks#Slack]] |

apps/ThreatModel.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ The primary goal is to balance strong cryptographic security with developer prod
1616

1717
## Security Priorities
1818

19-
| Priority | Description |
20-
| :--- | :--- |
19+
| Priority | Description |
20+
| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
2121
| **Non-extractability** | Private keys must never be stored in a way that they can be easily copied or exported from the secure storage (e.g., hardware token, Secure Enclave, or encrypted vault). |
22-
| **Anti-impersonation** | Remote attackers should not be able to authenticate or sign operations without physical access to the key or the specific authorized session. |
23-
| **Origin Binding** | Protection against phishing via mechanisms like WebAuthn that bind credentials to specific domains. |
22+
| **Anti-impersonation** | Remote attackers should not be able to authenticate or sign operations without physical access to the key or the specific authorized session. |
23+
| **Origin Binding** | Protection against phishing via mechanisms like WebAuthn that bind credentials to specific domains. |
2424

2525
## What is Deprioritized
2626

apps/WindowManagement.md

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,32 +14,55 @@ Funnily, if you focus chrome Cmd+F find dialog, Rectangle will move it around...
1414
- [ ] Try RectanglePro trial 🔽
1515

1616
### Raycast
17-
Has basic windows management
18-
- [ ] not sure about "Custom Window Management" only in [pro subscription](https://www.raycast.com/pro)?
17+
[Window Management](https://manual.raycast.com/window-management) is built-in; snapshot-based **Window Layouts** (save current positions → re-apply later) require [Raycast Pro](https://www.raycast.com/pro).
18+
19+
Raycast can place windows on specific monitors and resize to halves/quarters, but **cannot** react to events (app launch, screen unlock). For "run on unlock", use Hammerspoon below.
20+
21+
**Setup: apply a saved layout at screen unlock**
22+
23+
1. Position windows manually (Raycast → `Move Window to Next Display`, `Top Half`, etc.)
24+
2. Raycast → `Create Window Layout`, name it
25+
3. Raycast → `Window Layouts` → select layout → Actions → `Copy Deeplink`
26+
- Deeplink looks like: `raycast://extensions/raycast/window-management/apply-layout?id=XXXXXXXX`
27+
4. Pass the deeplink to Hammerspoon's `screensDidUnlock` (see below), or run it via `open -g <deeplink>` in a shell script
28+
29+
> First-run note: Raycast may prompt "Always Open Command" the first time a deeplink fires.
1930
2031
### Hammerspoon
2132
*See: [[hammerspoon]]*
22-
https://www.hammerspoon.org/ is a scripting framework for macOS in lua
23-
Can move windows to common locations, i.e.:
24-
https://github.com/anandpiyer/.dotfiles/blob/master/.hammerspoon/init.lua#L291
25-
Can find a window by name, and find its screen max dimensions, and resized
26-
- [ ] Try it https://chatgpt.com/c/67bebedb-1314-8011-9f1e-5b20bcf222da
33+
34+
[Hammerspoon](https://www.hammerspoon.org/) is a macOS scripting framework in Lua. Unlike Raycast, it can react to events: app launch, screen unlock, monitor changes.
35+
36+
- [ ] Try it to see if it works https://chatgpt.com/c/67bebedb-1314-8011-9f1e-5b20bcf222da
37+
**Apply layout on screen unlock** — add to `~/.hammerspoon/init.lua`:
2738

2839
```lua
29-
hs.hotkey.bind({"cmd", "alt", "ctrl"}, "R", function()
30-
local slack = hs.appfinder.appFromName("Slack")
31-
if slack then
32-
local win = slack:mainWindow()
33-
if win then
34-
local screen = win:screen()
35-
local max = screen:frame()
36-
win:setFrame(hs.geometry.rect(max.w / 2, max.y, max.w / 2, max.h))
37-
end
38-
end
39-
end)
40+
local screen2 = hs.screen.find("DELL U2720Q") -- replace with your monitor name
41+
42+
local function place(appName, unit)
43+
local app = hs.appfinder.appFromName(appName)
44+
if not app then return end
45+
local win = app:mainWindow()
46+
if not win then return end
47+
win:moveToScreen(screen2)
48+
win:moveToUnit(unit)
49+
end
50+
51+
hs.caffeinate.watcher.new(function(event)
52+
if event == hs.caffeinate.watcher.screensDidUnlock then
53+
hs.timer.doAfter(0.5, function()
54+
place("Slack", hs.layout.top50)
55+
place("Obsidian", hs.layout.bottom50)
56+
end)
57+
end
58+
end):start()
4059
```
4160

42-
Also spoon plugin: [miromannino/miro-windows-manager: Intuitive and clever mechanism for moving windows using only arrows, even resizing windows by thirds or quarters! For OSX](https://github.com/miromannino/miro-windows-manager)
61+
To find your monitor name: run `hs.screen.allScreens()` in the Hammerspoon console.
62+
63+
Add **Hammerspoon to Login Items** (System Settings → General → Login Items) so the watcher is always running.
64+
65+
Also spoon plugin: [miro-windows-manager](https://github.com/miromannino/miro-windows-manager) — move windows with arrows, resize by thirds/quarters.
4366

4467
### Display Maid
4568
>https://funk-isoft.com/display-maid.html allows you to save and restore window locations based on your display configuration or user created profiles.

0 commit comments

Comments
 (0)