Michael A. Covington    Michael A. Covington, Ph.D.
Books by Michael Covington
Previous months
About this notebook
Search site or Web

Daily Notebook

Popular topics on this page:
Happy 40th, Celestron 5
Let's target .NET Core
Truth and propaganda
Moon (Mare Orientale)
Many more...

This web site is protected by copyright law. Reusing pictures or text requires permission from the author.
For more topics, scroll down, press Ctrl-F to search the page, or check previous months.
For the latest edition of this page at any time, create a link to "www.covingtoninnovations.com/michael/blog"

Ads by Google, based on your browsing history

Reprocessing Mare Orientale

Mare Orientale is a "sea" on the moon encircled by multiple round mountain ranges. We do not see it face-on from Earth. My best picture of it was taken in 2010, but I have better software now, and more skill using it, so I decided to reprocess it. Here's the result:


This is the only picture I've ever taken that definitely shows the flat innermost portion of Mare Orientale. Compare to a Lunar Orbiter-based map here.

This isn't a good view of Mare Orientale, but our Earth-based view of it is usually even worse. Because of non-circularity of the moon's orbit, we can see slightly more of this area at some times than others — "peeking around" the edge of the visible face, so to speak.

Mare Orientale was discovered by Earth-based astronomers, of course; the story is told in this JBAA article and more thoroughly in the book Luna Cognita, by Robert Garfinkle.

I was under the impression that its circular shape was first seen in space-probe images. No; a fair bit of it is visible in the Rectified Lunar Atlas, a set of moon maps prepared for the U.S. space program. The challenge was to map the moon as it would look from directly above any point of interest; we only see the moon from one direction here, and the parts away from the visible center are foreshortened. So the astronomers projected moon images onto a white globe, correctly positioned, and photographed the globe straight-on. That sounds clumsy, but it worked. A lot of the pictures are not equally sharp all over, but their geometry is correct. The relevant picture is reproduced as Figure 20.34 in Luna Cognita and can also be viewed online at the University of Arizona web site (click on sector 16 of the full moon map).


West Park Avenue played a trick on me

I'm ashamed to say that for nearly 50 years I've been mistaken about the location of the house in Valdosta where I lived as a baby, even though I remembered the address.

Out of respect for the people who live there now, whoever they are, I won't give the exact address, but I'll explain how I got waylaid.

My family lived in that house from before my birth until just before I was 3 years old. Then we moved out of town, and came back to Valdosta when I was 7, settling in a different neighborhood. We left again just before I turned 16, so I never had a driver's license while living in Valdosta, and although I knew the way to everything important, my knowledge of the town was never complete.

West Park Avenue is discontinuous. In places, it skips a block and then resumes, presumably because someone in the 1930s had a big yard and didn't want a street to run through it.

In adulthood I was familiar with the part of West Park Avenue that is west of Jerry Jones Road, relatively close to places I lived later. The overall look of that section resembles the old neighborhood as I remembered it, and there was a house that seemed to match, so I assumed the addresses had been renumbered, and that house was it. I drove by it with my children and told them that's where Dad lived as a baby.

Last night I was looking through the area on Google Street View and was troubled that the house I had picked out did not quite match. I'd have to assume that the driveway had been moved to the other side of the house, which of course is possible. Or maybe it was the wrong house, and one of the others along the street was what I was looking for. Let's figure this out...

I consulted an old city directory, which indicated that there had been no renumbering at least since 1965, and drew my attention to another stretch of West Park Avenue, connecting to Azalea Drive. This is a section I had been unaware of or had forgotten. I knew about Park Avenue west of Jerry Jones and east of Georgia Avenue, but I didn't realize it had this third, disconnected piece.

And there, my original address exists, and the house is still there, matching my old pictures.

Found at last!


Truth and propaganda

When someone tells you something false, you don't have to read their web sites and watch all their videos before answering. Instead, answer using reliable sources of information.

If someone says the earth is flat, you don't have to watch flat-earth videos or read flat-earth websites before telling them they're wrong.

Not even if they repeatedly command you, "Do your research!" (meaning, of course, "Watch our videos and read our stuff").

What matters is what's true in the real world, not what long indoctrination can make a person believe.

