comp.lang.ada
 help / color / mirror / Atom feed
* Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
@ 2020-05-11 18:49 Rick Newbie
  2020-05-11 20:27 ` Niklas Holsti
                   ` (7 more replies)
  0 siblings, 8 replies; 71+ messages in thread
From: Rick Newbie @ 2020-05-11 18:49 UTC (permalink / raw)


This link is probably not reported in the MSM very much but I think it's 
relevant. Not that I believe that Ada would have magically made 
everything better, but to base the decision to destroy the Western 
economies on code written in the C language that isn't even commented is 
somewhat out of dystopian fantasy. There's a reason C is not used in 
safety critical applications.
I want to share this article here before it gets buried in the memory hole


https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
@ 2020-05-11 20:27 ` Niklas Holsti
  2020-05-11 21:12   ` Rick Newbie
                     ` (2 more replies)
  2020-05-13  0:25 ` Olivier Henley
                   ` (6 subsequent siblings)
  7 siblings, 3 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-11 20:27 UTC (permalink / raw)


On 2020-05-11 21:49, Rick Newbie wrote:
> This link is probably not reported in the MSM very much but I think it's 
> relevant. Not that I believe that Ada would have magically made 
> everything better,

Who knows... but certainly not "magically", rather by design and technology.

> but to base the decision to destroy the Western economies on code
> written in the C language that isn't even commented is somewhat out
> of dystopian fantasy.
The absence of comments does not make the code automatically incorrect.

I've seen people who are smart and good scientists, but amateur 
programmers, make quite complex and demanding programs which work, 
although the programs are ugly and clumsy by the standards of 
professional programming. These programs are often very scantily commented.

Professional programming gives great weight to code qualities that 
assist and support correctness and maintainability. But these qualities 
are not sine qua non for correctness. Amateur programmers do not 
understand that up-front investment in such qualities pays off in the 
longer run, but scientists can be very careful and meticulous in their 
coding -- they are used to taking such care in their other scientific work.

> There's a reason C is not used in safety critical applications.
Oh, it is used. Lots. What's more, some nuclear installations use Forth, 
I kid you not. With "sufficient" process controls and validations, it 
can work.

> I want to share this article here before it gets buried in the memory hole
> 
> 
> https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/

I've seen a somewhat longer and better review of this code, but I didn't 
save the link (sorry). The following points were criticized IIRC:

- The original code was a single file, some 15 000 lines. This is not a 
problem in itself -- a good IDE can easily handle and navigate such a 
file -- but the possible poor modularization of the code, and the 
possible prevalence of global variables, could be. Nothing was said in 
the review about modularization or global variables. Note that even a 
single large source-code file can be well modularized.

- The code contains very few comments and lots of complex expressions 
with non-obvious meaning. As I said above, this does not mean it is 
incorrect, only that it is hard to review and maintain (which are real 
problems, sure).

- If the code is executed using multiple cores, the results are not 
deterministic, apparently because the code uses random numbers to drive 
a simulation with many parallel but interacting "actors", distributed 
over the cores, without global synchronization. The reviewer considered 
this to be a grave fault and indicative of poor programming and design. 
It seems to me that even professional programmers would be hard put to 
ensure deterministic results in multi-core execution of such a 
simulation. Moreover, the code is deterministic if executed on a single 
core (after some errors were corrected which seemed not to be unusually 
alarming).

- The authors of the code defended the non-determinism by saying that 
the simulation is statistical, anyway, and that all simulations should 
be repeated several times to get an ensemble of possible behaviour. The 
reviewer did not accept this defense, but insisted on determinism. 
However, I know of at least one example where non-determinism is 
accepted and used in this way: simulations of many-body gravitational 
systems, such as planetary systems, where it is very common to compute 
thousands or millions of simulations and then estimate the likelihood of 
particular final outcomes (say, the ejection of one planet from the 
system) from the ensemble of simulations.

Notably, the reviewer did not claim any errors resulting from the use of 
C instead of other languages. Of course, that may have been the ordinary 
myopia of seeing C as the "normal" choice :-)

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 20:27 ` Niklas Holsti
@ 2020-05-11 21:12   ` Rick Newbie
  2020-05-12 20:11     ` Niklas Holsti
  2020-05-11 21:45   ` gautier_niouzes
  2020-05-11 21:55   ` Jeffrey R. Carter
  2 siblings, 1 reply; 71+ messages in thread
From: Rick Newbie @ 2020-05-11 21:12 UTC (permalink / raw)


I think the blog article is more about the general mindset behind this. 
Of course a C program can be correct. So can an assembler program. That 
does not mean that it is very likely to be correct. I think we all agree 
that language features can be a big help in writing correct programs.

But even if the program was correct and produces "correct" results for 
the data put in, that does not mean that the algorithms themselves are 
correct and will produce results that correlate with reality. I don't 
even want to go into the general merit of "prediction software" and the 
many examples of failed predictions from a new ice age, over global 
warming to just climate change or the stock market crashes that 
surprised everybody and that were made worse by auto-sales triggers.

But what if you realize that your software isn't producing "correct" 
results and you want to correct your code and you just don't understand 
it anymore? What do you do then? I have been there. I am maintaining a 
software system in C++ that is 15 years old now with many flaws albeit 
commented, not bugs but quirks. I have to tell the users "sorry, I don't 
dare change anything because I'm afraid I might break more things than I 
can fix" because it is simply unnecessarily complex, and luckily my 
users understand, but I'm being honest here. That's the point. You gotta 
be honest about the flaws of your system and yourself, and I believe 
that's what the author of the blog is mostly criticizing, that 
Mr.Ferguson is narcissistic and insisted on the correctness of his 
models for selfish reasons.

So there are multiple levels to this catastrophe, the language is one 
and the personality of the author is another one. Not the least of 
course the readiness of governments all over the world to accept the 
predictions of a computer model they don't understand (and presumably 
their own "experts" did not understand either) and to destroy the 
economy based on the blind believe that "the computer" knows best 
because it can not fail.

That's the real tragedy here. Sure a well written program with comments 
to make it easy to understand in a peer review would have helped, but I 
doubt even then the outcome would have been much different. I know the 
flaws of software because I write software. Politicians don't write 
software and so they are less well equipped to see the danger from those 
models.

When I read "15000 lines of undocumented C-Code" that was for me the 
icing on the cake. I mean it's software, yea it can work or maybe not, 
but with C-Code we have a greater chance to have unmaintainable problems 
that go unnoticed.

Rick


^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 20:27 ` Niklas Holsti
  2020-05-11 21:12   ` Rick Newbie
@ 2020-05-11 21:45   ` gautier_niouzes
  2020-05-12 15:56     ` Niklas Holsti
  2020-05-11 21:55   ` Jeffrey R. Carter
  2 siblings, 1 reply; 71+ messages in thread
From: gautier_niouzes @ 2020-05-11 21:45 UTC (permalink / raw)


On Monday, May 11, 2020 at 10:27:06 PM UTC+2, Niklas Holsti wrote:

> I've seen a somewhat longer and better review of this code, but I didn't 
> save the link (sorry).

Perhaps this one?
  https://lockdownsceptics.org/code-review-of-fergusons-model/

There are links to the GitHub repository containing a reworked version of the code:
  https://github.com/mrc-ide/covid-sim/tree/master/src
CAUTION: parts of the source code may offend the sensibilities of readers.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 20:27 ` Niklas Holsti
  2020-05-11 21:12   ` Rick Newbie
  2020-05-11 21:45   ` gautier_niouzes
@ 2020-05-11 21:55   ` Jeffrey R. Carter
  2020-05-12 19:16     ` Niklas Holsti
  2 siblings, 1 reply; 71+ messages in thread
From: Jeffrey R. Carter @ 2020-05-11 21:55 UTC (permalink / raw)


On 5/11/20 10:27 PM, Niklas Holsti wrote:
> 
> I've seen a somewhat longer and better review of this code, but I didn't save 
> the link (sorry). The following points were criticized IIRC:

I saw the interpretation of the review that Gautier linked to at 
https://lockdownsceptics.org/code-review-of-fergusons-model/. From the site name 
we can conclude that this is not an unbiased interpretation.

> Moreover, the code is 
> deterministic if executed on a single core (after some errors were corrected 
> which seemed not to be unusually alarming).

It seems clear that the code that was executed to create the predictions was not 
deterministic on a single core.

-- 
Jeff Carter
"I wave my private parts at your aunties."
Monty Python & the Holy Grail
13

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 21:45   ` gautier_niouzes
@ 2020-05-12 15:56     ` Niklas Holsti
  0 siblings, 0 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-12 15:56 UTC (permalink / raw)


On 2020-05-12 0:45, gautier_niouzes@hotmail.com wrote:
> On Monday, May 11, 2020 at 10:27:06 PM UTC+2, Niklas Holsti wrote:
> 
>> I've seen a somewhat longer and better review of this code, but I didn't
>> save the link (sorry).
> 
> Perhaps this one?
>    https://lockdownsceptics.org/code-review-of-fergusons-model/

Yes, that text/rant is what I remember, but I think I read most of it 
quoted in some other location.

> There are links to the GitHub repository containing a reworked version of the code:
>    https://github.com/mrc-ide/covid-sim/tree/master/src
> CAUTION: parts of the source code may offend the sensibilities of readers.

