The Register Home Page

* Posts by that one in the corner

5493 publicly visible posts • joined 9 Nov 2021

GCC 15 is close: COBOL and Itanium are in, but ALGOL is out

that one in the corner Silver badge

> the ghastly two-level syntax used for description was impenetrable to anyone trying to learn the language,

I found myself reading the Wikipedia page on W-grammars earlier today and I remembered why my lecturer thought I'd be intrigued by it; little things like

> The consistent substitution used in the first step is the same as substitution in predicate logic, and actually supports logic programming; it corresponds to unification in Prolog

Yay! Your grammar representation is insanely powerful, could itself be used to write complete programs (but not in a form that most programmers were used to) and, as a formalism for defining a language, having your grammar being formally undecidable is - not really appreciated. Yes, you want something more powerful than Backus Naur, but it is posible to go too far...

The only ALGOL variant I've actually coded in (so far - the compilers mentioned in TFA are in the notebook, one day, Real Soon Now) was SIMULA-67, which was great fun. Shame I never got to use in the outside world, but it was a good introduction to OOP.

that one in the corner Silver badge
Gimp

Re: OMG - COBOL

I, for one, was overjoyed to get hold of the Forth-83 ROM for my BBC Micro. So much easier than loading the cassette Forth into the Atom and '83 had a round-robin task scheduler, great fun. A lot easier to write library code in than BASIC, even BBC BASIC.

But then again, I also enjoyed using the microProlog ROM so was clearly having a masochistic streak at the time.

that one in the corner Silver badge

> Algol-68 is the only language that I've been formally taught.

Ah ha, we have an expert among us! Come in, come in, welcome to the party.

Um, do you think you could take a look at this? (lifts fanfold to show a nasty little rash of syntax errors) I looked it up on the web and I may have twisted a W-grammar.

CISA pen-tester says 100-strong red team binned after DOGE canceled contract

that one in the corner Silver badge

Re: Needed?

Curses. He is right! I copy'n'pasted the wrong commenter name when I quoted and then responded to the two lines, starting with "education, science, health, veterans, environment".

And in a fit of delirium (or possibly just a minor distraction, flicking between web pages) pressed CTRL-V in each of the placeholders left in the text, all without spotting the error.

Oh noes. A momentary slip of the mouse and I've totally destroyed my own arguments against any responses to the "education, science, health, veterans, environment" line!

Never mind that it is possible to read the entire comment, as it was written, with just a blank/placeholder instead of the poor Trygve's name (so sorry, man, didn't mean to misattribute to you) and take it apart on that basis - i.e. the meaning of the words.

> Not only did you respond about the wrong commenter

NOPE! I responded to YOU! I admit that I made a mistake in attributing a quote (again, sorry Trygve mate).

> This response is long enough without responding to each point

In other words, your only defence is to point out a misattribution, and feel that you can then use that to disparage the entire conversation, and that conveniently lets you of the hook from actually having to, you know, ENGAGE in any of the rebuttal.

PS

You know, it is allowed to point out a misattribution in a straightforward fashion, receive a simple calm reply and then carry on discussing the actual subject.

PPS

I really am sorry, Trygve, didn't mean to drag you into this.

that one in the corner Silver badge

Re: Cancelling contracts?

Oops.

> Some of them are even contracts, they are "blanket purchase agreements"

...NOT even contracts...

Sigh.

that one in the corner Silver badge

Re: Cancelling contracts?

> I suspect a lot of these savings are not actually savings

Some of them are even contracts, they are "blanket purchase agreements" that are intended to fix a cost for future purchases and make it easier (read: more efficient, cheaper) for departments to buy those materials and services: Dozens of DOGE ‘receipts’ saved no money and killed contracts meant to boost efficiency.

So killing those is guaranteed to cost more *and* you mustn't forget to ask how much it costs to have the DOGgiEs go in and widdle on the carpets like this.

> I suspect a lot of these savings are not actually savings

Not forgetting that some of the "savings" are entirely fictional and even DOGE "admitted"[1] that: DOGE Quietly Deletes the 5 Biggest Spending Cuts It Celebrated Last Week[2]

> I suspect a lot of these savings are not actually savings

and on and on...

[1] well, removed the entries and entirely failed to admit to having made a mistake. Isn't it great, being able to announce all the "winning" on platforms you can control, so the embarassments can just be - taken away in the middle of the night.

[2] dated 25/02/2025, just to say what "last week" refers to

that one in the corner Silver badge

Re: Stolen Elections

That's fine. There is precedence for someone from Scotland becoming King elsewhere and re-starting his count from 1.

that one in the corner Silver badge

Re: New Orleans

> assuming their being "genius from MIT" made them the best fit for that job?

