* Posts by GrahamRJ

63 posts • joined 2 Dec 2016


BOFH: You say goodbye and I say halon


Re: Great murder choice.

As a (relatively inexperienced) diver, the main theory elements for each qualification are the new and interesting ways you can kill yourself with the new combinations of gas, depth and time. So that people can get familiarised with what these actually feel like, diving clubs rent hyperbaric chambers from NHS hospitals to run so-called "dry dives" where they put you through those scenarios without actually being at risk of drowning. (And not coincidentally, also somewhere with a lot of doctors in very close proximity.)

Somebody is destined for somewhere hot, and definitely not Coventry


Microchip microcontrollers

I remember when word-of-mouth got round that NCSA Mosaic (I never figured out how to drive it) on our Solaris network had been supplemented with Netscape Navigator (then still unversioned, because v1), and you could use Yahoo! or Lycos to search for stuff. Links to the US averaged 50 *bytes* per second at busy times during the day, but you could get as fast as 1MB per second at night.

But even in those early days, smut was pretty front and centre. As an electronic engineering student in the mid-90s, I inevitably used Microchip PIC microcontrollers for projects because they were cheap and fairly well supported by the community. So of course I went looking for other people's source code I could reuse - and I brought up a search engine and typed in "pics". Let's just say the page titles that came up were not what you want shown on a large screen in a busy computer lab.

Good news: Jeff Bezos went to space. Bad news: He's back


Re: Congrats ...

Not just for astronaut training. Funk was also refused a pilot job by all airlines - and then refused access to the Shuttle programme because she hadn't had a job as a test pilot.

UK spends £36m on 18 little 'bullet-proof' boats to protect Royal Navy assets


Neal Stephenson was here first

"See, I told you they'd listen to Reason."

Imagine surviving WW3, rebuilding computers, opening up GitHub's underground vault just to relive JavaScript


Apologies to Percy Bysshe Shelley

I met an engineer with an antique plan

Who said, “Two vast and trunkless archives of Git

Sat on the backup drive. Near it, on the wall,

Half torn, a readme printout lies, whose text,

And wrinkled paper, and sneer of cold command-line,

Tell that its author well those manuals read

Which yet survive, stamped on these pointless things,

The hand that typed them, and the drive that sped;

And on the printout, these words appear:

My Github is 0zym4nd145, Coder of Coders;

Look on my l33t Works, ye Mighty, and despair!

Nothing beside remains. Round the decay

Of that colossal disk store, crashed and burnt,

The lone and level tunnel floors stretch far away."

Anyone for a round of Ging Gang Goolie? Solar Orbiter probe snaps little 'campfires' flickering on Sun's surface


Ging Gang Goolie not on campfire list these days

I've just had a "virtual Cub Camp" on Zoom with my son and his Cubs pack, one part of which was the traditional sing-song, led partly by the leaders and partly by the Sixers. (My son acquitted himself well with Alice the Camel; the other kids clearly hadn't learnt their songs though.) But no Ging Gang Goolie, unfortunately. I don't know whether it's the "goolie" part which makes it unfashionable.

(I was up for leading "He jumped without a parachute", but they never asked the parents. Which was a shame. OTOH I suppose it stops a pissed-up parent rolling out a Macc Lads song or something like that, so fair play.)

You're testing them wrong: Whiteboard coding interviews are 'anti-women psychological stress examinations'


As an embedded software engineer, I certainly do use whiteboard exercises (actually more usually done on paper). Since we're working with C, I have a standard question for inserting values in a sorted linked list - easy to explain, but with a few corner cases which need to be spotted. As a matter of course, I give them 15 minutes or so on their own for it, because I know that trying to perform with people watching. I'm up-front with them that the purpose is not to have perfect answers to all the questions, it's to use the questions to have a technical conversation.

If they do the whole thing perfectly, then great. More usually, I'll ask "what happens if you get this?" and then it's a case of seeing how they deal with fault-finding for an input they hadn't anticipated. If they get stuck, I'll lead them with hints to help them solve it. The aim is very much to reduce the pressure on them and make the exercise more collaborative.

Before that, I have a few more basic questions which establish that the interviewee has actually used C in anger. Some are a little specific to embedded, so if the interviewee doesn't know, I'll explain what they mean and see if they can think of a context they'd be useful.

