fogbound.net




Sun, 19 Mar 2023

Another Software Systems Plaint

— SjG @ 10:33 am

Back in the 80s, I worked in Aerospace and had an old engineer tell me “nobody’s really figured out how to write software.” I scoffed. Totally ridiculous, I thought. He was researching a transition to Ada. I was writing tons of C code.

Now, much older, and perhaps somewhat wiser, I see his perspective. We’ve developed a lot of ways to try to deal with software. There are different approaches, with principles of abstraction, structure, and documentation. I tend to believe that most software methodologies are too discrete. Once you’ve maintained an active codebase for a business over a few decades, you discover that software design principles are great for coding but bad for business. It’s very difficult for a coder to understand which aspects of a business are virtually immutable (“the canonical catalog is Bob’s PDF notes from his meetings with manufacturing”) versus things that change (“yeah, we computed sales bonuses this way for the past twenty years, but now we’re changing that on a quarterly basis”). Often, the people running businesses don’t consciously know these unwritten laws themselves, and only reveal them when a change is suggested. Heaven help you if the change was implemented somewhere first.

Methodologies for business and software come and go, whether they’re TQM or Agile or just “move fast and break things.” I definitely see the advantages of the tendency away from front-loaded planning and towards flexibility and accepting change, but it doesn’t do a good job of managing the complexity of history. How do you maintain and document all of the Chesterton’s Fences in a continuously evolving codebase? When new components are bolted on to older systems, you accumulate a lot of weird adapters to make things fit. Sometimes, intermediary components go away, and you’re left with layers of adapters between things. Eventually, the solution might be the same as it would be for an analogous plumbing problem: rip it out, and start over — but, to overextend a metaphor, when the system is a million lines of code instead of a few thousand meters of piping, the solution may end up replacing the entire building so you can install a faucet.


Sun, 1 Jan 2023

New Year New Fear

— SjG @ 11:03 am

I thought I’d update this VPS from Ubuntu 20.04.5 LTS to Ubuntu 22.04.1 LTS. I ran do-release-upgrade which gave all the appropriate warnings and stuff, and proceeded to upgrade. This VPS is hosted on Linode, so there’s a local Ubuntu mirror — the download is blindingly fast.

The do-release-upgrade process appears to run in a Unix screen window. Unfortunately, that interacted poorly with the terminal I was using, so any time I moved my mouse, it spewed control characters as input. That was bad when it was prompting … something? … probably about my nonstandard sshd configuration.

Anyway, Linode provides a web-based console access, so I was eventually able to fix the broken sshd, PHP, and Apache configurations. Only about two hours of downtime. Not bad for New Year’s Day.


Fri, 9 Dec 2022

Scary?

— SjG @ 4:01 pm

Like many others, I’ve been playing around with ChatGPT, the OpenAI chatbot. It’s really good at certain things. It does make some weird mistakes in highly technical things, and it has weird contradictions (e.g., when I ask it “when is Hanukkah?” it gives me the Hebrew date and the Gregorian date for this year. When I ask it “what year is it?” the response is that it doesn’t have that kind of contextual information.)

Here’s a sample conversation:

Me: how do spiders know how dense to make their webs?

ChatGPT: Spiders have a natural instinct to spin webs of a certain density, based on their species and the environment they live in. For example, some species of spiders live in dense forests, where their webs need to be strong and sturdy to catch prey. Other species live in more open areas, where their webs can be less dense and still be effective at catching prey. Over time, spiders have evolved to spin webs of the optimal density for their specific habitat and hunting needs.

Me: are spiders conscious of the density they need to weave?

ChatGPT: It is unlikely that spiders are consciously aware of the density they need to weave into their webs. Spiders have a natural instinct to spin webs of a certain density based on their species and environment, and this behavior is likely controlled by their brains and nervous system. However, this does not necessarily mean that spiders are consciously aware of the density of their webs in the same way that humans are aware of their own thoughts and actions.

Me: why do you think spiders are not consciously aware?

ChatGPT: As a large language model trained by OpenAI, I don’t have the ability to know the inner workings of a spider’s mind or consciousness. It is impossible for me to know for certain whether or not spiders are consciously aware of the density of their webs. However, it is generally believed that insects and other arthropods do not have the same level of consciousness as humans and other mammals. This is because their brains are much simpler and less developed than the brains of mammals, and they are not capable of experiencing the same range of thoughts and emotions. While spiders are able to perform complex behaviors, such as spinning webs, it is unlikely that they do so with the same level of consciousness as humans.

Me: how would you test for consciousness?

ChatGPT: There is no definitive way to test for consciousness in any organism, including humans. Consciousness is a complex and poorly understood phenomenon, and scientists and philosophers have been debating its nature for centuries. In general, consciousness is thought to involve an awareness of one’s own thoughts and surroundings, as well as the ability to experience and respond to stimuli in the environment.

Me: there are crows in my tree that seem to like to play and they recognize me.

ChatGPT: Crows are highly intelligent birds, and they are known for their ability to learn, adapt, and solve problems. It is not surprising that the crows in your tree recognize you and appear to enjoy playing. Crows are social animals, and they are known to form strong bonds with other members of their group, including other crows and even humans. It is possible that the crows in your tree see you as a part of their group and enjoy interacting with you. If you would like to encourage the crows to continue visiting your tree, you could try offering them food, such as seeds or nuts, to attract them. You could also try to engage with them by making noises or gestures to get their attention. Just be sure to approach them carefully and respect their space, as crows can be protective of their territory.

