* Posts by FeRDNYC

101 posts • joined 8 Jun 2013


BOFH: You'll have to really trust me on this team-building exercise


Re: Even more disappointed!

I must've missed when Charles Schulz took that gig animating acid trips. (Maybe I was too stoned.)

We can bend the laws of physics for your super-yacht, but we can't break them


Re: We canna change the laws of physics!

> "half a billion modem ports"

Yeah, let's not go crazy now. I meant half a million. Which is still a pretty crazy number of simultaneous phone calls to be fielding, during peak hours. (AOL going unmetered in 1996 nearly destroyed us. The company spent the following 18 months frantically spinning up additional banks of modems just as fast as we could get the hardware from 3Com and the capacity from the telcos.)


We canna change the laws of physics!

We had one of those, though not quite as colorful.

Back in the late-mid 1990s I worked for a backbone network operator. (Shoutout to ANS.net, long subsumed into UUNet, then MCI, then who knows where?)

One week, our backbone techs had been fielding complaints about round-trip latency in some customer's inter-city (interstate, in fact) link. They route-optimized, they load-balanced, they pulled every trick in the book to make sure data was flowing as smoothly and efficiently as possible from point A to point B.

So much so, in fact, that eventually someone sat down, did a quick back-of-the-envelope calculation, and determined that the link's current latency was consistent with packets flowing between the two endpoints at roughly 0.9 C, aka 9/10 the speed of light!

Further attempts at achieving FTLTCP/IP were immediately halted, and the customer was informed that, regretfully, we would not be able to "clear up" their supposed "lag" any further. Perhaps, as a non-relativistic solution, they would instead consider relocating one of their sites nearer to the other? The speed of light in a vacuum is generally considered a non-negotiable constraint.

