fogbound.net




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, 6 Nov 2022

Daylight Savings / Standard Time

— SjG @ 8:13 pm

We’re all sick of switching the clocks. We’re all tired of the argument over whether it’s better to wake up or go home in the dark during the winter months. I propose we chuck it all. Instead, we can each declare our own time zone.

For me, 6:45AM will be defined as the moment the sun rises. All my clocks will be calibrated on that basis.

You can declare your own time zone. You could choose to be UTC minus 7 hours, say. So how would we ever agree on a time to do anything?

Naturally, technology comes to the rescue as it does in all possible things. Each personal time zone will have associated with it a 64-bit number; the first 32 bits will map to the algorithm in use (sunrise/set, offset of UTC, etc.), and the second 32 bits will be data (e.g., coordinates and minutes after sunrise or hours offset). When scheduling with another person, one will merely say something like “let’s meet at 9AM 62c8179014da91e0042e74adc5e21485808faa6c” to which they’ll reply “oh, ok, that’s around 7:45AM 06d7c6a02a43c7d42dc67ac53874228209a349dc for me.”

Naturally, all of our phones, virtual assistants, and other devices will implement one version or another of this system. I can already foresee that the NIST standard will be implemented with proprietary extensions by Apple, and Android devices will support NIST standard 1.5 in a non-backwards-compatible way. Microsoft, of course, will license the Apple extensions, but only support about 30% of them.

Because of the beautiful and elegant simplicity of this system, programmers will no longer be driven to drink by the idea of time zones or daylight savings time. Instead, they will rejoice, download the libraries from GitHub, and everything will fall apart splendidly.

Filed in:

Tue, 9 May 2017

This too shall pass

— SjG @ 9:49 pm

Back in October of 2015, I started writing the following, and never finished or published it:

I upgraded the Mac to Yosemite a year or so ago. Yesterday, I wanted to do some development on a project that I’d been idly thinking about. Unfortunately, it required a dependency in a package I’d installed via Mac Ports. I tried to upgrade it, but got an error that I was compiling for the wrong Darwin version. This means I haven’t actually updated any of my Ports since upgrading to Yosemite! For shame.

Rather than fix Mac Ports for Yosemite, and then again when I upgrade to El Capitan, I decided it was time to do that upgrade and then fix it. I also thought … hey, there’re all these neat new container technologies and configuration tools. Maybe I should look into some of those, and save myself the agony next time around.

So I dove into some articles, and pretty soon had become a seething mass of quivering rage.

To set up my environment in Docker, I need Docker, and a VM. I could set it up using Vagrant, or, as some people recommend, Vagrant running Chef or Solo. Then, of course, I need to set up some replacement for vboxsf so I can access my files in the Virtual environment. Each of these requires its own configuration, of course.

Today, I was struggling with something similar. I’m building an iOS app. Years ago, I’d built a few native iOS apps, but I’ve forgotten everything I ever knew about Objective C, and I don’t know Swift. Plus, I need to publish for Android too. So, six months ago, when I started this process, I decided I’d be using Ionic Framework. It had the advantage that it was based on AngularJS, and I’ve done some work in Angular.

Now that I’m starting, I discover that Ionic 2 is the way to go — oh wait, not Ionic 3 was just released! And my AngularJS experience is ancient v1.2.x, knowledge which is largely obsolete. I’d be learning Angular 2 — no, we’re up to Angular 4 now — so better get cracking on that.

I remember, many, many years ago, how excited I was was there was a new version of Windows. I couldn’t wait to get all those 3.5″ floppies home so I could upgrade my machine to the latest and greatest. Now, I dread each year when a new version of Mac OS comes out, and I need to upgrade and track down all the things that broke, and rebuild my ports and and and… Not to mention when I installed a recent Linux on a VM to host some sites, and discovered to my chagrin that systemd has replaced all manner of things Unixy that I’ve been doing mostly-the-same for thirty years.

Well shit. There it is. I’ve become the grumpy old software guy. “Why are they changing things? Why can’t they just leave them alone?” The fact is, some of these changes are indisputably improvements. But so many of them seem to be changes for the sake of change. We have to have “new, improved!” all the time, even if it’s just changing the syntax (why, oh why, is *ngFor so much better than ng-repeat !?).

Part of this is struggling with obsolescence in general. It’s hard being middle-aged in tech. You can’t help seeing that look in the eyes of the youngsters: that old guy is so backwards. But it goes beyond that. My neighborhood is changing around me. Younger families are moving in, and suddenly I’m that guy who’s been in the neighborhood for a long time. I find myself navigating by past landmarks — it’s across from the Burger King, er, those condos, right by the Foster’s Freeze, er, Dunkin’ Donuts. The world is changing around me rapidly. The political world I grew up in has shifted. Every year, I see more obituaries for people I know, or whose names I know. Things that were true when I was a child are no longer true.

I have vague memories of hearing these thoughts expressed when I was younger by people I thought were old. I didn’t understand them then. I’m beginning to understand them now.

I just have to remind myself that change is constant, and not all bad. When I was a kid, there were no known exoplanets. When I was in my twenties, I’d come home from a night out, and I’d be stinking of second-hand cigarette smoke. We had to struggle with card catalogs to find books in the library. When trying to reach my friends, I’d have to leave messages on their home answering machines, and I’d have to call from a pay phone where I’d enter in a multidigit phone card number. If you were interested in obscure music or books, you’d have to read tiny ads in the back of magazines to track down sources or information. LGBQT people were all but invisible, and same-sex marriage was barely even in the realm of speculative fiction.

So, that being said, I’d like change to slow down a bit. Could I please just finish a project before all the constituent languages, libraries, and frameworks have a major version increment?


Mon, 16 Jan 2017

Slow Reality TV

— SjG @ 10:45 am

In the garden, we have a variety of highly aggressive, imperialistic vines that compete for space.

In one hotly-contested piece of real estate, have creeping fig (Ficus pumila), pink jasmine (Jasminium polyanthum), asparagus fern (I think we have both Asparagus setaceus and Asparagus aethiopicus), fo ti (Fallopia multiflora), and red trumpet vine (Campsis radicans). The soil there is just a solid mat of roots and runners.

I propose a very very slow reality TV series. We get a big pentagon of fertile soil, light it evenly from all sides, water it gently on a regular basis, and plant one of of these vines in each corner. After a few years, we’ll see which is the victorious species!

Filed in: