Sketch form explanation of my little deep learning project.

I walk in sipping coffee, see my program sitting at its desk typing on its typewriter. “So, how’s it going? I ask.

“Got it down to about 1.5% error, take a look.” My computer responds, producing an architectural print from a neat pile next to its desk and unrolling it for my review.

“I see… Well there’s a line missing here.”

“I find that there isn’t really a line there.”

“Well, her neck has to continue, even though the original photo looks dark at that point, otherwise there would be nothing supporting her head and blood wouldn’t be flowing to her brain.”

“Uhmm, I don’t know what neck means, or head, or blood, or brain, or flowing. I’m computing convolution matrices to detect and then accentuate lines… like you asked.”

“Right right, that’s why I set you up with parallel convolution paths which are then recombined in various ways. So you can find these hidden lines in those and then recombine them into the product.”

“Uh huh… well, I find that messing with those can lead to wild increases in error, and i know you don’t like that, so… I don’t.”

“That’s disappointing. I may need to break this project up a bit for you. Well, keep working on it in the meantime.”

“I’m running low on memory, so I can’t do any of your new instructions. Anyway, I’ll just keep working on what I’ve been doing.

“Super.” I take another sip of coffee and walk out.

Day 2 in the Western Quarantine Zone

Doing some mask research for work, I found a Chinese N95 mask supplier called Fullcare. They advertise a production capacity of 120000pcs/day, and export 90% of their product. They are also located in Hubei province near Wuhan, reknowned first site of major coronavirus infections. They advertise a price of $0.12-0.35/mask currently on For some reason, I don’t find myself attracted to the deal, just as well, as I’ve heard that there are export limitations by China being placed on masks leaving China.

I was reading up on the “black death” plague a while ago, comparing it with coronavirus to get an idea of what we’d be looking at. I determined that coronavirus is, while deadly, not currently anywhere approaching an apocalypse class disease. Coronavirus has easy transmission, there is no cure, and there is a long incubation period, but mortality rates are low for otherwise healthy people. The “black death” on the other hand, while curable with modern methods, was incurable at the time, killed lots of healthy people, and actually quite nastily co-opted fleas for transmission. Apparently, the fleas that fed on infected blood would get a clot in their gut preventing them from getting effective nourishment, making them ravenously hungry and much more bitey, which means that the “black death” actively encouraged its own transmission. That’s approaching an apocalyptic disease. At least, it was in its time and place. We’ve got fleas under control these days, and to some extent bacteria, though they get increasingly resistant. Coronavirus, on the other hand, is a dangerous disease, but for most, things things will get back to normal, especially with proper precautions.

Python would be better with brackets

{Python} There. I fixed it.

But really I’m talking about the scripting language. Python requires code lines to be separated onto new lines and then groups code lines based on a set of tabs or spaces before the line.

Better programming languages use semicolons to separate the code lines and brackets to group code. This is better because code is built from other code. If you ever create a large program or set of programs, you’ll know that it is necessary and expedient to copy useful bits of code around. This copying is incredibly easy in bracketed languages in any word processor, it just works. And in smarter development environment editors, the editor software can easily identify the bracket situation and automatically correct the format accordingly.

However, in python, when you go to copy a code group, chances are that you’ll have to go through each line and reconfigure the leading tabs and spaces. Indeed, the only way to avoid this hassle is to use special word processors that have built in functions for managing indents, and that still likely won’t work if spaces or combinations of tabs and spaces are being used.

Others have recognized this problem and developed plug ins, but I’d argue that it is a little silly not to have a native bracketed structure.

But neither python nor the bracketed languages provide a solution for deep nesting readability. To fix this issue, I’d take a lesson from html and permit optional tags when opening a bracket block, that, when assigned, must be added at the closing bracket. Something like {:count-loop codeline;codeline2; count-loop:}.

Nvidia Jetson Nano

I got a hold of a Jetson nano dev kit for a project for work. It’s got a lot of similarities to the raspberry pi, as far as initial setup. One loads the OS image on a memory card and hooks up monitor, keyboard, mouse, and ethernet, and the Jetson Nano becomes a single board computer, except it has a Tegra X1 SoC with a quad core CPU and 128 core GPU.

The Nano standard OS from NVIDIA is Ubuntu, which is debian based and has a familiar feel for me, which will be handy as I begin python scripting with the TensorFlow library.

All in all my first impression of the device is pleased and optimistic, and with the price being what it is for all the computing and graphics power I get, I wonder if I might be looking at NVIDIA products for my single board computing needs in the future. One drawback: the Jetson Nano dev kit lacks a builtin wifi radio, but then, so did the early raspberry Pi’s.

Egg welt

Looks like the egg struck me with it’s long side. Sheriff’s deputy says he can’t do anything because I wasn’t memorizing the make, model, and license plate of every oncoming car on the 3 lane northbound side of Watt Ave. This rings false, given the intersection camera pointed towards the Watt and Whitney bus stop where I was hit, and additional cameras at subsequent intersections northbound from there on Watt. (The incident occurred around 9:30pm on 9/21.) It’s assault, of course, and there are no circumstances in which I wouldn’t want charges pressed for this. The question is what measures can I take to protect myself?

Ardbox PLC

The Ardbox PLC is a din rail compact industrial controller built around an arduino Leonardo by Industrial Shields. This type of device provides a convenient bridge between the free to use and open source arduino development capability and 24V industrial controls. It’s similar to what I hope to achieve with my esp32 PLC, though I think I’ve come up and will come up more interesting additional capabilities.

The price of this solution is hard to beat for its range of capability. As a connected device, the Ardbox is quite limited (though by no means useless), but as an independent single machine controller, it excels, and it doesn’t require expensive proprietary development software. Don’t get me wrong, that proprietary software can be extremely useful for developing large machines which rely upon network attached sensors and other controllers. But for a simple, pantry sized machine with hardwired sensors and drivers, the Ardbox provides a good cheap way to get it done, which is always highly desirable.

One drawback of the Ardbox is a lack of programming security. It’s ease of development and programming translates to a need for physical security of the device to insure preservation of the program as is where such is critical for safe operation of a machine.