"SpeedBird 17 is in trouble, can you route to an alternative landing strip?"

Pick the appropriate response:

* "Is this SpeedBird spherical and in a vacuum?"

* "Hang on, I'm recalibrating the radar, I think I can use it for Magnetar detection"

* "Can you sign my funding request?"

* "Um, my doctorate was in Archaeological Materials; are there any unusual fired-clay pots involved?"

that one in the corner Silver badge

Re: Needed?

>> And, yet, those golfing trips...

> I know you think you are making a point there.

Well, one point being made is that you really are staggeringly incapable of looking things up on the Web:

Trump’s Florida golf weekends are costing taxpayers $18m, report says – as he hits the links again

The other point, of course, is that you see nothing at all wrong in Trump stealing millions of dollars from the tax payers.

that one in the corner Silver badge

Re: Needed?

>>>Are they? They are making cuts but the government is still there.

>> Except for education, science, health, veterans, environment

> Kids aint going to school? No science is being done? The hospitals have closed and doctors have vanished? There are no veterans left!? THE ENVIRONMENT HAS VANISHED?!?!?!?

Hmm, back a couple of responses and we see:

>>>> @that one in the corner ... you seem to struggle with simply reading the post

And yet, Trygve Henriksen clearly points out that the government departments dealing with "education, science, health, veterans, environment" are being gutted and you respond as though Trygve Henriksen said that those portions of the real-world have somehow disappeared! A quite staggeringly bad misreading.

> Kids aint going to school?

I certainly hope they still are (although it would not surprise me in the least to find that some schools been forced to end (some) classes) but the quality of the education (some of them receive, or will be able to receive in the near future) has gone down, due to the Trump's actions.

> No science is being done?

Less science is being done (or will be done, once the funds currently banked by the labs runs dry, as the replenishment has been halted)

> The hospitals have closed and doctors have vanished?

You seem to be unaware of what the DoH is concerned with, particularly in the heavily privatised US health economy, where the (vast majority) of hospitals and doctors are corporate. I know, you are used to the NHS, but the US system is different. You may wish to learn what governmental - well, most correctly, federal, instutions such as "the CDC" are and how they have been affected by Musk. And what the long-term affects of that are going to be, as the information the CDC would usually handle is no longer provided to the privatised sector.

> There are no veterans left!?

Of course there are veterans left, but the services they rely on are being damaged. Meaning that there may well be fewer veterans left in the not too distant future, compared to what there ought to be (see also health - and environment).

> THE ENVIRONMENT HAS VANISHED?!?!?!?

Whilst one might heartily wish that some small portions of The Environment would suddenly vanish and leave certain parties gasping in a vacuum, the physical environment is indeed still present (congratulations on noticing that, Gold Star), but important parts of the US government that investigate it have been shuttered, or are on their last legs (refer back to the points about "science being done").

One simple line from Trygve Henriksen, seven words, none of them overly sesquipedalian and yet you struggled. Sigh. And the chaos of exclamation and question marks really does help to highlight how egregiously you misunderstood.

We'll skip over, for now (unless you decide to bring it up) the little matter of the your response to Trygve Henriksen's second sentence, as we are all so aware of how much you wish you were an American stereotype and, with that aim, are practising (oh, sorry "practicing") the inability to comprehend sarcasm or irony.

that one in the corner Silver badge

Re: @that one in the corner - Needed?

It's all okay, it's fine if he just considers my writing to be Confessions of a Crap Artist, that'd be an encouragement, if anything.

that one in the corner Silver badge

Re: @that one in the corner - Needed?

> I am fairly sure he has difficulty reading based on previous interactions.

Oh come on, codejunky, you can do better than that!

There is a whole wealth of insults, both witty and vulgar, that you could fling to better affect; oh, if only you knew how to find them.

that one in the corner Silver badge

Re: @that one in the corner - Needed?

> I don't think you paid attention to the last sentence, the one about the debt.

Oh, I did.

It is simply that the effort being put into DOGE's games aren't doing anything substantial about the debt, going by what they find to boast about on doge.com, and the cost to repair the damage they are causing is going to drive the US into *real* debt, both nationally and internationally, in every currency.

that one in the corner Silver badge

Re: Needed?

> Finding out what is and isnt worth while government spending isnt easy

So *that* is the explanation for why they are getting it so very, very wrong!

Thanks, codejunky, you've solved it!

that one in the corner Silver badge

Any more juicy tech details available?

I've been "enjoying" the discussions around ISO 8601 and how the effect it has when a zero is used to indicate "not (yet) known" can lead to Social Security records "showing" people to be approximately 150 years old - if you happen to be too computer illiterate to be trusted near a Tomy box.