It's especially easy to indoctrinate people about things they don't know much about. For example, I'm not a doctor. When people present a fringe medical theory and say, "This video will convince you," I reply that the question is not what might convince me — it's what would convince a person who really knows medicine.

Watch out for that — it's a recurrent characteristic of conspiracy theories — misleading you on subjects where you're not really qualified to judge.

But wait a minute. I've been telling people to listen to both sides of a controversy. How does this square with that?

Simple: there have to be two honest sides to listen to. If the person on the second side will tell me what he believes and why, I'll listen. He must be honest. He must not command me to spend time being indoctrinated. He must not command me to stop listening to the first side ("the media are all lies, Snopes is all lies, Wikipedia is all lies").

And above all, he must not assert made-up falsehoods. Here's an example. People (with what political motives I don't know) still accost me and say there's no medical research showing that masks reduce the spread of COVID. False, false, false. There's plenty of such research, from all over, including the entire national experience of Japan. I'm dealing with either a deluded person or a liar who was thinking I couldn't check out his story.

I'm not obligated to continue listening to that person's argument. There's garbage out there, and I'm not required to eat it.


Keeping up with the planets



We are continuing to have clouds and rain every day, but on the evening of the 18th (the 19th UTC), there was a long enough clear, dry spell that I was able to get these pictures of Jupiter and Saturn.

The challenge of planet photography, or any photography that requires high magnification, is that we are looking at everything through the earth's turbulent atmosphere. In the telescope you see a constantly moving, blurry image. To get pictures like these, I take thousands of video frames, select the 25% to 50% best, and stack and align them. That turns the random blur into a Gaussian blur, which can be undone by wavelet analysis.

This time the problem was compounded by the fact that Jupiter and Saturn are low in the sky as seen from Georgia — they are in a part of their orbit that Earth's northern hemisphere is tilted away from — so we're looking through much more than the usual amount of turbulent air.

But I did decently. These were taken with a Celestron 8 EdgeHD, 2× extender, and ASI120MC-S camera. For Jupiter I used the best 25% of 5,766 frames; for Saturn, the best 33% of 3,600. I have to do the entire video capture in 2 minutes for Jupiter, or 3 minutes for Saturn, to avoid losing detail because of the planet's rather rapid rotation. Saturn is farther from the sun, so it is not as brightly lit and requires a longer exposures; that's why I got fewer frames in spite of having more time to get them.


Let's target .NET Core

The other day my employer asked me to switch my software over (retarget it) so that it runs under Microsoft .NET Core 3.1 instead of Microsoft .NET Framework 4.6. That led me to learn a lot of important things. Today's Notebook entry will be a series of articles about them.

A pleasant surprise

One of the things I discovered was a complete surprise, not even mentioned in Microsoft's documentation. The FolderBrowserDialog has finally changed from the old Windows XP tree diagram to a much more versatile "Vista-style" dialog box like what non-.NET applications have been able to use for a long time.

The old way:


The new way:


There have been various contrivances to get the new-style dialog in .NET Framework (click here to get one I distribute), but it mystified me that Microsoft never made it available as a .NET component. In .NET Core, it silently replaces FolderBrowserDialog, with no changes needed to your code.

So what is .NET Core?

To explain .NET Core, I need to explain .NET Framework, which was introduced in 2001 and was being developed through last year — we're up to version 4.8.

Despite its name, .NET Framework has essentially nothing to do with networking. I always thought of it as an object-oriented operating system that sits on top of Windows and provides a fully object-oriented way for programs to communicate with the operating system and with each other. If a program needs to give the OS a list of strings, it can give it a list of strings, rather than (as in UNIX) a pointer to a memory location where there are strings separated by zero bytes.

Part of the payoff from object orientation is that almost all error conditions produce meaningful error messages. That's a huge benefit. Instead of "Illegal operation at 0x12345678" you get "Cannot take the average of a set of zero numbers" or the like. Sometimes the end-user can understand this; almost always, the programmer can. We get more reliable software that way.

.NET Framework also provides just-in-time compilation from intermediate code, so that existing programs can run efficiently on different and even unforeseen CPUs. (At the outset, that was mainly a way of bridging the gap between 32-bit and 64-bit Windows PCs.) And it provides a large, rich library of predefined routines, including two complete Windows GUIs, WPF and WinForms.