(Background: I actually wasn't a backbone operator, rather I worked on our dial-up systems. Which were quite extensive, at the time, because ANS was several years into a massive project to build & operate the network for AOL, by whom they'd subsequently been acquired. — Yes, that narrow sliver of the pre-dotcom-crash 90s was the sweet spot during which AOL had the juice to buy a backbone ISP of its own. For the sole purpose of having a team responsible for keeping their nationwide network of over half a billion modem ports humming along. — Anyway, we all tended to eat dinner together often, so even though I wasn't directly involved in backbone operations I still got to hear most of the stories.)

Distributor dumps Kaspersky to show solidarity with Ukraine


"Dicker Dater" feels like a false dichotomy to me. #WhyNotBoth?

BOFH: The Geek's Countergambit – outwitted at an electronics store


You realize...

At the close of this one all I can hear in my head is Bugs Bunny declaring, "You realize, this means war?"

BOFH: When the Sun rises in the West and sets in the East, only then will the UPS cease to supply uninterrupted voltage


My tried-and-true, decades-of-results-to-back-it-up method of cleaning nearly anything electrically inert (either by its nature, or temporarily rendered that way) is to shower with it.

Fans, both environmental and device-extracted? Check. Clogged vacuum cleaner hoses? Checkity-check. Window blinds, window screens, aircon filters, sink mats? Check, check, check, aaaand... check. Keyboards? 1000% check, any other method is just farting around and wasting time. (It helps to have a spare on hand you can swap it out with, for the drying period.)

They all get a nice, soapy shower (and a good scrubbing and exfoliation from Mr. Retired Old Toothbrush), then they get a perch in front of the box fan on highest-tolerable speed, positioned at an optimal drying angle for ~12-36 hours (depending). ...Unless what I was cleaning was the box fan, then I too like to live dangerously.

My shower drain's always a little bit gross, but the rest of the place is pristine!


Re: Experience

I think part of the problem is that youth(s) never seem to check that they're properly grounded, before grasping lots of things.

Nothing delivers 10kV of Experience™ quite as effectively as a "Here, hold this!" trustingly complied with. (How else are they gonna learn? The ones that survive, I mean.)

BOFH: So you want to have your computer switched out for something faster? It's time to learn from the master


Don't leave out all the Snaabs who reliably infest such communities.

BOFH: Oh for Pete’s sake. Don’t make a spectacle of yourself


Re: Stupidity Cancelling Headset

Sorta, they just keep spinning it off into new markets.

I hear the Vatican is workshopping their own take, as sort of a fundraising experiment: 'Vestors Vestibule. Supposed to be very fancy. The ventures ride in on their Vespas, the pitching priests don the vestments, and this travesty of a joke is why I'll die a Vestal virgin.

BOFH: Postman BOFH's Special Delivery Service


Re: 'Remote Onboarding'

Hah! Not now that they've all got little tracking chips in them. Now they can just refuse to work if they're past a certain date.

(Which, in fairness, is perfectly on brand for printing technology. Refusing to work under basically any circumstances is the standard consumer inkjet printer's prime directive.)


Re: Queen's portrait on them

"What, like photos of Freddie Mercury?" </American>


Re: Back to work... NOPE

Sadly, Crom cares not.


Bringing home useless-to-them old equipment used to be my favorite thing about assisting people with their upgrades, since they always seemed to have too much money and a desire to replace perfectly-good devices with newer, perfectly-good devices. (I suppose "better", in many cases, depending how you look at it.) Whereas I always seem to have no money and the last time I paid for a brand-new anything was my recently-deceased printer, purchased back in 2006.

I say "used to be my favorite thing", because now my chickens have come home to roost. There's both a 17" Nokia 447w CRT screen and some model Asus 22" LCD display currently sitting in my closet, neither of which I really have any use for, but also neither of which I can get rid of... not without having to pay a recycling fee that's far more than I paid for the screens (which is nothing). So there they sit.

Footfallcam kerfuffle: Firm apologises, promises to fix product after viral Twitter thread, infoseccer backlash


I mean, you can easily read the law in question for yourself. (And it is, surprisingly, fairly readable and written in plain English.) As currently amended:

Unauthorised access to computer material.

(1) A person is guilty of an offence if—

(a) he causes a computer to perform any function with intent to secure access to any program or data held in any computer, or to enable any such access to be secured;

(b) the access he intends to secure, or to enable to be secured, is unauthorised; and

(c) he knows at the time when he causes the computer to perform the function that that is the case.

Yes, if you set up a public website then accessing it is not unauthorized. But merely serving content over HTTP does not constitute authorization, if the server in question is not a public internet resource. (Meaning, if it's only reachable by knowing or guessing the device's IP, and there are no links to it anywhere on the web, then it's not exactly "a website" nor is it implicitly public.)

And attempting to breach password-protected or otherwise secure areas of any service — public or otherwise — is still criminal "unauthorized" access, no matter how laughably weak their security is.

BOFH: Are you a druid? Legally, you have to tell me if you're a druid



That unclosed quote at the end was going to haunt me for the rest of my days. #ThereIFixedIt

BOFH: Darn Windows 7. It's totally why we need a £1k graphics card for a business computer


Re: Canny director?

That's Luser Attitude Readjustment Tool — LART for short.


Re: Hint

The rich Corinthian leather makes them nosy.


Re: Keyboards

Almost every piece of M$-branded peripheral hardware is actually really well made. All the ones I've encountered, anyway. Their hardware group is definitely not their software group. (Though there's a lot of variation even among the software groups, really.)

They went down some wacky roads with the whole "Natural" keyboard thing, but even the most preposterous of those were well-constructed, stupidly-laid-out keyboards... and they still make variations on the split/vee models today, so "Some people like 'em, I guess."

BOFH: I'd like introduce you to a groovy little web log I call 'That's Boss'


Bigly funny.

BOFH: Trying to go after IT's budget again?


Re: PFY's Carbon Offset Business

Even more by killing them off before they get a chance to spawn. That also makes it way easier to claim a carbon credit for recycling their unmourned corpse. After all, we're going to have to face the environmental impact of cemeteries eventually. To quote George Carlin:


Isn't it time we stopped wasting valuable land on cemeteries? Talk about an idea whose time has passed. "Let's put all the dead people in boxes and keep them in one part of town." What kind of medieval bullshit is that? I say, plow those motherfuckers up and throw them away. Or melt them down. We need the phosphorus for farming. If we're going to recycle, let's get serious!


(Always true to his convictions, after Carlin died in 2008 his body was cremated and his ashes scattered.)


Re: PFY's Carbon Offset Business

For the love of God, Montresor!

...Oh, wait, you were proposing to kill them first. That's fine, then. Carry on!

BOFH: Judge us not by the size of our database, but the size of our augmented reality


Robot playing a power axe? Think I saw that at Coachella!

He was no Jimi Hendrix, but then again neither is Jimi Hendrix these days.

A History of (Computer) Violence: Wait. Before you whack it again, try caressing the mouse


Re: Does punching 'reset' count?

Yeah, it really wasn't that bad. Where things got ugly was installing stuff like Visual C++ from floppies, because with the MFC libraries and everything there were like TWENTY-SOMETHING of them!


Re: "Luca [was] dispatched to resolve the situation."

Dammit! Now I have Madonna stuck in my head.

...That may require some explanation. You see, my brain is either a clever DJ not afraid to wander outside his comfort zone, or a psychopath (#WhyNotBoth), because at some point in time the opening to that song ended up getting spliced seamlessly into "Papa Don't Preach", inside my head.

I have No. Idea. how the song goes past the first four lines, anymore, because in my brain this is the only way I can hear it:

My name is Luca,

I live on the second floor

I live upstairs from you,

Yes I think you've seen me before.

The one you told me all about,

The one you said I could do without,

We're in an awful mess

And I don't mean maybe! Please...

etc, etc.


Re: Percussive maintenance

a cruddy Beowulf cluster

Now there's a name I've not heard in a long, long time. A long time.


Re: Whacksing benefits

I'm going to guess it's somewhere vaguely around the age of my own Brother (MFC-5460CN, purchased in like 2007), which is ostensibly in the same situation. The only downloadable driver packages for my (Fedora) installation are mfc5460cnlpr-1.0.1-1.i386.rpm and mfc5460cncupswrapper-1.0.1-1.i386.rpm. However, it's not really all that big a deal, because as it turns out...

1. The scanner utilities are available as 64-bit packages, for some reason

2. The printer binaries aren't linked with any 32-bit libraries other than glibc

3. For at least some of the printer tools, source is available (yay GPL!), so it's possible to compile your own 64-bit binaries.

I ended up having to patch /usr/bin/brprintconf_mfc5460cn to correct an issue (the media_command string length was only 100 characters, which was too short for complex configuration), so I went to Brother's site and downloaded the ink3_GPL_src_101-1.tar.gz source (which matches my printer generation, ink2 was for even-older, ink4 for slightly less ancient... you get the drill), patched it to change 'char media_command[100];' to 'char media_command[500];', compiled it, and now I have a 64-bit /usr/bin/brprintconf_mfc5460cn that doesn't crash when I choose too many options in the printer configs.

I do sort of want to replace the printer (which is so past-it that the yellow ink line is irreparably clogged, meaing I can only use it to print grayscale), but I use it more as a scanner than a printer these days, it's still a better-than-average network scanner, and replacing it would mean having to deal with new drivers, new utils, new ink supplies to purchase, etc.

So... meh. One day it'll actually die on me for real, and then I'll probably replace it. I mean, hopefully when it does die, it's because the scanner lamp craps out or something, at which point my hand will be forced. Because if there's any way I can keep it shambling along in some sort of half-alive zombie form, history has shown that I absolutely will.


I'm not even sure drives at that time had auto-parking heads, TBH.


Re: The tine of a forklift wielded like a scalpel

Any mention of a forklift requires this obligatory link, courtesy of El Reg commenter allthecoolshortnamesweretaken, whose original 2016 comment I shall simply quote verbatim:

Everything you never wanted to know about about operating a forklift and couldn't be bothered to ask.

It starts like the usual work instruction/safety regulations training video... and turns into something very much like the "Salad Days" sketch from Monty Python's Flying Circus. Don't mind that it's in German, you'll get it without the dialogue.


Re: The tine of a forklift wielded like a scalpel

They thought it was a Phalanx XR-12 computer. They only take triangular disks.


Re: The tine of a forklift wielded like a scalpel


BOFH: What's the Gnasher? Why, it's our heavy-duty macerator sewage pump


That's OS/2 Warp! Remember, it's only half an OS.


Could be worse

There was a story, a surprisingly few years back, about a housing complex in I think Boston, and the troubles they were having keeping their HVAC system operational. Turns out it was all controlled by custom software running on an Amiga A500. Good luck replacing that!

BOFH: Oh, go on, let's flush all that legacy tech down the toilet


"You didn't pay for toilet use. Obviously it means an ongoing revenue stream..."

Very droll.

TBH I'm impressed. That counts as subtle for the BOFH, who's usually about as subtle as a clue-by-four to the side of the skull.

BOFH: What's Near Field Implementation? Oh, you'll see. Turn left here


Re: " wine has no affect on "

I mean... the quote's correct, as far as it goes. Wine has no affect, period! It's not a person. Wine can't express emotions. (Just cause them! It's great at that.)

BOFH: Bye desktop, bye desk. Hello tablet and a beanbag on the floor


Re: I dunno

Is radon still a thing? ISTR back in the day we were all deathly afraid of radon outgassing in our building foundations and whatnot, irradiating us full of all the fabulously deadly cancers it would bring. Pretty sure we were all supposed to have expired from all the radon turning each of our bodies into nothing but one giant tumor mass, in fact. We still scared of radon?

BOFH: State of a job, eh? Roll the Endless Requests for Further Information protocol


The System is real

The worst part of this New-Fangled World of Tomorrow we live in is that computers really can be imposed between users and the support staff ostensibly there to help them.

My cable company even introduced an automated "Stupid Luser Tricks" system on their phone-support line a few years back. Now if you call in to report that you can't access the Internet, instead of getting a tech at all, you get connected to a phonebot that (a) talks you through the steps of resetting your cable modem (in the laborious detail typical of interfaces designed for the lowest common denominator), and (b) actually checks that you're following along with every tedious step. So when it says "unplug your modem", your modem had damn well better power down, because if the system's able to reach it after you said it was unplugged, you're in for a whole world of "Hmmm, something doesn't seem right. Let's start over..." pain.

As much as this frustrates me personally (as a technically-minded customer), in theory it could be a good thing. A lot of support's time really is taken up solving "problems" that only require them saying, "Have you tried turning it off and on again?" Eliminating that tedium could mean that they're more available to focus on handling real issues. Or, it would, if the introduction of automated level 1 support didn't always coincide with a reduction in human support staff. So the few who remain are just as overworked, except now all of their time is spend handling only two types of issues: Real problems that can't be solved with a simple power cycle / reset, and new problems created by the automated idiot-support system.


Re: Missing item

Sorry! That's usually me. I'm of the opinion that necromancy is always better than starting a new issue over from scratch and having to cover the same ground over again (assuming the previous history is still relevant), but wow is there some disagreement on that point.

Python creator Guido van Rossum sys.exit()s as language overlord


Re: Re introducing ":="

Two-digit years wasn't so much about typing as it was about data storage, back in a time when saving two bytes per date seemed like real economy. If it was just about typing, they could've allowed operators to type a two-digit year, but stored it as 19xx, in which case Y2K would've been a snooze. (The same way UNIX has always stored dates as integers — seconds since the epoch — for efficiency, and therefore UNIX/Linux were largely immune to the Y2K bug, at least in terms of system code.)

Pascal did indeed use ':=' for assignment (and '=' for equality test), whereas C went with '=' and '=='. Which probably was about typing laziness regarding the shifted character.

(Or possibly internationalization — did the ':' character appear on all early keyboard layouts? Does it appear on all of them now, for that matter? Obviously it's already required if you want to write Python code, so it's not an issue using it for ':='.)


Re: Is this equivalent to the following, widely recognised as horrible in any C-like?

And, in fact, PEP 572 isn't JUST about list comprehensions. It adds in-expression assignment generally, a very common language pattern which Python previously lacked. So, while these two expressions are equivalent:

foreach my $x (@input_data) { # Perl

for x in input_data: # Python

other common in-loop assignments such as (again, Perl):

while (my $x = $parser->get_token()) {



had no direct syntactic Python equivalent. But with PEP 572, this can now be written in Python as:

while x := parser.get_token():


In-expression assignments like that are generally a common pattern. They can be abused, of course. But C is the king of "enough rope to hang yourself" so a feature being open to abuse isn't an argument against the feature. It's against abusing it.

(And I would argue that the list comprehension form does not count as abuse. There's a reason they went with := instead of =, and it was to avoid exactly the type of horrible C code you mentioned.)

Because while

if (a = f(b)) {

is absolutely horrible C due to its "hidden" assignment, if the syntax were

if (a := f(b)) {

that would be far less problematic, because it's clearly different from a == test for equality.


Re: Is this equivalent to the following, widely recognised as horrible in any C-like?

Soooooorta, but you're also inside a for loop (which is what a list comprehension is, an expression evaluated for every member of a given list), so there's also a sense in which it's a shorthand for (in Perl):

foreach my $x ( @input_data ) {

my $y = f($x);

push(@output_data, [$x, $y, $x/$y]) if ($y > 0);


Yes, the assignment is inside the if statement, but that's because you've already compressed the for loop into a one-line comprehension and there's really no way to locate it anywhere else. The point is to call f(x) only ONCE, assign it to y, and then output the tuple iff y > 0;


Re: Reinventing a more limited wheel

Nested list comprehensions are hard to comprehend

I'm impressed how you seemingly managed to say that without a trace of irony.


Re: This happened to Perl too...

...I don't want to find that joke baked from low-hanging fruit funny ("Hey, this guy is finding humor in the common perception that Perl syntax is hard to read, do they have a Nobel Prize for Humor yet?") ... ... ... but dammit, it IS funny.

There's More Than One Way To Earn An Upvote.


Re: Reinventing a more limited wheel

The new syntax is not only using fewer characters, it's far clearer about what's actually going on than your example. Yes, you have to wrap your brain around the := operator, but that's just syntax and syntax is trivial. But when you compare your version:

[(x, y, x/y) for x, y in ((x, f(x)) for x in input_data) if y > 0]

vs. the PEP 572 version:

results = [(x, y, x/y) for x in input_data if (y := f(x)) > 0]

The fact that there will be a result for every item in the input_data list and that y = f(x) in the output are both made far clearer and more obvious in the latter form.


Re: Futuristic progression of Programming Languages?

You forgot OSes, they suck too. And worse, you forgot fanbois, who suck in all kinds of spectacular ways.

Yes, well, the value of pointing out that all hardware, software, and OSes suck is to remind us to focus on an individual example's positives, rather than its negatives, because they all have negatives.

There are no redeeming positives to fanbois, though, so there's less value in noting that they all suck, even though they most certainly do. They suck not only individually but collectively, and they should be dismissed in the same manner: Begone, all ye fanbois!

BOFH: But I did log in to the portal, Dave


This is why you want to at least deal with local vendors

Cross-country murder is a lot harder, and in the US turns it into a Federal crime.

Back at the very tail end of the 20th Century, I had a home DSL line (I knooowwwww!) at my apartment in Boston, with service through an ISP located in California. They resold service from one company (AT&T), installed by a second (Covad), and so FlashCom's #ONEJOB was basically to just collect my monthly payments in return for doing exactly nothing. It should've been TWO jobs, the second being to keep my service active. And therein lies my mistake.

After a few months of relatively trouble-free access to the new-fangled Information Superhighway, some sort of physical calamity befell my line that took it out of service. It's ancient physical copper wiring in an old, old city, these things just happen. Unfortunately, though, getting a company clear across the country to service your telephone line is not the easiest thing. And, I couldn't call AT&T because they wanted nothing to do with me: I wasn't their customer, FlashCom was. So, I waited.

It eventually came to pass that a service tech had been dispatched, and determined that the line was dead. (Gee, thanks.) Furthermore, he determined that it was the last unused pair of copper wires in the trunk, there were no more available, and so they were very sorry, but there was nothing they could do about restoring my service. (Because that line only carried DSL, and no analog telephone service, it wasn't subject to the regulations that would've required them to sort out the problem, no matter what they had to do — even if it meant digging up the street and running an entirely new trunk to our building. This is why regulation is a good thing, folks.)

Now, mind you, it's taken the better part of five weeks to make this determination, with my line down the entire time. Then the other shoe dropped.

Turns out, FlashCom had been continuing to bill me for the entire five weeks that my line was down and I was not, in fact, receiving any of the "service" I was paying them for! Naturally, when I discovered this, I immediately stormed off to their website (yes, it is possible to "storm" to a virtual location, as I learned that day) to cancel my non-service. I mean, after all, they were a modern dot-com company, with a customer account portal and everything!

A customer account portal which promptly crashed every time I attempted to submit the cancellation form.

After trying three times, and now completely livid, I practically broke the buttons off my phone pounding their phone number in, to speak to their billing department in person. This involved subjecting myself to the same four-song hold music loop I had already become intimately familiar with, over the preceding five weeks, but this time I don't think I even heard it.

To make an already-long story slightly less long, the tale ends with me SCREAMING, completely unhinged at what sounded like a tiny 70-year-old woman in their billing department (because screw her, she knew the risks), after she suggested that I log in to their customer portal and cancel the account myself.

Seriously, I was so belligerent she had to hang up on me. And to her credit, when I called back a few minutes later, slightly less rabid, she did finally process my cancellation and release me from the hell that was FlashCom. Which promptly went out of business some time within the next two months.

BOFH: Guys? Guys? We need blockchain... can you install blockchain?


Re: The value of IoT- Everything is divisible by 0

It's been a squirrely problem since 1985, when the first IEEE 754 Standard for Floating-Point Arithmetic was released, as it was designed around the requirement that every operation have a well-defined result. (Prior to IEEE 754 invalid calculations, including dividing by zero, would simply result in a program crash and for the most part everyone was fine with that.)

Since the IEEE improved everyone's lives, to quote Wikipedia on divsion by zero:

The standard supports signed zero, as well as infinity and NaN (not a number). There are two zeroes: +0 (positive zero) and −0 (negative zero) and this removes any ambiguity when dividing. In IEEE 754 arithmetic, a ÷ +0 is positive infinity when a is positive, negative infinity when a is negative, and NaN when a = ±0. The infinity signs change when dividing by −0 instead.


Most calculators will either return an error or state that 1/0 is undefined; however, some TI and HP graphing calculators will evaluate (1/0)² to ∞.

Microsoft Math and Mathematica return ComplexInfinity for 1/0. Maple and SageMath return an error message for 1/0, and infinity for 1/0.0 (0.0 tells these systems to use floating point arithmetic instead of algebraic arithmetic).


Re: Sorry IT guys you aren't unique in this

Oh, trust me, nobody in IT believes they've invented the corporate fad. At plenty of companies, the management-style-du-jour roller coaster was fucking things up for the entire corporate drone population long before the endless revolving door of educational fads or IT trends swooped in to make knowledge workers' lives more "interesting". Plenty of that crap's been in heavy rotation since the 1980s, if not longer.

The thing that sets IT trends apart, though, is that they have this tendency to captivate non- IT people. Because IT is everywhere and every company makes use of IT, scenes like the one in this episode are all too common. Some management type catches wind of a new shiny that the company absolutely must be doing, despite not actually having the first clue what it even IS. I mean, that stuff's for the nerds to sort out, right?

You don't really get much of that, outside of IT. Management styles and trends mostly infect management, and while the workers are definitely the ones who suffer at least whatever nonsense they're enduring is being implemented at the right levels. And whatever educational initiative is in vogue this week, at least you know the people dabbling in it are educators, or involved in the educational system to some degree. You're not going to see the manager of a coffee shop stroll in some morning and announce that they're going to be implementing Mindfulness. Employees at the nearest big-box electronics store aren't likely to receive memos detailing the TV department's new Brain Gyms initiative.

In IT things like that happen all the time, even within companies that aren't remotely in the IT business. Here in the US recently, a beverage company decided (while in the death throes of failing as a beverage company) that they were going to radically reinvent the company to save it. They changed their name to something absurd involving (you guessed it) blockchain, and then promptly still folded because oddly enough a beverage company isn't well-positioned to make the transition into the exciting world of blockchain. (Plus, I wouldn't be surprised if the one person on staff with any sort of technical know-how resigned on the spot the moment they got wind of that idiot plan.)


Re: Published at 08:36

Pity us poor Americans — it's only 8:45am now on the east coast, and the other side of the country is still fast asleep.


Re: Unfortunately he hits the nail on the head again.

I'll never forget one particular CIO (because we loved TLAs at that company)


"TFW one particular CIO (because TLAs were AOK at that LLC)..."

FTFY. ...Shit!

BOFH: Give me a lever long enough and a fool, I mean a fulcrum and ....


Truly, many enjoyments were on-mirthed in the readification of Simon's maximally recental authoring.



Biting the hand that feeds IT © 1998–2022