dual_sport_dork 🐧🗡️

Progenitor of the Weird Knife Wednesday feature column. Is “column” the right word? Anyway, apparently I also coined the Very Specific Object nomenclature now sporadically used in the 3D printing community. Yeah, that was me. This must be how Cory Doctorow feels all the time these days.

  • 12 Posts
  • 286 Comments
Joined 2 years ago
cake
Cake day: July 20th, 2023

help-circle
  • In my case the pattern appears to be some manner of DDoS botnet, probably not an AI scraper. The request origins are way too widespread and none of them resolve down to anything that’s obviously datacenters or any sort of commercial enterprise. It seems to be a horde of devices in consumer IP ranges that have probably be compromised by some malware package or another, and whoever is controlling it directed it at our site for some reason. It’s possible that some bad actor is using a similar malware/bot farm arrangement to scrape for AI training, but I’d doubt it. It doesn’t fit the pattern from that sort of thing from what I’ve seen.

    Anyway, my script’s been playing automated whack-a-mole with their addresses and steadily filtering them all out, and I geoblocked the countries where the largest numbers of offenders were. (“This is a bad practice!” I hear the hue and cry from specific strains of bearded louts on the Internet. That says maybe, but I don’t ship to Brazil or Singapore or India, so I don’t particularly care. If someone insists on connecting through a VPN from one of those regions for some reason, that’s their own lookout.)

    They seem to have more or less run out of compromised devices to throw at our server, so now I only see one such request every few minutes rather than hundreds per second. I shudder to think how long my firewall’s block list is by now.





  • They also need to be able to replenish that stock at current prices. I’ve worked retail many times in my life and arguably kinda-sorta do so now (albeit largely over the Internet) and I’ve never run any store where we did not set our pricing by replacement cost rather than original invoice cost. In my current operation there are some rare exceptions for clearance items and the like, but for the vast majority of products we sell for what it’s going to cost me to get the next one to put back on that shelf, not what it cost me for the one I’m selling you now.

    I don’t have any insider insight into other companies’ operations, but I imagine a lot of other retailers work things the same way. Especially these days.



  • I run an ecommerce site and lately they’ve latched onto one very specific product with attempts to hammer its page and any of those branching from it for no readily identifiable reason, at the rate of several hundred times every second. I found out pretty quickly, because suddenly our view stats for that page in particular rocketed into the millions.

    I had to insert a little script to IP ban these fuckers, which kicks in if I see a malformed user agent string or if you try to hit this page specifically more than 100 times. Through this I discovered that the requests are coming from hundreds of thousands of individual random IP addresses, many of which are located in Singapore, Brazil, and India, and mostly resolve down into those owned by local ISPs and cell phone carriers.

    Of course they ignore your robots.txt as well. This smells like some kind of botnet thing to me.


  • I’ve got a Timex Expedition that I’ve had since high school. That means I bought it some time during the early Triassic. Its stainless steel backplate is held on with four Phillips screws and I have never in many decades had any problems undoing them when I need to replace the battery every six years or so. It remains resolutely waterproof. I know this because it lives outside rather frequently: at the moment I have it stuck to the gauge cluster on one of my motorcycles with Velcro.


  • If your Q1 is anything like my previous X-Plus or current X-Max 3, pretty much all of the routines you can run from the touch screen are macros that are defined in your printer.cfg and gcode_macro.cfg files on the machine itself. These are just text files full of gcode and you can dick with it freely without having to reflash the firmware. The only “fun” part will be figuring out which one of the custom macros it is, since Qidi doesn’t always give them a readable name and they tend to make them random looking numeric strings. I’ll have to take a look at mine when I get home and ensure that the filament load/unload/runout routines are located there, but I’m pretty sure they are.

    You can edit your config files through the Mainsail interface within the Qidi Slicer or you can SSH into the machine and get a terminal via which you can mess with things directly (username mks, password makerbase).







  • The TLC NAND chips used in most commodity memory cards these days are only good for something like 1500 write cycles per cell before they are prone to wearing out and coming back with errors. The difference between a dedicated SSD and a dinky memory card is partially the amount of extra space reserved for relocating data as the memory cells wear out, of which a consumer MicroSD card typically has little (on expensive ones) or none (on cheap ones).

    I’ve heard it said, or rather seen it written, that some TLC NAND can endure “up to” as many as 3000 write cycles, but everyone is cagey about the true number and most consumer grade card vendors are tight-lipped about what kind of chips are actually in their products. So in other words, if you’re just scarfing a cheap card off of Amazon or from Microcenter or whatever, don’t expect ironclad longevity.

    The one thing with flash storage writes that’ll bite you and it’ll bite you fast is logging. Unix-like systems love to incessantly write little one line additions to oodles and oodles of log files all the time, and if you want to extend your poor overworked little SD card’s lifespan you can dabble in turning some of that stuff off, once you’re positive you don’t need it for troubleshooting.

    There also exist high reliability cards sold for industrial embedded applications, which will use lower capacity SLC but be able to endure upwards of 100,000 write cycles (per the marketing literature, at least). Expect capacities to realistically top out at about 64 gigs and for a single unit at that capacity expect to pay north of $100 for the privilege. It may be more appealing to use an NVME SSD at that rate and connect it with USB adapter or a hat.


  • I do too, but I’d highly doubt it will. It’s well known that Meta sells every headset at a loss and funds the expenditure via revenue from their gargantuan advertising and spy network, specifically to squeeze out competitors and make it harder to enter the VR market as a newcomer. Zuck Zuck still thinks all the prime real estate in the metaverse is going to be his, because he only read the first half of Snow Crash.

    Gabe is a rich man and I assume he and his company could take this approach as well if they wanted to, at least temporarily. But based on their pricing for their past hardware (particularly the Steam Deck), I predict they won’t.


  • Insufficient pedantry detected.

    The PC platform is an extension of IBM’s Personal Computer architecture, which was not a description of what it was so much as it was literally the brand name. It’s long since been forgotten that this is now a shorthand, and the full name of the platform arguably ought to be PC Compatible. Unless you bought your machine from IBM, anyway, which these days would be quite the trick.

    Being PC compatible was a big deal back when the original PC was also a big deal. Probably slightly less so now, since it’s the assumed default.

    It should go without saying that the original IBM PC, model 5150, did not run Windows… Because Windows did not yet exist. It didn’t even necessarily run the then-nascent PC-DOS provided by Microsoft, because IBM also supported running CP/M and and UCSD Pascal on it.

    The whole Windows-as-default thing didn’t happen until well after the appeal of the PC specification had escaped containment at IBM and x86 had handily taken over the desktop computing world.

    A personal computer is basically anything you can stick on your desk (or lap) and doesn’t require hooking up to a mainframe to run. But a Personal Computer, capital P and C, implies an x86 compatible platform with architecture designed such that it is technically still capable of running all those decades old 8086 programs and operating systems. (Just, several orders of magnitude faster than their designers ever envisioned, and probably only by sticking your UEFI BIOS in legacy mode first.)