Then move on to the other concepts (not all equally weighted in importance) than read the source code.
I have seen the Config, and I will Update
T+0 Knowledge for T+N Success
Wednesday, 8 July 2026
Navigating OpenClaw Architecture
The best place to start is by reading architecture.md in the docs/concepts subdirectory.
Tuesday, 7 July 2026
Data Rates Rule...OK!
So git clone is busy "Receiving objects" but it's taking time...what data rate is underlying this operation?
Data rates are measured using a variety of standardised conventions.
They are usually multiples of bits per second (bit/s) or bytes per second (B/s). bit and Byte are ISQ symbols (International System of Quantities).
Residential Internet speeds are often measured in Megabits per second (Mbit/s - often abbreviated Mbps - as you will see in the Windows Network Speed Test application). 1 Mbps is 1000 kilo bits per second, or 1000 kbit/s or 1000 kbps).
There is also the Mibit/s convention - which stands for mebibits per second (or MiB/s).
This is 2^20 bits per second, or 1,048,576. Just over a million bits per second, basically.
Labels:
abbreviations,
datarates,
git,
networking,
networkspeedtest
External Dependencies Are the Root of All Evil
Open source software is great except when it isn't.
Update all the dependencies for a new cool software and older software (using older versions of those co-dependencies) suddenly breaks.
In Windows, we used to call it "DLL Hell" but it has its manifestations in Linux too.
Then it's a cycle of repair and debugging.
Debugging Python - Module Versions
You may get errors in Python programs when you update external module dependencies, as the newer versions may have added some breaking changes - e.g. stronger validation or security checks.
You can validate the version of the module you are using if __version__ is exposed by the module. To do this, try the following, using the module name required (urllib3 used here as an example):
python
import urllib3
print( urllib3.__version___)
Thursday, 25 June 2026
Introduction to VLSI Systems (Mead & Conway, 1978)
An early textbook on building semiconductor systems. A key learning was the scaling law: "as transistors grow entirely new classes of computation become feasible".
ApplicationData versus LocalApplicationData
Both refer to app-specific storage locations in Windows.
- ApplicationData - roaming profile data
- LocalApplicationData - local, machine-specific data
Data in ApplicationData is not automatically cleaned up - and is treated as "important to the user". Data in LocalApplicationData is generally persistent - but Storage Sense can purge temporary files.
The Powerful System.Environment
System.Environment is an all-powerful class.
It allows interaction with the current environment and platform. It is something to revere when developing intelligent agents that need to navigate the user's environment.
System.Environment.SpecialFolder is a well-known enum.
It contains the CSIDLs (these are not .NET "things", they are Windows "things").
CSIDL = Constant Special Item ID List. Here are some of the popular values.
Desktop 0 (logical desktop rather than physical file system location)
ApplicationData 26
LocalApplicationData 28
System 37
ProgamFiles 38
A full rundown of CSIDLs is here.
Subscribe to:
Posts (Atom)