The big picture of cyber security risks is important (well, duh) and the results of all these incompetencies are (going to be) devastating. It is also good, if we can, to dig into the extra tech details of where and how some of the other - problematic results - are being generated.

Is NASA's science budget heading for a black hole?

that one in the corner Silver badge

Re: Wow

>> That is a long, long way from the conspiratorial claim that the lab "made Covid-19".

> That has changed since Biden became president

The claim about the source of the virus is one of science - Biden or any other politician is irrelevant. Unless you are just using presidential terms as your measure of time, when others would usually years in the Common Era measure (or even BC/AD, as BCE/CE still rings strange to older ears).

> Now its almost certainty that is came from the lab

Citation?

(Also, note, that "came out of a lab" is very different to "made in that lab" - and that is different to "made deliberately - i.e. the intent was to make that specific virus" and different from "made with the intent to release", just in case anyone reading is wondering just how deep the rabbit hole goes).

> only thing keeping from absolute certainty is China blocking outsiders and destroying evidence

Citation? Ok, I believe that one has a stronger probability of accuracy, but - any such personal belief is irrelevant

> Yet the virus itself has a feature not seen in nature

Citation?

> but the very feature introduced and used for the gain of function research

Citation?

> No cross over animal has been found

Do you mean *THE* specific animal (which would be an amazingly lucky find) or, at the other end of the spectrum, the discussion about which species that particular animal was

> THE virus that travelled a huge distance (to be worked on in the lab) somehow...

The wet market in Wuhan in about 12km from the lab, according to Google Earth. Hardly a "huge distance". The "somehow" is going to be a combination of walking and driving, split between the unfortunate(s) who picked it up at the market and the various medics and then researchers who collected and delivered samples. However, even if we were to suppose that it was carried by one bat from the market to the lab - well, bats can fly much further than that in one night.

> ... is in a bat on the wet market so far away from origin

The origin point was the wet market. As we don't have "THE bat" in hand it is impossible to say how far its roost was from the market, but it could well have been as distant as "under the roof immediately above the market".

> the probability that your belief is correct diminishes with every revelation

Perhaps the confusion is that I'm holding out for evidence and citations of such, rather than Belief and Revelations?

> gain of function research that Obama banned the doing or funding of

The White House today stepped into an ongoing debate about controversial virus experiments with a startling announcement: It is halting all federal funding for so-called gain-of-function (GOF) studies that alter a pathogen to make it more transmissible or deadly so that experts can work out a U.S. government-wide policy for weighing the risks. October, 2014 - a pause, a moratium, NOT a ban. Today, the National Institutes of Health announced that it is lifting a funding pause dating back to October 2014 on gain-of-function (GOF) experiments involving influenza, SARS, and MERS viruses. December 2017. As it says. A moratorium, in the US only, of a bit over 3 years, after which work continued as normal.

> So the funding was not only against the rules set out by Obama

Citation? For funds that were approved of within the moratorium period and *specifically* handed over for GoF research?

> So the funding was ... also a stupid idea

What? Agree that GoF research is a stupid idea? Absolutely not (from the second citation, above): GOF research is important in helping us identify, understand, and develop strategies and effective countermeasures against rapidly evolving pathogens that pose a threat to public health.

PS

Possibly a cheap shot, but:

> obviously unreliable country (blocked WHO access)

Nowadays, that would mean the USA, no longer a member of WHO.

that one in the corner Silver badge

Re: All part of the plan

Beginning to wonder how many people actually read the references they post as links:

>>>> Didn't Billy Clinton and Obama both promise to cut government waste ...?

>>> Nope

>> You sure?

>> National Partnership for Reinventing Government

Well, it does look like Clinton promised to cut government waste and set up an office to do that; the result was something of a curate's egg:

> Clinton assigned the project to Gore with a six-month deadline to develop the plan.

Far better than the (at best) six minutes that the current "plan" took to dream up.

> In 1993, Congress rejected many NPR proposed departmental cuts, demonstrating that NPR could not achieve its goals without congressional support.

Oopsie. However, all was not lost:

> Procurement reform bills were enacted

In the end though

> NPR is recognized as a success and had a lasting impact

>>> and then do absolutely nothing?

That would appear to be an inaccurate assessment of Clinton's results.

On the other hand:

> During its five years, it catalyzed significant changes in the way the federal government operates, including ... the transfer of institutional knowledge to contractors.

That can never go wrong!

that one in the corner Silver badge

Re: All part of the plan, Bible

> What did the bible write about the Americas?

Can it really be true—the United States in Bible prophecy? Absolutely! When you think about it, it makes sense that the most powerful and influential nation on earth will play a vital role in the final stunning events of the world’s closing history.

