Uh oh. The last one was pretty tough for me and this one is much bigger. If anyone is interested to form a team let me know (probably east coast AU timezone ideally).
This is so cool, and so beautiful! You've done a fantastic job on this. This is the sort of site I wish I were capable of producing, it reminds me of the ciechanow site [0] in that it's both really educational and beautiful at the same time. It's answered questions I had like 'why is power always at the top and ground always at the bottom?'
And I love the way that you solved it by understanding really well what each section does. I worked out bits and pieces of each one, but I realise now that I was missing a lot of clues that were right in front of me (for example that it represented an 11x11 grid, the operation of what I called 'the blob' on the lower right etc). And so far as I can tell you're the only one to find `TWO''NOT TOUCH`
Edit to ask: How did you find the `TWO''NOT TOUCH` output? I assume you worked it out via some structure? I gave up after 4 messages not realising it was possible to get more.
[0] https://ciechanow.ski/ - I particularly liked the one about the mechanical watch mechanisms, but honestly pick any
for the other output: 1) look at the inputs to the output block and simulate those, you'll get a condition you need to satisfy 2) check what those conditions mean by interpreting the other blocks 3) try to satisfy the conditions
You know how everyone thinks agents are bad at the thing they're good at and good at the thing they're bad at? It turns out I must be bad at testing, because I thought they do a reasonable job.
Was your prompt, "make lazy ineffectual tests?" Tests are code as well, they take the same effort to create, if not more. You need to specify the properties you want to test.
I think they show that additional prompting for testing approaches have wide differences in error rate (worst has twice the error rate of the best) but actually no extra prompting is pretty fine and most custom prompts are worse than no prompt.
Isn't that just a form of Dunning-Kruger effect related to the parts that person is bad in? It looks good because they don't have the depth of knowledge/expertise to see the deficiencies.
I thought it was a fun video (the first I've watched of yours, though I read the blog). And I'd honestly forgotten about the Telstra outage even though it was news here
This sounds pretty interesting - what are you working on where it's necessary to maintain this level of time precision? I've worked on positioning systems where it's obviously important, but it never mattered much at home
Nothing special - just a homelab. It's not so much the precision that matters at home as for planning when the home becomes an island, in 'orphan mode' as chrony calls it [1], without a time reference at all. Time really is a 'sovereign function' per Telstra's report [2], especially if you have internal HTTPS, etc.
Last summer an 8+ hour mains power outage drained my home CWWK OPNsense router's UPS then internal battery (it must have been losing voltage). When mains power came up the router was unable to connect to the ISP because the internal time was completely wrong and I had to manually set it via console. However, the internal batteries and clocks on other home network infrastructure (HP NAS and Lenovo Tiny) were fine.
The chrony.conf orphan mode:
server 192.168.1.1
server 192.168.1.2
local stratum X orphan (higher X determines who is master in orphan mode, usually minimum 10)
Annoyingly, the OPNsense chronyd plug-in does not (yet) implement the "local orphan" mode [3], so I have not yet confirmed that it does accept the non-reference master orphan time to bootstrap itself... should test before the summer storms start again.
Ah I see in my head I expect blackouts to be a few minutes, so I hadn't thought what would happen after several hours. When I was in the embedded world I used to explain that https implies a whole lot of infrastructure that isn't obvious at first for this reason (and also that cert rotation implies the ability to update the firmware or some filesystem which isn't always the case).
If we're going to be stupid with it, I should write up an article on my ultra-precise 16MHz Arduino that runs at cock on 16000000Hz. The crystal is replaced by a GPS-disciplined VCO.
Thanks for sharing that I'm very interested to read the auditor's results
Edit: That's it!? It's also not clear on whether it was a configuration or a firmware issue (or both). It sounds like maybe there was some battery backed ram or something that reset maybe?
Edit number 2: Ok I re-read it and it is better than I thought, still many questions though.
This is really cool! It's so fun to see what you can achieve and what's optional. I have seen the 'single character variable' limitation in some other minilangs before, but using the source itself as the target of function calls and loops is new to me. It does make a lot of sense but I wouldn't have thought of that.
but using the source itself as the target of function calls and loops is new to me
This was standard practice on interpreters for 8-bit microcomputers; with only a 64K total address space, creating an AST first seems immensely wasteful, so you interpret from the source directly.
I believe shells still do this when you run shell scripts; I know the DOS COMMAND.COM definitely does.
I recently registered a domain for the first time, and I wonder if this is why I suddenly had to fill in a ton of recaptchas while I was searching for providers. Even just simple queries like 'how do I configure A records in Godaddy' seemed to trigger it
That is incredible! I've never heard of a Star Battle checker, but that explains the output! Another commenter pointed out there was also some morse code in the layout
reply