SO! I am behind on blogging. But my wife and I have been traveling so much this year (near constantly for five months between the two of us) that, frankly speaking, we need to focus on us time more than I need to focus on the blog. So it's going to take a little longer to get things rolling ... because other things come first.
-the Centaur
Pictured: an anniversary picture, from years ago (since the blog image uploading is still borken).
Welp, by my calendar, I'm about two weeks behind on blogging every day posts, but better late than never, eh? The Embodied AI Workshop went off quite well - we had standing room only three deep by the end - even though I was frazzled from 7am to 10pm trying to make sure things went off as planned.
And the next day, we had CVPR, which was quite the fun adventure! But, then, that evening, I spilled water onto my laptop. It promptly rebooted, then shut down, never to turn on again. Not only did that make me feel like an idiot, it put a serious crimp in the work I was planning to do during the conference.
Including blogging! Not only was it difficult to post on my phone, it was also practically impossible to start down the path of upgrading the dresan.com backend to deal with the file storage issue - and what computing time I had needed to be spent on The Neurodiversiverse. So everything ground to a halt.
So I'm not dead. But it is taking a bit of time to get things back on track. By my count I'm about two weeks behind on blogging and a week behind on art, and it looks like it will take several weeks to get caught up, back up to speed and on a regular posting schedule.
Stay tuned.
-the Centaur
Pictured: The backdrop for Embodied AI #4's scheduling poster, produced with several layers of generative AI combined in Photoshop and extended with Photoshop's own generative fill tools into the poster size. While I'm convinced we don't want to use generative AI for regular art, for this client, which was a workshop on AI featuring generative AI, we wanted the generative AI look.
Today is Embodied AI #5, running Tuesday, June 18 from 8:50am to 5:30pm Pacific in conjunction with CVPR 2024's workshop track on Egocentric & Embodied AI.
Here's how you can attend if you're part of the CVPR conference:
The physical workshop will be held in meeting room Summit 428.
The physical poster session will be held in room Arch 4E posters 50-81.
The workshop will also be on Zoom for CVPR virtual attendees.
Remote and in-person attendees are welcome to ask questions via Slack:
You can see our whole schedule at https://embodied-ai.org/, but, in brief, we'll have six invited speakers, two panel discussions, two sessions on embodied AI challenges, and a poster session!
Going to crash early now so I can tackle the day tomorrow!
-the Centaur
Pictured: More from the archives, as I ain't crackin' the hood open on this website until EAI#5 is over.
The Embodied AI Workshop is coming up this Tuesday, starting at 8:50am, and I am busy procrastinating on my presentation(s) by trying to finish all the OTHER things which need to be done prior to the workshop.
One of the questions my talk raises is what ISN'T embodied AI. And the simplest way I can describe it is that if you don't have to interact with an environment, it isn't embodied.
But it's a static problem. Recognizing things in the image doesn't change things in the image. But in the real world, you cannot observe things without affecting them.
This is a fundamental principle that goes all the way down to quantum mechanics. Functionally, we can ignore it for certain problems, but we can never make it go away.
So, classical non-interactive learning is an abstraction. If you have a function which goes from image to cat, and the cat can't whap you back for getting up in its bidnes, it isn't embodied.
-the Centaur
Pictured: Gabby, God rest his fuzzy little soul, and Loki, his grumpier cousin.
So, as I've said, Embodied AI is just around the corner. But what is this workshop about? Embodied AI, of course! It says so on the tin.
But the key thing that makes "embodied AI" different from computer vision is that you must interact with an environment; the key thing that makes "embodied AI" different from robotics is that technically it doesn't need to be a real physical environment, as long as the environment is dynamic and there are consequences for actions.
SO, we will have speakers talking about embodied navigation, manipulation, and vision; generative AI to create environments for embodied agents; augmented reality; humanoid robots; and more.
Okay, now I really am going to crash because I have to fly tomorrow.
Onward!
-the Centaur
Pictured: An e-stop (emergency stop) button from a robot. Looks a little jury-rigged there, Chester.
Ok, the image is from ICRA, but I am still traveling, and have not fixed the problem on the website backend. BUT, Embodied AI is this coming Tuesday, so please drop in if you are at CVPR!
More later, I had several long days at the customer site and I am going to go crash now.
Okay, I was flying Tuesday, so I'm just going to pretend this was an abbreviated post, something something busy busy something something flying to Vancouver something something robot consulting.
At least I didn't try to fly on an expired passport ... this time. Strange how paranoid a mistake can make you! Like how I missed a flight - two days in a row - trying to leave London, ~30 years ago, the first time due to my mistake, the second due to a train stoppage, so I now try to go to airports ~2 hours early ... and missing my flight to Comic-Con due to traffic made me paranoid enough to leave ~3 hours early in LA's rush hour traffic so I'd have time to make it through any unexpected snafus with my international flight.
But that paranoia got me there safely and on time ... this time.
-the Centaur
Pictured: Me, at some event in 2015 ... wait, I owned this scarf in 2015???
Super far behind, because we're in "the stretch" leading up to Embodied AI Five - which also happens to be the week of a site visit at one of my consulting clients. So, this past Monday, I met with them online, took care of some Neurodiversiverse stuff, met friends for dinner, then started packing to fly.
And, while I did draw, I forgot to blog. Mucha-girl disapproves.
Still, blogging every day, even if I have to backfill.
-the Centaur
Pictured: Detail of Alphonse Mucha's poster for Princess Hyacinth, incorporating, when you look more closely, a disturbingly strong right arm on the princess there - in my mind, probably symbolizing both her father, the blacksmith, and probably echoing Mucha's pro-Slavic symbolic interest in the goddess Slavia.
So one thing here to remind myself to blog about it in more details - I attended a panel at the Nebulas on "Moving Beyond Milford" which was very useful. Milford, for those not steeped in writerly inside baseball, refers to the Milford Writer's Workshop, or, more generally, a critiquing model in which a group gets together, shares stories to read in advance, and everyone critiques each other.
The key element of Milford is that each person in the group gets their turn to critique - say, four minutes - during which nobody else can speak - not the other authors, not other group members, with the exception of a facilitator who can keep things on track. And most people seem to agree that the gag rule is critical to Milford in that it helps authors to learn to take criticism - and shuts up "that guy" so he doesn't dominate the critique.
But it can cause people to pile on, or for criticism to be repetitive, or even misplaced. So people were recommending different approaches - online, threaded critique, or structured critique where you had to start off with what resonated with you in the story before critiquing it, or encouraging facilitated discussion so everyone doesn't pile on with dittos.
I had "office hours" at the Nebulas, during which I advised other authors on problems - not because I'm some super experienced author or anything, but simply because I'm an editor and publisher, which means authors who are arguably equally or more experienced than me thought they might benefit from talking to an editor and publisher about specific problems. Which we did, with a couple of people.
And, when I did, I took the advice of the "Moving Beyond Milford" panel: I reformulated my critique into a five-point breakdown:
What did I think the story was about? Reiterating what the story is about ensured that I "got" what the author was trying to do, in an attempt to head off at the pass any misunderstandings.
What did I like about the story? Identifying what resonated with you about the story helps the author understand what's working about the story which they probably shouldn't change.
What areas of improvement did I see? This is something that can crush newbie authors - or experienced authors hit with impostor's syndrome - so it's important to formulate this in terms of suggestions.
What features or turns of phrase stuck with me? These might be small things, but I think highlighting key sentences, elements of description, or ideas are important to remind authors they can be effective.
What areas could potentially use copyediting? If there are typos, grammatical errors, or other opportunities for low-level textual improvement, highlight them here.
But even though that's what I used when I analyzed the story, that's not how I presented the above material to the author in our meetings. What I did instead was use the following script (after the meet-and-greet):
Here's what I think I read. I started off by briefly reiterating what I thought the story was about, so the author knew I had read their piece (and we could clear up any misconceptions).
What do you want help with? I then asked the author to explain what areas they needed help in. If anything about that wasn't clear, I asked them to explain in their own words the problem.
Let's brainstorm solutions to your problem. Before digging into my notes, we discussed their problem in greater depth and used story structure ideas to start looking for solutions.
Let's discuss where my notes intersect with your concerns. Then, we dug into where my notes intersected their problems, focusing on the parts where they needed help.
Once we have ideas about a solution, then share the other notes. Where the other notes were still relevant, I shared them, trying to build suggestions about how to make the story stronger.
Overall, I wanted to not dive in with how I thought the story could be better, but to improve the author's experience working with the story first, then focus on how my thoughts about the story could help them.
I think this is a better approach than tackling the story proper as an entity divorced from its author. Once a story is done, we can talk about the text as an entity independent of its author, but BEFORE the story is done, it's a work in process being worked on by a real human being, asking for help.
When critiquing, put helping the author first, and worry about your personal pet peeves some other time.
-the Centaur
Pictured: Some writing advice from me, from back in the day, while blog image uploading is down.
Okay, the Nebulas are over, and I should blog about that, and I'm a day or two ahead on drawing, which I should post when I get the website backend fixed, and I'm a day behind on blogging, so I should get caught up on all that.
But I just spent about two hours pursuing, and achieving, zero inbox across all three of my major email accounts, so I am VERY tired, and I am going to crash shortly.
Zero inbox is the discipline of clearing ALL the messages from your inbox - either by handling them, or categorizing them into folders for further action. This means what comes into the inbox in the future can be more quickly dealt with (or more easily unsubscribed from).
Now, I have a LOT of email in the folders I filed - probably hundreds of messages. But I had at least twenty thousand messages built up across all three accounts, most of which were spam, promotions, social media notifications, forum posts, or other notifications which were functionally worthless.
Now, even though there are hundreds of messages to process ... they're just in the hundreds.
And that feels way more doable.
Okay I go crash now.
-the Centaur
Pictured: A blast from the past in the Atlanta Airport (while blog images are still down).
But I also have a day job, and since I was "drawing, on average, every day" and reading Neal Asher's Shadow of the Scorpion on the flight out, I took advantage of my oops-you-checked-in-in-advance-but-we-didn't-reserve-your-actual-room drink voucher and got an Old Fashioned at the soon-to-close hotel bar.
(Apologies to the hotel bar staff: I came in 30 minutes before close, just as they were cleaning up and switching over to sidework, but me plopping myself down at the bar apparently opened the floodgates, for something like half a dozen people then showed up right after I did).
At the bar, I cracked open Visual Studio Code, ChatGPT and Stack Overflow in an attempt to find a more parsimonious dataset representation for one of my clients. I'd built a horribly data-inefficient version of a machine learning dataset for them on the principle "get the fucker running so we can see whether it works" but the fucker worked, so we need now to make it at least marginally more efficient as we now turn our attention to "let's see whether this fucker can fucking scale up."
It looks like a data representation called HDF5 is worth a first shot (not that it's the best or the only, but it has C++ and Python bindings and appears simple to integrate into both our custom data set writer and into our custom PyTorch data loader). So, I did a little digging via Bing/Google to verify the best way to install HDF5 for Python (h5py for Conda, in this case) and set down to try out ChatGPT's recommended test case.
But ... the installation locked up.
Restarted the install. No dice. Then I thought it was the janky hotel Wi-Fi. Switched to my own personal hotspot. No dice. Tried a bunch of StackOverflow recommendations to fix the problem. No dice. Fifteen, then thirty, then forty-five minutes stretched by, as I tried to get a simple darn package to load.
This is, as I've said before, the problem of "molasses" in computer programming: the gummy gook which makes it impossible to do simple tasks. Another colleague called it "the novice penalty, and it's real": people who work in a domain all the time learn the tricks to make it work, but novices don't know these tricks, and struggle to do things that "experts" think are easy because they've forgotten they are difficult.
I almost gave up. But molasses needs to be fought. As I often say, oftentimes, you need to work a little bit harder than you think you need to, and when you do, you'll find that you're greatly rewarded by a breakthrough. Molasses can gum us up, but if we push through, we may find that it becomes smooth sailing.
In this case, the solution was actually to use ChatGPT's suggestion for installing the HDF5 package: 'pip install h5py', rather than ' conda install anaconda:h5py'. The benefit of doing it the 'conda' way is that the installation is in a 'Python environment' that corrals the installed software so it doesn't break anything else; but, for whatever reason, my conda environment was having trouble with that, so pip - which installs the program globally on the computer, across 'environments' - was the way to go,
From there I was able to start making progress on my dataset loader problem, and have a clear direction for the project to take tomorrow. Had I accepted the slowdown imposed by the molasses, I would have returned to this problem tomorrow with no real clue of the next steps to take, other than remembering that I had tried a bunch of stuff, got exhausted, and decided to start fresh in the morning.
Sometimes that's the right thing to do, of course. But if we can push through the molasses through to the other side, we often will be doubly rewarded: not only will we solve the immediate problem we were facing, but also will have a solid foundation to move forward on our next task.
So don't let the molasses bog you down. Push on through, and leave it behind if you can.
-the Centaur
Pictured: One from the archives - some Mathematica analysis of a problem - while the blog images are down.
In case the travel process goes kazoo, I'm nabbing tomorrow's post in today - looks like on June 6th I will be at the meet and greet space Thursday at 2:30pm (Meet-and-Greet Table E Anthony Francis Pasadena – Fountain Foyer), no matter what the sticky post says.
I will have books, and will sign them; hope to see you there.
Packing today (yesterday), flying tomorrow (today), so no real post for you. Yesterday I got up to drawing one five six and took in pushups and a walk plus Spectral Iron editing, so I'm caught up for yesterday, not so much for today, so I'll need to squeeze in some drawing time. Pictured: me at Dragon Con um ... 2019 ... which is a stand-in for some Nebula-specific post which I can't do until I update the blog backend.
Blogging every day, though. Keeping a regular habit helps.
Back at Con Carolinas for day two (but once again images from the archives while my blog is getting updated in the background).
Today I was on a lively panel about the "Trials and Tribulations of AI" and if there's anything I could take away from that, it would be that "modern AIs do not check their work, so if you use them, you have to."
There's a whole debate on whether they're "really intelligent" and you probably can bet where I come down on that - or maybe you can't; here goes:
Yes, modern AI's are "artificial intelligence" - they literally are what that phrase was invented to describe.
No, modern AI's are not artificial general intelligence (AGI) - yet - and I can point you to a raft of papers describing either the limitations of these systems or what is needed for a full AGI.
Yes, they're doing things we would normally describe as intelligent, but ...
No, they're doing "thinking on a rocket sled", facing backward, tossing words on the track in a reverse of the Wallace and Gromit track-laying meme, unable to check or correct their own work.
These systems "hallucinate", just like humans are mistaken and make things up, but do so in ways alien to human thought, so if we use them in areas we can't check their work, we must do so with extreme caution.
And then there's the whole RAFT of ethics issues which I will get to another day.
Next up: "Neurodivergence and Writing" at 6:30pm, and "Is THAT even POSSIBLE" at 9:30pm!
Onward!
-the Centaur
Pictured: NOT Con Carolinas - I think this was Cafe Intermezzo.
Journaling: Today's Event: Con Carolinas. Today's Exercise, 30 pushups, planning a walk later today. Today's Drawing: finished one five three yesterday, will tackle one five four after I tackle my fix-my-roof thing.
This is the day after day one five two, but, whatevz, I had to deal with a minor emergency yesterday, so you have to deal with a late post. Regardless, I was at Con Carolinas, at the "Hooked" panel, which went well, and if there's anything I could take away from that panel, it would be the following:
Your hook for your story isn't just your first line, but it encompasses everything from your genre, your prior output as a writer, the cover, the title, the subtitle or blurb, the first line, the first paragraph, the first page, the first chapter.
All of those can attract your reader's attention; to engage their interest, you need to raise a story question which needs answering. This can be the surface problem, the deeper story-worthy question, an exciting incident, the voice of the main character, an intriguing setup, or a mystery ... that makes people want more.
Most of the panelists felt that you should leave out of your hook any excess description or backstory that does not help build that story question. Those issues can be raised later, once the story is moving; only when your readers are desperate to have questions answered should you spend time answering them.
I'm sure I could say more, but I'm not, because I have a leak in a roof to deal with. BUT, since I am not going to be able to post new images for a bit, I'm going to change my strategy for my "Blogging Every Day" posts with a little Livejournal-style annotation! Lo:
Today's event? Con Carolinas, where I saw a lot of old friends and was on the "Hooked" panel. Today's exercise? Just thirty pushups and a relatively brief walk. Today's drawing? More Goldman studies: by my count, I am up to day one five three, which means I'm caught up (as this blogpost is one day behind).
That's it! Here's hoping I have enough bits left to post.
-the Centaur
Pictured: From the archives, the red editor's pen, over a redacted manuscript. Full disclosure: my normal editing pen is blue, as I am partially colorblind - while I can see red, it doesn't stand out for me the way blue does. There is no such thing for me as "fire engine red" unless I'm wearing Enchroma glasses (which do not give you true color vision, by the way, but they certainly can make certain colors stand out more). I was probably using the red pen in this case either because the blue one blew up, or I need two kinds of notes.
Long day packing, driving, arriving, and taking care of stuff, so, no real post for you, will post my schedule tomorrow.
Also, uploading images are still borken, so please enjoy the following blast from the past (my steampunk bookshelf from my old library) while I work on replacing my hosting provider (since there seems no way to increase storage as a stopgap).
Blogging every day.
-the Centaur
P.S. Posting "drawing every day" is on hiatus until I fix the images, but by my count I'm up to day one five two (one day ahead of today). I'll keep noting that as a postscript on the blogging every day posts.
P.P.S. Apparently I was real clever and posted my blogging for Wednesday late, late Tuesday night (in the Wednesday AM) so technically this is the Thursday post, but, whatevz.
Our big butch cat - Loki is 16+ pounds of fur and muscle, with relatively little flab - is actually a little scaredy guy. I mean, I might be a scaredy guy too if the situation was reversed: I'm approximately 6 times taller and 11 times heaver than Loki, and I'd be freaked to live in a world where 35-foot-tall, one-ton creatures felt like picking me up at random times for no discernible reason.
But he's scared of other things too, like his shadow. And I think that happened because once, when he tried to go outside, a baby rat snake was coiling by the door. He ran to the nearby French doors to be let out, but the rat snake had also fled - to the same doors! And then, both of them again fled to the next door down. He was pretty freaked, and a little more cautious going over thresholds since then. Not this guy, though:
Regardless, Loki frequently gets animated, starts looking outside or in the yard to see what's going on, and stares at it for a long time, before settling down and chilling out. Even when something is really there, though, it doesn't mean that the cause is always actionable. Sometimes things are just passing through, and worrying about them or doing something about them can only lead to more disruption.
I'm not saying to ignore real problems, of course; seeing the fox requires different reactions than the deer.
But how often do we stress out about things which will ultimately pass us by?
-the Centaur
Pictured: Loki, the snek, and the deer. Fox was not available for comment.