Enter .NET Core. Instead of an object-oriented OS sitting on top of Windows, .NET Core is meant to be an object-oriented OS sitting on top of anything. It's for multiple operating systems. Here's what it offers:

  • Under Windows, almost everything works just as before, including the two GUIs, WPF and WinForms. (A few things that almost nobody ever used, such as Windows Workflow Foundation, are no longer supported.)
  • Console programs also run under Linux, macOS, and (as I understand it) Android and iOS.
  • .NET Core is open-source. You can find out what's inside it and even port it to other operating systems without relying on Microsoft.

I think we've seen a shift in operating system architecture, where the OS is not the runtime support system for the programs, but merely a platform for it. We had this already with Java; Java programs require a Java runtime system to be installed on whatever computer runs them.

To put it another way, .NET is no longer the new native language of Windows, but rather an object-oriented programming system available on many operating systems and in many programming languages.

What it's like to use .NET Core

Here I won't go into the details of how to get .NET Core on your computer; Microsoft gives good instructions. Instead I'll describe what you do, more than how you do it.

To write programs in Core, use Visual Studio or various command-line compilers, same as under Framework, but make sure they are targeted for Core. (Options have to be installed in Visual Studio; just follow the menus.)

The biggest differences are that a compiled program is normally more than one file (not just a single executable), and we don't just compile, we "publish." Under Framework, "publish" means generate a ClickOnce installer, but under Core, "publish" means "put in a specific place all the files needed to run the program."

The following are some examples of what you do with what you "publish."

To run a program under Windows the usual way

The normal way to run a compiled Core program under Windows requires three files. If your project is named XXXXX, then the files are:


What's in them? Actually, the .dll file contains your compiled code. The .exe file is a customized version of part of the runtime system, to launch it. The .json file is small and says what version of .NET Core you're using.

To run the program, just launch the .exe file. If you do not have Core installed on your computer, you will be prompted to install it.

To deliver a program as compactly as possible

You actually only need two of those files:


That's right — no .exe, just the .dll and the .json. Put them in the same folder, and then use this command at the command line:

dotnet XXXXX.dll

If you don't have Core installed on your computer, there will be no dotnet command.

To run a program under Linux or macOS

Install .NET Core, and then do the same as in the last step, using the dotnet command. Here you see a compiled C# program running under Linux Mint:


The program you're running must not use the GUI or any Windows-specific operating-system features. It must have been published for all platforms or for the platform you're using, not just Windows. The exact same .dll file runs under Windows with no change.

How to distribute your program as a single executable

You can compile a program into a single .exe file so that it looks and acts like a conventional Windows program. The three files (.exe, .dll, and .json) are, in effect, combined into one, with a minimum size of about 150 KB.

To do that, when you publish it, select a specific platform (usually Windows 64-bit). Then you will have the option of publishing the whole thing in one file.

How to make an .exe that doesn't even require Core installed

So far, I've been talking about framework-dependent compiled Core programs. Alternatively, you can make a self-contained program that carries .NET Core inside it. To do this, do the same as in the previous step, but select self-contained rather than framework-dependent. You will get a BIG Windows .exe file (about 100 MB) that runs without requiring Core to be installed on the computer. Not only that, but it ties your program to the exact version of Core that it was compiled with. This might be important when you need unusual security, reliability, or portability.

The future of .NET

.NET Framework is going away; it will be replaced by .NET 5, which is the successor to Core 3.1. Previews of .NET 5 are available now, and I need to start looking at them.

Some kind of interoperability with Mono (a cross-platform version of WinForms) is apparently in the works. I would like to see much more — I would like to see a Microsoft-supported GUI for all operating systems. That's the missing link in computer programming today.


At least a bit of a University


In one week the University of Georgia will resume classes. I don't know how many students will be enrolled on-site (many more will be taking courses online). The campus is certainly not crowded now!

I went to the Science Library today, for the first time since March, to check out a couple of books and read part of one that is on the reference shelf. I almost had the whole place to myself. If more than a few percent of the usual number of students return, the library and the campus will have trouble functioning while enforcing the required distance between people. Rest rooms that normally accommodate six people, for instance, are limited to two people; desks are six feet apart and have only one person at each desk; and so on.