As far as sexism goes though, IMO that's already happened before anyone walks in the door. I've reviewed CVs for dozens of people, and I've had precisely one woman's CV sent to me. My uni course had 110 guys and 4 women. If women aren't doing subjects which lead to engineering at school, and they aren't taking engineering at uni, we won't have female engineers on the other side. I've known a few bloody good female engineers in my 25 years in industry, and I never saw any male engineer look down on them. A few managers and sales-drones have, mind you, but there's tended to be push-back if that happens.

NASA trusted 'traditional' Boeing to program its Starliner without close supervision... It failed to dock due to bugs


The redundancy in that case was provided by the Russians and Soyuz.

Trump's bright idea of kicking out foreign students unless unis resume in-person classes stuns tech, science world



You mean the gun nuts in Michigan, perhaps? They certainly like Trump.

Oh, you mean the people protesting against black people being killed with impunity by the police? It's an interesting idea to call anti-racism "fascist", but not exactly founded in reality.

A real loch mess: Navy larks sunk by a truculent torpedo


Re: Kids Toys

My gran had a load of Bayko. I used to love playing with that. When she died, it all went to ours and sat in the loft. I raided some of the metal rods for my Warhammer 40,000 figures, because I needed something for the standard bearers' flags to hang on, and it was hard to find 1mm hardened steel rods.

My son now plays with it occasionally at my folks' place when he visits. Things go around...

Baby Diesel? Little d'Artagnan? There is another child of Musk in the world


Follow the naming convention for landing-pad ships

... and use the names of Ian M Banks "Culture" ships. I would particularly suggest:-

Little Rascal

Youthful Indiscretion

Sweet and Full of Grace

Although given the number of other kids he has, perhaps:-

Someone Else's Problem

Bezos to the Moon: Blue Origin joins SpaceX and Dynetics in a three-horse lunar lander race


Not so much. It's easy enough to fall back to a rope ladder, or even just a rope - remember that there's only 1/6G on the Moon, so it's only the equivalent of lifting a 15kg load. Somewhat tiring if you have to do all day, to be sure, but nothing too impossible.

Brit magistrates' courts turn to video conferencing to keep wheels of justice turning



Somehow I read that as the "Kinky Cloud Video Platform". I was wondering about how the judges' sexual preferences were relevant, the presence of bars, cells, chains and handcuffs notwithstanding.

International space station connects 100Mbps symmetric space laser ethernet using Sony optical disc tech


Re: Nice technology

The point for space applications of course is that there isn't a lot of fog, rain and snow out there. It's less of a demonstrator for an Earth-to-satellite link, and more for higher-bandwidth links to, say, Mars or the Moon.


Unless they've got transparent space suits, there's not going to be a right lot to see.

Jeff Bezos tells shareholders to buckle up: Amazon to blow this quarter's profits and more on coronavirus costs


Re: The drop in profits

This is nothing that hasn't already been said since the invention of the Spinning Jenny in 1764. If you want to protest against industrial automation, I'm afraid you're 250 years late to that particular party.

You can get a mechanical keyboard for £45. But should you? We pulled an Aukey KM-G6 out of the bargain bin


I rescued an IBM mechanical keyboard out of the scrap bin at our local tip, about 1999. It was in a horrendous state - the tipper had no doubt looked at the accumulated crud everywhere and said "sod that". I dismantled it, and all the bits went in a sink of water, including (briefly) the PCB, to shift the crud. It lasted for 10 years until a couple of keyswitches died and a couple more were flaky, and I finally retired it. Best keyboard I've ever owned, and the cheapest too!

All roads lead to Bork in Kansas as Windows puts on a show for motorists


Should do some Bob Dylan instead

"How many roads must a man Bork down...

... The answer my friend, is blowing in the Windows"

British Army adopts WhatsApp for formal orders as coronavirus isolation kicks in



Oh dear. As zombie fiction goes, WWZ is one of the best there is. Depth of plot, depth of writing, depth of characterisation, depth of *thinking* generally. The changes in military doctrine to "Zack ain't in a hurry, why are you?", fortified motorways in Britain, all that generally - it's a work of complete genius. As zombie films go though, WWZ is one to avoid.

Biting is a great example of why to avoid the film. There are plenty of other ways to break skin, so removing teeth really won't help.

And North Korea in the book is one of the creepiest parts. In the book, their Glorious Leader forces the entire population into underground bomb-shelter bunkers. These are deliberately left sealed, because it's very likely the entire population of the country in those bunkers are now zombies, but no-one knows for sure.