Me: the crows seem a lot more conscious than some people I interact with.

ChatGPT: It is difficult to compare the level of consciousness between different species, as consciousness is a complex and poorly understood phenomenon. However, it is generally believed that crows, as well as other birds and mammals, have a certain level of consciousness that allows them to be aware of their surroundings and experience thoughts and emotions. It is also possible that the crows you are observing are exhibiting behaviors that suggest a high level of intelligence and problem-solving ability, which may appear to be similar to consciousness in humans. However, it is important to remember that the level of consciousness in any species is difficult to determine and can vary among individuals.

Me: a crow learns to speak english. tell me a story of what happens next.

ChatGPT: One day, a crow in a small town in the United States learns to speak English. At first, the other crows in the town are amazed and curious about this new development. They gather around the speaking crow to listen to it, and some even try to mimic its sounds. The speaking crow becomes somewhat of a local celebrity, and people in the town start to take notice.

As word of the speaking crow spreads, people from all over the country come to see it. Some bring gifts and treats for the crow, while others try to communicate with it. The crow becomes the star attraction at the local park, where people come to see it and listen to it speak.

Over time, the speaking crow becomes more and more confident in its ability to communicate with humans. It starts to learn more words and phrases, and it even starts to hold short conversations with people. The crow becomes so good at speaking English that it is featured on the local news, and people from all over the world start to take notice.

Eventually, the speaking crow becomes a global sensation, with people from all corners of the world coming to see it and listen to it speak. The crow becomes a symbol of the intelligence and adaptability of birds, and it inspires other crows and birds to try to learn to speak as well. The speaking crow becomes a beloved and iconic figure, remembered for its ability to bridge the gap between humans and animals.

(“Conversation” from 9 December 2022 on the OpenAI ChatGPT beta chat system)

Sun, 4 Sep 2022

Illustration, in History and in the Future

— SjG @ 7:51 am

We’ve been watching many episodes of Pete Beard’s YouTube channel on the unsung heroes of illustration. Beard does a nice job of giving you the life details of these people, along with showing you representative samples of their work.

For a period that lasted roughly 150 years, a talented illustrator could become rich and famous. The increasing general literacy rates and growth of leisure time created an expanding market for books in the late 18th century. There were also technological breakthroughs in printing, which made adding illustrations to books more affordable, and publishers found that the illustrated books sold better. And while the concept of periodical magazines goes back to the 17th century, it was in the later part of the 19th century that illustrated magazines exploded in popularity.

Magazines were the YouTube or Twitter of their day, the place where culture was discussed and developed, and where art movements gained their momentum. They commissioned illustrations for their covers and their content, and once an illustrator had a reputation, they could make a good living. Once an artist was well known, they became sought for advertising and poster work. Some did merch, too.

It’s fascinating to see the enormous quantity and quality of work. As someone who has dabbled in art, it’s a little overwhelming. You can view a lot of the work online. Beard’s channel is a good introduction, but then you can go down the rabbit hole and look at scans of Jugend magazine, the outstanding Illustration History site from the Norman Rockwell Museum, commercial sites like Granger, and so on. More than you can possibly absorb is just a web search away.

The growth of photography and techniques for photographic printing changed the equation in the 1950s. Illustration took a back seat, with many localized renaissances like 60s music posters and 80s ‘zine culture.

Today, another revolution is happening. Over the past year, “Artificial Intelligence” art has gone from being a fairly obscure discipline to the point where it is producing stunning results. I’ve been playing with Stable Diffusion, and the results are both impressive, unsettling, and fascinating. This system works on a mathematical model that was fed a huge volume of images and text from the internet. Given a text prompt or general directing image, it uses that model to creates a set of mathematically weighted values representing how it “understands” your request. It then uses random noise and repeated filters to create an image that satisfies those mathematical weights.

The creation of the initial model is extremely computationally expensive and involved. The creation of images using that model, however, is something that can be done on any reasonably modern home computer.

There’s debate about “who creates the art,” when using a system like this. After all, it only “knows” the art it was fed in the initial model creation. So, in that sense, it can’t create anything “new” — and yet, the way it combines things is at a low enough level that there isn’t any reproduction of any of the original work. That being said, it’s still biased by the work it was trained on. It “understands” beauty and ugliness based on the descriptions of the images it was created with. This bakes in a lot of other subtle prejudices: ranging from abstract ideas like what constitutes futuristic, to more fraught ideas like what traits define racial terms. It’s telling that the initial release of the software put a “not safe for work” filter in place, because such a high percentage of the images of women in the initial model were nude.

People are already using this software to generate printed images and even movies. There’s definitely an art to creating the source prompts to get the results you want, but this is getting easier and easier. I think it will be a matter of weeks or months before the clip-art business is just a front-end to this kind of software. It will be fascinating to see where this ends up.


Sat, 19 Sep 2020

Goodbye Google

— SjG @ 11:08 am

I’ve finally removed the Google Ads and analytics from this site.

Many years ago, I thought it mattered where people went on the site and which posts were most useful. I also had the delusion that there would be enough visits that the ads might help pay for the hosting.

Ah, to be young, naïve, and full of hope. That ship ship has certainly sailed.

Anyway, there’s no point in cluttering up the blog with surveillance crap. I’m just sorry I left it there for so long.