For safety, I wanted to make my visit today, before the crowds return; also, I don't trust the University to actually stay open the whole semester. I'm afraid that in a month, they will have people quarantined by the hundreds and will have to shut down. Georgia's new-case rate is appreciably higher now than when they shut down in March, although the rate of growth appears to have crested.

I paid $5 for parking. For the first time since arriving as a faculty member in 1984, I do not have a University of Georgia parking permit. If I go to the campus less than 48 times during the year — which now seems probable — then paying by the hour is cheaper than getting a permit even at the discounted rate for retirees.

It's the end of an era. After retirement, I continued going to the library several times a week, to work on whatever I was working on, until the first week of March. Then the epidemic shut everything down, and when it subsides, I'll work at the FormFree office. Finally out of school; I've been at some kind of educational institution, more days each year than not, since starting kindergarten in 1962!


What is "doing research"?

[Previously posted on Facebook.]

A short note about science. I keep hearing people say "I've done my own research" when they mean they've looked at summaries of two or three papers.

When I do that, I don't call it research. I say "I've glanced at a little of the research literature" or something like that.

Doing research means not just finding a few papers, but finding all the papers that bear upon what you are researching, whether you agree with them or not, and then working through every word of all of them in detail, checking the logic, the mathematics, the experimental design, and the underlying science.

I am not qualified to do that in most fields. I wonder how many people "doing their own research" about COVID understand PCR, RNA, antibodies, statistical significance testing, Bayesian vs. Fisherian methods, and a lot of applicable medicine and physiology that is completely beyond my ken.

While it's good that people are learning how to look things up in scholarly journals, taking a quick look at things is not the same as doing what scientists do. Specific qualifications are needed, as well as lots of hard work.

[Added:] I don't want to disparage brief library research; it's a lot better than nothing and can often be eye-opening. But when you decide whom to trust, if they say "I've done research," it is wise to probe a bit and see how much research they have done.

A safety net for students from failed colleges

[Originally posted on Facebook.]

As colleges reopen — especially about a year from now — I urge them to consider the plight of people who had almost finished their degrees and then couldn't continue, either because their college collapsed, or because it changed radically, or because of personal circumstances.

Some colleges are going out of business simply because demand is down. The college-age population has leveled off, but many colleges were accustomed to 1970s-style growth. Mid-size state colleges are delivering a lot of affordable education and are cutting into the demand for more expensive colleges.

Traditionally, a college won't grant a degree unless at least the final half of the course work was done there. We may need to rethink that. Perhaps the diploma and the name of the degree could be a little different if more than 50% of the work was transfer credit — but let people finish their degrees at institutions that are functioning and affordable.

I'll even suggest a pair of degree inscriptions, BAT and BST, Bachelor of Arts Transferred and Bachelor of Science Transferred, or in Latin (we must have Latin), Baccalaureus Artium Translatus and Baccalaureus Scientiae Translatus. These would be degrees based mostly on course work done elsewhere, but completed at the institution that grants the degree.


Did I have COVID-19?

Some of you know that I've been out sick for a couple of weeks (which is why so little was written in the Daily Notebook). Specifically, I've had an illness with irritable bowel symptoms, fever, headache, and cough. My COVID test came back negative, but the PCR test has a high false negative rate, and mine was given relatively late (on the 7th day of symptoms), further raising the risk of a false negative. The result came back on day 14, when my quarantine would in any case have been over.

So I still suspect I may have had a skirmish with COVID. The symptoms fit, and influenza (the leading alternative) is out of season. In my case, days 1 and 2 were prodromal, with mild symptoms that I thought wouldn't amount to much. On days 3 and 4 I had fever around 102.5 F, with some headache and cough. The bowel symptoms abated by the end of the first week, leaving a pesky dry cough that is still with me.

A few days later, an antibody test also came back negative, so if I had COVID, I had false negative tests of both kinds — not impossible.

Whatever it was, I survived! Still coughing and tired, though.

Kodak, the company where it was always 1955

The other day, while listening to a speech on how a business needs to have a vision for the future, I realized what went wrong with Kodak: they had no vision for the future. They wanted photography to always be what it was around 1955.

In fact, if you took a photographer from 1955 and propelled him to 1995, all he would see in the Kodak product line would be higher-performance versions of familiar products. Everything worked better, but nothing had changed radically.

