20 random bookmarks
stuff me collect
stuff me collect
Our design goals are safety, performance, and developer experience. In that order.
Contrary to popular belief, simplicity is also not the first attempt but the hardest revision
code, like steel, is less expensive to change while it's hot.
NASA's Power of Ten — Rules for Developing Safety Critical Code
Use only very simple, explicit control flow for clarity.
Put a limit on everything. Fail Fast
Assertions detect programmer errors. The only correct way to handle corrupt code is to crash.
Assertions are a safety net, not a substitute for human understanding.
Build a precise mental model of the code first.
encode your understanding in the form of assertions,
write the code and comments to explain and justify the mental model to your reviewer,
and use VOPR as the final line of defense, to find bugs in your and reviewer's understanding of code.
No memory may be dynamically allocated (or freed and reallocated) after initialization.
Declare variables at the smallest possible scope, and minimize the number of variables in scope.
Good function shape is often the inverse of an hourglass: a few parameters, a simple return type, and a lot of meaty logic between the braces.
Centralize control flow. When splitting a large function, try to keep all switch/if statements in the "parent" function, and move non-branchy logic fragments to helper functions.
Centralize state manipulation. Let the parent function keep all relevant state in local variables, and use helpers to compute what needs to change, rather than applying the change directly.
Add units or qualifiers to variable names, and put the units or qualifiers last, sorted by descending significance. latency_ms_max rather than max_latency_ms.
Callbacks go last in the list of parameters.
Order matters for readability (even if it doesn't affect semantics). On the first read, a file is read top-down, so put important things near the top. The main function goes first.
Don't overload names with multiple meanings that are context-dependent.
A markdown-like journal language for plainly writing logs , gantt charts , blogs , feeds , notes , journals , diaries , todos , timelines , calendars or anything that happens over time .
With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody.
I’m gonna show you some weird timezones. In fact, the weirdest timezones.
To learn how their weirdness is represented in software, we’ll look at the raw timezone files that all software ultimately relies on.
Сборник различных сценариев автоматизации и справочных материалов
Есть инструкция для почтового сервиса в кластере
Heavy use of shortcuts, has unique concept of blocks with different types (i actually like it a lot). Blocks can have type of code (and can be formatted). In Math blocks lines are evaluated as expressions with results at the end. Can execute golang code.
A simple utility to add Mastodon bookmarks to https://betula.mycorrhiza.wiki/ - gglanzani/betulon
Wow!
Вывели с клиентом универсальную «инструкцию к терапии». На случай, если кому-то это нужно. Как часто и бывает, у него была популярная мечта сначала что-то поменять в голове, а потом зажить по-новому.
Do you actually want to write? Ok. Then write. In a text file on your computer, in a pastebin, on a blogging platform, on neocities, on cohost or mastodon, on a copy-pasted template from github pages, in /var/www, on some forum that nobody’s looked at in 15 years. It really does not matter. Go write.
But, perhaps you don’t really want to write. Do you like tinkering with site generator tools? Then fucking tinker to your heart’s content. You don’t need to have an end goal where you actually put some thinkpiece or technical writeup on the website. Building it can be its own reward.
If you love it, let it consume you. If you hate every moment you spend with it, why are you trying to do it? Real winners quit.
однажды я заигрался в красивый инструмент, да так, что в какой-то момент потерял суть и начал терять пользу.
unix is user-friendly—it’s just choosy about who its friends are.
I even have it [Windows] installed on my gaming pc so that I can buy games I never play.
It is easy to shoot your foot off with git, but also easy to revert to a previous foot and merge it with your current leg.
Completely open source DIY gaming mouse, including hardware (PCB, shell) design files - wareya/DIY-Gaming-Mouse
Another perspective is that talent is closely tied to passion and motivation. People who are deeply interested and motivated in a specific area are often seen as having a natural talent for it. This perspective suggests that talent is nurtured through genuine enthusiasm and dedication.
In the wonderful solarpunk future, we do not use telepathy
In the wonderful solarpunk future, we have enough time to not do two things at once
How to backup photos using Apple, lightroom, nextcloud