commit b96cf3f83668564926077df85f8efc12ca5b3881
parent 8b8b265b22360904139e240e3524f9469989ec6b
Author: Jake Bauer <jbauer@paritybit.ca>
Date: Tue, 7 Mar 2023 23:01:40 -0500
*
Diffstat:
11 files changed, 89 insertions(+), 20 deletions(-)
diff --git a/content/blog/styling-external-links.md b/content/blog/styling-external-links.md
@@ -66,6 +66,11 @@ which is why this works for me, though this could also be done by adding
something like `class="img"` to the `<a>` tags and using that to select them instead.
If you're using a customizable static site generator and want to make this work
-without CSS or in browsers which don't support all these CSS features (such as
+without CSS, or in browsers which don't support all these CSS features (such as
NetSurf or fairly old versions of Safari), you could add something similar to
your website build pipeline that appends the symbol to every external link.
+
+Another way this can be accomplished is by using the `rel` attribute in the
+anchor tag as detailed in [this post by Martin
+Christiansen](https://text.martinmch.com/2023-03-03-re-styling-external-links.html)
+.
diff --git a/content/garden/c.md b/content/garden/c.md
@@ -5,10 +5,20 @@ Summary: C
[← Back](./)
-* [C Programming Style](programming-style.html#c)
+## Projects and Tutorials
+
+* [Demystifying bitwise operations, a gentle C tutorial](https://www.andreinc.net/2023/02/01/demystifying-bitwise-ops)
+* [Implementing Hash Tables in C](https://www.andreinc.net/2021/10/02/implementing-hash-tables-in-c-part-1)
+* [Writing a Simple VM in Less Than 125 Lines of C](https://www.andreinc.net/2021/12/01/writing-a-simple-vm-in-less-than-125-lines-of-c)
+* [Blog Generator in C](https://www.andreinc.net/2022/04/10/a-blog-that-is-a-single-executable-binary)
+* [The Descent Into C](https://www.chiark.greenend.org.uk/~sgtatham/cdescent/)
-## More Resources
+## Writing Good C
+* [C Programming Style](programming-style.html#c)
* [A collection of helpers for ANSI C](https://wiki.xxiivv.com/site/defunct.html)
* [Advanced C: The UB and optimizations that trick good programmers.](https://www.youtube.com/watch?v=w3_e9vZj7D8)
* [How I program C](https://www.youtube.com/watch?v=443UNeGrFoM)
+* [Modern C](https://hal.inria.fr/hal-02383654/document)
+* [MISRA Compliance 2020](https://www.misra.org.uk/app/uploads/2021/06/MISRA-Compliance-2020.pdf)
+
diff --git a/content/garden/clojure.md b/content/garden/clojure.md
@@ -0,0 +1,7 @@
+Title: Clojure
+Summary: Clojure
+
+# [%title]
+
+* [The Solo Hacker's Guide To Clojure](https://jacobobryant.com/p/post-2020-guide-to-clojure/)
+* [Clojure Book](https://clojure-book.gitlab.io/book.html)
diff --git a/content/garden/fediverse-has-problems.md b/content/garden/fediverse-has-problems.md
@@ -102,3 +102,5 @@ Even since moving to Merveilles, I've had run-ins like this every once in a whil
[Ethical anti-design, or designing products that people can't get addicted to (or Dark Patterns and the Fediverse).](https://njms.ca/posts/ethical-anti-design.html)
[The Changelog #528 - Into the Fediverse](https://changelog.com/podcast/528)
+
+[Mastodon Privacy and Searching](https://www.tbray.org/ongoing/When/202x/2022/12/30/Mastodon-Privacy-and-Search)
diff --git a/content/garden/haskell.md b/content/garden/haskell.md
@@ -0,0 +1,6 @@
+Title: Haskell
+Summary: Haskell
+
+# [%title]
+
+[Haskell MOOC](https://haskell.mooc.fi/)
diff --git a/content/garden/index.md b/content/garden/index.md
@@ -35,6 +35,20 @@ Here are links, documents, and other things I found interesting that I want to g
* [Google Didn't Break Your Brain: A History of Distraction](https://aeon.co/essays/google-didnt-break-your-brain-a-history-of-distraction)
* [The Dangers of Autocomplete](https://junaidmubeen.substack.com/p/the-dangers-of-autocomplete)
* [The Super Tiny Compiler](https://github.com/jamiebuilds/the-super-tiny-compiler)
+* [Write a Shell in C](https://brennan.io/2015/01/16/write-a-shell-in-c/)
+* [Build Your Own Text Editor in C](https://viewsourcecode.org/snaptoken/kilo/index.html)
+* [Why APL Is a Language Worth Learning](https://mathspp.com/blog/why-apl-is-a-language-worth-knowing)
+* [Virtual Machines 0](https://elly.town/d/blog/2021-12-24-virtual-machines-0.txt)
+* [Virtual Machines 1](https://elly.town/d/blog/2021-12-29-instruction-encoding.txt)
+* [Economy and Pleasure](https://wiki.xxiivv.com/docs/economy_and_pleasure.txt)
+* [Learn Ada Core](https://learn.adacore.com/)
+* [Principles of UI](https://notes.yip.pe/notes/notes/Principles%20of%20UI%2C%20A%20Thread.html)
+* [What The Hell Is Forth?](https://blog.information-superhighway.net/what-the-hell-is-forth)
+* [Reading Assembly Is Easy](https://www.timdbg.com/posts/fakers-guide-to-assembly/)
+* [Defending the Incommunicability of Programs](https://jimmyhmiller.github.io/incommunicability)
+* [Growing in reciprocation with nature.](https://tickfoot.sensorstation.co/garden.html)
+* [How Browsers Work](https://www.freecodecamp.org/news/web-application-security-understanding-the-browser-5305ed2f1dac/)
+* [An Introduction to Language-Oriented Programming Using Racket](https://beautifulracket.com/)
## 🌾 The Plots
@@ -124,8 +138,8 @@ I have categorized my opinions to make them easier to find:
* [General Programming Tips and Advice](general-programming-tips-advice.html)
* [Programming Philosophy](programming-philosophy.html)
* [Bad Assumptions Made By User/Profile Systems](user-profile-systems-bad-assumptions.html)
-* Programming languages: [C](c.html), [Raku](raku.html), [LaTeX](latex.html)
-* Tools: [git](git.html), [Vim](vim.html)
+* Programming languages: [C](c.html), [Clojure](clojure.html), [Haskell](haskell.html), [Raku](raku.html), [LaTeX](latex.html)
+* Tools: [git](git.html), [Vim](vim.html), [plan9](plan9.html)
### 🍜 Cooking
@@ -190,12 +204,14 @@ Notes, configurations, and other things related to computer system administratio
* [OpenBSD Server Details](openbsd-server-details.html)
* [Relaying Service Mail With OpenSMTPD](relaying-service-mail-with-opensmtpd.html)
* [OpenBSD on the Desktop](openbsd-desktop.html)
+ * [MailMan3 on OpenBSD 7.1](https://xn--gckvb8fzb.com/mailman3-on-openbsd-71/)
* Misc:
* [Misskey Setup](misskey.html)
* [Tarsnap Backups With Acts](tarsnap-backups-with-acts.html)
* [UW IMAP Server Documentation](uw-imap.html)
* [Issues with Linux](linux-issues.html)
* [MacOS Tips and Tricks](macos-tips-and-tricks.html)
+ * [IPv6 Tutorial](https://metebalci.com/blog/hello-ipv6/)
### 🍵 Tea
diff --git a/content/garden/macos-tips-and-tricks.md b/content/garden/macos-tips-and-tricks.md
@@ -1,5 +1,5 @@
-Title: MacOS Tips & Tricks
-Summary: MacOS Tips & Tricks
+Title: MacOS Tips and Tricks
+Summary: MacOS Tips and Tricks
# [%title]
@@ -42,10 +42,11 @@ Use Shift+⌘+. to toggle showing Hidden Files (dotfiles) system-wide.
### Keyboard Shortcuts for Tiling Windows
-System Preferences -> Keyboard -> Shortcuts Add a new App Shortcut Type “Move
-Window to Left Side of Screen” and assign the shortcut (e.g. Shift + ⌘ + ←)
-Type “Move Window to Right Side of Screen” and assign the shortcut (e.g. Shift
-+ ⌘ + →) Type “Zoom” and assign the shortcut (e,g. Shift + ⌘ + ↑)
+1. System Preferences -> Keyboard -> Shortcuts
+2. Add a new App Shortcut
+3. Type “Move Window to Left Side of Screen” and assign the shortcut (e.g. Shift + ⌘ + ←)
+4. Type “Move Window to Right Side of Screen” and assign the shortcut (e.g. Shift + ⌘ + →)
+5. Type “Zoom” and assign the shortcut (e,g. Shift + ⌘ + ↑)
### Easy Typing of MacOS Symbols
@@ -67,8 +68,6 @@ Type “Move Window to Right Side of Screen” and assign the shortcut (e.g. Shi
## Useful Applications
-**MailMate**, $65.45 CAD (maybe free if through homebrew?) - An excellent email client configured for plain text email communication out of the box. Great smart mailbox support with a good UI.
-
**TinkerTool**, FREE - For when you want the extra customization options, but don’t want to have to go to the command line to do them
**ImageOptim**, FREE - GUI app to optimize images very easily
@@ -95,7 +94,7 @@ Type “Move Window to Right Side of Screen” and assign the shortcut (e.g. Shi
### Other
-* Install homebrew to get eloston-chromium, keepassxc, mumble, mailmate, lagrange casks
+* Install homebrew to get eloston-chromium, keepassxc, mumble, lagrange casks
* Install BeagleIM from App Store (for XMPP)
* Download and install IBM Plex fonts (Mono, Serif, Sans)
* Download and install NetNewsWire (RSS Reader)
@@ -121,9 +120,9 @@ As long as you’re not sharing a ton of photos/videos/large files through
iCloud, 5GB goes a long way and upgrading to the next storage tiers is not
expensive.
-Like automatic iCloud backups of things like Documents… makes it very hard to
-lose things by default unless you turn such syncing off and don’t set up
-Timeshift or something similar.
+Automatic iCloud backups of things like Documents makes it very hard to lose
+things by default unless you turn such syncing off and don’t set up Timeshift
+or something similar.
Automatic switching between dark and light themes is _very_ good. Even the
default desktop background changes and even third-party apps respect this
@@ -139,11 +138,14 @@ side bar as well as to open the home folder when finder is opened. I can see
what Apple is doing trying to hide most of the filesystem away from general
users and making them only aware of their Documents, Pictures, etc. Even though
I disagree with that choice, I’m glad they make it easy for advanced users to
-show more. Also, it has tabs and split panes which Windows Explorer… still
+show more. Also, it has tabs and split panes which Windows Explorer still
doesn’t have?
Safari is a pretty decent web browser. It integrates with the Apple ecosystem
very well, as expected, and has a basic level of tracker blocking built in, but
Adblock extensions would have to be downloaded from the App Store. I downloaded
-ungoogled-chromium instead because I want uBlock Origin and the greatest
+ungoogled-chromium instead because I want uBlock Origin and better
website compatibility.
+
+Also see: [A collection of open and indie Mac, iOS, and web apps that help
+promote the open web.](https://macopenweb.com/)
diff --git a/content/garden/plan9.md b/content/garden/plan9.md
@@ -0,0 +1,7 @@
+Title: Plan 9
+Summary: Plan 9
+
+[%title]
+
+* [Writing UTF-8 Programs in Plan 9](https://seh.dev/9runes/)
+* [How To Use The Plan 9 Compiler](https://plan9.io/sys/doc/comp.html)
diff --git a/content/garden/programming-style.md b/content/garden/programming-style.md
@@ -97,6 +97,9 @@ Great uses of comments include:
* Blocks before the declaration of a particularly complex data structure
* Explaining the quirks of a particular algorithm (e.g. working around a hardware limitation)
+Also see: [The Misunderstood Concepts of Code
+Comments](https://text.martinmch.com/2020-08-11-comments-should-be-red.html).
+
## Complexity and Optimization
Try to minimize complexity as much as possible. Complexity **does not
diff --git a/content/links.md b/content/links.md
@@ -14,6 +14,7 @@ Useful links that I've collected and wish to share or remember for the future. E
<li><a href="https://text.causal.agency/039-apologies.txt">Apologies - making them</a></li>
<li><a href="https://www.theguardian.com/lifeandstyle/2022/jul/30/you-cant-say-that-how-to-argue-better">‘You can’t say that!’: how to argue, better</a></li>
<li><a href="https://www.youtube.com/watch?v=KNwcWe85Wnc">Gas stove fumes and broken public health discourse</a></li>
+<li><a href="https://thagomizer.com/blog/2017/09/29/we-don-t-do-that-here.html">We Don't Do That Here</a></li>
</ul>
</details>
@@ -65,6 +66,8 @@ Useful links that I've collected and wish to share or remember for the future. E
<summary>Fun</summary>
<ul>
<li><a href="https://wordsandbuttons.online/">Words and Buttons Online</a> - A growing collection of interactive tutorials, guides and quizzes about things generally considered boring.</li>
+<li><a href="https://www.edwinwenink.xyz/posts/47-tilde_server/">Setting Up Your Own Tilde Club/Server</a></li>
+<li><a href="https://git.tilde.institute/tilde/admin/">Admin Scripts for tilde.institute</a> - A helpful resource when combined with the above link.</li>
</ul>
</details>
@@ -149,6 +152,7 @@ Useful links that I've collected and wish to share or remember for the future. E
<li><a href="https://prog21.dadgum.com/210.html">Computer Science Courses that Don't Exist, But Should</a></li>
<li><a href="https://justforfunnoreally.dev/">Just for Fun. No, Really.</a> - Send this link to anyone who asks questions like "what's the point of this?" whenever you're showing off something that you built just for fun.</li>
<li><a href="https://vimeo.com/748032161">What makes a good developer by Christin Gorman</a></li>
+<li><a href="https://morepablo.com/2022/09/so-you-re-using-a-weird-language.html">So You're Using A Weird Language</a> - How to effectively use a weird (or unpopular) programming language.</li>
</ul>
</details>
@@ -176,6 +180,7 @@ Useful links that I've collected and wish to share or remember for the future. E
<li><a href="https://theanarchistlibrary.org/special/index">The Anarchist Library</a> - An archive focusing on anarchism and anarchist texts</li>
<li><a href="https://arstechnica.com/science/2023/01/i-disconnected-from-the-electric-grid-for-8-months-in-manhattan/">I Disconnected From the Electric Grid for 8 Months—in Manhattan</a></li>
<li><a href="https://www.currentaffairs.org/2022/12/we-live-in-the-age-of-the-bullshitter/">We Live In The Age of The Bullshitter</a> - "The great mystery of our times: Why does anyone take seriously people who are so obviously full of it?"</li>
+<li><a href="https://www.adbusters.org/full-articles/anarchism-isnt-what-you-think-it-is">Anarchism Isn't What You Think It Is</a></li>
</ul>
</details>
@@ -240,7 +245,8 @@ Useful links that I've collected and wish to share or remember for the future. E
<li><a href="https://leftalign.substack.com/p/are-tech-interviews-broken-or-is">Are tech interviews broken — or is the cruelty the point?</a> - "Hiring managers say that coding challenges are the easiest way to find the best developers, but I'm not convinced."</li>
<li><a href="https://www.nospec.com">No!Spec</a> - About the unethicality of unpaid work given as a "test" of one's skill.</li>
<li><a href="https://paulitaylor.com/2022/05/06/the-case-against-collaboration/">The Case Against Collaboration</a> - How certain forms of collaboration can hinder good ideas and progress.</li>
-<li><a href="https://www.youtube.com/watch?v=JsT3KPYJFl4">Avoiding Toxic Productivity Advice for ADHD: Find What Actually Works</a> - Many personal productivity systems will only work for a small subset of people. Find what works for you, instead of focusing on trying to force yourself to work with a system.</li>
+<li><a href="https://jacobian.org/2022/sep/9/quality-is-systemic/">Quality is Systemic</a> - "Software quality is more the result of a system designed to produce quality, and not so much the result of individual performance."</li>
+<li><a href="https://github.com/tBaxter/questions-for-employers">A List of Questions for Potential Employers</a></li>
</ul>
</details>
@@ -250,6 +256,8 @@ Useful links that I've collected and wish to share or remember for the future. E
<ul>
<li><a href="https://www.orwell.ru/library/essays/politics/english/e_polit/">George Orwell's Essay: Politics and the English Language</a> - A very compelling essay on how writers and speakers use the English language to say very little and what we should try to do in our writing to not succumb to these anti-patterns. Although this was written in 1946, it easily sounds like it could have been written today.</li>
<li><a href="http://subpixel.space/entries/towards-blogger-peer-review/">Towards a Blogger Peer Review</a> - How could online writing be able to be taken as seriously as writing published by an institution? What would that look like?</li>
+<li><a href="http://terathon.com/blog/so-you-want-to-write-a-technical-book/">So You Want To Write a Technical Book</a> - Some pointers about publisher contracts, self-publishing, and what's involved in getting a book onto shelves.</li>
+<li><a href="https://documentation.divio.com/">Documentation System</a> - A guide to creating effective documentation depending on the end goal.</li>
</ul>
</details>
diff --git a/content/uses.md b/content/uses.md
@@ -79,6 +79,9 @@ games, which is something I do quite often with friends. These days Proton and
Lutris are able to run all but one or two games I have on Linux without
issues, so I rarely find myself booting into Windows.
+I also wish manufacturers made 16:10 or 3:2 HiDPI (>200 DPI) desktop monitors,
+but, alas, only laptop-land gets such privileges.
+
### Peripherals
* **Keyboard:** Vortex Tab90M, Cherry MX Black