I actually had to look it up when writing that post, I think I searched for "garden gate lock" at first :)
Offering a crate as a safe and cosy space to relax, sleep, etc. is recommended by the RSPCA (and the Dog Trust, Battersea, and many more).
In normal use it's fitted with a small mattress, vet bed, toys (that I didn't show because I didn't make those myself).
A standard poodle. In that picture he hadn't had his first trim yet, so he's showing gloriously fluffy puppy hair
Since I have a few pictures and you're asking nicely 😃 I opened another post: https://programming.dev/post/25943048
The second thing I mentionned were some shelves that had to fit in a very specific spot, but I don't have pictures to hand
A crate for puppy


I made a crate for puppy! He keeps outgrowing the ones we bought, so I made a large one out of his playpen panels that should be big enough until he's fully grown.
The floor is a sheet of plywood. I put vinyl wrap on it for waterproofing (turns out it's too fragile, by the time I made the rest I made a couple of tears).
For the top, I made a lip out of PSE wood (I think 25mm), to give more rigidity and allow fitting a hinged top.
Cabin hooks for the door, but they turned out to be too loose, so I added a Brenton bolt.
Puppy likes it, so overall a success!
Progress pictures :
The host of the crate:
As a beginner who mostly learned from the University of YouTube, I hear you, it was more involved and messier work than I thought it'd be
We're a couple months later, I ended up doing a second small project, this time I used half tung oil half orang oil, and adjusted my technique: wiped with a clean rag after application, and I think the room was warmer them last time.
Got better results, more even and it didn't take 2+ weeks for the first coat to cure (more like a few days).
Thanks for the advice 🙂
By "Syslog-ng Engineer" do they mean a C systems programmer who can fix bugs and add features to syslog? that's a rather different role from being an admin; even if, depending on the size of the operation, it make sense to give both roles to the same person
Besides Journal not being available on non-Linux, there are a could of reasons for using syslog: it can log to a remote server for instance. Journal does have a remote logging capability, but at best you have to run two log sinks in parallel, at worse it's a non starter because everything that's not a Linux box (network routers, VMware hosts, IDS appliances) can't speak to it
Another is fine filing and retention. With syslog you can say things like "log NOTICE and above from daemon XYZ to XYZ.log and keep 30 days worth; log everything including DEBUG to XYZ-debug.log, keep no more than 10MB". With Journal you rotate the entire log or nothing, at least last I looked I couldnt find anything finer. There are namespaces, but that doesn't compowe, the application needs to know which log goes into which namespace
There was a discussion of pathlib a few days ago: https://programming.dev/post/21864360
Oiled with tung oil,still oily 9 days later


Hi,
Weekend before last (ie Sunday 24th) I applied tung oil to plywood (simply described as "12mm hardwood plywood" by the DIY shop). One week and a bit later, it looks dry to the eye, there is no shiny spot, the wood has a warmer colour, but if I run my fingers on the surface I get a tiny amount of oil.
I applied the oil by pouring a small amount on the surface of the wood then rubbing with an old rag, leaving no pool of oil.
Sunday (the day before yesterday ) I used kitchen towels to try to dry it off. The towels picked up a tiny bit of oil, but evidently not everything.
Is tung oil that slow to dry? Should I wait another week? Can I do something to help the process along? (Sanding or steel wool? Too aggressive for the thin veneer of plywood? Rub with a small amount of white spirit? )
I'm making a crate for Puppy who has outgrown two crates already, I picked the oil that was advertised as food & toy safe without realising how difficult it'd be to apply. In fact that's my most ambitious project to date, I'm really a beginner.
Puppy tax: !Proud puppy on a trunk
Scapy is another library where they redefined /
to layer packets, such that you can write:
IP(dst="172.23.34.45") / UDP() / DNS(…)
Then Scapy has magic so that on serialisation, the UDP layer knows defaults to dport=53 if the upper layer is DNS, and it can access the lower layer to compute its checksum.
And don't forget that strings have a custom %
(as in modulo) operator for formatting:
"Hello %s" %(username)
Of course in modern Python, f-strings will almost always be more convenient
I can’t remember if threads are core bound or not.
On Linux, by default they're not. getcpu(2) says:
The getcpu() system call identifies the processor and node on which the
calling thread or process is currently running and writes them into the
integers pointed to by the cpu and node arguments. ...
The information placed in cpu is guaranteed to be current only at the
time of the call: unless the CPU affinity has been fixed using
sched_setaffinity(2), the kernel might change the CPU at any time.
(Normally this does not happen because the scheduler tries to minimize
movements between CPUs to keep caches hot, but it is possible.) The
caller must allow for the possibility that the information returned in
cpu and node is no longer current by the time the call returns.
There's been a few of those in the UK; this article quotes "><SCRIPT SRC=https://mjt.xss.ht/> LTD
and ; DROP TABLE “COMPANIES”;-- LTD
.
CVS is the authoritative repository of code, and they recommend to users to use that or reposync (built atop of CVS) to keep their system updated.
There is also a GitHub mirror , and got is an OpenBSD project, and I suspect a number of devs use one of those for local work until it's time to push the changes to the authoritative tree.
Justification I've heard is that if one part of the couple is managing the other, or is promoted after the relationship started, then:
- there is a power imbalance in the couple, possibly one is coercing the other (« I can't leave him/her, they'll make my worklife hell / get me fired »);
- there is a risk the manager will promote their partner even if their job performance doesn't warrant it
Companies will want to both avoid this sort of things, and avoid being seen to enable this sort of things. They might want to move one of the parties to a different department so that the higher up one doesn't make promotion decisions for the other.
I've once worked at a company that wanted to know about relationships between their employees and suppliers/customers' employees, again because that might enable situations where a supplier / customer is treater favourably because of personal relationships
And Fabrice Bellard, the original author of ffmpeg, went on to create qemu which pretty much made open-source virtualization possible. Also TCC (even if I don't think that one is widely used), he established a world record for computing decimals of Pi using a single machine that had ~2000× less FLOPS than the previous record, and so much more...
ISO-8859-x encodings and invalid bytes
Hi,
I have to interface with systems that use iso-8859-x encoding (not by choice...), and I'm surprised that the following doesn't throw an error:
python >>> str(bytes(range(256)), encoding="iso-8859-1", errors="strict") '\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0¡¢£¤¥¦§¨©ª«¬\xad®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ'
Bytes in the 0x80—0x9f range are not valid iso-8859-1, and I was expecting the above to raise a DecodeError of some sort; instead it looks like those are passed through.
I'm perfectly happy with this behaviour, I would like to make sure I can depend on it. Can I take an arbitrary byte buffer, decode as ISO-8859-1, and never get any error? Is it guaranteed to be lossless ?
Just under half of the Internet: https://www.google.com/intl/en/ipv6/statistics.html