BT's Wi-Fi Disc ads banned because there's no evidence the things work


Re: I've...

And the answer is that those tentacles are going *everywhere*.

Closed source? Pull the other one... We love open source, but not enough to share code for our own app, says GitHub


Re: "Yet this mobile app is not open source"

If you're putting together a proof-of-concept which is still in active development, why on earth would you want to share the source until you'd got it all tidied up and stable? Everything anyone could possibly do with that source would be detrimental to you and to whatever they do with it. They can't usefully give you issue reports. They can't usefully review the code. They can't even do anything productive by forking from your source, because whatever you do later will very likely break their fork. You would need to be terminally stupid to even consider it.

Total Inability To Service User Pulls: GitHub wobbles with a good old Thursday TITSUP


There are alternatives

I'm using GitLab at work. GitHub was asking a bit too much for hosting non-open-source projects, whereas GitLab doesn't care. And their servers have never missed a beat. All my DevOps stuff happens on an in-house server, so all they need to do is handle pushing/pulling the repos. Some day I may move that up to the cloud, but where I am at the moment, even running Jenkins and Bugzilla was a dangerously modern idea when I arrived. (Seriously, an engineering company without an issue-tracking database, in 2018. My conversations could be roughly summarised as "shoot me now, or give me a bloody server".)

How many times do we have to tell you? A Tesla isn't a self-driving car, say investigators after Apple man's fatal crash


Re: Tesla never said it's driverless

Good choice of music, sir!

If there's a bustle in your hedgerow, don't be alarmed now: Brexit tea towel says it'll just be the gigabit broadband


Re: Since when did a hedgerow need gigabit broadband?