I did not look at the code myself, as most of the review/rant was about 
how the code worked, not how it looked.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 21:55   ` Jeffrey R. Carter
@ 2020-05-12 19:16     ` Niklas Holsti
  2020-05-12 21:27       ` Jeffrey R. Carter
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-12 19:16 UTC (permalink / raw)


On 2020-05-12 0:55, Jeffrey R. Carter wrote:
> On 5/11/20 10:27 PM, Niklas Holsti wrote:
>>
>> I've seen a somewhat longer and better review of this code, but I 
>> didn't save the link (sorry). The following points were criticized IIRC:
> 
> I saw the interpretation of the review that Gautier linked to at 
> https://lockdownsceptics.org/code-review-of-fergusons-model/. From the 
> site name we can conclude that this is not an unbiased interpretation.
> 
>> Moreover, the code is deterministic if executed on a single core 
>> (after some errors were corrected which seemed not to be unusually 
>> alarming).
> 
> It seems clear that the code that was executed to create the predictions 
> was not deterministic on a single core.

The first of the two cases of single-core "non-determinism" described 
and bewailed in the "review" is that the time evolution of the predicted 
epidemic is different depending on the value of a program option -- 
whether the "network" is created anew, or reused -- that should not 
affect the result. No actual non-determinism is claimed in the review, 
just that the epidemic reaches large infection rates sooner for one 
option value than for the other. It seems that the code was using the 
PRN generator slightly differently in the two cases, resulting in 
different PRN sequences.

The program models exponential growth, so the simulated time evolution 
is clearly very sensitive to the small-number statistics (few initial 
infections) at the start of the simulation, which is one reason why one 
should run several simulations. Looking at the predicted growth curves 
for the two option values, they have the same shape and height but are 
just shifted slightly in time.

The same effect is clearly seen in actual data from Covid-19 infections 
in different countries. Initially, newsmedia used to align the starting 
points of the curves at the point of the first detected infection or 
first death, which is clearly a statistically unreliable indication of 
the real starting point, and so the main growth of infections often 
started after different delays in different countries. When the curves 
are aligned at the point, say, of 10 recorded deaths, the differences 
between the curves are much smaller.

The second case of single-core "non-determinism" mentioned in the report 
is that the program gave different results on different computers and 
compilers. This difference is explained (in the bug report) by the 
different compilers using different floating-point instructions: either 
a merged multiply-add or separate multiply and add, resulting in 
different roundings, a well-known and common issue in floating-point 
computations. Such issues are often addressed by running several 
computations with slightly fuzzed inputs or intermediates, which occurs 
naturally if this program is executed several times with differnt PRN 
sequences. Again not what I would call real non-determinism.

In the review, the sentence that speaks of the original "15.000 line 
file" links to a tweet by John Carmack, who "helped a little" on the 
updates to the code. I quote this tweet series 
(https://twitter.com/ID_AA_Carmack/status/1254872369556074496):

"Before the GitHub team started working on the code it was a single 15k 
line C file that had been worked on for a decade, and some of the 
functions looked like they were machine translated from Fortran. There 
are some tropes about academic code that have grains of truth, but it 
turned out that it fared a lot better going through the gauntlet of code 
analysis tools I hit it with than a lot of more modern code. There is 
something to be said for straightforward C code. Bugs were found and 
fixed, but generally in paths that weren't enabled or hit. Similarly, 
the performance scaling using OpenMP was already pretty good, and this 
was not the place for one of my dramatic system refactorings. Mostly, I 
was just a code janitor for a few weeks, but I was happy to be able to 
help a little."

I would call that a rather positive evaluation of the code quality, even 
if it shows some prejudice against Fortran and machine translations.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 21:12   ` Rick Newbie
@ 2020-05-12 20:11     ` Niklas Holsti
  2020-05-12 20:53       ` Dmitry A. Kazakov
  2020-05-12 22:15       ` Rick Newbie
  0 siblings, 2 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-12 20:11 UTC (permalink / raw)


On 2020-05-12 0:12, Rick Newbie wrote:
> I think the blog article is more about the general mindset behind this.

The article is IMO a hysterical and prejudiced overreaction from someone 
who shows no understanding of the role of Monte Carlo simulations in 
science, nor of the programming practices of scientists ten or more 
years ago when the program was started.

Some of the comments to the article also make these points, I'm glad to see.

> Of course a C program can be correct. So can an assembler program. That 
> does not mean that it is very likely to be correct. I think we all agree 
> that language features can be a big help in writing correct programs.


Certainly. But the likelihood of a program being correct depends much 
more on the skill and care taken by the programmer, than on the 
differences between, say, C and Ada. Regarding this particular program, 
read the tweet from John Carmack which I quoted in another post.

> But even if the program was correct and produces "correct" results for 
> the data put in, that does not mean that the algorithms themselves are 
> correct and will produce results that correlate with reality.


Of course not, but that point is not addressed in the blog "review" and 
has little to do with the comment density or language used in the 
program -- it is where the epidemiological expertise comes in. I am not 
fit to judge that, nor, it seems, is the blog author.

I do agree that computer programs used to support scientific research 
and government decisions should be of high quality, documented and 
reviewable, just as, for example, any chemical analyses or manipulations 
used in the researchs should be done competently. For programs, this is 
starting to be addressed by the scientific journals, which are starting 
to require that submitted papers should include the programs and data, 
for the reviewers to inspect and possibly re-execute. Journals are also 
increasingly archiving such materials for readers to access.

    [snip]


> But what if you realize that your software isn't producing "correct" 
> results and you want to correct your code and you just don't understand 
> it anymore?


That would of course be a problem, but there is no evidence that such a 
problem affects this particular program or its author(s).

> You gotta be honest about the flaws of your system and yourself, and
> I believe that's what the author of the blog is mostly criticizing,
> that Mr.Ferguson is narcissistic and insisted on the correctness of
> his models for selfish reasons.

The blog's complaints about non-determinism and statistics are mistaken. 
The simulation is intentionally stochastic and is meant to be executed 
multiple times to give an ensemble of scenarios. Ferguson et al. are 
right to defend this.

> So there are multiple levels to this catastrophe, the language is one 
> and the personality of the author is another one.


What catastrophe? It seems some bugs were found in the program, which 
possibly had minor effects on the predictions -- probably much smaller 
effects than the inevitable errors in the input parameters and 
assumptions. The horrific predictions from the program pushed 
governments to take strong actions to stop the spread of the virus, and 
these seem to have worked in the most affected places like New York state.

Popular and professional scientific journals and magazines have been 
warning for years and decades about future flu-like pandemics which 
could markedly reduce (or "normalize") the planet's population of Homo 
Sapiens.

The present SARS-COV-2 pandemic is still from the mild end of the 
possible.  Suppose, for example, that HIV had been as infective as the 
common flu...

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 20:11     ` Niklas Holsti
@ 2020-05-12 20:53       ` Dmitry A. Kazakov
  2020-05-12 21:54         ` Niklas Holsti
  2020-05-12 22:15       ` Rick Newbie
  1 sibling, 1 reply; 71+ messages in thread
From: Dmitry A. Kazakov @ 2020-05-12 20:53 UTC (permalink / raw)


On 2020-05-12 22:11, Niklas Holsti wrote:

> The blog's complaints about non-determinism and statistics are mistaken.

Similar to common misunderstanding of the nature of floating-point 
computations. One could have non-deterministic floating-point unit which 
would still be usable and correct. Musings about 
determinism/non-determinism is rubbish.

> The simulation is intentionally stochastic and is meant to be executed 
> multiple times to give an ensemble of scenarios.

I did not read the blog etc, but methodologically the approach, as I 
understand it from your description, is questionable.

In order to get a statistically relevant sample of simulations one 
should run lots of them and likely have access to high quality random 
numbers to avoid running into some systematic trends.

> What catastrophe? It seems some bugs were found in the program, which 
> possibly had minor effects on the predictions -- probably much smaller 
> effects than the inevitable errors in the input parameters and 
> assumptions. The horrific predictions from the program pushed 
> governments to take strong actions to stop the spread of the virus, and 
> these seem to have worked in the most affected places like New York state.
> 
> Popular and professional scientific journals and magazines have been 
> warning for years and decades about future flu-like pandemics which 
> could markedly reduce (or "normalize") the planet's population of Homo 
> Sapiens.

Could be theological journals as well. There is little scientific in 
such predictions in either direction of the outcome.

> Suppose, for example, that HIV had been as infective as the 
> common flu...

Then it would adapt to the host as quickly as the common flu did. The 
pace of adaptation directly depends on the number of replications which 
is proportional to the contagiousness.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 19:16     ` Niklas Holsti
@ 2020-05-12 21:27       ` Jeffrey R. Carter
  2020-05-12 22:20         ` Niklas Holsti
  2020-05-13  9:54         ` Niklas Holsti
  0 siblings, 2 replies; 71+ messages in thread
From: Jeffrey R. Carter @ 2020-05-12 21:27 UTC (permalink / raw)


On 5/12/20 9:16 PM, Niklas Holsti wrote:
>>
>> It seems clear that the code that was executed to create the predictions was 
>> not deterministic on a single core.
> 
> The first of the two cases of single-core "non-determinism" described and 
> bewailed in the "review" is that the time evolution of the predicted epidemic is 
> different depending on the value of a program option -- whether the "network" is 
> created anew, or reused -- that should not affect the result. No actual 
> non-determinism is claimed in the review, just that the epidemic reaches large 
> infection rates sooner for one option value than for the other. It seems that 
> the code was using the PRN generator slightly differently in the two cases, 
> resulting in different PRN sequences.

The single-core non-determinism that I gathered from the referenced 
interpretation of the review, which I clearly have not studied as carefully as 
you, was that the program gave different results on the same computer for 
identical inputs: same initial conditions and same RNG seed(s). Perhaps I 
misunderstood, but that was what I got from it, and the only part that seemed 
troubling. This is different from the kind of non-determinism of simulations 
that are intended to be run many times with different RNG seeds. Possibly that 
would be caused by accessing uninitialized variables.

-- 
Jeff Carter
"I did not rob a bank. If I'd robbed a bank, everything
would be great. I tried to rob a bank, is what happened,
and they got me."
Take the Money and Run
139

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 20:53       ` Dmitry A. Kazakov
@ 2020-05-12 21:54         ` Niklas Holsti
  0 siblings, 0 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-12 21:54 UTC (permalink / raw)


On 2020-05-12 23:53, Dmitry A. Kazakov wrote:
> On 2020-05-12 22:11, Niklas Holsti wrote:


    [snip]

>> The simulation is intentionally stochastic and is meant to be executed 
>> multiple times to give an ensemble of scenarios.
> 
> I did not read the blog etc, but methodologically the approach, as I 
> understand it from your description, is questionable.
> 
> In order to get a statistically relevant sample of simulations one 
> should run lots of them and likely have access to high quality random 
> numbers to avoid running into some systematic trends.


Run lots of them, yes, and that was the approach, as I understood it. I 
don't know the quality of the PRNs used, and I don't know enough about 
such simulations to judge how good PRNs are needed. Intuitively I would 
guess that PRN quality would have a much smaller effect than errors in 
the inputs and assumptions, which concern the average behaviour of 
people and the average risk of virus transmission in certain locations 
and encounters.

>> Popular and professional scientific journals and magazines have been 
>> warning for years and decades about future flu-like pandemics which 
>> could markedly reduce (or "normalize") the planet's population of Homo 
>> Sapiens.
> 
> Could be theological journals as well. There is little scientific in 
> such predictions in either direction of the outcome.


They don't have to be very scientific -- common sense and historical 
precedent, also from other over-populous species (rabbits in Australia, 
say) suggest the same.

>> Suppose, for example, that HIV had been as infective as the common flu...
> 
> Then it would adapt to the host as quickly as the common flu did. The 
> pace of adaptation directly depends on the number of replications which 
> is proportional to the contagiousness.

HIV and AIDS kill *slowly*. Plenty of time for infection to spread, 
before adaptation or immunity comes about.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 20:11     ` Niklas Holsti
  2020-05-12 20:53       ` Dmitry A. Kazakov
@ 2020-05-12 22:15       ` Rick Newbie
  2020-05-13 11:07         ` Niklas Holsti
  1 sibling, 1 reply; 71+ messages in thread
From: Rick Newbie @ 2020-05-12 22:15 UTC (permalink / raw)



> What catastrophe? 

By that I meant the destruction of economy based on code mess.

Of course you are right that "15000 lines of undocumented code" does not 
mean that the author himself won't understand it anymore.

I know I would not understand it anymore after 13 years if that was my 
code. But perhaps Mr. Ferguson is an underrated genius with 
extraordinary mental capacity

Based on the fact that he disregarded his own recommendation about 
isolation and got caught with a cheating woman, I rather doubt it.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 21:27       ` Jeffrey R. Carter
@ 2020-05-12 22:20         ` Niklas Holsti
  2020-05-12 22:39           ` Jeffrey R. Carter
  2020-05-13  9:54         ` Niklas Holsti
  1 sibling, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-12 22:20 UTC (permalink / raw)


On 2020-05-13 0:27, Jeffrey R. Carter wrote:
> On 5/12/20 9:16 PM, Niklas Holsti wrote:
>>>
>>> It seems clear that the code that was executed to create the 
>>> predictions was not deterministic on a single core.
>>
>> The first of the two cases of single-core "non-determinism" described 
>> and bewailed in the "review" is that the time evolution of the 
>> predicted epidemic is different depending on the value of a program 
>> option -- whether the "network" is created anew, or reused -- that 
>> should not affect the result. No actual non-determinism is claimed in 
>> the review, just that the epidemic reaches large infection rates 
>> sooner for one option value than for the other. It seems that the code 
>> was using the PRN generator slightly differently in the two cases, 
>> resulting in different PRN sequences.
> 
> The single-core non-determinism that I gathered from the referenced 
> interpretation of the review, which I clearly have not studied as 
> carefully as you, was that the program gave different results on the 
> same computer for identical inputs: same initial conditions and same RNG 
> seed(s).


That would indeed be non-determinism, also to me.

> Perhaps I misunderstood, but that was what I got from it, and 
> the only part that seemed troubling.


I agree that it would be troubling. If you could find that statement, it 
would interest me.

I did not read all the bug reports and correction reports on github, so 
I can't claim to be sure there was no such real non-determinism, but I 
did not find examples in the review. The review claims that there were 
"many" bugs, but I don't trust the review on that. The review also says 
that the program's authors defended and seemed to accept "minor cases of 
non-determinism", but it was not clear what those cases are, if they are 
not the two examples discussed in the review.

> This is different from the kind of non-determinism of simulations
> that are intended to be run many times with different RNG seeds.


Yes indeed, and I would not call that non-determinism of the code. The 
reviewer also condemned that kind of stochastic exploration and seemed 
to confuse it with real non-determinism. It is true that Monte Carlo is 
often used when the system being simulated is chaotic in some way so 
that its behaviour is essentially unpredictable, and can be so sensitive 
that no practical floating-point precision can give a truly reliable end 
result in any given simulation.

> Possibly that would be caused by accessing uninitialized variables.

Yes.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 22:20         ` Niklas Holsti
@ 2020-05-12 22:39           ` Jeffrey R. Carter
  2020-05-13  9:36             ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Jeffrey R. Carter @ 2020-05-12 22:39 UTC (permalink / raw)


On 5/13/20 12:20 AM, Niklas Holsti wrote:
> 
> I agree that it would be troubling. If you could find that statement, it would 
> interest me.

In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says, "the 
code produces critically different results, even for identical starting seeds 
and parameters." Initially it was claimed that this was only true for multiple 
cores, but later that was retracted: "But Edinburgh came back and reported that 
– even in single-threaded mode – they still see the problem."

-- 
Jeff Carter
"I did not rob a bank. If I'd robbed a bank, everything
would be great. I tried to rob a bank, is what happened,
and they got me."
Take the Money and Run
139

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
  2020-05-11 20:27 ` Niklas Holsti
@ 2020-05-13  0:25 ` Olivier Henley
  2020-05-15 13:23   ` Optikos
  2020-05-16  5:01 ` Anatoly Chernyshev
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-05-13  0:25 UTC (permalink / raw)


Wow!  https://lockdownsceptics.org/code-review-of-fergusons-model/

This is ugly, lol... and they give another go in C++. (facepalm)

For sure it would have fewer bugs or even no bugs in Ada.

1. The modeling power (embedded clarity combined with capabilities/paradigms properly supported) of Ada has no equivalent.

2. Nothing hard about making clean multithreading.

3. Using object-oriented techniques for handling complexity while retaining flexibility and reusability is Part 3 of John English, Ada 95: The craft of object-oriented programming ... and any good undergrad software book written since 1996.

Other languages are underspecified, lack features uniformity, are plagued by idiom trends, and the average Joes inevitably pile up their own party mess by arguing their right to express their style of programming, more often than not, under the auspice of a god syndrome lacking frugal taste. 

Ada just cuts the crap on all of these fronts while retaining all the crucial bits of something like C and C++, performance and low level hand really. Is is that simple.

Governments should just force Ada on their workforce. The public pays and therefore should be entitled to quality stuff that compounds. If you do not want to learn it, ... like you learned Python on Youtube, on the job for the last 3 months, well you know where the door is.

Enough with the clowns...




 

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 22:39           ` Jeffrey R. Carter
@ 2020-05-13  9:36             ` Niklas Holsti
  2020-05-13 13:52               ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13  9:36 UTC (permalink / raw)


On 2020-05-13 1:39, Jeffrey R. Carter wrote:
> On 5/13/20 12:20 AM, Niklas Holsti wrote:
>>
>> I agree that it would be troubling. If you could find that statement, 
>> it would interest me.
> 
> In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says, 
> "the code produces critically different results, even for identical 
> starting seeds and parameters."

While the review claims that as a general flaw, it then "illustrates" 
the claim by discussing the two cases I detailed, in particular the 
unexpected influence of the option controlling how the program "stores 
data tables". This was eventually traced to a difference in the way the 
program used the RNG, depending on this option, which then led to 
different PRN sequences, depending on this option. An error in the 
program, of course, but not non-determinism.

For programs that use RNGs to drive simulations, a single extra RNG 
call, or a single omitted RNG call, will completely change the 
subsequent PRN sequence. This has no effect on the statistical 
properties of the results from many runs, but will of course change the 
results of the particular run in which the change occurs.

> Initially it was claimed that this was 
> only true for multiple cores, but later that was retracted: "But 
> Edinburgh came back and reported that – even in single-threaded mode – 
> they still see the problem."

It seems that some users (Edinburgh) reported that the results varied, 
and reported they were using multi-core mode. The authors of the program 
(Imperial) replied that result variations are expected in multi-core 
mode; this was of course a sloppy analysis of the problem, but not an 
unnatural one. When the users reported that the problem occurs also in 
single-core mode, depending on the "data table storage" option, the 
authors found and fixed the error.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 21:27       ` Jeffrey R. Carter
  2020-05-12 22:20         ` Niklas Holsti
@ 2020-05-13  9:54         ` Niklas Holsti
  1 sibling, 0 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13  9:54 UTC (permalink / raw)


On 2020-05-13 0:27, Jeffrey R. Carter wrote:
> On 5/12/20 9:16 PM, Niklas Holsti wrote:
>>>
>>> It seems clear that the code that was executed to create the 
>>> predictions was not deterministic on a single core.
>>
>> The first of the two cases of single-core "non-determinism" described 
>> and bewailed in the "review" is that the time evolution of the 
>> predicted epidemic is different depending on the value of a program 
>> option -- whether the "network" is created anew, or reused -- that 
>> should not affect the result. No actual non-determinism is claimed in 
>> the review, just that the epidemic reaches large infection rates 
>> sooner for one option value than for the other. It seems that the code 
>> was using the PRN generator slightly differently in the two cases, 
>> resulting in different PRN sequences.
> 
> The single-core non-determinism that I gathered from the referenced 
> interpretation of the review, which I clearly have not studied as 
> carefully as you, was that the program gave different results on the 
> same computer for identical inputs: same initial conditions and same RNG 
> seed(s). Perhaps I misunderstood, but that was what I got from it, and 
> the only part that seemed troubling. This is different from the kind of 
> non-determinism of simulations that are intended to be run many times 
> with different RNG seeds. Possibly that would be caused by accessing 
> uninitialized variables.

The "second analysis" at 
https://lockdownsceptics.org/second-analysis-of-fergusons-model/ refers 
to some GitHub change-log entries that do correct uninitialized-variable 
errors, so there may have been some real non-determinism.

The second analysis then tries to evaluate the effect of the various 
errors and their corrections by running the newest version and the 
"initial import" version with the same data, and claims "radically 
altered" results.

In fact, the results compared, which are the number of infected but 
recovered people on day 128 of the simulation, are some 57 million for 
the initial code and 42 million for the current code. But note that the 
reviewer compares only one run of each program, so I would say that this 
change can well be purely statistical and result from small random 
(PRN-induced) differences in the speed at which the infections take off 
in the two runs.

Even if the two runs use the same initial RNG seed, the changes probably 
make the sequence of RNG calls, and the uses to which the RNG results 
are put, different in the two program versions, which means that they 
effectively use different PRN sequences.

I don't intend to spend any more time on this storm in a teapot.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-12 22:15       ` Rick Newbie
@ 2020-05-13 11:07         ` Niklas Holsti
  2020-05-13 13:23           ` Rick Newbie
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 11:07 UTC (permalink / raw)


On 2020-05-13 1:15, Rick Newbie wrote:
> 
>> What catastrophe? 
> 
> By that I meant the destruction of economy based on code mess.


There is no proof that there is a "code mess". There is a program in 
which some errors have been found and corrected. And there is a global 
pandemic that is being fought by shut-down measures which have had some 
negative effect on business and trade.

Just as a local note, Sweden, with its limited shut-downs, has had about 
5 times more covid-19 deaths per population than Finland, where I live, 
which did more extensive shut-downs.

The long-term economical effects depend on how governments support 
businesses and workers during and after the shut-downs. The U.S. seems 
to be doing it wrong, IMO, while Denmark, for example, is doing it 
right. IMO the main point to keep in mind is that this is *not* a 
run-of-the-mill depression or recession, but something quite different 
-- a pause. The goal should be to avoid unrecoverable harm such as 
people losing their homes, or healthy businesses going bankrupt.

> Of course you are right that "15000 lines of undocumented code" does not 
> mean that the author himself won't understand it anymore.
> 
> I know I would not understand it anymore after 13 years if that was my 
> code. But perhaps Mr. Ferguson is an underrated genius with 
> extraordinary mental capacity


As I understand it, this is not code that has sat, ignored, on a dusty 
shelf for 13 years, but "living" code that has been actively worked on 
and extended for 13 years. No need for sarcasm re Prof Ferguson's genius 
level.

> Based on the fact that he disregarded his own recommendation about 
> isolation and got caught with a cheating woman, I rather doubt it.


Eh? He had one-one-one (I assume) meetings with a lover, that's hardly 
breaking much social isolation. Problem was, the rapacious British 
press, always hungry for scandal, got to know of it.

If we start judging the worth of scientists and their products by their 
sex-lives, life for scientists is going to be rather duller, but for us 
watchers-on perhaps more exciting...

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 11:07         ` Niklas Holsti
@ 2020-05-13 13:23           ` Rick Newbie
  2020-05-13 13:45             ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Rick Newbie @ 2020-05-13 13:23 UTC (permalink / raw)


> Just as a local note, Sweden, with its limited shut-downs, has had about 
> 5 times more covid-19 deaths per population than Finland, where I live, 
> which did more extensive shut-downs.

And New York which has one of the most stringent lock down regulations 
of the world has a 4 times higher death count per capita than Sweden 
which has basically no lockdown as you observed. I don't think the 
numbers are obtained in a manner that is even reminiscent of anything 
science related anywhere in the world. They are merely numbers that 
various governments and organizations pull out of the air.


> Eh? He had one-one-one (I assume) meetings with a lover, that's hardly 
> breaking much social isolation. Problem was, the rapacious British 
> press, always hungry for scandal, got to know of it.

But he was single-handedly responsible for the shutdown of the Western 
World and the destruction of our economy. He is the one who's mangled 
code was taken as a basis to put millions of people out of work, destroy 
hundreds of thousands of small businesses and he is also responsible for 
the millions of people who will lose their homes and be kicked out on 
the streets once the protective measures run out. Not to mention a whole 
generation of children that will grow up mentally damaged and deprived 
of all social interaction. There is a reason prisoner advocacy 
organizations call isolation imprisonment a form of torture!

I think Mr.Ferguson's act has to be measured against a slightly higher 
scale than the acts of normal people. It's called lead by example. If 
somebody tells me that millions of people are going to die unless we 
lock ourselves in our homes until a vaccine is found and then goes out 
and meets another man's wive in a lover's nest thus breaking his own 
rules I can not help but wonder how much he believes in his own predictions.