Amazing what you can find out there. Shudder.

Of course, once you've learnt how to type into Google[1] the trick is to cross-check against other hits and verify the likelihood that the source is a total pile of pants (e.g., even Liberty University manages not to drop that far down the well so we can just quietly ignore "Amazing facts" now[2]).

> Do these really exist?

The Americas are the fabled place where the unicorns went to live.

[1] other search engines are available, eg DDG. Except Bing; never Bing. Bing does not exist.

[2] bugger; I bet at least two of you have clicked on that URL by now and have sent their Alexa rating skyrocketing!

that one in the corner Silver badge

Re: Wow

> USAID and the DOD funded Ecohealth alliance, they in turn funded gain of function research at the wuhan lab

True. They funded - well, part-funded - research into how viruses work.

That is a long, long way from the conspiratorial claim that the lab "made Covid-19".

You might as well say that, because the CDC researched[1] into the annual variation of influenza strains that they were responsible for creating all the new varieties with which to infect the US population, and then applaud cutting back the CDC and redirecting what is left into lunatic fringe work.

that one in the corner Silver badge

Re: Wow

> (And you can't argue about the money going to the Military Industry Complex either)

Of course the National Parks money is going to the MIC - how else are they going to arm the bears?

that one in the corner Silver badge
Joke

Re: All part of the plan

chromodynamics? That'd be Genesis 37:3 - and the quantum stuff is clearly the explanation for Genesis 37:5 to 7 and 37:9, whilst Genesis 37:29 illustrates tunneling.

that one in the corner Silver badge

Re: All part of the plan

We need NASA because all the muck we've been putting into the air is causing The Bowl Of The Firmament to become soiled - you can see the proof of this by looking at any so-called "Deep Sky" photograph. All those fuzzy things are obviously just muck (from chimneys of factories making the implants that go into vaccines), and smudges caused by all the rockets bouncing off (you can clearly see that rockets go up, then sideways as they hit, and finally down to the horizon, where they are dumped into the sea).

NASA must be repurposed to create a giant mop-on-an-extensible-pole that can be used to squeegee the Firmament and restore it to its pristine Glory.

After that, any leftover NASA rovers can be used to probe the Antartic Ice Wall. No, hang one, that would be silly. The rovers would only rust.

that one in the corner Silver badge

Embrace the Challenge

What a f'ing horrible way to end that message.

Does management anywhere seriously believe that sort of claptrap actually helps the morale of any of their staff?

DOGE helps Veterans Affairs end IT contract run by service-disabled entrepreneurs

that one in the corner Silver badge

Re: Yeah what a good plan

> Let's cut a bunch of contracts

Don't forget that the contracts to SDVOSBs are directly helping disabled veterans - you know, the thing that is the whole purpose of the VA's existence - by supporting their businesses, whilst also getting back useful services for that money, so it isn't "just" going into handouts. What a sane person might call a "win-win".

iRobot may be iDead in iYear

that one in the corner Silver badge

Re: Question

> Do these vacuum cleaners "need" to talk to servers back at HQ?

Of course. They have been mapping your home and belongings "for your convenience".

Why else do you think Amazon wanted to buy them?

"People whose socks stick to the floor next to the wardrobe often buy ..."

Scotland now home to Europe's biggest battery as windy storage site fires up

that one in the corner Silver badge

Re: Some unanswered questions

Are they still going? Weren't there concerns over salary? "Paycheck", "Paycheck"!

Free95 claims to be a GPL 3 Windows clone, but it's giving vaporware vibes

that one in the corner Silver badge

Re: "just freewheeling with an LLM bot"

Hey, has that LLM been scraping my code?

Apple has locked me in the same monopolistic cage Microsoft's built for Windows 10 users

that one in the corner Silver badge

Re: Horses for courses

Calling you "the consumer" is a sleight of hand, hiding the fact that they are busily trying to consume you: your funds, your mind, your heart.

We must be ever vigilant, never letting down our - oooh, a new episode on Netflix!

Choose your own Patch Tuesday adventure: Start with six zero-day fixes, or six critical flaws

that one in the corner Silver badge

We control the horizontal

I swear that I tell Windows not to update until I say so. So last night a Windows box is left doing an overnight build, for the first time in an age, and - yup, this morning it is sitting there, job incomplete, console windows closed.

I know, my fault, you must always check the position of the stars (and other calendars) to see if this will be an inauspicious night to leave Windows unattended.

Earth's atmosphere is shrinking and thinning, which is bad news for Starlink and other LEO Sats

that one in the corner Silver badge

Re: Starlink = Starcrash!

The lunch-box

that one in the corner Silver badge

Re: Starlink = Starcrash!

Fireball XL-5

Talking Pictures TV, Freeview, Saturdays, 14:25

that one in the corner Silver badge

Re: Middle age bloat

>> Burning these fuels, generates tons of extra CO2, which makes the heat-trapping blanket thicker and thicker, warming the planet.

"Blanket thicker" - this is also what we call an "analogy". "If the atmosphere was a blanket, that blanket is now thicker". There may - or may not - be a literal "thickening", or at least an increase in density[1] but that article is very much an introduction for the non-scientific (well, more for the not-yet-scientific-but-we-want-to-get-you-started).

Just in case anyone wants to try "you can't say on this page the atmosphere is getting warmer but then say here it is getting colder" I'll point you to the conspiracy that mass air movements are obviously not caused by localised pressure changes, that is just the story put about by Big Wind.

[1] 'cos CO2 biggerer than just O2! Duh!

Fresh Wine-flavored version of Mono released

that one in the corner Silver badge

Re: This is another WTF happened story ?

> The problem doesn't seem to be a lack of solutions, but rather the opposite

You aren't kidding:

> Meanwhile, the portable UI community seem to be more interested in Avalonia.

ANOTHER one? I'd not even heard of "Avalonia" before today!

Mutter, mutter, why can't people all get behind one of the existing projects and complete the damn thing, as a portability platform, without spec creep and bloat, and without "oh, this is too old fashioned, so much easier to start again"?

>> the Javascript framework of the day.

Yeah, just like that.

.

that one in the corner Silver badge

Re: Web apps

> Frankly HTML+CSS+JS is a great choice for developing (eg) a forms-based UI, although like any software project it can be done badly.

A few years ago now, building an application which already had a C++ GUI, I found the HTMLayout library very useful for putting together additional sections, especially for built-in documentation and interactive help: a single source for those pages could be auto-massaged into web pages, printable PDFs and appear in the program, linked to what the user was actually doing at the moment. Before the days of (robust) embeddable JavaScript interpreters, btw. As that link shows, HTMLayout itself is not an active project and the author has a replacement, but it is curiously refreshing to still be able to see what *was* around, it is possible for people in the software industry not to suffer from amnesia for anything older than a few months!

At the time, this was the only HTML+CSS renderer that I could find (aside from a few rather twee projects) which would bind together with the main C++ code and run as a single process. Since then, I have done a few projects with a local-access-only web server built in, so the UI can be rendered using a standard browser, but I'm still interested in the single process option.

Although using the server+browser model does have big advantages, especially with respect to portability: it is a lot easier to write a UI-less server and build it on multiple platforms, then using whichever browser happens to be around.

MINJA sneak attack poisons AI models for other chatbot users

that one in the corner Silver badge

Mixing everyone's inputs into one bucket!

How could that ever be considered safe?

Even just a simple up/down vote to "get the wisdom of the crowds" is open to misuse[1], let alone ingesting everyone's prompts and risking spitting back any part of them to another user.

It is almost as if the people making these systems have never realised why they are told to use their own logins and keep them private when using a shared website.

[1] although my attempts to train ChatGPT to answer everybody only in iambic pentameter are moving very slowly.

Strap in, get ready for more Rust drivers in Linux kernel

that one in the corner Silver badge

Re: Such awful interop

> But most people would like it to be more seamless and automatic if possible.

> they can #define things before the header is processed

Isn't that just a cae of copying the correct settings from the C portion of your Makefile/IDE settings across into the settings for your Rust portion? And after that it is just as automatic as you need as it is when building the C. The C/C++ toolchains aren't themselves magic - at best, they may provide a set of pre-defined macros (e.g. MYCOMPILER=1301 to identify the compiler family and version number). What these are can be found in the docs and/or by getting the compiler to dump them.

It is a bit irritating to dig out these definitions but it is a one-off - and only a very minor irritant compared to anything else when trying to get to grips with other differences in the actual languages.

> Anyone who's dealt with C libraries in a cross-platform situation knows how much of a massive pain in the ass this can all be even before you bring Rust into the equation.

I do a lot of cross-platform, and with multiple compilers on the platforms, builds - you just need a reasonably good build setup (I use Makefiles, with a half a dozen little utilities, so one build operation generates objects and executables for all the platforms in one go whilst I have a coffee). If you are at the stage where you are playing with combining Rust and C and you haven't bothered to find a half-decent build setup first[1] then you are just making a rod for your own back.[2]

[1] or, for some people, haven't bothered RTFMing about the IDE they are already using, mutter mutter!

[2] gawd, don't you hate a smug bastard!

that one in the corner Silver badge

Re: Such awful interop

Well, a C header file is just[1] a series of type and function declarations.

Responsibility for allocation and deallocation (aka ownership) only makes sense for instances of a type. As is shown in the Rust docs for Defining and Instantiating Structs: the struct is just a declaration and the allocations are made within the example functions they show, and ownership of the instance passes from variable to variable via the assignment/move operation.

[1] ok, there is no actual, solid, definition of what a "header" file is - some people call any old file that happens to be the target of a #include cpp statement "a header file" even though you can, of course, put absolutely anything you feel like into included files - just so long as the final compilation unit is syntactically ok. For example, something like the SQLite "bundle" C file can be created by #include'ing all the dot-c files one after another into a single compilation unit (which has its pros and cons) *or* you can just compile each dot-c on its own and pull it together in the link phase. So here I'll stick to a well-behaved header, and ignore that Naughty People can put all sorts of crap in there as well, such as putting in a line "static int fred" and causing every compilation unit to suddenly have an instance of "int" called "fred".

that one in the corner Silver badge

Re: Such awful interop

PS

Not that I'm actually suggesting that you *should* put cpp into Rust itself, just trying to point out that the argument presented about the macro language being typeless is a red-herring (and I forgot to mention that C/C++ gives you string typing and yet they are not bothered by the macro processor, because - that is a totally separate phase.

But if you have a utility for converting C headers into Rust, building cpp into that utility is - well, it is a necessity, the only way to actually make macro usage make sense.

that one in the corner Silver badge

Re: Such awful interop

>> Just the #define keyword is already problematic because its untyped and that would put a hole in the Rust type-system.

Huh?

> The argument is that the only way to do this robustly is to bundle an existing C compiler with the Rust compiler

> So C macros aren't the problem, but sort of the first worm that comes out of the can when you try to open it.

No. C macros need not be a problem at all, if you don't want them to be.[1]

And you don't need to bundle a C compiler - you just need to "bundle" a copy of the C pre-processor. The cpp is a *lot* smaller than a full compiler and can easily be provided as a separate utility (in the Good Old Days your cpp was a separate executable to the compiler proper), or even within the Rust compiler itself. Although, of course, one could reasonably assume that if you are trying to feed C headers into Rust, in order to link with C code, you already *have* a full C compiler and can just invoke that cpp[2]

In the not too distant past I had to set my Makefiles to run a standalone cpp over all the C sources before handing them over to a particular compiler because *its* cpp (which was built into the compiler exe) was crap and fell over as soon as an expanded macro went over 255 characters, so running it over C headers before processing them with Rust, or any Rust-related tool, is a perfectly reasonable thing to do.

[1] which isn't to say that there aren't problems to be encountered in C headers, just that macros are a total red-herring.

[2] look for the command line options to cl (or lc); if nothing else it is useful to know how to just run the macro phase if you ever need to debug some of the weirder errors that can creep in to your C/C++ code.

that one in the corner Silver badge

> though you may have to compile a list of the header files you want to feed to it

Which is why we have makefiles.

It doesn't matter that you need one, two or ten utilities to massage a header from one format to another, so long as those transforms are reliable, accurate and can be managed by your build system (which is under source control, like everything else).

Personally, I like having interface structure definitions in yet.another.text.format and using *that* to generate the C include files as well as the files for whatever the C is talking to - and at the same time, C/whatever functions to print the structures in human readable form, pretty diagrams for the documentation (by spitting out inputs for Mermaid or other diagram drawing tools) etc.

That way, *everybody* is equally pissed off at writing "those stupid weird definition files, why can't I just use (native language format)?". To which the reply is "You can, but *you* are then responsible for keeping everything else up to date and the machines *will* email every time one of them needs to be updated (aint Make calls to blat wonderful?)".

Vodafone: Be in the office 8 days a month or lose bonuses

that one in the corner Silver badge

Absolutely.

Although they were unable to actually manage DIS admin tasks[1]: they didn't so much shut it down as never maintain it until it just - stopped.

[1] I ended up with three DIS hostnames and fixed IP, one pair active at a time, because as a major telecomms company (!) they could never figure out how to change the landline 'phone number when I moved! So had to close each account[2] and start up a new one.

[2] And to top it off, when *they* told me that they had to shut down the first account, *they* then came back to say that it could not be shut down because it was a "company account". No. No, it was always a personal account. "What if just cancel my personal credit card so it won't be paid for any more?" "We'll keep it alive and just send out the bailiffs". Did they have a contact name for this company? Yup, my name. So I can cancel? No, it must come on company letterhead! Aaaargh.

$16B health dept managed finances with single Excel spreadsheet. It hasn’t gone well

that one in the corner Silver badge

Re: Maturity

To determine the age, count the rings of spreadsheets.

Look for the Apple ][ on life support in Accounts Receivable running VisiCalc that feeds to multiple Lotus 123 boxes in Shipping and Warehousing which export CSV to one IBM XT (the one with the new HDD card) running Multiplan to format data for Access which exports to a shared folder as a data source to an IIS webpage that is scraped into Excel sheets for middle management who retype the numbers into emails for the CFO's PA to put into a PowerPoint.

The monthly finance meeting has a standard itinerary item for the Accounts Payable guy to read from his Dataday pocket ringbinder. The final answer to "what is the age of this system" is written on the reverse of the 1980s London Underground map at the back of this weathered leatherbound volume.

CTO's summary: The Requirements Spec phase of the ERP transfer is entering its third year and we remain optimistic.

eBPF. It doesn't stand for anything. But it might mean bank

that one in the corner Silver badge

Re: "expensive array copies that happen unintentionally with the 'auto' keyword"

The issue is that if you write out the entire type you start to think "hang on, this declaration has four nested containers, how big is it, shouldn't I be taking care here?".

If you just fling "auto" everywhere you don't think at all about whether you've just copied an int, a float - or a complete DOM of a gigabyte XML file.

"auto" is neat for making some templates work, but just flinging it around everywhere because you can't be fagged to find out what data structures you are playing with - worse "it just saved me typing" - is a recipe for wasted resources and potential costly disaster.

that one in the corner Silver badge

Re: Cost Savings

> who missed the optimization potential at the beginning

Everyone. And rightly so.

The order is: make it work; make it work correctly; make it work fast.

If you *think* you see an opportunity for optimisation in the first two steps, just make a note of it and carry on. As soon as it is working 'correctly enough" to be functional, run it through the profiler. Then, and only then, locate the hot spots - both time and memory consumption, often intertwined- and improve those. Re-profile to find the next hot spots.

Otherwise, without data from the profiling, you will inevitably waste time on premature optimisation: the "slow code" you think you spotted may only run once a month - or it may even be excised completely by an algorithm fix whilst "making it work correctly"!

> (and who suggested/justified/ordered the profiling?)

You should always have in your plan the expectation of profiling (although I am horrified how often I've worked with coders who are "expert" with their IDEs and do not even know if they *have* a profiler or are worried when the answer is "no". It was shocking whem Microsoft stopped providing a profiler and nobody seemed to care!). Only drop - or postpone - that once you can see the program working and somebody properly signs off as "it is demonstrated to be running well enough".

So the question should be: "Who *stopped* the profiling? What was their justification and was it valid at the time?"

Lots of times, it is really easy to see that profiling and optimisation are not necessary - because (numerically) lots of time you are involved in only a short program, a one-off tool, probably just flung together, run and forgotten about. Great. But even then, good practice is to write down "I did not do this stage, it wasn't necessary/useful, signed Burt".

> how much pressure were they under to "get it done, not get it done well"?

That is what causes the profiling to be dropped - and that fact signed off by the PM and manager of course (ha, ha).

BUT even after finding this saving of x million pounds and k servers no longer needed, saying "Why was this allowed to happen? Why didn't we find this out earlier? Ah ha, it was Fred's fault, he told them not to profile; sack him now" that is very possibly an over-reaction:

How much growth has there been in the use of the code since it was written? Is it now processing (k * 10) or more transactions compared to when it went into production? If do, and (being very, very crude) you can now shutdown k whole servers, at the beginning you could have only saved 1/10th of a server. Less easy to shut that down!

In other words, as time goes by, IF you experience growth, the balance of costs to fix versus savings made will alter.

As to "Can the same person pull off the same trick again? Was he the only one who could?" - highly likely those are pointless questions, because if your system has reached the point where one (lowly) person could ever be in the position to randomly say "I wonder what happens if I profile this?" then what you have found is a management and planning failure: you've grown but haven't bothered to think about what growth does to a system. You haven't bothered to go back and check how many profile runs were just not done etc. If you pay a bonus to the engineer - and you should - you should take it out of the manager' bonuses (yeah, I know, that'll never happen).

Reminder: the above is different from the situation that possibly more of us have been in, where everyone knows full well the program must get a speed-up, we even have all the customer complaints that it isn't keeping up. But nobody can figure out how to improve it, until Jim has his brilliant moment.

Crypto takes a dip as Trump signs Bitcoin Reserve order

that one in the corner Silver badge

Re: The most insane part is

> If the US dollar has been put on a bro chain, and gold has been replaced with the pyramid scheme that is crypto gambling

And if the crypto used are the common ones, like Bitcoin, these are relying on there being enough random systems scattered across the Internet to maintain the chain, by mining. Which leaves them open to 51% attacks. Other mechanisms than Bitcoin's "Proof of Work" are tried in other crypto, but they all rely on "no one player can ever get enough - whatever - to take control". Where "whatever" can be how much drive storage you've collected or how much of the coin you hold.

So, the second that you (functionally) tie $US to bitcoin is the second that China switches all its GPUs and NPUs and CPUs, company laptops and after-school Maths Clubs to churning out Bitcoin hashes[1]. The US then gets to watch a brand-new "trustworthy" copy of the ledger floodfill across the Internet. What do you think that new ledger will say?

[1] or all those SSDs on Ali Express are "given a soak test" for whichever coin(s) use that stoopid consensus mechanism and so on.

PS

Ah ha, we'll just convert everything into one of those that listens to whoever has the biggest holding of that coin. And now the US government explicitly controls that coin, all the libertarians drop it like a hot potato. Also, it becomes impossible for the feds to ever divest themselves of the coin, because then they'll lose control of it. And something that you can't divest is no longer an asset, so poof, there goes the ability to borrow against the USG. Oopsie. Would you like us to pack the USA for you? Did you bring your own bags?

Stuff a Pi-hole in your router because your browser is about to betray you

that one in the corner Silver badge

Please go back and re-read the article.

The line you quote is clearly in the section, at the bottom, labelled "Alternatives" and, as the first paragraph says:

> For instance, it is possible to run an OS-level ad blocker

and then name-checks Privoxy as an example of a filtering proxy, which can be installed into your client PC's OS instead of expecting to be installed on a separate server, such as a Raspberry Pi or an OpenWRT router or (see above for other suggestions).

As you point out, you have determined that you can *also* run Privoxy under OpenWRT - in which case, you are using it in the same way as Pi Hole is being recommended - i.e. you are *NOT* running it as "an OS-level ad blocker" but as a LAN-wide blocker. Good. Neat. You have demonstrated that Privoxy can be run in BOTH modes. Splendid.

However, if you *had* installed Privoxy in "an OS-level ad blocker" mode - or run some other potential "OS level ad-blocker", especially one[11 which had decided not to allow connections from any non-local process, then you'd be in the situation that the article describes: needing a copy per computer.

[1] if there are any - I'd bet that some paid-for proxy works like this, if only to prevent its use LAN-wide without buying more copies

that one in the corner Silver badge

Can I sell you a Pi v1 I have spare?

Heartily endorse running on a separate Pi propped on an old christmas peanut selection tin[1] next to the router.

As much as I have fun at home, playing around with VMs[2] and running three separate LANs in the one tiny household[3], it is so much more relaxing to have a simple little appliance sitting well out of reach of that madness: no need to worry that a little oopsie will bring down the wifely wrath.

[1] ok, tin is optional, but useful for holding backup SD card, just in case; and the nuts were tasty.

[2] keep meaning to try Docker, but NAS is FreeBSD and just never got around to it; VMs sem to do the job. One day, Real Soon Now...

[3] And, by sheer luck and random cheap purchases, I now have a small box with 5 NICs available - mwaaa ha ha!

Microsoft tells abandoned Publisher fans to just use Word and hope for the best

that one in the corner Silver badge

Re: what spreadsheet functions you think ought to be *inside* a DP program?

>> What am I missing?

> Everything

> Description of a truly shit and out of control workflow - and workplace

Sorry for your situation, but no amount of bloat in the applications is going to fix that. Without a modicum of discipline, they will break anything.

Athena Moon lander officially FOADs – falls over and dies – in crater

that one in the corner Silver badge

Unseen by the landers dead camera eyes

The three rovers have managed to crawl from the wreckage. But alone, silent, without the Nokia base station, unable to talk to each other, let alone ask for directions from Earth - which remains unaware of their survival. They are left to drive (and jump) into the wilderness. The two wheeled rovers stay in sight of each other, for the company, until the NASA rover, in an insane fit of jealousy that the MIT machine has its colony of AstroAnts as its pets and friends, rams it and both tumble into a rill. Unable to climb out, the larger machines succumb. Leaving only the AstroAnts behind, to cannibalise the rovers' remains for spare parts and settle down into a small civilisation that worships the dream of, one Lunar Day, returning too the Holy Landing Site with its fabled Golden Foil Wrapped riches, the 4G El Doradio.

Of the rocket propelled drone's fate, no-one is certain, although the AstroAnts tell each other scary stories of a shape that appears for a moment above the lip of the rill as it travels restlessly, leaping, leaping, leaping.

'Cybertruck ownership comes with ... interesting fan mail'

that one in the corner Silver badge

Re: Unless a finger smear or a slice of cheese is enough to damage the Cybertruck

Looks like I opened up a tonneau worms!