George Eastman's original vision was precisely what Kodak had become by 1955: People with inexpensive cameras and no specific training, able to take pictures of their families and vacations and get them developed and printed. Kodak made its money on the consumables (film and the supplies for developing and printing). Kodak only made low-end cameras, leaving it to others to make cameras for professionals.

Kodak lost its grip on consumer cameras first. Instead of a Box Brownie or Instamatic, the casual photographer of the late 1960s was likely to use a 35-mm compact camera from Canon or Minolta, with rangefinder focusing and auto exposure — much better pictures with just a little extra cost and effort. The film and processing cost the same.

But more to the point, Kodak ignored the digital revolution. The biggest change in casual photography in the 2000s has been that we use computers to view pictures and send them to each other. The print on photographic paper is no longer the end product. And there goes Kodak's market for printing services and supplies.

The fact that we take pictures digitally is a bigger technical change, but less of a lifestyle change. One could imagine taking pictures on film and getting them digitized (in fact, you can do that today). But when digital sensors matured, Kodak's market fell away because there was no demand for film.

Kodak experimented with digital sensors, made some good ones for scientific markets, and even made the first DSLR, but didn't pursue the idea because their vision was too narrow. They had already abdicated from the camera market, and now the camera was the whole thing! The names most synonymous with photography today are not Kodak and Ilford but Canon and Nikon. Kodak didn't even make particularly good inkjet printers, the ongoing product nearest to their original vision.

Kodak wanted to sell you film and processing. They had no vision for a different world.

One of our secrets for a long and happy marriage

Because I was sick at the time, I didn't write a Notebook entry wishing Melody a happy 38th Anniversary on July 25. Let me do that now, and incorporate by reference all the good things I've said about how we met and came to love each other.

I want to add something, an insight I've thought about this year.

The way we understood it, part of the marriage promise was not to turn into an unsuitable person.

By that I mean that we felt we had an obligation to know ourselves well enough at the time of marriage, and not to change ourselves into something unsuitable later.

"I gotta be me" cannot be the motto of a married person. That doesn't mean I'm not able to change my opinions — I'm not required to stop thinking and learning — but I can't adopt personal habits and values that are contrary to the pledge I've already made to Melody.

In the old days, we saw marriages break up because one of the spouses took to gambling, or drinking, or promiscuity, or some other vice. More recently, I've seen stranger things: middle-aged married people suddenly deciding to change their sexual orientation or even their gender. It is very hard for me to believe that such deep inborn traits are really subject to change at such an advanced age. "I was born this way" doesn't mix well with "I made this change as an act of freedom." And if you did it as an act of freedom, why did you think it got you out of promises previously made?


Happy 40th anniversary, Celestron 5


While setting up to do a test of some other equipment last night (August 1), I realized that it was 40 years, to the hour, since I received and first used my Celestron 5, right here at this house.

At the time, this was my mother's house, and I was home from graduate school for a month. I had been to Atlanta to take Melody to a dinner theatre performance of "Gigi," and when I got home, very late, the box containing the C5 was here.

The wooden tripod that I was building for it wasn't ready, so I quickly got it onto a camera tripod, took a look at Altair, and was glad to see a sharp star image.

This was my second venture into amateur astronomy, the one that didn't end. I got my first telescope in 1969 and a better telescope (an RV-6) in 1970. When I went to college I was too busy for astronomy, and I sold the RV-6 in 1975. Then, in November 1979, as Melody and I looked at Venus while riding back from Watson Mill, I was drawn back into it, and I got a small rich-field reflector and then, in 1980, the C5.

Now the C5 has a coated corrector plate and a much larger finderscope, as well as much better eyepieces. For this 40th-anniversary session, I put it on the pier that Melody's grandfather built for me around 1994, took a picture of the moon, and then viewed the moon, Jupiter, and Saturn with a Radian 14-mm eyepiece.


In the spirit of the occasion, I took the moon picture with minimal accessories and a somewhat older camera (Canon 40D, vintage 2007). I took the eyepiece and diagonal out of the telescope and inserted the oldest piece of astrophotography equipment I'm still using — an Edmund Scientific 1.25-inch T-thread nosepiece, from my early days, around 1970 — with a modern Canon T-ring. The picture is a single 1/1000-second exposure in Live View.

If what you are looking for is not here, please look at previous months .