My house used to be the only one on the estate with a decent garden. (Especially after I'd done major excavation work to remove the debris left behind when it was built 20 years previously. The soil was in such a bad state when I moved in, it barely even grew dandelions.) Since that gave them a nice stopover point with bushes to hide in and worms and insects to eat, hedgehogs on their way across our estate tended to go via our garden. And occasionally they'd get frisky.

I can report that amorous hedgehogs do not need porn. More of an issue is that group sex is very much a thing for hedgehogs, and they are *noisy*.


Re: Drying

That's only appropriate, considering the crap that comes out of both arseholes and Tories.

'I give fusion power a higher chance of succeeding than quantum computing' says the R in the RSA crypto-algorithm


Re: Glib rejoinder

I'm not sure that qualifies as "interesting" there - just the Trolley Problem with a different backdrop.

And the best revenge on your university, after it ditched your project and you solved it on your own, is not blowing up the university, or even killing the people responsible. It's demonstrating your results, selling your results, making enough money to buy small countries, and being able to say at every press conference: "And those morons at university could have had a slice of this. Professor Smith and Professor Jones, I bet you feel stupid now." Having them remembered not for anything they achieved in their academic careers, but for being the people who were too stupid to spot a world-changing innovation - *that's* revenge. Served very cold indeed.

Parks and recreation escalate efforts to take back control of field terrorised by thug geese


Re: Federally protected

Why are they protected? If they were rare then I could understand it, but the world is currently in no danger of running out of Canada geese.

Mind you, the fact that anything apart from millionaires' bank accounts is federally protected in the US is at least a demonstration that some parts of their administration aren't totally batshit insane.

S20 Ultra 5G: Samsung unfurls Galaxy flagship with bonkers 108MP cam, 6.9-inch display


Yorkshire War Cry!


(What else would the icon be?)

So you locked your backups away for years, huh? Allow me to introduce my colleagues, Brute, Force and Ignorance


Re: Seen in the wild

Just remembered a war story with PA equipment. Old-school 2kW power amp, heavy old linear power supplies. A total sod to cart around, but it was utterly reliable. Except one day where the sound just started fading away quieter and quieter. I couldn't figure out why. Turns out the power cable had got loose - but the amplifier power supply had such large smoothing capacitors, and the amplifier itself was efficient enough without much signal, that it took a couple of minutes before the capacitors finally ran out of juice.


Re: Seen in the wild

I can do you one better than that. I used to play guitar and bass in a covers band. One gig, we all got back up after a break, and I found my guitar sound had gone strange. Lower strings produced noise, albeit muffled, but higher strings didn't do much, and all the level was down. I checked all my gear to see what settings had got changed, but everything was fine. I assumed it must be an FX pedal gone faulty and went round swapping them out, but no joy. Me and the other guitarist both played bass and guitar, so we finished the gig handing instruments between each other, and I went fault-finding at the end.

Turns out it was a cable fault. Somehow, and I don't ask anyone to explain the physics of it, a cable had failed *just enough* to still pass a signal but turn the cable into a low-quality low-pass filter. Lower notes came through with distortion; higher notes simply didn't.

I've seen plenty of dead cables, and plenty of intermittent cables, so if it had been anything like that then I would have immediately started swapping cables. This is the first (and so far only) time I've seen a cable turn into an audio-frequency filter.


Is the measurement in inches or in cubic cms?

Will Asimov fix my doorbell? There should be a law about this


Re: You are confusing EU with Europe

If the reason for the departure of the UK was due to actual EU policies, that would have some relevance.

BoJo, and others from the Murdoch/Barclay press (let's be fair), have spent the last 20-30 years publishing outright lies about the EU though. Various anti-EU Conservatives have repeated those. Not too unreasonably, a lot of people think those lies are true because they're published in national newspapers.

As for a "better EU", it's important to remember that the EU, in its autocratic style, had the indignity to impose equal rights for older people, equal rights for gay people, equal rights for non-white people, equal rights for non-Christian people, equal rights for Christian people (in NI), equal rights for men to parental responsibility, equal rights for men to parental leave, equal rights for women pensioners, a national minimum wage... and I think I'll stop there. As those radical concepts (if you can describe "treat people properly" as that) were introduced, every Conservative party in government or opposition attempted to derail every single one. Several were opposed by the Blair/Brown governments too. The EU imposed them on the country, in direct opposition from the UK governments, because the EU considered them to be the correct thing to do. So which of those do you think shouldn't have happened? Which of those groups do you think should not have human rights?

Holocaust Remembrance Day was the other week, and one of the key peints was that people should learn how to prevent it happening again. The EU is, directly, a force to stop that happening again, because "other countries should not meddle in our internal affairs" leads *directly* to Kristallnacht, ghettos and gas chambers. It really is that simple - and the horrific part is that it's already started.

Vendor-bender LibreOffice kicks out 6.4: Community project feel, though now with added auto-█████ tool


Re: Understatement

I do. But the sentence continued "... for the joker who designed this, with landing set for the Mount Etna crater".

There are already Chinese components in your pocket – so why fret about 5G gear?


Re: Standards?

The country is currently being fucked up by the giant cock in Number 10. Getting shafted by an interplanetary prick would be a welcome change.

SLS goes vertical at Stennis while NASA practises SRB stacking


Re: In MY day

Other members of the Battlestar Galactica crew are available. (Icon because, well, spoilers in the unlikely case that anyone didn't see the remake.)

Beware the Friday afternoon 'Could you just..?' from the muppet who wants to come between you and your beer


Landlord's daughter didn't believe in protection

I can't believe no-one's associated that phrase with potential routes for payment in kind. Or is that just me?

You're not Boeing to believe this: Yet another show-stopping software bug found in ill-fated 737 Max airplanes


Re: Isn't THIS why we've got to teach 2nd-graders how to "code", rather than how to think?

I'm afraid you're not even wrong there. Unless your job involves the letters DO178B, MISRA, SIL or ISO-13485, the odds are very high that you don't know enough to have an informed opinion on the subject.

Software engineering is a degree-level subject on the same level as mechanical engineering. Like mechanical engineering, you can become a chartered software engineer through very similar professional organisations. Those letters I mentioned above are the standards for development of software (amongst other engineering branches) within engineering, together with formal procedures for what level of rigour is required for development depending on how badly things can go wrong.

Roughly 40 years after Parnas wrote those words, software engineers have worked to ensure we do have those standards in place. Remember that the reason bridge-building has these rules is directly because the Tay Bridge Disaster killed dozens of people, in the early days of civil engineering. With some famous disasters in early software control (Ariane, for example), all this was nailed down.

What you've spectacularly missed is that this isn't a failure of software, any more than Challenger was a failure of mechanical engineering. Both are failures of *management* ensuring proper engineering practises. Every failure of the 737-MAX should never have happened, because a halfway competent safety assessment would have shown that every aspect of that feature was broken. No training, no redundant inputs, no proper testing - this goes *WAY* beyond software.

Yes, I'm bloody livid about 737-MAX. I did this for a living for a number of years, on "stuff fails, people die" projects. I know what should be happening with this kind of work, and I know standards have been in place for 20-30 years to ensure these things don't happen, as far as is humanly possible. That kind of thing can only happen when you ignore those standards. How I feel about the engineers involved in this is pretty much how a teacher would feel about a fellow teacher who murdered their pupils. It's a fundamental betrayal of what the profession stands for.

Does this mean your Flappy Birds app is written to the same standards? Of course not - but also your garden shed probably isn't put together to the same standards as a Galileo satellite. I doubt you'd compare the assembly of your garden shed with the assembly of a satellite. So don't be daft and compare PC and phone apps with safety-related engineering, please.

Whirlybird-driving infosec boss fined after ranty Blackpool Airport air traffic control antics


Re: Arrogant dickhead

If the cashier was checking the person at the front of the line didn't crash onto houses in a fiery plume of aviation fuel, I'd be cool with that, thanks.


Re: What kind of climate vandal..

Physically it really is. I grew up in Ansdell, backing onto the Moss. The old Moss Road from the back of Ansdell to the M55, which I believe is now closed, goes along the perimeter of the airport. The airport radar station lived down there, and was usually accessed by staff from the Moss Road rather than through the airport. When I was a kid, that put about a mile between the edge of Lytham (Albany Road) and the airport, but of course there's a new housing development there now so the distance is down to more like half a mile.

The *entrance* to the airport of course is definitely in Blackpool though.

You're drinking morning coffee in 2019. These eggheads are in 2119 landing drones on their arms like robo-falconers


Re: Bah!

That's not a problem, that's a well thought-out solution. Big scary monsters, being flung into buildings and stuff like that are all likely to lead to, well, "unintended release". So you need a spare pair. But where to keep them? The average hero's costume doesn't have pockets, and they can't put the second pair on over the first pair otherwise they'll be a mess too. So the hero puts his spare pair on over the top of his suit (which is latex and hence waterproof). And as a bonus, if the suit rips at the back when he bends over, then he's got something covering it already. Job done.

Bose customers beg for firmware ceasefire after headphones fall victim to another crap update


In the gigging world, it's "Bring Other Sound Equipment", just by the way. (Because gear for larger gigs is hired.)

We're going deeper Underground: Vulture clicks claws over London's hidden tracks


Re: Mail Rail

And operated by zombies, *ahem* "Residual Human Resources". (To readers who haven't discovered Charles Stross yet - get reading.)

Fancy yourself as a bit of a Ramblin' Man or Woman? Maybe brush up on your cartography


Re: Any Idiot...

Exactly. I can only guess that Doctor Syntax has never been hillwalking. Or at least I hope he's never been hillwalking, because clearly it's only good luck that has stopped him being another statistic for Mountain Rescue.

We have a favourite walk in the Peaks where we start at Hayfield, head up onto the north-west corner of Kinder Scout, drop off Kinder Scout at the south-west corner, and back down in plenty of time for a nice meal and a pint. Normally it's a beautiful walk. Except last year on August Bank Holiday, it was hailing sideways. I've been in the Peaks in some pretty unpleasant weather, including white-outs, but I've rarely seen it that bad in winter and never in summer. I made the call to turn back when it got too exposed. As we walked back, we warned people we passed that it was bad, and several of them overtook us on the way back having made the same call. (We were up there with my 8-year-old son, so not going as fast.) I strongly suspect that they felt more able to make the same decision after someone else had already done it. And we persuaded three groups who were ludicrously ill-equipped for the weather to turn round (two couples with no waterproofs, and a pair of guys wearing bin-bags as impromptu waterproofs, all in trainers).

All those people came down safely. One slip in trainers on wet grass though, and exposure would have set in so quickly that they would have been in real trouble.

We had done the same walk in June. It was so hot that people were sat having sandwiches on the dried-up bed of the Kinder Downfall waterfall, and the biggest risk was sunburn. Anyone who approaches the hills thinking that this is always the case though is a very real danger to themselves and those around them.

Blood money is fine with us, says GitLab: Vetting non-evil customers is 'time consuming, potentially distracting'


Re: "This is a very confused post"

"ICE's human rights abuses"

No-one's saying they shouldn't exist, nor that the laws shouldn't exist (except perhaps with changes). What's at issue is whether ICE is itself breaking the law in enforcing other laws. No-one doubts the need for police either - but it doesn't mean they were entitled to kick hell out of Rodney King.

"That's something no other country I can think of gives you."

Every country in the world has some process for claiming asylum, and all Western democracies I'm aware of have a process of appeal which involves the courts. In Europe we have the European Court of Human Rights which can rule against a country trying to expel an asylum applicant, and has done repeatedly.

First Python feature release under new governance model is here, complete with walrus operator (:=)


That's kind of missing the point of the coding standard. It doesn't matter whether the code is going into Flappy Birds or a nuclear power station. The point is that applying the coding standard gives you code which is less likely to be wrong in the first place, and thereafter can be easily reviewed and understood by most people at a glance.

Many languages have known holes which users will frequently fall into. A coding standard is about covering over those holes. Regardless of whether the bottom of the hole just contains dogshit or a claymore mine, not putting your foot in the hole in the first place is still a good thing.

So when the architect of Python *intentionally* creates a new hole, which we have been fully aware of for the last 30 years or more (the original Lint warned about this) and furthermore was intentionally absent from the language in the first place, and he says it's for the alleged benefit of novice coders who are unable to formulate an if-else statement, I can only be sceptical about his competence not just as an architect but also as a software engineer.

It's not uncommon that people get promoted out of day-to-day technical work, and that's fine. But then accepting that you're no longer as technically adept as you used to be is essential. I'm glad he's stepped down; it's just a shame he's tracked dogshit through the office before he left.


It is explicitly banned as an anti-pattern by MISRA, who are one of the leading organisations devoted to setting software development standards. The reason is twofold: combining assignment and test in one line makes it harder to follow (as assessed by MISRA, who set the coding standard based on code being easily reviewable and maintainable by other people); and it also makes it impossible to tell whether the assignment was *genuinely* supposed to be there or whether the coder simply made a typo.

So not just IMHO, but also in the less-humble opinion of all people involved in setting a leading safety-related software development standard. Incidentally, I've also met the same rule in in-house C coding standards for automotive and aerospace software, again set by the senior engineers of those organisations.

I'd be genuinely interested to find people who can advocate for it with any argument other than "it's less lines of code", an argument which we all know (or should know) is fallacious.


Except it doesn't. For me, the "improved" version is much harder to follow at a quick scan. One of the key features for Python is that it *didn't* have bizarrely arcane language grammar, so it was very suitable as a training language. And now they've added some. Yay. Not. If that's the best example they can find, I'd say that my most charitable assessment would be "no proven benefit, some proven negative".

If it was already in the language (like C/C++) then fine, leave it be. When it isn't already in the language, it's a ton of extra work for no reason other than one person (GvR) thinks it'd be neat. And that's certainly a compelling reason for GvR to step down, if he's got bored with the Python language in the form which made it successful and decided to drop in changes which break its reason for being successful in the first place.


Why TF would anyone want to *add* this? It's a well-recognised anti-pattern in C and C++, to the extent that coding standards such as MISRA explicitly ban its use. At least the "walrus operator" is relatively harder to use accidentally, which is its main reason for being excluded from C/C++ coding standards; but in practise it really doesn't bring you anything except less-clear code.

Imagine finding this bad boy in your shower: Brit startup pulls the sheets off Moon spider mech


Yay, someone else who remembers that film. I was going to post exactly the same thing, so kudos for getting in first. :)

Let's talk about April Fools' Day jokes. Are they ever really harmless?


Re: That code..

Actually it has at least 256 states in C. Some platforms/compilers store a boolean in a single byte, whereas others use an int. If something else happens to stomp your memory, or if the stored data you're loading is corrupt in interesting ways, then your code may run into this.

This becomes interesting if a coder naively checks "if (flag == TRUE)" and "if (flag == FALSE)", because a corrupted flag won't satisfy either condition. I have actually seen this happen, and the result for code which dropped through without following either path was not pretty. Thereafter, our coding standard was to *always" use "if (flag)" and "if (!flag)", on the grounds that even if data got corrupted, the code would still do something sensible and internally-valid.

Amusingly, Ford Motor Company had the same kind of experience. With the inevitable design-by-committee idiocy of a large company where the people setting the coding standards don't actually have to write code, they mandated that if you wanted to check for a flag being true, the code had to say "if (flag != FALSE)". *facepalm*



Biting the hand that feeds IT © 1998–2021