We live in a world that makes no sense anymore and where our leaders are 
acting out of sheer panic. Look up the psychological mechanisms of panic 
and you will easily identify many of the symptoms in today's politics 
all around the world. If the one man who's work started it all leads his 
own doom-and-gloom prediction ad absurdum by blatantly disregarding 
everything he said, that is counterproductive to any attempt to stemming 
back that panic


^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 13:23           ` Rick Newbie
@ 2020-05-13 13:45             ` Niklas Holsti
  2020-05-13 14:58               ` Rick Newbie
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 13:45 UTC (permalink / raw)


On 2020-05-13 16:23, Rick Newbie wrote:
>> Just as a local note, Sweden, with its limited shut-downs, has had 
>> about 5 times more covid-19 deaths per population than Finland, where 
>> I live, which did more extensive shut-downs.
> 
> And New York which has one of the most stringent lock down regulations 
> of the world has a 4 times higher death count per capita than Sweden


Sweden and Finland are geographical neighbours and very similar in terms 
of population structure and density. New York is much more densely 
populated and is a major travel hub, so a higher pandemic impact is to 
be expected.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13  9:36             ` Niklas Holsti
@ 2020-05-13 13:52               ` Optikos
  2020-05-13 14:05                 ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-13 13:52 UTC (permalink / raw)


On Wednesday, May 13, 2020 at 4:36:15 AM UTC-5, Niklas Holsti wrote:
> On 2020-05-13 1:39, Jeffrey R. Carter wrote:
> > On 5/13/20 12:20 AM, Niklas Holsti wrote:
> >>
> >> I agree that it would be troubling. If you could find that statement, 
> >> it would interest me.
> > 
> > In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says, 
> > "the code produces critically different results, even for identical 
> > starting seeds and parameters."
> 
> While the review claims that as a general flaw, it then "illustrates" 
> the claim by discussing the two cases I detailed, in particular the 
> unexpected influence of the option controlling how the program "stores 
> data tables". This was eventually traced to a difference in the way the 
> program used the RNG, depending on this option, which then led to 
> different PRN sequences, depending on this option. An error in the 
> program, of course, but not non-determinism.
> 
> For programs that use RNGs to drive simulations, a single extra RNG 
> call, or a single omitted RNG call, will completely change the 
> subsequent PRN sequence. This has no effect on the statistical 
> properties of the results from many runs, but will of course change the 
> results of the particular run in which the change occurs.
> 
> > Initially it was claimed that this was 
> > only true for multiple cores, but later that was retracted: "But 
> > Edinburgh came back and reported that – even in single-threaded mode – 
> > they still see the problem."
> 
> It seems that some users (Edinburgh) reported that the results varied, 
> and reported they were using multi-core mode. The authors of the program 
> (Imperial) replied that result variations are expected in multi-core 
> mode; this was of course a sloppy analysis of the problem, but not an 
> unnatural one. When the users reported that the problem occurs also in 
> single-core mode, depending on the "data table storage" option, the 
> authors found and fixed the error.

On which date did they fix the problem?  Before or after governments acted on the miscalculations?

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 13:52               ` Optikos
@ 2020-05-13 14:05                 ` Niklas Holsti
  2020-05-13 18:58                   ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 14:05 UTC (permalink / raw)


On 2020-05-13 16:52, Optikos wrote:
> On Wednesday, May 13, 2020 at 4:36:15 AM UTC-5, Niklas Holsti wrote:
>> On 2020-05-13 1:39, Jeffrey R. Carter wrote:
>>> On 5/13/20 12:20 AM, Niklas Holsti wrote:
>>>>
>>>> I agree that it would be troubling. If you could find that statement,
>>>> it would interest me.
>>>
>>> In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says,
>>> "the code produces critically different results, even for identical
>>> starting seeds and parameters."
>>
>> While the review claims that as a general flaw, it then "illustrates"
>> the claim by discussing the two cases I detailed, in particular the
>> unexpected influence of the option controlling how the program "stores
>> data tables". This was eventually traced to a difference in the way the
>> program used the RNG, depending on this option, which then led to
>> different PRN sequences, depending on this option. An error in the
>> program, of course, but not non-determinism.
>>
>> For programs that use RNGs to drive simulations, a single extra RNG
>> call, or a single omitted RNG call, will completely change the
>> subsequent PRN sequence. This has no effect on the statistical
>> properties of the results from many runs, but will of course change the
>> results of the particular run in which the change occurs.
>>
>>> Initially it was claimed that this was
>>> only true for multiple cores, but later that was retracted: "But
>>> Edinburgh came back and reported that – even in single-threaded mode –
>>> they still see the problem."
>>
>> It seems that some users (Edinburgh) reported that the results varied,
>> and reported they were using multi-core mode. The authors of the program
>> (Imperial) replied that result variations are expected in multi-core
>> mode; this was of course a sloppy analysis of the problem, but not an
>> unnatural one. When the users reported that the problem occurs also in
>> single-core mode, depending on the "data table storage" option, the
>> authors found and fixed the error.
> 
> On which date did they fix the problem?  Before or after governments
> acted on the miscalculations?

There has been no demonstration that the early predictions from this 
program, that prodded governments into action, were "miscalculations" to 
any significant degree, especially after the recommended practice of 
performing several runs and considering the ensemble of results.

The single comparison reported in the "second review" between the 
current version and the earliest accessible version of the program 
showed results that were similar in their degree of horror. Even the 
milder result should have caused drastic action, IMO.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 13:45             ` Niklas Holsti
@ 2020-05-13 14:58               ` Rick Newbie
  2020-05-13 15:31                 ` Dmitry A. Kazakov
  0 siblings, 1 reply; 71+ messages in thread
From: Rick Newbie @ 2020-05-13 14:58 UTC (permalink / raw)


> Sweden and Finland are geographical neighbours and very similar in terms 
> of population structure and density. New York is much more densely 
> populated and is a major travel hub, so a higher pandemic impact is to 
> be expected.
> 
When I look at Wikipedia, Sweden has about double the population of 
Finland with a greater number of people living in bigger cities. Also 
the time of arrival of the virus or should I say the time when the 
exponential grow of cases became measurably greater is likely different.

The main point however is that, provided Finland does more extensive 
lockups as you say (I am not very familiar with Finland due to it not 
being in the news very much so I can not verify this but I take your 
word for it), Finland will get into problems when they easy or terminate 
the lockups.

While Sweden has seen maybe more cases now, they don't have to open up 
their country, while all those countries who did a lockup will 
eventually have to open up. That is provided they WILL ever upen up. 
Right now the trend seems to be to throw us a piece of bait about "soon, 
soon" and then slap us across the face again with "Nahh, not before we 
have a vaccine".

But let's assume there will be an end to the lockups, which means people 
in Finland will get in contact which each other again, which means the 
virus will begin to spread, which means more measurable cases which 
means more deaths "from" the virus (however that is number is constructed).

In short: It's a virus! And it will infect as many people as it will 
infect and it will kill as many people as it will kill. Without a 
vaccine (we are still waiting for one for AIDS, SARS, MERS and 
others...), either in a short term as in Sweden or in a long term, as 
will be the case in Finland. The overall number will be comparable.

The lockdown accomplishes nothing other destroying our countries. And 
let's not forget that the original purpose of it was "to flatten the 
curve so that the hospital's can handle the cases and don't get 
overwhelmed". Well hospitals are empty, nurses kill their time by 
dancing on Tik Tok and people are running out of money and food.

What is the argument to keep this insanity up?

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 14:58               ` Rick Newbie
@ 2020-05-13 15:31                 ` Dmitry A. Kazakov
  2020-05-13 15:48                   ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Dmitry A. Kazakov @ 2020-05-13 15:31 UTC (permalink / raw)


On 2020-05-13 16:58, Rick Newbie wrote:

> The lockdown accomplishes nothing other destroying our countries. And 
> let's not forget that the original purpose of it was "to flatten the 
> curve so that the hospital's can handle the cases and don't get 
> overwhelmed". Well hospitals are empty, nurses kill their time by 
> dancing on Tik Tok and people are running out of money and food.
> 
> What is the argument to keep this insanity up?

I listened to a professional epidemiologist who said that a total lock 
down is straight wrong. One should have isolated vulnerable and elderly 
people, also from their families, but keep schools, offices, plants open 
in order to bring at least 60% of healthy people in contact with the 
virus. Because when the second wave comes this Autumn, and it will, all 
these people will have antibodies to suppress it. A total lock down 
guarantees nothing but a large second wave. Spanish flu's second wave 
was far worse than the first one.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 15:31                 ` Dmitry A. Kazakov
@ 2020-05-13 15:48                   ` Niklas Holsti
  0 siblings, 0 replies; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 15:48 UTC (permalink / raw)


On 2020-05-13 18:31, Dmitry A. Kazakov wrote:
> On 2020-05-13 16:58, Rick Newbie wrote:
> 
>> The lockdown accomplishes nothing other destroying our countries. And 
>> let's not forget that the original purpose of it was "to flatten the 
>> curve so that the hospital's can handle the cases and don't get 
>> overwhelmed". Well hospitals are empty, nurses kill their time by 
>> dancing on Tik Tok and people are running out of money and food.
>>
>> What is the argument to keep this insanity up?
> 
> I listened to a professional epidemiologist who said that a total lock 
> down is straight wrong. One should have isolated vulnerable and elderly 
> people, also from their families, but keep schools, offices, plants open 
> in order to bring at least 60% of healthy people in contact with the 
> virus. Because when the second wave comes this Autumn, and it will, all 
> these people will have antibodies to suppress it. A total lock down 
> guarantees nothing but a large second wave. Spanish flu's second wave 
> was far worse than the first one.

We are just rehashing discussions and arguments that have already been 
worn out in other media. Boring already.

Even if there is a second wave when the lock-downs are eased, at that 
time the health-care system will have more experience of covid-19 and 
how it should be treated -- Remdesivir, proning, early measurement of 
blood oxygenation, etc. Outcomes will be better.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 14:05                 ` Niklas Holsti
@ 2020-05-13 18:58                   ` Optikos
  2020-05-13 20:29                     ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-13 18:58 UTC (permalink / raw)


On Wednesday, May 13, 2020 at 9:05:50 AM UTC-5, Niklas Holsti wrote:
> On 2020-05-13 16:52, Optikos wrote:
> > On Wednesday, May 13, 2020 at 4:36:15 AM UTC-5, Niklas Holsti wrote:
> >> On 2020-05-13 1:39, Jeffrey R. Carter wrote:
> >>> On 5/13/20 12:20 AM, Niklas Holsti wrote:
> >>>>
> >>>> I agree that it would be troubling. If you could find that statement,
> >>>> it would interest me.
> >>>
> >>> In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says,
> >>> "the code produces critically different results, even for identical
> >>> starting seeds and parameters."
> >>
> >> While the review claims that as a general flaw, it then "illustrates"
> >> the claim by discussing the two cases I detailed, in particular the
> >> unexpected influence of the option controlling how the program "stores
> >> data tables". This was eventually traced to a difference in the way the
> >> program used the RNG, depending on this option, which then led to
> >> different PRN sequences, depending on this option. An error in the
> >> program, of course, but not non-determinism.
> >>
> >> For programs that use RNGs to drive simulations, a single extra RNG
> >> call, or a single omitted RNG call, will completely change the
> >> subsequent PRN sequence. This has no effect on the statistical
> >> properties of the results from many runs, but will of course change the
> >> results of the particular run in which the change occurs.
> >>
> >>> Initially it was claimed that this was
> >>> only true for multiple cores, but later that was retracted: "But
> >>> Edinburgh came back and reported that – even in single-threaded mode –
> >>> they still see the problem."
> >>
> >> It seems that some users (Edinburgh) reported that the results varied,
> >> and reported they were using multi-core mode. The authors of the program
> >> (Imperial) replied that result variations are expected in multi-core
> >> mode; this was of course a sloppy analysis of the problem, but not an
> >> unnatural one. When the users reported that the problem occurs also in
> >> single-core mode, depending on the "data table storage" option, the
> >> authors found and fixed the error.
> > 
> > On which date did they fix the problem?  Before or after governments
> > acted on the miscalculations?
> 
> There has been no demonstration that the early predictions from this 
> program, that prodded governments into action, were "miscalculations" to 
> any significant degree, especially after the recommended practice of 
> performing several runs and considering the ensemble of results.

https://www.cato.org/blog/how-one-model-simulated-22-million-us-deaths-covid-19

https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp

2.2 million deaths in the USA and a half million deaths in the UK due to Covid-19 (reprising Neil Ferguson's prior years of off-by-orders-of-magnitude analogous sensationalism that turned out to be wholesale inaccurate in Mad Cow, H1N1, H5N1, foot & mouth disease) were not a miscalculation, but rather a perfectly accurate calculation.  Okey dokey, then.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 18:58                   ` Optikos
@ 2020-05-13 20:29                     ` Niklas Holsti
  2020-05-13 21:02                       ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 20:29 UTC (permalink / raw)


On 2020-05-13 21:58, Optikos wrote:
> On Wednesday, May 13, 2020 at 9:05:50 AM UTC-5, Niklas Holsti wrote:
>> On 2020-05-13 16:52, Optikos wrote:
>>> On Wednesday, May 13, 2020 at 4:36:15 AM UTC-5, Niklas Holsti wrote:
>>>> On 2020-05-13 1:39, Jeffrey R. Carter wrote:
>>>>> On 5/13/20 12:20 AM, Niklas Holsti wrote:
>>>>>>
>>>>>> I agree that it would be troubling. If you could find that statement,
>>>>>> it would interest me.
>>>>>
>>>>> In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says,
>>>>> "the code produces critically different results, even for identical
>>>>> starting seeds and parameters."
>>>>
>>>> While the review claims that as a general flaw, it then "illustrates"
>>>> the claim by discussing the two cases I detailed, in particular the
>>>> unexpected influence of the option controlling how the program "stores
>>>> data tables". This was eventually traced to a difference in the way the
>>>> program used the RNG, depending on this option, which then led to
>>>> different PRN sequences, depending on this option. An error in the
>>>> program, of course, but not non-determinism.
>>>>
>>>> For programs that use RNGs to drive simulations, a single extra RNG
>>>> call, or a single omitted RNG call, will completely change the
>>>> subsequent PRN sequence. This has no effect on the statistical
>>>> properties of the results from many runs, but will of course change the
>>>> results of the particular run in which the change occurs.
>>>>
>>>>> Initially it was claimed that this was
>>>>> only true for multiple cores, but later that was retracted: "But
>>>>> Edinburgh came back and reported that – even in single-threaded mode –
>>>>> they still see the problem."
>>>>
>>>> It seems that some users (Edinburgh) reported that the results varied,
>>>> and reported they were using multi-core mode. The authors of the program
>>>> (Imperial) replied that result variations are expected in multi-core
>>>> mode; this was of course a sloppy analysis of the problem, but not an
>>>> unnatural one. When the users reported that the problem occurs also in
>>>> single-core mode, depending on the "data table storage" option, the
>>>> authors found and fixed the error.
>>>
>>> On which date did they fix the problem?  Before or after governments
>>> acted on the miscalculations?
>>
>> There has been no demonstration that the early predictions from this
>> program, that prodded governments into action, were "miscalculations" to
>> any significant degree, especially after the recommended practice of
>> performing several runs and considering the ensemble of results.
> 
> https://www.cato.org/blog/how-one-model-simulated-22-million-us-deaths-covid-19


In that article, the main objection to Ferguson's model seems to be that 
the model predicts that as much as 81% of the population would be 
infected. But the proponents of quick herd immunity suggest something 
over 60% as desirable, so 81% does not seem outrageous. The article then 
complains that Ferguson's model is unrealistic because it assumes that 
no precautions against infection are taken, neither by individuals nor 
by governments. As I understand it, this assumption was stated and not 
hidden by Ferguson, so complaining about it is not to the point. 
Ferguson's point was that precautions *should* be taken to avoid the 2.2 
million deaths.

> https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp

By all means, ask Ferguson such questions, but also let him answer.

> 2.2 million deaths in the USA and a half million deaths in the UK
> due to Covid-19 [...] were not a miscalculation, but rather a
> perfectly accurate calculation. Okey dokey, then.

You seem to have misunderstood what we are discussing. The question is 
if Ferguson's results were influenced by errors (bugs) in Ferguson's 
code, not if Ferguson's assumptions or mathematical models are realistic 
or correct for this pandemic.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 20:29                     ` Niklas Holsti
@ 2020-05-13 21:02                       ` Optikos
  2020-05-13 21:48                         ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-13 21:02 UTC (permalink / raw)


On Wednesday, May 13, 2020 at 3:29:13 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-13 21:58, Optikos wrote:
> > On Wednesday, May 13, 2020 at 9:05:50 AM UTC-5, Niklas Holsti wrote:
> >> On 2020-05-13 16:52, Optikos wrote:
> >>> On Wednesday, May 13, 2020 at 4:36:15 AM UTC-5, Niklas Holsti wrote:
> >>>> On 2020-05-13 1:39, Jeffrey R. Carter wrote:
> >>>>> On 5/13/20 12:20 AM, Niklas Holsti wrote:
> >>>>>>
> >>>>>> I agree that it would be troubling. If you could find that statement,
> >>>>>> it would interest me.
> >>>>>
> >>>>> In https://lockdownsceptics.org/code-review-of-fergusons-model/ it says,
> >>>>> "the code produces critically different results, even for identical
> >>>>> starting seeds and parameters."
> >>>>
> >>>> While the review claims that as a general flaw, it then "illustrates"
> >>>> the claim by discussing the two cases I detailed, in particular the
> >>>> unexpected influence of the option controlling how the program "stores
> >>>> data tables". This was eventually traced to a difference in the way the
> >>>> program used the RNG, depending on this option, which then led to
> >>>> different PRN sequences, depending on this option. An error in the
> >>>> program, of course, but not non-determinism.
> >>>>
> >>>> For programs that use RNGs to drive simulations, a single extra RNG
> >>>> call, or a single omitted RNG call, will completely change the
> >>>> subsequent PRN sequence. This has no effect on the statistical
> >>>> properties of the results from many runs, but will of course change the
> >>>> results of the particular run in which the change occurs.
> >>>>
> >>>>> Initially it was claimed that this was
> >>>>> only true for multiple cores, but later that was retracted: "But
> >>>>> Edinburgh came back and reported that – even in single-threaded mode –
> >>>>> they still see the problem."
> >>>>
> >>>> It seems that some users (Edinburgh) reported that the results varied,
> >>>> and reported they were using multi-core mode. The authors of the program
> >>>> (Imperial) replied that result variations are expected in multi-core
> >>>> mode; this was of course a sloppy analysis of the problem, but not an
> >>>> unnatural one. When the users reported that the problem occurs also in
> >>>> single-core mode, depending on the "data table storage" option, the
> >>>> authors found and fixed the error.
> >>>
> >>> On which date did they fix the problem?  Before or after governments
> >>> acted on the miscalculations?
> >>
> >> There has been no demonstration that the early predictions from this
> >> program, that prodded governments into action, were "miscalculations" to
> >> any significant degree, especially after the recommended practice of
> >> performing several runs and considering the ensemble of results.
> > 
> > https://www.cato.org/blog/how-one-model-simulated-22-million-us-deaths-covid-19
> 
> 
> In that article, the main objection to Ferguson's model seems to be that 
> the model predicts that as much as 81% of the population would be 
> infected. But the proponents of quick herd immunity suggest something 
> over 60% as desirable, so 81% does not seem outrageous. The article then 
> complains that Ferguson's model is unrealistic because it assumes that 
> no precautions against infection are taken, neither by individuals nor 
> by governments. As I understand it, this assumption was stated and not 
> hidden by Ferguson, so complaining about it is not to the point. 
> Ferguson's point was that precautions *should* be taken to avoid the 2.2 
> million deaths.
> 
> > https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp
> 
> By all means, ask Ferguson such questions, but also let him answer.
> 
> > 2.2 million deaths in the USA and a half million deaths in the UK
> > due to Covid-19 [...] were not a miscalculation, but rather a
> > perfectly accurate calculation. Okey dokey, then.
> 
> You seem to have misunderstood what we are discussing. The question is 
> if Ferguson's results were influenced by errors (bugs) in Ferguson's 
> code, not if Ferguson's assumptions or mathematical models are realistic 
> or correct for this pandemic.

No, we are not discussing only your dictates and narrow reframings.

We are discussing:

from Rick Newbie on 11 May 2020:
> There's a reason C is not used in safety critical applications.

from Rick Newbie on 11 May 2020:
> with C-Code we have a greater chance to have unmaintainable problems
> that go unnoticed. 

On Tuesday, May 12, 2020 at 7:25:42 PM UTC-5, Olivier Henley wrote:
> Wow!  https://lockdownsceptics.org/code-review-of-fergusons-model/
> 
> This is ugly, lol... and they give another go in C++. (facepalm)
> 
> For sure it would have fewer bugs or even no bugs in Ada.
> 
> 1. The modeling power (embedded clarity combined with capabilities/paradigms properly supported) of
> Ada has no equivalent.
> 
> 2. Nothing hard about making clean multithreading.
> 
> 3. Using object-oriented techniques for handling complexity while retaining flexibility and reusability is
> Part 3 of John English, Ada 95: The craft of object-oriented programming ... and any good undergrad
> software book written since 1996.
> 
> Other languages are underspecified, lack features uniformity, are plagued by idiom trends, and the
> average Joes inevitably pile up their own party mess by arguing their right to express their style of
> programming, more often than not, under the auspice of a god syndrome lacking frugal taste. 
> 
> Ada just cuts the crap on all of these fronts while retaining all the crucial bits of something like C and
> C++, performance and low level hand really. Is is that simple.
> 
> Governments should just force Ada on their workforce. The public pays and therefore should be entitled
> to quality stuff that compounds. If you do not want to learn it, ... like you learned Python on Youtube, on
> the job for the last 3 months, well you know where the door is.

As witnessed by the non-Holsti quotations above, we are discussing whether C is too cryptic & too ill-disciplined & insufficiently transparent for society to be making multi-ten-trillion-dollar reckless bets.  We are discussing whether having a competing model written in Ada would at least be less cryptic, better disciplined, and more transparent so that it doesn't require severely botched results for foot-&-mouth, H1N1, H5N1, Mad Cow, and now the comparable-to-the-Great-Depression economic meltdown of Covid-19 for anyone to care enough to even try to properly maintain the crappy C code the best that they can.

Conversely, the rest of us along this thread are not unrelentingly shilling in vigorous defense of Neil-Ferguson orthodoxy.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 21:02                       ` Optikos
@ 2020-05-13 21:48                         ` Niklas Holsti
  2020-05-13 22:13                           ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-13 21:48 UTC (permalink / raw)


On 2020-05-14 0:02, Optikos wrote:
> On Wednesday, May 13, 2020 at 3:29:13 PM UTC-5, Niklas Holsti wrote:
>> On 2020-05-13 21:58, Optikos wrote:

    [snip]

>>> 2.2 million deaths in the USA and a half million deaths in the UK
>>> due to Covid-19 [...] were not a miscalculation, but rather a
>>> perfectly accurate calculation. Okey dokey, then.
>>
>> You seem to have misunderstood what we are discussing. The question is
>> if Ferguson's results were influenced by errors (bugs) in Ferguson's
>> code, not if Ferguson's assumptions or mathematical models are realistic
>> or correct for this pandemic.
> 
> No, we are not discussing only your dictates and narrow reframings.

Feel free to discuss what you like, but in this sub-thread your post 
asked when a particular bug in Ferguson's code was corrected, so clearly 
you too were talking about bugs.

> We are discussing:
> 
> from Rick Newbie on 11 May 2020:

Yeah, Rick repeated the calumnies about Ferguson's code from the 
"review". I responded because, while I hate C and love Ada, I see it as 
wrong and unhelpful to condemn a program -- and even more so the results 
computed by that program -- merely because it is in C.

>> For sure it would have fewer bugs or even no bugs in Ada.

Which is just an unproven and arrogant assertion.

>> Governments should just force Ada on their workforce.

The U.S. DoD tried that. It mainly raised the hackles of the programmers 
to little good effect.

Rather, universities and other scientific institutions should realize 
that the programs that scientists write and use are as important as 
their journal papers, or their laboratory equipment and procedures, and 
should be subjected to the same level of peer review and criticism. 
Equally, the scientists should be funded to enable them to write quality 
programs, when necessary by paying professionals to implement what the 
scientists specify.

What we can do, as Ada programmers, is to continue to chip away at the 
prevailing idea that "all programs have bugs, what can you do".

> As witnessed by the non-Holsti quotations above, we are discussing
> whether C is too cryptic & too ill-disciplined & insufficiently
> transparent for society to be making multi-ten-trillion-dollar
> reckless bets.
Yes, that was in the original subject domain. I agree that C has 
drawbacks, and Ada advantages. But the discussion started with a 
critique of a particular C program, which was taken as "proof" or 
motivation for avoiding C, and this critique, IMO, was unjust, because I 
don't think that program is as buggy as the critique claimed.

> We are discussing whether having a competing model written in Ada
> would at least be less cryptic, better disciplined, and more
> transparent ...
Very probably it would be, but no-one has volunteered to write it.

Whether it would be more _correct_ was the original question, but that 
question assumes that the C program is _incorrect_, which is how we got 
into the real and claimed bugs in the C program.

It's good that Ferguson's code is now openly available and being cleaned 
up. So far, I haven't seen any credible claims that the cleaned-up code 
is giving radically different results.

> Conversely, the rest of us along this thread are not unrelentingly 
> shilling in vigorous defense of Neil-Ferguson orthodoxy.

I've noticed :-). Feel free to continue, but I think I won't take part 
any more.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13 21:48                         ` Niklas Holsti
@ 2020-05-13 22:13                           ` Optikos
  0 siblings, 0 replies; 71+ messages in thread
From: Optikos @ 2020-05-13 22:13 UTC (permalink / raw)


On Wednesday, May 13, 2020 at 4:48:35 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-14 0:02, Optikos wrote:
> > On Wednesday, May 13, 2020 at 3:29:13 PM UTC-5, Niklas Holsti wrote:
> >> On 2020-05-13 21:58, Optikos wrote:
> 
>     [snip]
> 
> >>> 2.2 million deaths in the USA and a half million deaths in the UK
> >>> due to Covid-19 [...] were not a miscalculation, but rather a
> >>> perfectly accurate calculation. Okey dokey, then.
> >>
> >> You seem to have misunderstood what we are discussing. The question is
> >> if Ferguson's results were influenced by errors (bugs) in Ferguson's
> >> code, not if Ferguson's assumptions or mathematical models are realistic
> >> or correct for this pandemic.
> > 
> > No, we are not discussing only your dictates and narrow reframings.
> 
> Feel free to discuss what you like, but in this sub-thread your post 
> asked when a particular bug in Ferguson's code was corrected, so clearly 
> you too were talking about bugs.

No, we are discussing whether even the maintainers on GitHub of the evolved code have deep insight into the big picture of whether the design is doing what it ought to do for society to make multi-ten-trillion-dollar bets on infectious diseases.  Yes, they have identified & fixed little nit bugs here and there in the microcosm, but this thread's main focus is whether C's lack of lucid expressivity of meaningful abstractions precludes maintainers and critics from seeing bigger-picture maldesigns and whether this code is worthy of the high degree of trust that the whole planet entrusts it with.

Clearly, several maldesigns exist because for multiple infectious diseases over a decade, this code is producing excessively inflated projections that are nowhere close to the eventually observed reality.  The problem isn't that C precludes seeing one-liner or one-block or one-function bugs (although it might partially inhibit such visibility).  The problem is that obliquely jamming the design into C does not foster Ada's more-sophisticated attention to type, subtype, and task expressivity of the intended design.  (A next-gen Ada would focus on expanding out more categories of highly-lucid intended-design capture.)

TL;DR; The bug fixing in C has focused on the bark on the tree because it is difficult to see the forest.

> It's good that Ferguson's code is now openly available and being cleaned 
> up. So far, I haven't seen any credible claims that the cleaned-up code 
> is giving radically different results.

See above.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-13  0:25 ` Olivier Henley
@ 2020-05-15 13:23   ` Optikos
  0 siblings, 0 replies; 71+ messages in thread
From: Optikos @ 2020-05-15 13:23 UTC (permalink / raw)


On Tuesday, May 12, 2020 at 7:25:42 PM UTC-5, Olivier Henley wrote:
> Wow!  https://lockdownsceptics.org/code-review-of-fergusons-model/
> 
> This is ugly, lol... and they give another go in C++. (facepalm)
> 
> For sure it would have fewer bugs or even no bugs in Ada.
> 
> 1. The modeling power (embedded clarity combined with capabilities/paradigms properly supported) of Ada has no equivalent.
> 
> 2. Nothing hard about making clean multithreading.
> 
> 3. Using object-oriented techniques for handling complexity while retaining flexibility and reusability is Part 3 of John English, Ada 95: The craft of object-oriented programming ... and any good undergrad software book written since 1996.
> 
> Other languages are underspecified, lack features uniformity, are plagued by idiom trends, and the average Joes inevitably pile up their own party mess by arguing their right to express their style of programming, more often than not, under the auspice of a god syndrome lacking frugal taste. 
> 
> Ada just cuts the crap on all of these fronts while retaining all the crucial bits of something like C and C++, performance and low level hand really. Is is that simple.
> 
> Governments should just force Ada on their workforce. The public pays and therefore should be entitled to quality stuff that compounds. If you do not want to learn it, ... like you learned Python on Youtube, on the job for the last 3 months, well you know where the door is.
> 
> Enough with the clowns...

Clowns will dominate the pandemic-forecasting domain until we don't just put up a 3-ring tent for the latest pandemic's circus coming to town each time.  Putting up a temporary tent on the spur of the moment for the circus coming to town is not how society runs anything else of significant impact:  investing, military defense, civilian government's constitutional responsibilities.  To that end:

Are there any government or NGO grants to which one or more respondents from the Ada community could apply to submit (or better yet, receive grant funding for) a competing Ada pandemic-forecasting model (or better yet multiple models written in Ada that focus on different sets of parameters and assumptions)?

all the hurricane-forecast models by NHC of NOAA:
https://www.nhc.noaa.gov/modelsummary.shtml

The goal would be for humankind to have a plethora of competing pandemic-forecast models (some of which implemented in Ada) that somewhat resemble the plethora of competing hurricane-forecast models with which we have become familiar seeing plotted as spaghetti each hurricane to see where the preponderance is and which ones are suspect outliers that have applicability only if their bizarre situation is triggered.

example spaghetti plot of all the hurricane-forecast models by NHC of NOAA:
https://cdn.arstechnica.net/wp-content/uploads/2017/09/AL11_current-980x735.png

Such interested parties might not be only the obvious ones (e.g., the WHO) but also various militaries, hence the even stronger Ada tie-in.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
  2020-05-11 20:27 ` Niklas Holsti
  2020-05-13  0:25 ` Olivier Henley
@ 2020-05-16  5:01 ` Anatoly Chernyshev
  2020-05-28 21:45   ` Optikos
  2020-06-11 17:28   ` Olivier Henley
  2020-05-16 22:31 ` Niklas Holsti
                   ` (4 subsequent siblings)
  7 siblings, 2 replies; 71+ messages in thread
From: Anatoly Chernyshev @ 2020-05-16  5:01 UTC (permalink / raw)


"Clowns will dominate the pandemic-forecasting domain..."

I like that one...

Oh dear, you've lured me out. As a person who just published a Covid-19 forecasting model programmed in Ada, I can't stay away from this heated conversation.

There are so many concerns raised about scientists doing their rookie programming without resorting to professionals, so I don't even know where to start.

First of all, we are curious bunch, and learning something new (like programming) is always fun. Second, in scientific programming the chance that someone in power will lock down a country based on the output of your program is negligible (certainly it wasn't on the radars 13 years ago). Third, fourth... 

To make a long story short, for the experiment's sake, is there anyone willing to review my code? It's not a marvel of Ada programming, it just works.

Yet it's quite short - I went from the model's formulation, programming, testing, data acquisition, manuscript writeup in a matter of a fortnight.

If the review is useful, in terms that it helps to produce more accurate forecasts or identifies a drastic flaw in the code, I would be more than happy to do a revised version of the manuscript in a coauthorship with the reviewer(s). Or even go for a peer-reviewed publication when dust settles.

The model forecasts are here:
April 10th: https://xph.co.nz/temp/album/
May 12th: https://xph.co.nz/temp/album2005/
Some technical details: https://xph.co.nz/index.php/covid-19-progression-model/
The model description: https://www.medrxiv.org/content/10.1101/2020.04.03.20052985v1

This is not an epidemiology-based model (so you don't have to be one). Rather, it's a phenomenological one. It can predict what will happen, but can't (yet) say why this will happen. A contribution on the model is welcomed too.

The code is not published (since I didn't expect anyone would care), but I'll do it once there's interest.

If keen, please write to me directly: a~at~xph~dot~co~dot~nz

Anatoly

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
                   ` (2 preceding siblings ...)
  2020-05-16  5:01 ` Anatoly Chernyshev
@ 2020-05-16 22:31 ` Niklas Holsti
  2020-05-16 23:54   ` Optikos
  2020-05-24 21:04 ` Bob Goddard
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-16 22:31 UTC (permalink / raw)


On 2020-05-11 21:49, Rick Newbie wrote:
> This link is probably not reported in the MSM very much but I think it's 
> relevant. Not that I believe that Ada would have magically made 
> everything better, but to base the decision to destroy the Western 
> economies on code written in the C language that isn't even commented is 
> somewhat out of dystopian fantasy. There's a reason C is not used in 
> safety critical applications.
> I want to share this article here before it gets buried in the memory hole
> 
> 
> https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/

A post on comp.risks points to a different opinion, which includes a 
discussion of why the above "review" is mistaken:

 
https://philbull.wordpress.com/2020/05/10/why-you-can-ignore-reviews-of-scientific-code-by-commercial-software-developers/amp/

Some of the points made were already made in the comp.lang.ada 
discussion, but there are also others.

-- 
Niklas Holsti
niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-16 22:31 ` Niklas Holsti
@ 2020-05-16 23:54   ` Optikos
  2020-05-17 15:41     ` Niklas Holsti
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-16 23:54 UTC (permalink / raw)


On Saturday, May 16, 2020 at 5:31:17 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-11 21:49, Rick Newbie wrote:
> > This link is probably not reported in the MSM very much but I think it's 
> > relevant. Not that I believe that Ada would have magically made 
> > everything better, but to base the decision to destroy the Western 
> > economies on code written in the C language that isn't even commented is 
> > somewhat out of dystopian fantasy. There's a reason C is not used in 
> > safety critical applications.
> > I want to share this article here before it gets buried in the memory hole
> > 
> > 
> > https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/
> 
> A post on comp.risks points to a different opinion, which includes a 
> discussion of why the above "review" is mistaken:
> 
>  
> https://philbull.wordpress.com/2020/05/10/why-you-can-ignore-reviews-of-scientific-code-by-commercial-software-developers/amp/
> 
> Some of the points made were already made in the comp.lang.ada 
> discussion, but there are also others.

(sigh) Code smells in the source code are code smells in the source code itself, regardless of whomever the speaker is and regardless of whichever imprimatur of letters do or don't follow their name.  Niklas, you really are defending some sort of elite priesthood that lesser unwashed masses shall be unworthy to critique.  I'd rather cheer Anatoly's work onward than hear more about how the incumbent priesthood is rightly teflon coated and that the unwashed masses shall not dare to scratch the High Priesthood's perfect teflon.

Hopefully your URLs will spark greater productive debate instead of stifle it.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-16 23:54   ` Optikos
@ 2020-05-17 15:41     ` Niklas Holsti
  2020-05-17 17:38       ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-17 15:41 UTC (permalink / raw)


On 2020-05-17 2:54, Optikos wrote:
> On Saturday, May 16, 2020 at 5:31:17 PM UTC-5, Niklas Holsti wrote:
>> On 2020-05-11 21:49, Rick Newbie wrote:
>>> This link is probably not reported in the MSM very much but I think it's
>>> relevant. Not that I believe that Ada would have magically made
>>> everything better, but to base the decision to destroy the Western
>>> economies on code written in the C language that isn't even commented is
>>> somewhat out of dystopian fantasy. There's a reason C is not used in
>>> safety critical applications.
>>> I want to share this article here before it gets buried in the memory hole
>>>
>>>
>>> https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/
>>
>> A post on comp.risks points to a different opinion, which includes a
>> discussion of why the above "review" is mistaken:
>>
>>   
>> https://philbull.wordpress.com/2020/05/10/why-you-can-ignore-reviews-of-scientific-code-by-commercial-software-developers/amp/
>>
>> Some of the points made were already made in the comp.lang.ada
>> discussion, but there are also others.
> 
> (sigh) Code smells in the source code are code smells in the source
> code itself, regardless of whomever the speaker is and regardless of
> whichever imprimatur of letters do or don't follow their name.
So what? Smelly code can be correct, too.

> Niklas, you really are defending some sort of elite priesthood that
> lesser unwashed masses shall be unworthy to critique.  ... Hopefully
> your URLs will spark greater productive debate instead of stifle it.

Ferguson's code can be discussed from three aspects:

1. Whether the code is readable, well documented, well modularized, 
etc., that is, whether the code is sweet-smelling. It seems pointless to 
discuss, in comp.lang.ada, these issues for a specific program, unless 
the program's properties are taken as examples of some general things, 
for example Ada-vs-C differences. It also seems pointless to discuss 
here the practices of scientific programming in general, unless some 
issues relevant to Ada can be found there.

2. Whether the code correctly implements the epidemiological models and 
the particular assumptions for covid-19 that Ferguson's group has made. 
This we discussed. Some bugs in the program have been found, but they 
appear not to have large impact on the results, at least not on the 
statistical results. This is clearly relevant to comp.lang.ada, as 
possibly illuminating the bug-resistance properties of C/C++ and Ada. 
However, the examples of bugs that were discussed could as well have 
happened in Ada as in C or C++, unless one assumes that Ada programmers 
are generally more careful than C/C++ programmers.

3. Whether the epidemiological models and assumptions of Ferguson's 
group are correct for SARS-COV-2 and covid-19, and whether the 
lock-downs are good or bad. This is entirely irrelevant to 
comp.lang.ada, but it seemed to be what you wanted to discuss. A deep 
sigh from me, too.

-- 
Niklas Holsti

niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 15:41     ` Niklas Holsti
@ 2020-05-17 17:38       ` Optikos
  2020-05-17 18:00         ` Simon Wright
  2020-05-17 19:20         ` Niklas Holsti
  0 siblings, 2 replies; 71+ messages in thread
From: Optikos @ 2020-05-17 17:38 UTC (permalink / raw)


On Sunday, May 17, 2020 at 10:41:39 AM UTC-5, Niklas Holsti wrote:
> On 2020-05-17 2:54, Optikos wrote:
> > On Saturday, May 16, 2020 at 5:31:17 PM UTC-5, Niklas Holsti wrote:
> >> On 2020-05-11 21:49, Rick Newbie wrote:
> >>> This link is probably not reported in the MSM very much but I think it's
> >>> relevant. Not that I believe that Ada would have magically made
> >>> everything better, but to base the decision to destroy the Western
> >>> economies on code written in the C language that isn't even commented is
> >>> somewhat out of dystopian fantasy. There's a reason C is not used in
> >>> safety critical applications.
> >>> I want to share this article here before it gets buried in the memory hole
> >>>
> >>>
> >>> https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/
> >>
> >> A post on comp.risks points to a different opinion, which includes a
> >> discussion of why the above "review" is mistaken:
> >>
> >>   
> >> https://philbull.wordpress.com/2020/05/10/why-you-can-ignore-reviews-of-scientific-code-by-commercial-software-developers/amp/
> >>
> >> Some of the points made were already made in the comp.lang.ada
> >> discussion, but there are also others.
> > 
> > (sigh) Code smells in the source code are code smells in the source
> > code itself, regardless of whomever the speaker is and regardless of
> > whichever imprimatur of letters do or don't follow their name.
> So what? Smelly code can be correct, too.
> 
> > Niklas, you really are defending some sort of elite priesthood that
> > lesser unwashed masses shall be unworthy to critique.  ... Hopefully
> > your URLs will spark greater productive debate instead of stifle it.
> 
> Ferguson's code can be discussed from three aspects:

Correction:  at least these 3 aspects.  There may be more that occur to other commenters.

> 1. Whether the code is readable, well documented, well modularized, 
> etc., that is, whether the code is sweet-smelling. It seems pointless to 
> discuss, in comp.lang.ada, these issues for a specific program, unless 
> the program's properties are taken as examples of some general things, 
> for example Ada-vs-C differences. It also seems pointless to discuss 
> here

Despite your best efforts to side track the issue, we are trying to discuss topics that would be applicable to Anatoly's new Ada model, so that his doesn't have the same defects as Ferguson's.

> the practices of scientific programming in general, unless some 
> issues relevant to Ada can be found there.
> 
> 2. Whether the code correctly implements the epidemiological models and 
> the particular assumptions for covid-19 that Ferguson's group has made. 
> This we discussed. Some bugs in the program have been found, but they 
> appear not to have large impact on the results, at least not on the 
> statistical results. This is clearly relevant to comp.lang.ada, as 
> possibly illuminating the bug-resistance properties of C/C++ and Ada. 
> However, the examples of bugs that were discussed could as well have 
> happened in Ada as in C or C++, unless one assumes that Ada programmers 
> are generally more careful than C/C++ programmers.

We don't need to discuss never-ending wispy cloud formations of what-if Ada code in our imaginations anymore.  We have Anatoly's extant source code to review and suggest improvements upon.  

> 3. Whether the epidemiological models and assumptions of Ferguson's 
> group are correct

You keep basing so many of your pronouncements on a one-size-fits-all monolithic definition of correctness (and that Ferguson is definitely in possession of that One True And Only CorrectnessⓇ).  The entire point of having so many different drastically-different (and a few similar) software designs & implementations of hurricane models is that there are different horses bred for optimality on different courses.  Having a plethora of different models eventually for pandemics (e.g., Ferguson C, GitHub Ferguson C++, Anatoly Ada, anti-Ferguson, quasi-Ferguson, and so forth) would permit seeing where they all substantially overlap in their prediction versus what different characteristics the outliers have.  Once those characteristics of outliers are well-understood, one can see whether the current storm or the current pandemic actually is exhibiting those assumptions & characteristics (and thus make the outlier the spot-on predictor as the cream of the crop) versus not exhibiting those assumptions & characteristics (and thus damning the outlier to tin-foil hat status to ignore it for this pandemic).

> for SARS-COV-2 and covid-19, and whether the 
> lock-downs are good or bad. This is entirely irrelevant to 
> comp.lang.ada, but it seemed to be what you wanted to discuss. A deep 
> sigh from me, too.

If we can belabor the picayune details of unbounded string or some such detail for weeks within one Ada library, then we can discuss all sorts of aspects of Anatoly's source code, design, etc in his extant Ada source code if for no other reason than for public relations promotion of Ada in the news.

As alluded to in my reply to #3 above, I believe that there is a 4th avenue of exporation here.
4. Given that the Ferguson model is repeatedly overestimating calamity for multiple epidemics/pandemics for over a decade now, there must be some sort of incompleteness (if not full-fledged incorrectness/defect) in Ferguson's model that inhibits national & international leaders from tuning it to the situation to produce far more realistic forecasts that match the pandemic's actual rate of spread and fatality rate that eventually plays out in reality.  If all the hurricane models keep predicting that all of them will be category 5 hitting Fargo, North Dakota, then perhaps just perhaps despite meeting every definition of some sort of very defensible Holsti-correctness, that something is amiss in the hurricane model(s).  Likewise, having both the GitHub rework as variant competitor and Anatoly's as rethink competitor, the world then has the first 2 of an eventual plethora of pandemic-forecast models.  Perhaps one of them will more closely match as forecast how reality actually turned out for H3N1, H1N1, foot-&-mouth, and Mad Cow.  This is a chance for Anatoly's to come at the problem from a somewhat different perspective instead of being merely a verbatim transliteration of Ferguson's uncouth C code into more erudite Ada.

And oops, both of the drastically different Ferguson uncouth C design & code (or GitHub C++ evolution thereof) and Anatoly's erudite Ada design & code might meet 2 rather different definitions of being very-defensible Holti-correct.  Egads!
Q: But isn't that precisely what having a plethora of different hurricane/pandemic forecasting software packages is all about?
A: Multiple perspectives of correctness under differing parameters/assumptions/theories/schools-of-thought/branches-of-science.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 17:38       ` Optikos
@ 2020-05-17 18:00         ` Simon Wright
  2020-05-17 20:56           ` Optikos
  2020-05-17 19:20         ` Niklas Holsti
  1 sibling, 1 reply; 71+ messages in thread
From: Simon Wright @ 2020-05-17 18:00 UTC (permalink / raw)


Optikos <ZUERCHER_Andreas@outlook.com> writes:

> Given that the Ferguson model is repeatedly overestimating calamity
> for multiple epidemics/pandemics for over a decade now

Can you point us to the evidence for this? (again, if necessary)

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 17:38       ` Optikos
  2020-05-17 18:00         ` Simon Wright
@ 2020-05-17 19:20         ` Niklas Holsti
  2020-05-17 21:30           ` Optikos
  1 sibling, 1 reply; 71+ messages in thread
From: Niklas Holsti @ 2020-05-17 19:20 UTC (permalink / raw)


On 2020-05-17 20:38, Optikos wrote:

    ...

> Despite your best efforts to side track the issue, we are trying to
> discuss topics that would be applicable to Anatoly's new Ada model,
> so that his doesn't have the same defects as Ferguson's.

    ...

> We don't need to discuss never-ending wispy cloud formations of
> what-if Ada code in our imaginations anymore.  We have Anatoly's
> extant source code to review and suggest improvements upon.
Fine, I'm not preventing you from doing that. But Anatoly's program is 
based on very different modelling principles and computational methods, 
so any comparison to Ferguson's code will hardly illuminate the C-vs-Ada 
aspects any more than comparing any chosen C code to any chosen Ada 
code, solving different problems.

>> 3. Whether the epidemiological models and assumptions of Ferguson's
>> group are correct
> 
> You keep basing so many of your pronouncements on a one-size-fits-all
> monolithic definition of correctness (and that Ferguson is definitely
> in possession of that One True And Only CorrectnessⓇ).
That is a false claim. I have never claimed to know anything about the 
correctness of Ferguson's models.

To avoid being pulled into further pointless argumentation, I will 
kill-file you. Bye.

-- 
Niklas Holsti

niklas holsti tidorum fi
       .      @       .

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 18:00         ` Simon Wright
@ 2020-05-17 20:56           ` Optikos
  2020-05-17 21:20             ` Simon Wright
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-17 20:56 UTC (permalink / raw)


On Sunday, May 17, 2020 at 1:00:10 PM UTC-5, Simon Wright wrote:
> Optikos writes:
> 
> > Given that the Ferguson model is repeatedly overestimating calamity
> > for multiple epidemics/pandemics for over a decade now
> 
> Can you point us to the evidence for this? (again, if necessary)

Yes, I'd be glad to.  (But I am not endorsing any of this content.  I am merely saying that it should be taken as input to debate Anatoly's source code and any other Ada pandemic forecasting models that might arise, as such criticisms in the popular press or social-critique press serve as some degree of expectations that society places upon software modeling.)

repeated from the thread above:
https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp

and links therein.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 20:56           ` Optikos
@ 2020-05-17 21:20             ` Simon Wright
  2020-05-17 21:45               ` Optikos
  0 siblings, 1 reply; 71+ messages in thread
From: Simon Wright @ 2020-05-17 21:20 UTC (permalink / raw)


Optikos <ZUERCHER_Andreas@outlook.com> writes:

> On Sunday, May 17, 2020 at 1:00:10 PM UTC-5, Simon Wright wrote:
>> Optikos writes:
>> 
>> > Given that the Ferguson model is repeatedly overestimating calamity
>> > for multiple epidemics/pandemics for over a decade now
>> 
>> Can you point us to the evidence for this? (again, if necessary)
>
> Yes, I'd be glad to.  (But I am not endorsing any of this content.  I
> am merely saying that it should be taken as input to debate Anatoly's
> source code and any other Ada pandemic forecasting models that might
> arise, as such criticisms in the popular press or social-critique
> press serve as some degree of expectations that society places upon
> software modeling.)
>
> repeated from the thread above:
> https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp
>
> and links therein.

First reactions: Not a huge fan of the Spectator, and certainly not of
that journalist who "is The Spectator's gossip columnist, serving up the
latest tittle tattle from Westminster and beyond".

It's far from obvious that all the overestimates quoted are down to the
model used ffor COVID-19.

For all we know there are underestimates as well.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 19:20         ` Niklas Holsti
@ 2020-05-17 21:30           ` Optikos
  0 siblings, 0 replies; 71+ messages in thread
From: Optikos @ 2020-05-17 21:30 UTC (permalink / raw)


On Sunday, May 17, 2020 at 2:20:56 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-17 20:38, Optikos wrote:
> 
>     ...
> 
> > Despite your best efforts to side track the issue, we are trying to
> > discuss topics that would be applicable to Anatoly's new Ada model,
> > so that his doesn't have the same defects as Ferguson's.
> 
>     ...
> 
> > We don't need to discuss never-ending wispy cloud formations of
> > what-if Ada code in our imaginations anymore.  We have Anatoly's
> > extant source code to review and suggest improvements upon.
> Fine, I'm not preventing you from doing that. But Anatoly's program is 
> based on very different modelling principles and computational methods, 
> so any comparison to Ferguson's code will hardly illuminate the C-vs-Ada 
> aspects any more than comparing any chosen C code to any chosen Ada 
> code, solving different problems.
> 
> >> 3. Whether the epidemiological models and assumptions of Ferguson's
> >> group are correct
> > 
> > You keep basing so many of your pronouncements on a one-size-fits-all
> > monolithic definition of correctness (and that Ferguson is definitely
> > in possession of that One True And Only CorrectnessⓇ).
> That is a false claim. I have never claimed to know anything about the 
> correctness of Ferguson's models.

On this and the bulk of all of your replies on this posting, methinks you doth protest too much.  Obviously, you are intentionally trying to stifle free and open debate on this topic.  Only you can divulge why you do that.

As to your demonstrably false claim that you never made any claims at all about the correctness or validity of Ferguson's model or its design beyond its implementation in C/C++ source code, let's review your prior postings above:

On Wednesday, May 13, 2020 at 9:05:50 AM UTC-5, Niklas Holsti wrote:
> On 2020-05-13 16:52, Optikos wrote:
> > On which date did they fix the problem?  Before or after governments
> > acted on the miscalculations?
> 
> There has been no demonstration that the early predictions from this 
> program, that prodded governments into action, were "miscalculations" to 
> any significant degree, especially after the recommended practice of 
> performing several runs and considering the ensemble of results.

That is a judgement not only of the correctness of the source code itself, but also that the model produces results that are not miscalculations/over-estimates that are trustworthy enough to be actionable by governments that were prodded into action by those trustworthy results.

On Tuesday, May 12, 2020 at 5:20:14 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-13 0:27, Jeffrey R. Carter wrote:
> > This is different from the kind of non-determinism of simulations
> > that are intended to be run many times with different RNG seeds.
> 
> Yes indeed, and I would not call that non-determinism of the code. The 
> reviewer also condemned that kind of stochastic exploration and seemed 
> to confuse it with real non-determinism. It is true that Monte Carlo is 
> often used when the system being simulated is chaotic in some way so 
> that its behaviour is essentially unpredictable, and can be so sensitive 
> that no practical floating-point precision can give a truly reliable end 
> result in any given simulation.

That is another judgement-of-validity on Ferguson's choice of stochastic model's algorithm itself*, not its implementation in source code.  The reviewer is discussing primarily the design and by cascading ramification the implementation too by using the code as a proxy for a missing design document, but your defense quoted above discusses not so much the source code, but the stochastic algorithm itself as Ferguson's valid modeling design decision.

* that would apply to implementing that design in any other language

On Monday, May 11, 2020 at 3:27:06 PM UTC-5, Niklas Holsti wrote:
> On 2020-05-11 21:49, Rick Newbie wrote:
> > I want to share this article here before it gets buried in the memory hole
> > https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/
> 
> …
> 
> - The authors of the code defended the non-determinism by saying that 
> the simulation is statistical, anyway, and that all simulations should 
> be repeated several times to get an ensemble of possible behaviour. The 
> reviewer did not accept this defense, but insisted on determinism. 
> However, I know of at least one example where non-determinism is 
> accepted and used in this way: simulations of many-body gravitational 
> systems, such as planetary systems, where it is very common to compute 
> thousands or millions of simulations and then estimate the likelihood of 
> particular final outcomes (say, the ejection of one planet from the 
> system) from the ensemble of simulations.

That is yet another judgement-of-validity on the non-determinism in Ferguson's choice of algorithmic design* of the model, not the source code itself.

* that would apply to implementing that design in any other language

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 21:20             ` Simon Wright
@ 2020-05-17 21:45               ` Optikos
  2020-05-18  7:34                 ` Simon Wright
  0 siblings, 1 reply; 71+ messages in thread
From: Optikos @ 2020-05-17 21:45 UTC (permalink / raw)


On Sunday, May 17, 2020 at 4:20:07 PM UTC-5, Simon Wright wrote:
> Optikos writes:
> 
> > On Sunday, May 17, 2020 at 1:00:10 PM UTC-5, Simon Wright wrote:
> >> Optikos writes:
> >> 
> >> > Given that the Ferguson model is repeatedly overestimating calamity
> >> > for multiple epidemics/pandemics for over a decade now
> >> 
> >> Can you point us to the evidence for this? (again, if necessary)
> >
> > Yes, I'd be glad to.  (But I am not endorsing any of this content.  I
> > am merely saying that it should be taken as input to debate Anatoly's
> > source code and any other Ada pandemic forecasting models that might
> > arise, as such criticisms in the popular press or social-critique
> > press serve as some degree of expectations that society places upon
> > software modeling.)
> >
> > repeated from the thread above:
> > https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp
> >
> > and links therein.
> 
> First reactions: Not a huge fan of the Spectator, and certainly not of
> that journalist who "is The Spectator's gossip columnist, serving up the
> latest tittle tattle from Westminster and beyond".

Hence why I overtly stated “and links therein”.  Are you likewise not a fan of The Telegraph and its Katherine Rushton and Daniel Faggo?

paywalled:
https://www.telegraph.co.uk/news/2020/03/28/neil-ferguson-scientist-convinced-boris-johnson-uk-coronavirus-lockdown-criticised

somewhat more excerpts from The Telegraph article:
https://www.breitbart.com/europe/2020/04/01/uk-government-lockdown-policy-may-be-based-on-dodgy-modelling

Are you likewise not a fan of Breitbart and its James Delingpole?

Here is a linked-therein critique of Ferguson's model dating back to foot-&-mouth disease era:
https://www.research.ed.ac.uk/portal/files/14288330/Use_and_abuse_of_mathematical_models_an_illustration_from_the_2001_foot_and_mouth_disease_epidemic_in_the_United_Kingdom.pdf

Despite lack of fandom, at their core the main thrust of these articles does not seem heavy-handed propagandistic or hardline politicizing of the topic.  At their core, they seem to quoting excerpts of upstream work and saying these critiques exist and here is the link to the upstream work at which the interested reader may read further.  Perhaps ad hominem against the gossip columnist is not especially warranted in this case in a don't-kill-the-messenger moral of the story.

Again I reiterate from a prior reply above, these writings in the popular press and the critical-thinking press set a degree of expectation for an Ada model of pandemic forecasting to perhaps live up to, if they have merit.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-17 21:45               ` Optikos
@ 2020-05-18  7:34                 ` Simon Wright
  0 siblings, 0 replies; 71+ messages in thread
From: Simon Wright @ 2020-05-18  7:34 UTC (permalink / raw)


Optikos <ZUERCHER_Andreas@outlook.com> writes:

> On Sunday, May 17, 2020 at 4:20:07 PM UTC-5, Simon Wright wrote:
>> Optikos writes:
>> 
>> > On Sunday, May 17, 2020 at 1:00:10 PM UTC-5, Simon Wright wrote:
>> >> Optikos writes:
[...]
>> > repeated from the thread above:
>> > https://www.spectator.co.uk/article/six-questions-that-neil-ferguson-should-be-asked/amp
>> >
>> > and links therein.
>> 
>> First reactions: Not a huge fan of the Spectator, and certainly not of
>> that journalist who "is The Spectator's gossip columnist, serving up the
>> latest tittle tattle from Westminster and beyond".
>
> Hence why I overtly stated “and links therein”.  Are you likewise not
> a fan of The Telegraph and its Katherine Rushton and Daniel Faggo?

Absolutely not a fan of the "Torygraph"

> Are you likewise not a fan of Breitbart and its James Delingpole?

Well-known Brexit fanboys, which evidence suggests they're best ignored

> Here is a linked-therein critique of Ferguson's model dating back to
> foot-&-mouth disease era:
> https://www.research.ed.ac.uk/portal/files/14288330/Use_and_abuse_of_mathematical_models_an_illustration_from_the_2001_foot_and_mouth_disease_epidemic_in_the_United_Kingdom.pdf

That's a [probably justified] criticism of the use of Ferguson &co's
modelling teams' work. Not a criticism of Ferguson's model as used
recently, which - at 13 yars old - started 6 years after the 2001 FMD
outbreak.

> Perhaps ad hominem against the gossip columnist is not especially
> warranted in this case in a don't-kill-the-messenger moral of the
> story.

He writes under the byline that I quoted

> Again I reiterate from a prior reply above, these writings in the
> popular press and the critical-thinking press set a degree of
> expectation for an Ada model of pandemic forecasting to perhaps live
> up to, if they have merit.

The Edinburgh article recommends not using modelling at all prior
to/during an outbreak, only afterwards

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
                   ` (3 preceding siblings ...)
  2020-05-16 22:31 ` Niklas Holsti
@ 2020-05-24 21:04 ` Bob Goddard
  2020-05-31 15:01 ` Azathoth Hastur
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 71+ messages in thread
From: Bob Goddard @ 2020-05-24 21:04 UTC (permalink / raw)


Ferguson should have given 3 outputs, best case, worst case & most likely case.

All we got was worst case.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-16  5:01 ` Anatoly Chernyshev
@ 2020-05-28 21:45   ` Optikos
  2020-06-11 17:28   ` Olivier Henley
  1 sibling, 0 replies; 71+ messages in thread
From: Optikos @ 2020-05-28 21:45 UTC (permalink / raw)


On Saturday, May 16, 2020 at 12:01:05 AM UTC-5, Anatoly Chernyshev wrote:
> "Clowns will dominate the pandemic-forecasting domain..."
> 
> I like that one...
> 
> Oh dear, you've lured me out. As a person who just published a Covid-19 forecasting model programmed
> in Ada, I can't stay away from this heated conversation.
> 
> There are so many concerns raised about scientists doing their rookie programming without resorting to
> professionals, so I don't even know where to start.
> 
> First of all, we are curious bunch, and learning something new (like programming) is always fun. Second,
> in scientific programming the chance that someone in power will lock down a country based on the
> output of your program is negligible (certainly it wasn't on the radars 13 years ago). Third, fourth... 
> 
> To make a long story short, for the experiment's sake, is there anyone willing to review my code? It's not
> a marvel of Ada programming, it just works.
> 
> Yet it's quite short - I went from the model's formulation, programming, testing, data acquisition,
> manuscript writeup in a matter of a fortnight.
> 
> If the review is useful, in terms that it helps to produce more accurate forecasts or identifies a drastic
> flaw in the code, I would be more than happy to do a revised version of the manuscript in a coauthorship
> with the reviewer(s). Or even go for a peer-reviewed publication when dust settles.
> 
> The model forecasts are here:
> April 10th: https://xph.co.nz/temp/album/
> May 12th: https://xph.co.nz/temp/album2005/
> Some technical details: https://xph.co.nz/index.php/covid-19-progression-model/
> The model description: https://www.medrxiv.org/content/10.1101/2020.04.03.20052985v1
> 
> This is not an epidemiology-based model (so you don't have to be one). Rather, it's a phenomenological
> one. It can predict what will happen, but can't (yet) say why this will happen. A contribution on the model
> is welcomed too.
> 
> The code is not published (since I didn't expect anyone would care), but I'll do it once there's interest.
> 
> If keen, please write to me directly: a~at~xph~dot~co~dot~nz
> 
> Anatoly

In regards to a few participants on this thread other than Anatoly:

https://twitter.com/NikolovScience/status/1250462246456578049?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1250462246456578049

Another non-Ferguson modeler of notoriety has arisen, as linked above:  Isaac ben-Israel.  Ben-Isreal is a mathematician instead of an MD, but these models are the intersection of 3 domains of knowledge:  epidemiology, mathematical modeling, and computer programming.  Experts from all 3 fields need to come together (or grind against each other competitively as cordial gentlemen) to arrive at accurately-predictive forecasts; neither any one person nor any one discipline owns the whole topic lock stock & barrel.  Science is best when well-reasoned factions dissent against each other, not when 97% of scientists all align to vociferously defend each other as a mutual-admiration-society brotherhood(-or-political-party) that is to not be questioned by the unwashed masses. 

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
                   ` (4 preceding siblings ...)
  2020-05-24 21:04 ` Bob Goddard
@ 2020-05-31 15:01 ` Azathoth Hastur
  2020-06-09  6:30 ` gautier_niouzes
  2020-06-11 15:35 ` Olivier Henley
  7 siblings, 0 replies; 71+ messages in thread
From: Azathoth Hastur @ 2020-05-31 15:01 UTC (permalink / raw)


On Monday, May 11, 2020 at 2:49:18 PM UTC-4, Rick Newbie wrote:
> This link is probably not reported in the MSM very much but I think it's 
> relevant. Not that I believe that Ada would have magically made 
> everything better, but to base the decision to destroy the Western 
> economies on code written in the C language that isn't even commented is 
> somewhat out of dystopian fantasy. There's a reason C is not used in 
> safety critical applications.
> I want to share this article here before it gets buried in the memory hole
> 
> 
> https://chrisvoncsefalvay.com/2020/05/09/imperial-covid-model/

biomed industry is a larp

I wonder if fasting can replace like 99% of medical bs

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
                   ` (5 preceding siblings ...)
  2020-05-31 15:01 ` Azathoth Hastur
@ 2020-06-09  6:30 ` gautier_niouzes
  2020-06-11 15:35 ` Olivier Henley
  7 siblings, 0 replies; 71+ messages in thread
From: gautier_niouzes @ 2020-06-09  6:30 UTC (permalink / raw)


For the fun of it (kind of), I have implemented a basic SEIR (*) model.
See covid_19.adb @

https://sourceforge.net/projects/mathpaqs/
or
https://github.com/zertovitch/mathpaqs

Directory: diff_eq/ode/

GNAT project file: mathpaqs.gpr
___
(*) The SEIR letters stand for:
  S: Susceptible
  E: Exposed
  I: Infectious
  R: Recovered

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
                   ` (6 preceding siblings ...)
  2020-06-09  6:30 ` gautier_niouzes
@ 2020-06-11 15:35 ` Olivier Henley
  2020-06-11 15:49   ` Olivier Henley
  2020-06-12  7:03   ` gautier_niouzes
  7 siblings, 2 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 15:35 UTC (permalink / raw)


For the fun of it (kind of), I have implemented a visual tool (qt5ada based) driving the simulation code made by Gautier:

https://github.com/ohenley/covidsim

Enjoy!

p.s: do not hesitate to communicate with me if you run into problems building/running it. It should work first shot but this is on my machine...

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 15:35 ` Olivier Henley
@ 2020-06-11 15:49   ` Olivier Henley
  2020-06-11 18:41     ` Anh Vo
  2020-06-12  7:03   ` gautier_niouzes
  1 sibling, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 15:49 UTC (permalink / raw)


> It should work first shot but this is on my machine...

Just tried a fresh clone of the repo, followed the instructions of the Readme.md and it worked first shot ... This is rare my friend 

;)

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-05-16  5:01 ` Anatoly Chernyshev
  2020-05-28 21:45   ` Optikos
@ 2020-06-11 17:28   ` Olivier Henley
  2020-06-11 17:36     ` Olivier Henley
  2020-06-11 22:43     ` Anatoly Chernyshev
  1 sibling, 2 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 17:28 UTC (permalink / raw)


On Saturday, May 16, 2020 at 1:01:05 AM UTC-4, Anatoly Chernyshev wrote:
> "Clowns will dominate the pandemic-forecasting domain..."
> 
> I like that one...
> 
> Oh dear, you've lured me out. As a person who just published a Covid-19 forecasting model programmed in Ada, I can't stay away from this heated conversation.
> 
> There are so many concerns raised about scientists doing their rookie programming without resorting to professionals, so I don't even know where to start.
> 
> First of all, we are curious bunch, and learning something new (like programming) is always fun. Second, in scientific programming the chance that someone in power will lock down a country based on the output of your program is negligible (certainly it wasn't on the radars 13 years ago). Third, fourth... 
> 
> To make a long story short, for the experiment's sake, is there anyone willing to review my code? It's not a marvel of Ada programming, it just works.
> 
> Yet it's quite short - I went from the model's formulation, programming, testing, data acquisition, manuscript writeup in a matter of a fortnight.
> 
> If the review is useful, in terms that it helps to produce more accurate forecasts or identifies a drastic flaw in the code, I would be more than happy to do a revised version of the manuscript in a coauthorship with the reviewer(s). Or even go for a peer-reviewed publication when dust settles.
> 
> The model forecasts are here:
> April 10th: https://xph.co.nz/temp/album/
> May 12th: https://xph.co.nz/temp/album2005/
> Some technical details: https://xph.co.nz/index.php/covid-19-progression-model/
> The model description: https://www.medrxiv.org/content/10.1101/2020.04.03.20052985v1
> 
> This is not an epidemiology-based model (so you don't have to be one). Rather, it's a phenomenological one. It can predict what will happen, but can't (yet) say why this will happen. A contribution on the model is welcomed too.
> 
> The code is not published (since I didn't expect anyone would care), but I'll do it once there's interest.
> 
> If keen, please write to me directly: a~at~xph~dot~co~dot~nz
> 
> Anatoly

Hi Anatoly,

Maybe, if you agree, are interested, and your code is not a nightmare to work with (refactor to expose things needed to drive it in UI), I could find time to code a graphical tool for it. Please consider what I did for Gautier's work (the screenshot does not show but everything is dynamic and the export to .csv works like a charm). It took me half a day learning the qt5ada binding on the fly:

https://github.com/ohenley/covidsim

My plan would be quite straightforward; in loose Model-View-Controller terminology:

1. Take your 'engine/simulation' code, make a git repo, publish it as a fork on GitHub. No fork this time if your code is not on GitHub already. Would be best for you to own it (create a Github user, upload your code, etc. But if you are not up to that, I will take care of it. You can collaborate on my repo with proper credentials explicitly set anyways.)

2. I refactor your code to push at the frontier, only parameters and simulation outputs to be driven/drive the UI layer. I do not touch the simulation calculations, this is not my expertise, and if the engine internals break I want *you* to fix it. I only/mostly touch on the inputs and outputs of those computes for them to become parametrizable externally. (This layer is the Model, your know-how.)

3. I create the visual layer, expose the parameters and behavior we want for the tool. (This layer is the View and Controller). I make another git repo out of this. This layer owns your layer to 'talk' with it.

We end up we 2 codebase/repos, like that, you and other scientists can fix the 'engine' without me knowing/caring because you touch on the 'model' layer only.

Anytime you come up with new features/computations etc working, you tell me, I repeat steps 2. and 3. to have the feature exposed in the visual tool.

Let me know what you think if you are interested. I will forward this to your mail too.

Olivier

p.s: If your codebase is huge/complex/lot of features maybe we can start to expose only a subset in a tool. From there, because it's available through github, people in this thread could collaborate (clone, edit, push)

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 17:28   ` Olivier Henley
@ 2020-06-11 17:36     ` Olivier Henley
  2020-06-11 22:43     ` Anatoly Chernyshev
  1 sibling, 0 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 17:36 UTC (permalink / raw)


Actually, I would add your engine to CovidSim alongside Gautier's work and make the proper UI/UX to choose any 'simulator'. 

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 15:49   ` Olivier Henley
@ 2020-06-11 18:41     ` Anh Vo
  2020-06-11 19:58       ` Olivier Henley
  0 siblings, 1 reply; 71+ messages in thread
From: Anh Vo @ 2020-06-11 18:41 UTC (permalink / raw)


On Thursday, June 11, 2020 at 8:49:40 AM UTC-7, Olivier Henley wrote:
> > It should work first shot but this is on my machine...
> 
> Just tried a fresh clone of the repo, followed the instructions of the Readme.md and it worked first shot ... This is rare my friend 
> 
> ;)

There are number of syntax errors during compilation. Below is a very first syntax error.

covidsim.adb:5:20: a subprogram is not allowed in a use clause
gprbuild: *** compilation phase failed

After fixing it, others showed up

covidsimform.adb:64:44: "Simulation_Data" is undefined (more references follow)
covidsimform.adb:66:29: "Status" is undefined
covidsimform.adb:107:36: "Simulation" is undefined (more references follow)
covidsimform.adb:107:47: prefix of "value" attribute must be a type
covidsimform.adb:133:16: cannot iterate over "QStringListH"
covidsimform.adb:133:16: to iterate directly over the elements of a container, write "of scena
rios"
covidsimform.adb:187:47: prefix of "value" attribute must be a type
covidsimform.adb:189:07: "Export_To_CSV" is undefined
gprbuild: *** compilation phase failed

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 18:41     ` Anh Vo
@ 2020-06-11 19:58       ` Olivier Henley
  2020-06-11 20:41         ` Anh Vo
  0 siblings, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 19:58 UTC (permalink / raw)


On Thursday, June 11, 2020 at 2:41:26 PM UTC-4, Anh Vo wrote:
> On Thursday, June 11, 2020 at 8:49:40 AM UTC-7, Olivier Henley wrote:
> > > It should work first shot but this is on my machine...
> > 
> > Just tried a fresh clone of the repo, followed the instructions of the Readme.md and it worked first shot ... This is rare my friend 
> > 
> > ;)
> 
> There are number of syntax errors during compilation. Below is a very first syntax error.
> 
> covidsim.adb:5:20: a subprogram is not allowed in a use clause
> gprbuild: *** compilation phase failed
> 
> After fixing it, others showed up
> 
> covidsimform.adb:64:44: "Simulation_Data" is undefined (more references follow)
> covidsimform.adb:66:29: "Status" is undefined
> covidsimform.adb:107:36: "Simulation" is undefined (more references follow)
> covidsimform.adb:107:47: prefix of "value" attribute must be a type
> covidsimform.adb:133:16: cannot iterate over "QStringListH"
> covidsimform.adb:133:16: to iterate directly over the elements of a container, write "of scena
> rios"
> covidsimform.adb:187:47: prefix of "value" attribute must be a type
> covidsimform.adb:189:07: "Export_To_CSV" is undefined
> gprbuild: *** compilation phase failed

Im using gnat-ce 2019 by AdaCore on Windows10.

1. Maybe you have more restrictions on the compilation than I do?
2. Please try a similar setup because it compiles with no problems.
3. I'll try to reproduce your case.

What is your setup? (compiler, OS and maybe compilation options)

Thank you for trying the build and your feedback Anh.

Olivieer

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 19:58       ` Olivier Henley
@ 2020-06-11 20:41         ` Anh Vo
  2020-06-11 20:47           ` Olivier Henley
  0 siblings, 1 reply; 71+ messages in thread
From: Anh Vo @ 2020-06-11 20:41 UTC (permalink / raw)


On Thursday, June 11, 2020 at 12:58:29 PM UTC-7, Olivier Henley wrote:
> On Thursday, June 11, 2020 at 2:41:26 PM UTC-4, Anh Vo wrote:
> > On Thursday, June 11, 2020 at 8:49:40 AM UTC-7, Olivier Henley wrote:
> > > > It should work first shot but this is on my machine...
> > > 
> > > Just tried a fresh clone of the repo, followed the instructions of the Readme.md and it worked first shot ... This is rare my friend 
> > > 
> > > ;)
> > 
> > There are number of syntax errors during compilation. Below is a very first syntax error.
> > 
> > covidsim.adb:5:20: a subprogram is not allowed in a use clause
> > gprbuild: *** compilation phase failed
> > 
> > After fixing it, others showed up
> > 
> > covidsimform.adb:64:44: "Simulation_Data" is undefined (more references follow)
> > covidsimform.adb:66:29: "Status" is undefined
> > covidsimform.adb:107:36: "Simulation" is undefined (more references follow)
> > covidsimform.adb:107:47: prefix of "value" attribute must be a type
> > covidsimform.adb:133:16: cannot iterate over "QStringListH"
> > covidsimform.adb:133:16: to iterate directly over the elements of a container, write "of scena
> > rios"
> > covidsimform.adb:187:47: prefix of "value" attribute must be a type
> > covidsimform.adb:189:07: "Export_To_CSV" is undefined
> > gprbuild: *** compilation phase failed
> 
> Im using gnat-ce 2019 by AdaCore on Windows10.
> 
> 1. Maybe you have more restrictions on the compilation than I do?
> 2. Please try a similar setup because it compiles with no problems.
> 3. I'll try to reproduce your case.
> 
> What is your setup? (compiler, OS and maybe compilation options)
> 
> Thank you for trying the build and your feedback Anh.
> 
> Olivieer

I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 20:41         ` Anh Vo
@ 2020-06-11 20:47           ` Olivier Henley
  2020-06-11 21:34             ` Anh Vo
  2020-06-11 21:39             ` Olivier Henley
  0 siblings, 2 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 20:47 UTC (permalink / raw)


> I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.

Ok I will install gnat-ce 2020 right away to see if I can reproduce.

Like I said, working first shot is really rare. :)

Thanks again for the interest.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 20:47           ` Olivier Henley
@ 2020-06-11 21:34             ` Anh Vo
  2020-06-11 21:47               ` Olivier Henley
  2020-06-11 21:39             ` Olivier Henley
  1 sibling, 1 reply; 71+ messages in thread
From: Anh Vo @ 2020-06-11 21:34 UTC (permalink / raw)


On Thursday, June 11, 2020 at 1:47:04 PM UTC-7, Olivier Henley wrote:
> > I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.
> 
> Ok I will install gnat-ce 2020 right away to see if I can reproduce.
> 
> Like I said, working first shot is really rare. :)
> 
> Thanks again for the interest.

Thanks Olivier for sharing your work. By the way, as notice error message from the compiler, Ada Unit Subprogram procedure Covid_19 is different from Ada Unit Package. Thus, Use Clause can not be applied to procedure Covid_19. In addition, it has default procedure specification as (procedure Covid_19;). Thus, nothing is visible from it.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 20:47           ` Olivier Henley
  2020-06-11 21:34             ` Anh Vo
@ 2020-06-11 21:39             ` Olivier Henley
  2020-06-11 23:14               ` Anh Vo
  1 sibling, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 21:39 UTC (permalink / raw)


On Thursday, June 11, 2020 at 4:47:04 PM UTC-4, Olivier Henley wrote:
> > I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.
> 
> Ok I will install gnat-ce 2020 right away to see if I can reproduce.
> 
> Like I said, working first shot is really rare. :)
> 
> Thanks again for the interest.

Ok scratching my head.

I just downloaded/installed gnat 2020, changed my env. variables to point at gnat 2020, cleaned up the obj folder, build the project. Tried both command line and in GNAT studio. Both worked.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 21:34             ` Anh Vo
@ 2020-06-11 21:47               ` Olivier Henley
  0 siblings, 0 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 21:47 UTC (permalink / raw)


On Thursday, June 11, 2020 at 5:34:10 PM UTC-4, Anh Vo wrote:
> On Thursday, June 11, 2020 at 1:47:04 PM UTC-7, Olivier Henley wrote:
> > > I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.
> > 
> > Ok I will install gnat-ce 2020 right away to see if I can reproduce.
> > 
> > Like I said, working first shot is really rare. :)
> > 
> > Thanks again for the interest.
> 
> Thanks Olivier for sharing your work. By the way, as notice error message from the compiler, Ada Unit Subprogram procedure Covid_19 is different from Ada Unit Package. Thus, Use Clause can not be applied to procedure Covid_19. In addition, it has default procedure specification as (procedure Covid_19;). Thus, nothing is visible from it.

I do not get it. 

There is no Covid_19 procedure anywhere in the code, only a package.

Since your first message, I remove the 'with Covid_19; use Covid_19' from covidsim.adb as it was not used anymore.

Maybe do a 'git reset --hard' and try building again?

Olivier

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 17:28   ` Olivier Henley
  2020-06-11 17:36     ` Olivier Henley
@ 2020-06-11 22:43     ` Anatoly Chernyshev
  2020-06-12 12:10       ` Olivier Henley
  1 sibling, 1 reply; 71+ messages in thread
From: Anatoly Chernyshev @ 2020-06-11 22:43 UTC (permalink / raw)


Hi Olivier,

Thank you for your generous offer. However, this model is an (unorthodox) academic exercise, which draws attention of very few people. So, the development of a UI will be unwarranted waste of time (on my side in any case).

As the current pandemics draws to a close, I probably will make yet another updated forecast in the next week or so, and be through with it. This is not the main application area in our company anyways.

If anything, I'd rather see the GUI implemented in GNOGA. So that the software would automatically download the countries statistics from a WHO server, and update the graphs accordingly on a web page. That would require a major overhaul of my current code though...

That's probably what we can do for the next pandemic, due in the next 8-10 years (according to the recent history). If you don't mind I'll take a rain check for your proposal. Thank you again.

Cheers,

Anatoly

On Friday, June 12, 2020 at 5:28:42 AM UTC+12, Olivier Henley wrote:
> On Saturday, May 16, 2020 at 1:01:05 AM UTC-4, Anatoly Chernyshev wrote:
> > "Clowns will dominate the pandemic-forecasting domain..."
> > 
> > I like that one...
> > 
> > Oh dear, you've lured me out. As a person who just published a Covid-19 forecasting model programmed in Ada, I can't stay away from this heated conversation.
> > 
> > There are so many concerns raised about scientists doing their rookie programming without resorting to professionals, so I don't even know where to start.
> > 
> > First of all, we are curious bunch, and learning something new (like programming) is always fun. Second, in scientific programming the chance that someone in power will lock down a country based on the output of your program is negligible (certainly it wasn't on the radars 13 years ago). Third, fourth... 
> > 
> > To make a long story short, for the experiment's sake, is there anyone willing to review my code? It's not a marvel of Ada programming, it just works.
> > 
> > Yet it's quite short - I went from the model's formulation, programming, testing, data acquisition, manuscript writeup in a matter of a fortnight.
> > 
> > If the review is useful, in terms that it helps to produce more accurate forecasts or identifies a drastic flaw in the code, I would be more than happy to do a revised version of the manuscript in a coauthorship with the reviewer(s). Or even go for a peer-reviewed publication when dust settles.
> > 
> > The model forecasts are here:
> > April 10th: https://xph.co.nz/temp/album/
> > May 12th: https://xph.co.nz/temp/album2005/
> > Some technical details: https://xph.co.nz/index.php/covid-19-progression-model/
> > The model description: https://www.medrxiv.org/content/10.1101/2020.04.03.20052985v1
> > 
> > This is not an epidemiology-based model (so you don't have to be one). Rather, it's a phenomenological one. It can predict what will happen, but can't (yet) say why this will happen. A contribution on the model is welcomed too.
> > 
> > The code is not published (since I didn't expect anyone would care), but I'll do it once there's interest.
> > 
> > If keen, please write to me directly: a~at~xph~dot~co~dot~nz
> > 
> > Anatoly
> 
> Hi Anatoly,
> 
> Maybe, if you agree, are interested, and your code is not a nightmare to work with (refactor to expose things needed to drive it in UI), I could find time to code a graphical tool for it. Please consider what I did for Gautier's work (the screenshot does not show but everything is dynamic and the export to .csv works like a charm). It took me half a day learning the qt5ada binding on the fly:
> 
> https://github.com/ohenley/covidsim
> 
> My plan would be quite straightforward; in loose Model-View-Controller terminology:
> 
> 1. Take your 'engine/simulation' code, make a git repo, publish it as a fork on GitHub. No fork this time if your code is not on GitHub already. Would be best for you to own it (create a Github user, upload your code, etc. But if you are not up to that, I will take care of it. You can collaborate on my repo with proper credentials explicitly set anyways.)
> 
> 2. I refactor your code to push at the frontier, only parameters and simulation outputs to be driven/drive the UI layer. I do not touch the simulation calculations, this is not my expertise, and if the engine internals break I want *you* to fix it. I only/mostly touch on the inputs and outputs of those computes for them to become parametrizable externally. (This layer is the Model, your know-how.)
> 
> 3. I create the visual layer, expose the parameters and behavior we want for the tool. (This layer is the View and Controller). I make another git repo out of this. This layer owns your layer to 'talk' with it.
> 
> We end up we 2 codebase/repos, like that, you and other scientists can fix the 'engine' without me knowing/caring because you touch on the 'model' layer only.
> 
> Anytime you come up with new features/computations etc working, you tell me, I repeat steps 2. and 3. to have the feature exposed in the visual tool.
> 
> Let me know what you think if you are interested. I will forward this to your mail too.
> 
> Olivier
> 
> p.s: If your codebase is huge/complex/lot of features maybe we can start to expose only a subset in a tool. From there, because it's available through github, people in this thread could collaborate (clone, edit, push)

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 21:39             ` Olivier Henley
@ 2020-06-11 23:14               ` Anh Vo
  2020-06-11 23:30                 ` Jere
  2020-06-12  0:07                 ` Olivier Henley
  0 siblings, 2 replies; 71+ messages in thread
From: Anh Vo @ 2020-06-11 23:14 UTC (permalink / raw)


On Thursday, June 11, 2020 at 2:39:25 PM UTC-7, Olivier Henley wrote:
> On Thursday, June 11, 2020 at 4:47:04 PM UTC-4, Olivier Henley wrote:
> > > I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.
> > 
> > Ok I will install gnat-ce 2020 right away to see if I can reproduce.
> > 
> > Like I said, working first shot is really rare. :)
> > 
> > Thanks again for the interest.
> 
> Ok scratching my head.
> 
> I just downloaded/installed gnat 2020, changed my env. variables to point at > gnat 2020, cleaned up the obj folder, build the project. Tried both command > line and in GNAT studio. Both worked.

Is it possible that what I downloaded is different than what you have. The latest package body CovidSimForm (covidsimform.adb) still has with Covid_19; use Covid_19; at line 30. Commenting out this line and compiling covidsimform.adb, I got the following.

covidsimform.adb:64:44: "Simulation_Data" is undefined (more references follow)
covidsimform.adb:66:29: "Status" is undefined
covidsimform.adb:107:36: "Simulation" is undefined (more references follow)
covidsimform.adb:107:47: "Scenario" is undefined (more references follow)
covidsimform.adb:107:47: possible misspelling of "scenarios"
covidsimform.adb:189:7: "Export_To_CSV" is undefined

Either I can send you what I have or you send me what you have. Here is my email, anhvofrcaus@gmail.com, just in case you want to send me what you had.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 23:14               ` Anh Vo
@ 2020-06-11 23:30                 ` Jere
  2020-06-11 23:55                   ` Olivier Henley
  2020-06-12  0:07                 ` Olivier Henley
  1 sibling, 1 reply; 71+ messages in thread
From: Jere @ 2020-06-11 23:30 UTC (permalink / raw)


On Thursday, June 11, 2020 at 7:14:56 PM UTC-4, Anh Vo wrote:
> On Thursday, June 11, 2020 at 2:39:25 PM UTC-7, Olivier Henley wrote:
> > On Thursday, June 11, 2020 at 4:47:04 PM UTC-4, Olivier Henley wrote:
> > > > I have GNAT-2020-COMMUNITY running on Windows 10. I got the same result when using command line and GNAT Studio.
> > > 
> > > Ok I will install gnat-ce 2020 right away to see if I can reproduce.
> > > 
> > > Like I said, working first shot is really rare. :)
> > > 
> > > Thanks again for the interest.
> > 
> > Ok scratching my head.
> > 
> > I just downloaded/installed gnat 2020, changed my env. variables to point at > gnat 2020, cleaned up the obj folder, build the project. Tried both command > line and in GNAT studio. Both worked.
> 
> Is it possible that what I downloaded is different than what you have. The latest package body CovidSimForm (covidsimform.adb) still has with Covid_19; use Covid_19; at line 30. Commenting out this line and compiling covidsimform.adb, I got the following.
> 
> covidsimform.adb:64:44: "Simulation_Data" is undefined (more references follow)
> covidsimform.adb:66:29: "Status" is undefined
> covidsimform.adb:107:36: "Simulation" is undefined (more references follow)
> covidsimform.adb:107:47: "Scenario" is undefined (more references follow)
> covidsimform.adb:107:47: possible misspelling of "scenarios"
> covidsimform.adb:189:7: "Export_To_CSV" is undefined
> 
> Either I can send you what I have or you send me what you have. Here is my email, anhvofrcaus@gmail.com, just in case you want to send me what you had.

Out of curiosity, he is using submodules for the mathpacks library.  Do you
need to go into that folder and also tell it to pull that library separate from
the clone to Olivier's main repo?  I've not used submodules before, but I
feel like I remember that they need to be individually updated after cloning
a main repo?

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 23:30                 ` Jere
@ 2020-06-11 23:55                   ` Olivier Henley
  0 siblings, 0 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-11 23:55 UTC (permalink / raw)


On Thursday, June 11, 2020 at 7:30:31 PM UTC-4, Jere wrote:

> Out of curiosity, he is using submodules for the mathpacks library.  Do you
> need to go into that folder and also tell it to pull that library separate from
> the clone to Olivier's main repo?  I've not used submodules before, but I
> feel like I remember that they need to be individually updated after cloning
> a main repo?

IIRC and like explained here --recursive should do everything:
https://stackoverflow.com/questions/25200231/cloning-a-git-repo-with-all-submodules

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 23:14               ` Anh Vo
  2020-06-11 23:30                 ` Jere
@ 2020-06-12  0:07                 ` Olivier Henley
  2020-06-12  0:42                   ` Anh Vo
  1 sibling, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-12  0:07 UTC (permalink / raw)


On Thursday, June 11, 2020 at 7:14:56 PM UTC-4, Anh Vo wrote:

> The latest package body CovidSimForm (covidsimform.adb) still has with Covid_19; use Covid_19; at line 30. 

No, this one should stay (in covidsimform.adb) as I am 'pulling' type definitions found in covid_19.ads and using them everywhere in covidsimform.adb. This file comes with the mathpaqs git repo that should have been pulled in the project when you cloned like so:

git clone --recursive https://github.com/ohenley/covidsim.git

If you go inside covidsim/deps/mathpaqs/diff_eq/ode/ do you find covid_19.ads and covid_19.adb?  If not, it means the cloning of submodule was not done. In that case either you start from scratch and clone using --recursive or you move inside both deps/mathpaqs and deps/qt5ada and execute the following to clone the submodules:

> git submodule init
> git submodule update

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-12  0:07                 ` Olivier Henley
@ 2020-06-12  0:42                   ` Anh Vo
  2020-06-12 11:08                     ` Olivier Henley
  0 siblings, 1 reply; 71+ messages in thread
From: Anh Vo @ 2020-06-12  0:42 UTC (permalink / raw)


On Thursday, June 11, 2020 at 5:07:35 PM UTC-7, Olivier Henley wrote:
> On Thursday, June 11, 2020 at 7:14:56 PM UTC-4, Anh Vo wrote:
> 
> > The latest package body CovidSimForm (covidsimform.adb) still has with Covid_19; use Covid_19; at line 30. 
> 
> No, this one should stay (in covidsimform.adb) as I am 'pulling' type definitions found in covid_19.ads and using them everywhere in covidsimform.adb. This file comes with the mathpaqs git repo that should have been pulled in the project when you cloned like so:
> 
> git clone --recursive https://github.com/ohenley/covidsim.git
> 
> If you go inside covidsim/deps/mathpaqs/diff_eq/ode/ do you find covid_19.ads and covid_19.adb?  If not, it means the cloning of submodule was not done. In that case either you start from scratch and clone using --recursive or you move inside both deps/mathpaqs and deps/qt5ada and execute the following to clone the submodules:
> 
> > git submodule init
> > git submodule update

Using 'git clone --recursive https://github.com/ohenley/covidsim.git' give me desired package Covid_19. Thus, I could build it successfully now. Thanks for your help.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 15:35 ` Olivier Henley
  2020-06-11 15:49   ` Olivier Henley
@ 2020-06-12  7:03   ` gautier_niouzes
  1 sibling, 0 replies; 71+ messages in thread
From: gautier_niouzes @ 2020-06-12  7:03 UTC (permalink / raw)


On Thursday, June 11, 2020 at 5:35:59 PM UTC+2, Olivier Henley wrote:
> For the fun of it (kind of), I have implemented a visual tool (qt5ada based) driving the simulation code made by Gautier:
> 
> https://github.com/ohenley/covidsim
> 
> Enjoy!

Thanks for the UI, it's great!
I could install on two Windows 10 machines, one with GNAT CE 2019, one with GNAT CE 2020 and everything worked smoothly (there are a few warnings for the QT packages, but no error).
I've followed the build & run instructions in README.md (only difference: I've used cmd instead of powershell).

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-12  0:42                   ` Anh Vo
@ 2020-06-12 11:08                     ` Olivier Henley
  0 siblings, 0 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-12 11:08 UTC (permalink / raw)



> Using 'git clone --recursive https://github.com/ohenley/covidsim.git' give me desired package Covid_19. Thus, I could build it successfully now. Thanks for your help.

Great! I am happy it finally worked. Thanks again for your interest. 
Olivier

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-11 22:43     ` Anatoly Chernyshev
@ 2020-06-12 12:10       ` Olivier Henley
  2020-06-12 12:34         ` Anatoly Chernyshev
  0 siblings, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-12 12:10 UTC (permalink / raw)


On Thursday, June 11, 2020 at 6:43:19 PM UTC-4, Anatoly Chernyshev wrote:
> Hi Olivier,
> Thank you for your generous offer. However, this model is an (unorthodox) academic exercise, which draws attention of very few people. So, the development of a UI will be unwarranted waste of time (on my side in any case).

To me, that is not the point. It's more about showing off Ada as a viable option to produce high quality, modern software for serious means outside this community. The work you have done, whatever its accuracy, is more a pretext, a chance at booting/stacking up a project than an end in itself.     
 
> As the current pandemics draws to a close, I probably will make yet another updated forecast in the next week or so, and be through with it. This is not the main application area in our company anyways.

Then why don't you publish the code? 

> If anything, I'd rather see the GUI implemented in GNOGA. 

Good luck with producing any charts and settling on a professional look. You will end up coding more javascript than Ada.

> So that the software would automatically download the countries statistics from a WHO server, and update the graphs accordingly.

Qt handles Http requests.

> That would require a major overhaul of my current code though...

That was the essence of my offer. Refactoring fast and properly is an art. 

> If you don't mind I'll take a rain check for your proposal. Thank you again.

No problem. You are welcome.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-12 12:10       ` Olivier Henley
@ 2020-06-12 12:34         ` Anatoly Chernyshev
  2020-06-12 17:36           ` Olivier Henley
  0 siblings, 1 reply; 71+ messages in thread
From: Anatoly Chernyshev @ 2020-06-12 12:34 UTC (permalink / raw)


> To me, that is not the point. It's more about showing off Ada as a viable option to produce high quality, modern software for serious means outside this community. The work you have done, whatever its accuracy, is more a pretext, a chance at booting/stacking up a project than an end in itself.     

That's a valid point, didn't think of this (showing off Ada).


> > As the current pandemics draws to a close, I probably will make yet another updated forecast in the next week or so, and be through with it. This is not the main application area in our company anyways.
> 
> Then why don't you publish the code? 

I haven't had any requests so far to do so. You are the first one. I will publish it together with the next forecast update, and post a note in this thread.

> 
> > If anything, I'd rather see the GUI implemented in GNOGA. 
> 
> Good luck with producing any charts and settling on a professional look. You will end up coding more javascript than Ada.

That was just a thought. In any case the model with a web interface would cater to larger public than a piece of software needed download and installation.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-12 12:34         ` Anatoly Chernyshev
@ 2020-06-12 17:36           ` Olivier Henley
  2020-06-21  9:18             ` Anatoly Chernyshev
  0 siblings, 1 reply; 71+ messages in thread
From: Olivier Henley @ 2020-06-12 17:36 UTC (permalink / raw)


> I haven't had any requests so far to do so. You are the first one. I will publish it together with the next forecast update, and post a note in this thread.

That is great news. I do no know what holds you up from publishing without anyone asking but I think you should always do so regardless: 

a) You never know who could run into it and be interested, be inspired, etc.

b) For any code quality, there is no reason to be reluctant or postpone a public share IMO. I have seen countless horrors on GitHub and I would say more than 50% of repos do not even compile. Its a jungle out there and those who have time to police for reputation are ... somehow toxic. When code is in bad shape, I write 'Status : WIP'. It should speak for itself.

> would cater to larger public than a piece of software needed download and installation.

This is true but as you said, it 'draws the attention of very few people' in proportion to let say something like ... Facebook. 

In that regard, I think the attention of concerned people would be easier to catch using an encompassing tool, even if needed to be downloaded, than esoteric cmd switches, a constant back and forth with Excel, and a collection of screenshots lying in badly named folders (nothing personal really). I inspected the Fergusson model repo this morning and that is exactly what they are juggling with; mastering complexity implies framing it on many dimensions; UX is the most overlooked yet the most successful paradigm.    

Finally, to keep Qt in the loop let alone for its charting capabilities, there are ways to render it inside a web page. I do not know if it holds true in an Ada context but I'll keep digging. 

Ok, let us know when your code is online. Thx.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-12 17:36           ` Olivier Henley
@ 2020-06-21  9:18             ` Anatoly Chernyshev
  2020-06-22 13:36               ` Olivier Henley
  0 siblings, 1 reply; 71+ messages in thread
From: Anatoly Chernyshev @ 2020-06-21  9:18 UTC (permalink / raw)


As promised, here is the code (source and binary), together with the latest (June 20th) covid19 csv datafile:

https://www.xph.co.nz/temp/XPH_Covid19_distr.zip

I've checked - it does compile by just a gnatmake command. Also, I've added some non-exhaustive comments through the code. To have a final graph output, gnuplot must be installed and be in the path.

The binary will output just one curve. To get an overlay of several curves to check whether the solution is stable I use a bunch of awkward bat files. The curves differ in the starting day in the available dataset. This is something, which could be implemented in the GUI...

For technical questions (Olivier) feel free to email me, just not to clutter the thread. Anything else you can ask here.

If needed, the updates on the data could be taken from here: https://opendata.ecdc.europa.eu/covid19/casedistribution/csv

A new set of forecast charts (98 countries) is in a new album:

https://xph.co.nz/temp/album2006/index.html

Enjoy!

Anatoly

On Saturday, June 13, 2020 at 5:36:35 AM UTC+12, Olivier Henley wrote:
> > I haven't had any requests so far to do so. You are the first one. I will publish it together with the next forecast update, and post a note in this thread.
> 
> That is great news. I do no know what holds you up from publishing without anyone asking but I think you should always do so regardless: 
> 
> a) You never know who could run into it and be interested, be inspired, etc.
> 
> b) For any code quality, there is no reason to be reluctant or postpone a public share IMO. I have seen countless horrors on GitHub and I would say more than 50% of repos do not even compile. Its a jungle out there and those who have time to police for reputation are ... somehow toxic. When code is in bad shape, I write 'Status : WIP'. It should speak for itself.
> 
> > would cater to larger public than a piece of software needed download and installation.
> 
> This is true but as you said, it 'draws the attention of very few people' in proportion to let say something like ... Facebook. 
> 
> In that regard, I think the attention of concerned people would be easier to catch using an encompassing tool, even if needed to be downloaded, than esoteric cmd switches, a constant back and forth with Excel, and a collection of screenshots lying in badly named folders (nothing personal really). I inspected the Fergusson model repo this morning and that is exactly what they are juggling with; mastering complexity implies framing it on many dimensions; UX is the most overlooked yet the most successful paradigm.    
> 
> Finally, to keep Qt in the loop let alone for its charting capabilities, there are ways to render it inside a web page. I do not know if it holds true in an Ada context but I'll keep digging. 
> 
> Ok, let us know when your code is online. Thx.

^ permalink raw reply	[flat|nested] 71+ messages in thread

* Re: Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code
  2020-06-21  9:18             ` Anatoly Chernyshev
@ 2020-06-22 13:36               ` Olivier Henley
  0 siblings, 0 replies; 71+ messages in thread
From: Olivier Henley @ 2020-06-22 13:36 UTC (permalink / raw)


Thx!

^ permalink raw reply	[flat|nested] 71+ messages in thread

end of thread, other threads:[~2020-06-22 13:36 UTC | newest]

Thread overview: 71+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-11 18:49 Not to incite a language war but apparently the Corona lockdown was based on 13 year old undocumented C-Code Rick Newbie
2020-05-11 20:27 ` Niklas Holsti
2020-05-11 21:12   ` Rick Newbie
2020-05-12 20:11     ` Niklas Holsti
2020-05-12 20:53       ` Dmitry A. Kazakov
2020-05-12 21:54         ` Niklas Holsti
2020-05-12 22:15       ` Rick Newbie
2020-05-13 11:07         ` Niklas Holsti
2020-05-13 13:23           ` Rick Newbie
2020-05-13 13:45             ` Niklas Holsti
2020-05-13 14:58               ` Rick Newbie
2020-05-13 15:31                 ` Dmitry A. Kazakov
2020-05-13 15:48                   ` Niklas Holsti
2020-05-11 21:45   ` gautier_niouzes
2020-05-12 15:56     ` Niklas Holsti
2020-05-11 21:55   ` Jeffrey R. Carter
2020-05-12 19:16     ` Niklas Holsti
2020-05-12 21:27       ` Jeffrey R. Carter
2020-05-12 22:20         ` Niklas Holsti
2020-05-12 22:39           ` Jeffrey R. Carter
2020-05-13  9:36             ` Niklas Holsti
2020-05-13 13:52               ` Optikos
2020-05-13 14:05                 ` Niklas Holsti
2020-05-13 18:58                   ` Optikos
2020-05-13 20:29                     ` Niklas Holsti
2020-05-13 21:02                       ` Optikos
2020-05-13 21:48                         ` Niklas Holsti
2020-05-13 22:13                           ` Optikos
2020-05-13  9:54         ` Niklas Holsti
2020-05-13  0:25 ` Olivier Henley
2020-05-15 13:23   ` Optikos
2020-05-16  5:01 ` Anatoly Chernyshev
2020-05-28 21:45   ` Optikos
2020-06-11 17:28   ` Olivier Henley
2020-06-11 17:36     ` Olivier Henley
2020-06-11 22:43     ` Anatoly Chernyshev
2020-06-12 12:10       ` Olivier Henley
2020-06-12 12:34         ` Anatoly Chernyshev
2020-06-12 17:36           ` Olivier Henley
2020-06-21  9:18             ` Anatoly Chernyshev
2020-06-22 13:36               ` Olivier Henley
2020-05-16 22:31 ` Niklas Holsti
2020-05-16 23:54   ` Optikos
2020-05-17 15:41     ` Niklas Holsti
2020-05-17 17:38       ` Optikos
2020-05-17 18:00         ` Simon Wright
2020-05-17 20:56           ` Optikos
2020-05-17 21:20             ` Simon Wright
2020-05-17 21:45               ` Optikos
2020-05-18  7:34                 ` Simon Wright
2020-05-17 19:20         ` Niklas Holsti
2020-05-17 21:30           ` Optikos
2020-05-24 21:04 ` Bob Goddard
2020-05-31 15:01 ` Azathoth Hastur
2020-06-09  6:30 ` gautier_niouzes
2020-06-11 15:35 ` Olivier Henley
2020-06-11 15:49   ` Olivier Henley
2020-06-11 18:41     ` Anh Vo
2020-06-11 19:58       ` Olivier Henley
2020-06-11 20:41         ` Anh Vo
2020-06-11 20:47           ` Olivier Henley
2020-06-11 21:34             ` Anh Vo
2020-06-11 21:47               ` Olivier Henley
2020-06-11 21:39             ` Olivier Henley
2020-06-11 23:14               ` Anh Vo
2020-06-11 23:30                 ` Jere
2020-06-11 23:55                   ` Olivier Henley
2020-06-12  0:07                 ` Olivier Henley
2020-06-12  0:42                   ` Anh Vo
2020-06-12 11:08                     ` Olivier Henley
2020-06-12  7:03   ` gautier_niouzes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox