Showing posts with label technology. Show all posts
Showing posts with label technology. Show all posts

Sunday, October 12, 2025

Deeper Into the AI Wave


I watched two brilliant video podcasts this week about technology.  The first was all about LLMs (a.k.a. “AI”), and the second was about enshittification, but it did touch on AI a bit.  You should watch them both for yourself: Jon Stewart’s interview with Geoffrey Hinton, and Adam Conover’s interview with Cory Doctorow.  They’re long, but well worth your time.

Now, you might not know who Geoffrey Hinton is, so let me enlighten you: he’s a British computer scientist, now living in Canada, winner of the 2024 Nobel Prize in Physics for his work on neural networks, and is commonly known as “the Godfather of AI.”  So, you know: a guy who actually knows what the fuck he’s talking about.  And, while Jon was desperately attempting to get him to talk about the dangers of AI—which he eventually does—he seems determined to make Jon understand how LLMs work.  And it’s utterly brilliant.  Because it takes forever, and you can see Jon champing at the bit to get to the more “interesting” part of the discussion, but, in his slow, deliberate, professorial way, he keeps circling back to building up Jon’s knowledge, brick by brick.  And, at the end, Jon really does understand a bunch of things about AI that he just didn’t before.  And, as a result, he has a much firmer grasp on the positives of AI and the dangers.  That, to me, is valuable.

Of course, I also will admit to being thrilled that Hinton articulates (quite brilliantly) many of the same points I’ve tried to make in my posts about AI/LLMs.  In my more recent post on AI, I pointed out that we don’t really understand what “intelligence” means; Hinton goes further and says our concept of “sentience” is like to that of somone who believes the Earth is flat.  I said that perhaps in the far future, we would discover that our brains work the same way that LLMs do; Hinton goes further and says we already know that to be true (and it’s useful to understand that he started out with a degree in experimental psychology before transitioning to artificial intelligence).  So he and I are on the same page, but of course he explains things much better than I can.  I won’t say he’s smarter than I am, but he does have nearly 20 extra years’ experience and a PhD on me.  Also, he’s probably smarter than I am.

So here’s how he explains to Jon that claiming that AI isn’t actually “intelligent” isn’t as smart an observation as you think it is:

Geoffrey: Now, you just said something that many people say: “This isn’t understanding.  This is just a statistical trick.”

Jon: Yes.

Geoffrey: That’s what Chomsky says, for example.

Jon: Yes.  Chomsky and I, we’re always stepping on each other’s sentences.

Geoffrey: Yeah.  So let me ask you the question, well, how do you decide what word to say next?

Jon: Me?

Geoffrey: You.

Jon: It’s interesting; I’m glad you brought this up.  So what I do is I look for sharp lines and then I try and predict— no, I have no idea how I do that.  Honestly, I wish I knew.  It would save me a great deal of embarrassment if I knew how to stop some of the things that I’m saying that come out next.  If I had a better predictor, boy, I could save myself quite a bit of trouble.

Geoffrey: So the way you do it is pretty much the same as the way these large language models do it.  You have the words you’ve said so far.  Those words are represented by sets of active features.  So the word symbols get turned into big patterns of activation of features, neurons going ping—

Jon: Different pings, different strengths.

Geoffrey: —and these neurons interact with each other to activate some neurons that go ping, that are representing the meaning of the next word, or possible meanings of the next word.  And from those, you pick a word that fits in with those features.  That’s how the large language models generate text, and that’s how you do it too.

Which makes sense: LLMs were based on neural networks, and neural networks, as their name implies, were based on the way our brains actually work.  We designed these things to mimic our brains, but then we decided that our brains were “special,” somehow.  As they say later in the discussion:

Geoffrey: This idea there’s a line between us and machines: we have this special thing called “subjective experience” and they don’t—it’s rubbish.

Jon: So you’re s—so the misunderstanding is, when I say “sentience,” it’s as though I have this special gift, that of a soul, or of an understanding of subjective realities, that a computer could never have, or an AI could never have.  But, in your mind, what you’re saying is: oh, no, they understand very well what’s subjective.

We’ve just pre-determined that humans are different, somehow; that machines can’t possibly be as smart as we are, as creative as we are, as special as we are.  The number of times I’ve heard people use the word “obviously” when talking about how AIs will never write a song as good as a human can, or a poem as touching, or an essay as convincing ... look, I’m not saying that AIs can do those things.  I’m just saying that the word “obviously” doesn’t really apply.  Maybe one day we’ll actually figure out what it is that our brains can do that AI brains just can’t, for deep structural reasons.  But I’m pretty sure it won’t be obvious.  (Though of course this won’t stop some people from claiming they knew it all along ...)

The best part of these interviews, however, is how the people who know what they’re talking about gently correct the AI misgivings of their interviewers.  Here’s Jon and Geoffrey again.

Jon: ... my guess is, like any technology, there’s going to be some incredible positives.

Geoffrey: Yes: in health care, in education, in designing new materials, there’s going to be wonderful positives.

Jon: And then the negatives will be, because people are going to want to monopolize it because of the wealth, I assume, that it can generate, it’s going to change.  It’s going to be a disruption in the workforce.  The Industrial Revolution was a disruption in the workforce.  Globalization is a disruption in the workforce.  But those occurred over decades.  This is a disruption that will occur in a really collapsed time frame.  Is that correct?

Geoffrey: That seems very probable, yes.  ... my belief is the possibilities of good are so great that we’re not going to stop the development.  But I also believe that the development is going to be very dangerous.  And so we should put huge effort into saying, “it is going to be developed, but we should try and do it safely.”  We may not be able to, but we should try.

Jon is typically someone who thinks the benefits of AI are overstated, and it’s good to hear someone will some knowledge temper that.  This exact dynamic is mirrored in the Cory Doctorow interview; Adam is, if anything, even more of the opinion that AI is useless, while Cory, like Geoffrey, has a far more informed (and therefore more balanced) view.  Here’s a typical exchange from their conversation:

Adam: And you know what’s funny is, I’ve mentioned in in past episodes where we’re talking about AI, you know, that I find large language models pretty useless, but I’m like, “Oh, but I understand programmers find them useful.  It’s a labor-saving device for programmers.”  And I’ve had developers in my comments come in and say, “Actually, Adam, no, it’s useless to us, too.  Like, this is also a lie on the part of the companies that employ us.”

Cory: So, I got so fed up with having conversations about AI that went nowhere, that over the summer I wrote a book about AI called The Reverse Centaur’s Guide to AI that’s going to come out in 2026.  ... my thesis is that, so a centaur in automation theory is someone who’s assisted by a machine, okay?  And a reverse centur is someone who’s conscripted to be a peripheral for a machine.  So, you know, like I love Lucy where she’s got to get the chocolates into the chocolate box and the conveyor belts?  She’s only in the factory because the conveyor belt doesn’t have hands, right?  She is the, like, inconvenient, inadequate hands for the conveyor belt, and it works—it uses her up, right?  And I think that, you know, there’s plenty of senior devs who are like: oh, this routine task I can tell right away if the AI does it wrong.  It’s sort of time-consuming.  Like, one of the canonical examples is, I have this, like, one data file that’s in a weird format and I need to convert it to another format and I could, you know, do some regular expressions in Python and whatever and make it happen, or I could just ask—I could one-shot it with a chatbot, and then I can validate it really quickly, because I can check if the tabular data adds up or whatever.  And I hear from devs all the time who say this is great, and the thing is: they’re in charge of their work, right?  And this was like the thing the Writer’s Guild won in the AI strike, right?  We don’t have to use AI.  We don’t have to not use AI.  You can’t pay us less for not using or for using AI ... and we’re in charge.  ... but, like, if if there’s an artist out there who enjoys using AI in some part of their process, like, you do you, brother.  Like maybe it’ll be shitty art.  There’s lots of bad art out there.  It’s fine.  ... it’s the conscripting of people to assist a chatbot that I think is the thing that makes the difference.

Because here’s the thing: anyone who tells you that AI is completely useless—just a party trick to amuse stoned people by making Abraham Lincoln rap or having MLK drop the beat—is full of shit.  But anyone who tells you that AI is the future and is going to make everyone’s lives better is also full of shit (and likely trying to sell you something).  Somehow we decided that either this AI thing is all smoke and mirrors and sooner or later the bubble will collapse, or it’s inevitable and it will change the world.  ¿Por que no los dos?  Remember in the late 90s, when some people said that the Internet was inevitable, and sooner or later if you didn’t have a website your business was doomed?  And then other people said that all those Internet companies were losing money and they were all going to go bankrupt in spectacular fashion?  Now, with the benefit of hindsight, which camp was right?  Well, turns out both sides were right.  There was a bubble, and it burst, and a lot of people lost a lot of money.  Also, the Internet is now an integral part of everyone’s lives, and those companies who were slow to adopt—like Kodak, Toys “R” Us, and Borders—ended up filing for bankruptcy and/or getting gobbled up by their competitors.  And this is the lesson we need to internalize about AI as well.

The way that AI is currently expanding is absolutely unsustainable.  People are using it like a new buzzword and just jamming it into things where it can’t possibly be useful, or putting it into things where it might be useful, but doing so with such a poor understanding of how to use it that it will fail anyway.  None of the AI companies are making any money, and most have only the vaguest idea of how they will make money.  Like tulips or Beanie Babies, eventually the whole thing will come crashing down.  It’s inevitable.

But that doesn’t mean that AI isn’t actually useful, or that it won’t become an integral part of our lives.  Yes, I happen to be a senior developer, and, while I’m encouraged to use AI, I’m not required to by any means: I’m the “centaur” Cory was talking about, not the “reverse centaur” that has AI thrust upon them whether they like it or not.  So, since I get to decide whether to use it or not—and I get paid the same either way—I’m an AI proponent (mostly).  But this idea that people such as Adam are constantly espousing—that AI is only useful for developers—is just nonsense.  AI can help you choose the best air fryer to buy.  It can help you understand difficult concepts that you’re studying.  It can help you make the seating chart for your wedding.  Is it the case that you can’t always trust it?  Obviously.  You’re not trusting every web site that comes up in a Google search either, are you?  Hopefully not.  For that matter, you probably shouldn’t trust everything coming out of the mouths of all the actual human people in your life either.  Humans in the modern age have to become very good at sifting useful knowledge from bullshit, and nothing about that part changes with AI.  The big difference is, the AI can gather the data faster, can present it more relatably, and can help you integrate it into something approaching usefel, correct information.  That’s not just for developers.  That’s for everyone.

So I’m quite pleased to have some real experts here that I can refer to to back up my opinions.  Not that I felt like they needed backing up.  But it’s still nice to have some authoritative sources behind them.  And it’s especially nice to see Jon Stewart and Adam Conover, two people whose opinions I generally respect, learn some new perspectives in one of the few areas where they were annoyingly wrong.  Now let’s see if they can accept those perspectives and integrate them into their worldviews.









Sunday, December 15, 2024

Doom Report (Week -6: When It's Obvious, It's Easy)


This week, I really enjoyed The Weekly Show, where Jon Stewart interviewed billionaire Mark Cuban.  Cuban is famous for supplanting Warren Buffet as “the good billionaire”: a billionaire who seems to want to do some good in the world instead of just screwing over everyone else.  When Stewart talks about how people only rail against billionaires on the “other” side—basically, that whatever billionaires do is fine, but only if they’re “our” billionaires—the billionaires he’s talking about as being “ours” are Cuban, Buffet, and perhaps George Soros, who of course has long been the boogeyman billionaire of Fox “News,” where they constantly trot him out to cover for the much more sinister billionaires behind the curtain that are propping them up, like Murdoch and the Koch Brothers and Harlan Crow (most notable for being the “emotional support billionaire,” as the ladies of Strict Scrutiny put it, of at least one Supreme Court justice).  One gets the idea that Stewart is vaguely saying that all billionaires are probably bad, though he typically has a good enough time talking to Cuban that he doesn’t want to go quite that far explicitly.  And, if you’d like to hear a well-reasoned rant on why all billionaires are bad, Adam Conover has you covered, and, if you’d like to hear specifically why George Soros is the target of so many right-wing conspiracies, and which ones may actually have some foundation in reality, the Some More News team has got you covered there too.  But, in general, I think that people like Cuban—and maybe even only Cuban, since I’ve never heard Buffet or Soros talk as openly about their philosophies—are a fascinating mix of good billionaire and bad billionaire.  Many people (such as Ingrid Robeyns and, to a lesser extent, Bernie Sanders) have argued that you can’t be both a billionaire and a good person, and I think there’s some grain of truth to that.  Certainly there are times when I’ve listened to Cuban and thought, ah, there’s the coldness and moral apathy that helped him acquire those billions.  But there are also times when he says things that are both articulate and progressive.  So I always have a fun time listening to his interviews.

I noted this one for a couple of places where he seemed to be agreeing with some of my prior posts.  For instance, when talking about AI, he said this:

Cuban: Then there’s using AI.  And so there are things like NEPA, which go into the environmental protection stuff to try to find out if there’s a little frog or whatever before something’s built.  In my opinion, in the conversations I had with some of the Harris folks, is that’s where AI really, really can apply.  Because there’s a process designed for the people in NEPA who go through and determine what should be approved and what data is required and what friction should be added or what friction should be removed.  Artificial intelligence is great for that. All the rules that the individuals on those councils and boards that make those determinations, they have rules that they follow. They have guidebooks that they follow.

Stewart: It’s onerous.

Cuban: Yeah, it’s onerous.  There’s tons of bureaucracy, but tons of data there.  You put that into artificial intelligence,
into a large language model, and you use that to train the large language model.  And then when a new project comes along, you set up agents which then feed the questions and the answers, and the answers to the responses to that new organization, whatever it is they may be building.

Which is exactly correct: this is using AI in how it’s meant to be used.  There’s a process, and it takes a long time for humans to complete that process, but a computer can do it faster.  Up until now, whenever that process involved people weighing different abstract factors and trying to figure out what’s the best approach, you just couldn’t use a computer to try to speed things up, because computers can’t do that.  But AIs—more specifically, LLMs—can.  (You can read more of my thoughts on the current crop of AIs in my post questioning is AI intelligent and several other posts: just click “technology” in the “Things about Things” box over there to the left of that post.)

But Jon comes back with this:

Stewart: Does that abdicate our autonomy?  ...

Cuban: ...  The challenge is, who makes that decision?  When it’s obvious, it’s easy.  When it’s not so obvious, it’s far more difficult.  And so that’s where the AI comes in and large language models.  Because across the breadth, however many instances of evaluations that need to take place across the country, you don’t want individuals having to make those decisions.

Stewart: But I thought that’s the whole point.  I thought the whole point of people running for office is that they’ve got a vision and they earn our trust, as opposed to AI. And this, again, may be more of the Luddite’s view of not understanding ... AI. I’m nervous about abdicating that.  At least with people, there is a certain regime of accountability that we can bring through.  I can’t vote out a large language model.

And Cuban was, surprisingly, not able to mount a cogent response to this.  I, however, am.
  • You can’t vote out the dozens—sometimes hundreds—of people in the EPA or whichever bureaucracy we’re talking about who are making the decisions about how to navigate all those regulations either.  You can vote out the guy at the top, maybe, but they’re just the person who either approved or rejected the work of all those faceless bureaucrats.  How is that different from the AI example?  Asking the AI to help make a decision doesn’t automatically mean that there’s not someone at the end of the day who will either approve or reject the AI’s plan.
  • Jon says it would be better to just get rid of all the red tape.  Well, duh.  Of course that would be better.  Sadly, the “science fiction” plan of replacing the work of all those bureaucrats with AI is more feasible (and likely) than any plan to reduce the current bureaucracy of our governmental agencies.
  • Jon also says that people can cut through the red tape too, like Pennsylvania governor Josh Shapiro did when fixing the collapse of Interstate 95 in Philadelphia.  Cuban points out that humans can do things quickly when the answer is easy, but not so much when the answer is harder.  This is vaguely correct, but it doesn’t explain things well enough.  He was closer when he talked about the “little frog.”  There are always going to be cases where the “right” decision means weighing environmental factors vs economic ones (to take a simple example), and for the most part we have a tendency to devolve into camps.  There are people who are always going to take the side of the environment, regardless of the cost, and there are people who are always going to take the side of the business, regardless of the impact on the planet.  But an AI doesn’t have a predetermined agenda.  It can weigh factors, given all the background context, and make a dispassionate decision on where to draw the balance.
  • And, despite the fact that people are predisposed (by scifi thrillers, mostly) to believe that AIs are black boxes and we can never understand how they arrive at their decisions, the truth is that, at least for the LLMs that are currently what we mean when we say “AI,” we actually do know exactly how they arrive at those decisions.  LLMs use something called “chain of thought reasoning” (usually abbreviated in LLM literature as CoT), which basically means that LLMs “think out loud” so that humans can review all their logic and make sure it’s sound.
  • Which also knocks down Jon’s other objection (which is expanded upon in the show’s closing segments, where his producers talk about the very real cases of people losing their jobs to AI): that this process will eliminate people’s jobs.  Sure, in business this is a very real problem: many businesses look at AI as a way to save money, and eliminating jobs is one way to do that.  But that ain’t an AI problem.  Why do so many companies lay off people right around Christmas?  Because it makes their bottom line look better at end-of-year.  Companies killing jobs to improve their bottom lines ain’t an AI problem: it’s a shitty company problem.  But government is different.  Most government workers have protection from being downsized in this fashion.  Plus, the whole reason all this red tape takes forever is that the government is constantly understaffed.  Having AI make decisions which are then reviewed by experts doesn’t in any way reduce how many people you need to get the thing accomplished: it only reduces the amount of time those people end up having to devote to the job.

Anyway, another place Cuban appeared to agree with me is on the topic of insurance, which I broached in a long tangent last week.

Cuban: But it gets worse.  It gets worse.  And so now these providers, the hospitals and doctors, they negotiate with the big insurance companies.  And it’s fascinating.  If you walk into a hospital to pay for an MRI, as an example, and you don’t mention your insurance, you just say, I want a cash price, they’ll probably say it’s $350 to $450, depending on where you live.  That same hospital will negotiate with what they call the BUCAs, the big insurance companies.  For that same thing, they’ll negotiate a price of $2,000.

Stewart: What?

Cuban: Yeah.  So you would think that big insurance company negotiating with the hospital and that insurance company
covers millions of lives.  They insure or deal with—

Stewart: Why wouldn’t they negotiate that if it’s a bulk thing to $100?  Why would it be higher?

Cuban: Because the hospital needs the insurance company as a sales funnel to bring patients in so they can pay their bills. And the insurance company wants that price to be higher, particularly for things like the ACA, because the ACA requires for all the plans they cover that they spend up to 85%.

Again, I’m not sure Cuban is explaining it particularly well, but remember how I put it last week: “companies couldn’t charge that much for medical care if the insurance companies weren’t picking everyone’s pockets ...  insurance is enabling the whole cycle.”

Anyway, that’s my too-long review of the Mark Cuban interview.  I’ll just ding Stewart one last time—and I really do love Jon Stewart, don’t get me wrong, but he’s not always right, and I’m not afraid to call him out on it—on some lack of self awareness.  In the wrap-up with his producers, he reiterates his skepticism on using AI that I talked about above: he refers to it as “dystopian” and then extrapolates to “hey, just so we’re clear here, you’re saying that the computer controls the entire hospital and decides what oxygen to turn on and turn off through analytics?”  Then, less than a minute later, he answers a listener question about what he thinks his mistakes were for the year.

Well, you guys know this.  I get annoyed at myself for being a little high-horsey.  And you get a little of the sanctimony in there.  So I try to relax sometimes on the certainty of my opinions.

Oh, you get a little sanctimonious, do you?  You mean, like you did a few seconds ago?  Work harder on the relaxation part, my man.

But, all that aside, still a great host, very incisive, very trenchant.  Looking forward to more shows next year.









Sunday, January 14, 2024

GPT FTW

This week I’ve been fighting my computer curse again.  Still, despite the fact that the computer gods still really hate me, I’ve managed to accomplish a few things.  I’ve managed to get the version history from my Syncthing replicating to my Backblaze B2 account, I’ve updated the OS and a bunch of packages on my Synology NAS, fixed a long-standing annoyance with my use of NoMachine, and I started building my first custom GPT.  And all that was made much easier with the use of ChatGPT.

Perhaps this deserves a longer post—and perhaps that’ll be what I put up next week—but I’m still seeing a lot of AI skepticism out there.  Last night I saw an interview with a tech reporter who agreed that, yeah, AI might be useful for helping developers with their coding, but beyond it wasn’t good for much.  And, hey: it’s true that trying to make it useful for searching the Internet is tough (though not impossible), and trying to make it work for handling things like customer service is just a horrifyingly bad idea.  But that doesn’t make it useless.  In point of fact, for things like helping you integrate different software packages together, configure your hardware, or design a solution to an ongoing problem, things like ChatGPT are actually pretty useful.  And I think it’s only going to get more useful as time goes on.  Once they figure out how to integrate ChatGPT (or one of its competitors) into something like Alexa or “Hey Google” (as it’s called in our house), the utility of “smart devices” is going to go way up.  Because our smart devices are actually kinda stupid right now, so they could really use that AI boost.

Anyhow, I don’t think I want to turn this blog into an AI evangelism vehicle or anything, but ... damn, ChatGPT shore is useful.

That’s all I really wanted to say.









Sunday, January 7, 2024

Discordia, discordiae [f.]: A Misunderstanding


I don’t understand the appeal of Discord.

Oh, sure: I understand it for things like gaming.  The few times that I’ve run D&D games with remote participants, I happily used Discord, and found it to be excellent for that purpose.  Nowadays, there are fancier platforms for such purposes—Alchemy, Owlbear Rodeo, or even things like Roll20 and Fantasy Grounds, which have been around so long they’re starting to show their age—but honestly I might just stick to something like Discord for its simplicity.

The thing I don’t understand is that it seems to have become the flavor of the decade for hosting online communities.  Web forums are considered passé nowadays: downright old-fashioned, some would even say.  How many times have I heard lately “if you have a question, just pop into our Discord”?  People are actually using it for product support, and it just makes no sense to me.

Now, on the one hand, you might say: well, that makes perfect sense—Discord is primarily popular among Zoomers, while you are very old.  And, sure, I can’t argue the first part, and while I might protest the second one a bitI’m not a freakin’ Boomer (I am in fact, an elder Gen-Xer, if one believes in those sorts of things*)—I’m not going to deny that it’s a fair observation.  But I have one foolproof argument that absolutely proves that this has nothing to do with my age: IRC.

Because, in exactly the same way that Reddit is just Usenet reborn, Discord is 100% just the second coming of IRC.  And IRC was invented in 1988, and by the time I was in the age range that Zoomers occupy now—the upper age range, granted, but still: within the range—it was the way that cool tech people communicated.  And I didn’t understand the appeal of it then either.

See, Discord (just like IRC before it) has several fundamental problems that make it really bad for online support in particular, and long-lived online communities in general.  And please don’t think I’m trying to bring back webforums here: I always thought they were pretty awful too, at least compared to the interface of something like Usenet.  But it’s pretty easy to look good when you’re put up against something as terrible as Discord.  And, as much as I’ve always hated webforums, I’ve had some experience with them: I’ve been the moderator a popular Heroscape website for coming up on two decades now.  Of course, most of the younger fans (such as they are for a game that’s been discontinued for years now**) have moved to YouTube and, I suppose, Discord, but please don’t imagine that I’m upset about that.  Being a moderator of a forum whose traffic is declining means I have less work to do, so I’m all for everyone moving on to other venues.  But my point is, I have a bit of experience not only participating, but even managing, a long-running online community.  So I’m not just talking out of my ass here.

So, what can a webforum do that Discord can’t?  Well, first off, the organization is just better.  A webforum has forums, which have threads.  The vast majority of them also have dedicated areas for file uploads, and often a separate one for images.  Many have blogs or something similar attached to them.  Threads can be moved to another forum when they’re posted in the wrong place by a clueless user, or split apart when they get too crowded, or merged when people are trying to have the same conversation in multiple places at once.  Discord has ... channels.  That’s pretty much it.  There are a couple of different types of channels, but (as near as I can tell, in any event) that has more to do with the method of communication than anything else (e.g. text channels, voice channels, video channels, etc).  So, channels are the only way to organize things, so everything is sort of forced uncomfortably into that model.

A bigger problem, which Discord shares with IRC, is that it’s all real-time.  If I show up on a webforum, I can post a question, then sign off and check back in a few hours (or the next day) for an answer.  On Discord, I post a question, and if someone is there who can answer the question, I get the answer instantly, which is certainly nice.  But if there isn’t anyone there at that exact moment, I just don’t get an answer at all.  I guess some people do go back in time to read all the messages that came in since the last time they were online, but that’s not easy to do, and it might be way too many messages anyway, if the community is large, and even if the person sees the question and knows the answer, they’re probably not going to post it because the conversation has moved on since then so now their answer has no context, and even if the person makes it through all that and actually posts the answer, then I very well might not be online to receive it.  It is quite possibly the worst possible model for customer support that could be imagined in this reality or any other.

But the biggest problem with Discord is that it’s very difficult to search.  At least IRC had logging: most IRC chats were saved and posted to web pages, where you could do minimal, primitive, Ctrl-F-type searches.  A webforum, on the other hand, typically has sophisticated searching: I can find all threads in a certain group of forums that have posts from a given user that contain 2 or more words, not necessarily adjacent.  Not to mention I can use Google to search instead if that’s somehow advantageous.  Meanwhile, searching in Discord is a miserable affair, and can only be done on Discord.  I can set up my own Discord server, but I can’t log those messages to a separate location, because it’s not really my server: it’s just a virtual server controlled by Discord.  And the inability to locate old messages easily means that people just ask the same questions over and over, and people have to spew out the same answers over and over, which everyone no doubt gets sick of doing, and I can tell you from experience that everyone definitely gets sick of reading them.  Lack of easy and versatile search means that the community has no history ... no memory.  And a community with no memory is cursed to just do the same things over and over, not even expecting a different result: just expecting no result whatsoever.  Which is exactly what it gets.

So I don’t see the appeal of Discord, just as I didn’t see the appeal of IRC.  Personally, I was happy to see the latter fade in popularity, though of course there are still corners of the Internet where you can still find IRC communities, presumably inhabited by gray-bearded programmers of COBOL and Ada reminscing about the good ol’ days of JCL and PDP-11s.  But everything that fades comes around again.  AIM is gone, but now we have WhatsApp.  Usenet is (mostly) gone, but now we have Reddit.  And here’s Discord, with the exact same interface that didn’t work with IRC, trying to make it work again.  Honestly, Reddit has the best user interface, I think: subreddits are like forums, threads are threads, and the conversations are displayed heirarchically, so that a response to a given message goes with that message rather than just being tacked on at the end (as they would be in a webforum thread).  This is exactly how Usenet worked (and Slashdot, for that matter), and I still think it’s the superior way to display and store community conversations.  But Reddit has its own issues, which are eerily similar to Usenet’s: it has a reputation for being a cesspool, which certain parts of it deserve, and it often makes it easy for misinformation to thrive and multiply.  Perhaps that’s because the moderation tools for webforums are better ...

Or perhaps it’s because each webforum was run by its own community.  They owned the servers and they set the rules.  Usenet and IRC were like that too: very decentralized, with each community having near complete autonomy.  But Reddit is a company, as is Discord; in fact, it’s very rare these days for a comunity of any type to set up its own servers and run its own software.  You set up virtual servers at Amazon or Microsoft, web sites at Squarespace and WordPress, you put your photos on Instagram and your blogs on Tumblr.  Well, assuming you even bother with blogs at all: these days, it’s more common to just tweet, which of course means you’re using Elon Musk’s personal dumpster fire.  Each one is its own company, with its own goals, and none of those goals are to help your online community thrive, unless of course your thriving can line their pockets in the process.  And obviously the un-decentralization of the Internet is a much broader topic than this meager blog post can address, but I do think Discord is symptomatic of that issue.

So I continue not to “get” Discord, even though I occasionally use it, because often there just isn’t another option.  But it’s always an option of last resort.  Unless, as I noted initially, I’m gaming online.  It’s still pretty good at what it was originally intended for.  I just feel like, somewhere along the way, they got a bit lost trying to be everything to all people.  That hardly ever works.



__________

* And one mostly shouldn’t.  Personally, while I think it is bullshit to imagine you know what any given person is going to do or say based on an arbitrary “generation” label assigned by the Pew Research Center, I do think it’s okay to use the labels as a convenient shorthand for talking about demographic differences between age groups, which are absolutely a thing that exists.

** But is now officially making a comeback, for what it’s worth.











Sunday, July 23, 2023

CollabGPT

This week I’ve been concentrating on setting up my file synchronization and versioning system.  For this, I’ve mainly been consulting with ChatGPT.  I originally wanted to hire an actual person to help me design and set this up, but I couldn’t find anyone who was both willing to work on my home system—what with me not being a business—and who seemed trustworthy (no shortage of shady characters, of course, but working on your network necessarily involves giving out your password, which is probably a Bad Thing to do in the case of randos on the Internet).  So I eventually decided to just ask ChatGPT and do whatever it said.

Well, perhaps not whatever it said, but, if you’re willing to put in a bit of effort to chastise it when it says something stupid and challenge it when it says something unlikely, you can actually get quite a lot out of it.  And it’s useful both in the design phase as well as the implementation phase.  Just about the only downside is that you have to start every chat fresh from ground zero (though there’s a new experimental feature which helps with that, a little).  And you can’t get around that by just staying in the same chat forever, because ChatGPT has a limited number of “tokens” (roughly equivalent to words) that it can remember before it starts forgetting the earliest parts of the conversation.

Still, you can get quite a lot accomplished even so.  Thanks to ChatGPT, I now have a system whereby I use Syncthing to handle synchronization across computers, and also provide versioning so that I can go back to the previous version of any file.  Now I’m working on getting that backed up to the cloud.

One of the fun things about ChatGPT’s limited memory is that sometimes you have to explain to it what it already figured out.  Today I started a new chat on this topic, as the old one was getting pretty full.  I told it:

I’ve designed a file synchronization and versioning system that works like this:
* There are seven shares, each of which is a filesystem with gigabytes of files.
* Haven and Avalir each have copies of six of the seven shares (there is one share that is not needed on each of those machines).
* Files are bidirectionally synchronized between Haven and Avalir using Syncthing.  No file versioning is used for these two servers.
* Zadash has a copy of all seven shares, with full file versioning (by which I mean keeping a copy of all versions forever).
* Editing of the files is done on Haven or Avalir only.  Since Syncthing only stores versions for remote edits, not local edits, if I edited files on Zadash, it would keep the previous version.  I do mount the shares from Haven to Zadash JIC I need to edit on Zadash, but the Syncthing copy is for archival purposes only.

To which ChatGPT responded:

You’ve outlined quite an advanced file synchronization system, ...

And I’m like, bitch, this was all your idea!

Anyways, that’s how my week went.  Next week, a longer topic, hopefully.









Sunday, July 16, 2023

Of Waterfalls, Pigs, and Red Red Tape


Once upon a time we used to develop software via something known as the “waterfall model.”  When trying to envision this, don’t think about something like Angel Falls, where the water just falls off a cliff.  Picture instead something along the lines of Detian Falls in Vietnam: a series of steps as the water drops, level by level, to its final destination.  See, back in those olden times (which, honestly, were mostly before I got into the industry, though there was some residual inertia even in the mid-80s, when I came along), back then, as I say, the specifications (or “specs”) were developed by one team, who then passed them along to the design team, who designed the whole system in a very abstract way, and then passed it along to the programming team, who did all the hard coding work, and then passed it along to the QA team, who verified that the functionality matched the original specs, and then they passed it on the customer and then it’s done.  The primary reason for the analogy to a waterfall for this development model is that the water only flows one way: for the real-world waterfall, that’s due to gravity, and for the waterfall model, it’s because going backwards—“upstream,” if you will—is expensive.  You really want to get each phase just perfect, because if you find a mistake, you essentially have to start over ... and that costs the company money.  Sometimes, with this model, starting over was so expensive that they just didn’t.  The greatest stories of software development debacle were due to the sunk cost fallacy: too expensive to try get back up to the top of the waterfall, so we just gotta make due with whatever horror show we’ve ended up with.

So throughout the 80s and 90s software developers started saying there had to be a better way.  In 1986 the “spiral model” was proposed: it was built into the system that, instead of planning out the whole system at the beginning, you’d spec out just an initial prototype, then design that, code it, test, then go back to the spec stage and tack on more features.  Starting over was no longer a bug, but a feature.  Instead of losing a bunch of money because we had to start everything from scratch, we were only starting the next thing from scratch ... and, if we needed to tweak some stuff from the first iteration, well, we already had the mechanisms in place for specifying, desiging, coding, and testing.  Those phases were in our past, true: but they were also in our future.

Of course, the spiral model is a very abstract concept.  How do you actually implement such a thing?  That is, what are the actual processes that you put into place to make sure the company and its employees follow the model and achieve the goals of iterative design?  For that, we needed to move beyond models and into methodologies.  Enter Agile.

Agile software development practices, usually just referred to as “Agile,” were a way to concretize the spiral model abstraction.  Sometimes they would propose tweaks to the model, sure, but the main thing was, no going back to waterfall.  And, to distance themselves from those crusty old waterfall methodologies—many of which were by this point formalized as standards, such as the DOD’s 2167A—they all had cool new names: RAD (“Rapid Application Development”) and Scrum and Crystal Clear and Extreme Programming (if you didn’t just hear a Bill and Ted’s-style guitar lick, you’re doing it wrong).  This last one, usually abbreviated to “XP” (no relation to the Windows version) was not the first agile methodology to come along ... but it was the first one I was ever exposed to, and they say you never forget your first.

Kent Beck, author of “Extreme Programming Explained,” presented to me a perspective that literally changed my (software development) life.  He pointed out that, in order for the waterfall model to work, you have to be able to predict the future.  The whole thing is predicated on predicting what problems will happen, anticipating them, and building them into the plan.  If you fail to predict something, then everything falls apart.  Except ... humans really suck at predicting the future.  When we say “predict,” what we really mean is “guess.”  And we usually guess wrong.  As Kent so succinctly put it:

The problem isn’t change, per se, because change is going to happen; the problem, rather, is the inability to cope with change when it comes.

Stop trying to keep change from happening: it’s a fool’s errand.  Rather, create a better methodology which says “yeah, things change: so what? we got that covered.”

Agile is all about being flexible.  Hell, the reason it’s called “agile” is because the old waterfall methodologies were ponderous and slow to course-correct.  It’s common for business people to talk about agility in terms of responding to changes in the market: the creators of the Agile Manifesto (one of whom was Beck himself) wanted to capitalize on that perception.  Our development practices can make your company more agile, and that makes you quicker to respond, and that helps you beat your competitors.

And yet ... it’s kind of strange that we need all these procedures and guideliness and principles and a whole friggin’ manifesto to perform something for which the entire purpose is to be flexible.  The thing I never liked about XP, despite all its merits (and the aforementioned life-changing-ness), was that it had all these notes about how, if you’re not following every single rule, then you’re not “doing” XP.  You’re just playing at it.  I always found that inherent dichotomy cognitively dissonant: so I have to do things exactly according to these rules so that I can break the rules? I have to rigidly fit into the straitjacket so that I can have the flexibility to move freely? I have to precisely walk the straight line so that I have the freedom to jump in any direction?  Surely you see the contradiction.

And XP is certainly not alone in this strange philosophy.  I’m not sure we can claim any of the Agile methodologies to have “won,” but in my experience Scrum has made the most extensive inroads into corporate culture.  And it is chock full of prescriptive little strictures: mandatory stand-up meetings with strict time limits and precisely defined cycles called “sprints” and detailed reporting pathways between developers and business owners.  Maybe all this red tape is why business people have embraced it more than the other Agile practices.  But it presents a weird, oxymoronic message to the developers: we want to you to be free, we want you have flexibility, but you have to all these things, just so.  And sometimes the business owners can get very upset if you question this.  Because they’ve been trained, you see?  They’ve taken courses in “how to do Agile” and “how to run Scrum” and all that, and (of course) all those courses stressed that you have to do everything perfectly or else it will all fall apart, so as soon as the developer suggests that maybe we should change this one thing because it’s actually making our lives harder ... well, it won’t be pretty, let me tell you.

One of things I always liked about Scrum was that they made clear the difference between involvement vs commitment.  The traditional explanation for this is via the fable of the pig and the chicken.  Now, these days Agile folks will tell you not to use that story to explain things any more.  The first reason they cite is that people will take offense: calling someone a pig implies they’re greedy, or dirty; calling them a chicken implies that they’re cowardly.  These are, of course, human metaphors that we’ve placed on those particular animals, and also they have nothing to do with the actual story.  But people won’t hear the message, they point out, if they’re hung up on the words used to deliver it.  I would probably say that people will look to any excuse to get offended, especially if it gets them out of following rules, but I’m a bit more of a cynic.

The story points out that, in the context of preparing a breakfast of eggs and bacon, the chicken is involved, but the pig is committed.  This is a very simple concept to grasp, and the analogy illustrates it perfectly, but, yes, yes: let us not offend anyone.  I would be fine if this first reason were the only reason that modern Agile advocates had dropped the pig and chicken story: that would just mean that they had replaced it with a different analogy that perhaps involved more noble animals, or fruits, or something.  But, no: they’ve started to question the whole concept.  See, the original point of pigs and chickens was to point out to the business people that it wasn’t particularly fair (or, you know, sensible) for them to set deadlines for how long something would take.  They weren’t the ones doing it.  The developers have to actually accomplish the thing, and they know how long it should take (even if they’re bad at estimating that for other reasons, which are happily addressed by other Agile practices).  The business owners are involved, but the developers are committed.  This not only stresses to the business folks that they don’t get to say how long something takes, but it also stresses to the developers that, once they say how long it will take, they’ve made a commitment to getting it done in that timeframe.  These are all good things.

But not so, says the Updated Scrum Guide.  Those poor business people shouldn’t be made to feel like they can’t dictate timelines.  “In some cases these people were key project sponsors or critical system matter experts. These are individuals who, while possibly needing some education and guidance from a Scrum Master, can be critical to the success of a project.”  If you’re not familiar with how to translate business bullshit back into English, this means “we want the business people to feel important, and they don’t like it when we try to put restrictions on them, and if I say it this way it’ll make you think that you developers are actually gaining something, rather than that we’re just caving in and letting the business people run roughshod over all we’ve built.”  The thing I always liked about the Agile practices was that they were pretty balanced in terms of business vs development.  They said to the developers “we want you to feel respected and like your creativity is valued, and you should be in control of what you produce and the quality of your work.”  But they also said to the business side “we want you to feel respected and like your market acumen is valued, and you should be in control of what gets produced and how viable it is as a product.”  See? everybody is respected equally.  When you start breaking down that balance, bad things happen.

And maybe business people feel empowered to just set some processes up because it sounds good, or because it looks official, or maybe, like most other humans in workplaces, they just like telling other people what to do.  And maybe those processes actually slow things down instead of making them more efficient.  And maybe the developers feel like they can’t speak up any more—it’s no longer the case that they’re the ones who are committed because everyone’s committed now—or maybe they do speak up but they’re ignored because setting up workflow processes ... that’s above your paygrade, don’t you know.  And gradually, slowly, everything goes back to the bad old ways when we spent way more time talking about getting things done than actually doing things.

Doesn’t feel very agile, does it?









Sunday, July 2, 2023

Springs Eternal

Several months ago, my work machine started flaking out, so I got the folks at work to order me a new one.  It came, and I was able to use it to work around my immediate problems, but I never got the chance to completely switch over to using it—too much work shit going on.  Well, a few weeks ago, my laptop started flaking out.  And, as of Friday, my new laptop has arrived, and now I have two machines to set up and get configured and transfer hundreds of thousands of files to.  Lucky me.

So, even if I had planned to do a full post this week (which I had not), I simply wouldn’t have the time: I’ve got a laptop to configure, a desktop to configure, gigabytes to copy, filesystems to share, my wife to murder, and Guilder to frame for it—I’m swamped.  Still, there’s some hope that, after this process (as difficult as it may be), things will be better.  Honestly, I’d be happy if they were just not worse than they were before all this madness started, but I suppose I can’t help but hope for better.  Call me foolish if you must: I won’t deny it.  We’ll see how it goes.









Sunday, June 11, 2023

Do Androids Dream of IQ Tests?

Recently, I was listening to a podcast—it happened to be Election Profit Makers, with the lovely and talented David Rees.1  In this particular episode,2 David offers this “hot take”:

I also think AI is kinda bullshit.  I’ve been thinking about it; I think there’s some stuff that AI can do, but on the other hand it really is not ... we shouldn’t call it AI.  Someone was making this point, that calling it “artificial intelligence” is kind of propaganda.  It’s not really intelligent yet.  It’s just like a word prediction algorithm, you know?  You give it a topic—it doesn’t know what it’s saying.  It’s ... it’s like an algorithm that predicts what the—given any word or paragraph, it predicts what the next most likely word is, I think.  I don’t think it really thinks ... I don’t think it’s artificial intelligence.

Of course, I put “hot take” in quotes because it’s not particularly hot: as David himself notes, other people have been making this observation for a while now, especially in relation to ChatGPT.  I gave my own opinions of ChatGPT several months ago, and it’s only become more pervasive, and more useful, since then.  Now, David’s assessment is not wrong ... but it’s also not complete, either.  David’s not a tech guy.  But I am.  So I want to share my opinion with you on this topic, but, be forewarned: I’m going to ask a lot of questions and not necessarily provide a lot of answers.  This is one of those topics where there aren’t any clear answers, and asking the questions is really the point of the exercise.

So, first let’s get the one minor detail that David is wrong about out of the way.  What David is referring to here are the LLMs, like ChatGPT.  To be pendantic about it, LLMs are just one form of AI: they just happen to be the one that’s hot right now, because it’s the one that’s shown the most promise.  If you’ve had the opportunity to interact with ChatGPT or any of its imitators, you know what I mean.  If not ... well, just take my word for it.  LLMs are extremely useful and extremely promising, and the closest we’ve come so far to being to talk to a machine like a person.3  But they are not the totality of AI, and I’m sure there will be AI in the future that is not based on this technology, just as there was in the past.

But, forgiving that understandable conflation, what about this notion that an LLM is just a “predictive algorithm,” and it doesn’t actually think, and therefore it’s a misnomer to refer to it as “intelligence”?  David goes on to cite (badly) the “Chinese room” thought experiment; if you’re unfamiliar, I encourage you to read the full Wikipedia article (or at least the first two sections), but the synopsis is, if a computer program could take in questions in Chinese and produce answers in Chinese, and do so sufficiently well to fool a native Chinese speaker, then a person who neither speaks, reads, nor understands Chinese could be operating that program, and taking in the questions, and passing back the answers.  Obviously you would not say that the person could speak Chinese, and so therefore you can’t really say that the program speaks Chinese either.  Analogously, a program which simulates intelligent thought isn’t actually intelligent ... right?

This immediately reminds me of another podcast that I listen to, Let’s Learn Everything.  On their episode “Beaver Reintroductions, Solving Mazes, and ASMR,”4 Tom Lum asks the question “How does a slime mold solve a maze?” A slime mold is, after all, one of the lowest forms of life.  It doesn’t even have any neurons, much less a brain.  How could it possibly solve a maze?  Well, it does so by extending its body down all possible pathways until it locates the food.  Once it’s done that, it retracts all its psuedopods back into itself, leaving only the shortest path.

Now, the conclusion that Tom (as well as his cohosts Ella and Caroline) arrived at was that this isn’t really “solving” the maze.  Tom also had some great points on whether using maze-solving as a measure of intelligence makes any sense at all (you should really check out the episode), but let’s set that aside for now.  Presuming that being able to solve a maze does indicate something about the level of intelligence of a creature, isn’t it sort of sour grapes to claim that the slime mold did it the “wrong” way?  We used our big brains to figure out the maze, but when a creature who doesn’t have our advantages figures out a way to do complete the task anyway, we suddenly claim it doesn’t count?

Let’s go a step further.  If I give the maze to a person to solve, and they laboriously try every possible pathway until they find the shortest one, then are they really doing anything differently than the slime mold?  And does that mean that the person is not intelligent, because they didn’t solve the maze the way we thought they should?  I mean, just keeping track of all the possible pathways, and what you’ve tried already ... that requires a certain amount of intelligence, no?  Of course we lack the advantages of the slime mold—being able to stretch our bodies in such a way as to try all the pathways at once—but we figured out a way to use our brains to solve the problem anyhow.  I wonder if the slime mold would snort derisively and say “that doesn’t count!”

Now let’s circle back to the LLMs.  It is 100% true that all they’re doing is just predicting what the next word should be, and the next word after that, and so on.  No one is denying that.  But now we’re suddenly faced with deciding whether or not that counts as “intelligence.” Things that we’ve traditionally used to measure a person’s intelligence, such as SAT scores, are no problem for LLMs, which are now passing LSATs and bar exams in the top 10%.  But that doesn’t “count,” right?  Because it’s not really thinking.  I dunno; kinda feels like we’re moving the goalposts a bit here.

Part of the issue, of course, is that we really don’t have the slightest idea how our brains work.  Oh, sure, we can mumble on about electrical impulses and say that this part of the brain is responsible for this aspect of cognition based on what lights up during a brain scan, but, at the end of the day, we can’t really explain what’s going on in there when you can’t remember something today that you had no trouble with yesterday, or when you have a crazy idea out of nowhere, or when you just know that your friend is lying to you even though you can’t explain how you know.  Imagine some day in the far future where scientists discover, finally, that the way most of our thinking works is that words are converted to symbols in our brains, and we primarily talk by deciding what the next logical symbol should be, given the current context of who we’re talking to and what we’re talking about.  If that were to ever happen, seems like we’d owe these LLMs a bit of an apology.  Or would we instead decide that that aspect of how we think isn’t “really” thinking, and that there must be something deeper?

Look, I’m not saying that ChatGPT (for example) actually is intelligent.  I’m just pointing out that we don’t have a very clear idea, ourselves, what “intelligent” actually means.  It’s like the infamous Supreme Court definition of obscenity: we can’t define intelligence, but we know it when we see it, and this ain’t it.  But what I find to be a more interesting question is this: why does it matter?

An LLM like ChatGPT serves a purpose.  Now, overreliance on it can be foolish—just check out the case of the lawyers who tried to use ChatGPT to write their legal briefs for them.  As the Legal Eagle points out in that video, their idiocy was not so much the use of an LLM in the first place, but rather the fact that they never bothered to double check its work.  So you can’t always rely on it 100% ... but isn’t that true of people as well?  Honestly, if you’re a lawyer and you get a person to do your work, you’re still responsible for their mistakes if you sign your name at the bottom and submit it to a judge.  An incisive quote from the video:

... the media has talked about how this is lawyers using ChatGPT and things going awry.  But what it’s really revealing is that these lawyers just did an all around terrible job and it just happened to tangentially involve ChatGPT.

So you can talk to an LLM as if it were a person, it talks back to you as if it were a person, it can give you information like a person, and oftentimes more information that you can get from most of the persons you know, and you can rely it as exactly as much (or, more to the point, exactly as little) as you can rely on another person.  But it’s not a person, and it’s not really “thinking” (whatever that means), so therefore it’s not “intelligent.” Is that all just semantics?  And, even if it is, is this one of those cases where semantics is important?

I’ve got to say, I’m not sure it is.  I think every person reading this has to decide that for themselves—I’m not here to provide pat answers—but I think it’s worth considering why we’re so invested in things like LLMs not being considered intelligent.  Does it threaten our place up here at the top of the food chain?  (Or perhaps that should be “the top of the brain chain” ...)  Should we seriously worry that, if an AI is intelligent, that it poses a threat to the existence of humanity?  Many of the big tech folks seem to think so.  I personally remain unconvinced.  The Internet was proclaimed to be dangerous to humanity, as were videogames, television, rock-and-roll ... hell, even books were once considered to be evil things that tempted our children into avoiding reality and made them soft by preventing them from playing outside.  Yet, thus far, we’ve survived all these existential threats.  Maybe AI is The One which will turn out to be just as serious as people claim.  But probably not.

And, if it is the case that AI won’t take over the world and enslave or destroy us, then what difference does it really make whether or not it’s “technically” intelligent?  If it’s being useful, and if we can learn how to use it effectively without shooting ourselves in the foot, that’s good enough for me.  Perhaps it can be good enough for you as well.




[For complete transparency, I must say that, while ChatGPT did not write any of the words in this post, it did come up with the title.  Took it six tries, but it finally came up with something I felt was at least moderately clever.  So, if you like it, it’s because I’m very good at prompting LLMs, and, if you hate it, it’s because ChatGPT is not very smart.  This is one of the primary advantages of having an LLM as a contributor: I can hog all the credit and it will never be offended.]



__________

1 If you’re not familiar—and can figure out where to stream it—you should check out his Going Deep series.  It’s excellent.

2 Approximately 40 minutes in, if you want to follow along at home.

3 “LLM” stands for “large language model,” by the way, although knowing that is really unnecesssary to follow along on this topic.

4 Again, if you want to follow along at home, jump to about 44:45.











Sunday, February 19, 2023

Getting Chatty

I’m probably not the first person to tell you this, but there’s a new AI wunderkind taking the Internet by storm, and it’s called ChatGPT.  Everyone’s buzzing about it, and Microsoft is pumping money into it like crazy, and even boring old news outlets are starting to pick it up—heck, I just heard them mention it on this week’s episode of Wait Wait Don’t Tell Me.  If you’re late to the party, perhaps I can give you some insight into what’s going on, and, if you’ve been hearing all about it but not really knowing what “it” is, then perhaps I can provide some insight.*

AI has been undergoing a bit of a Renaissance here lately.  For a long time, AI development was focussed on “state machines,” which are like really fancy flow charts.  You’ve probably seen one of these on the Internet at some point: you know those web pages that try to guess what animal you’re thinking of (or whatever), and, if they can’t guess it, then they ask you to teach it a question that will distinguish your animal from the last animal it guessed, and then it adds that to its little database ... those amusing little things?  Well, those are very simple state machines.  If the answer is “yes,” it goes down one path, and if the answer is “no,” it goes down a different one, until it eventually hits a dead end.  State machines, as it turns out, are very useful in computer science ... but they don’t make good AI.  That’s just not the way humans think (unless you’re playing a game of 20 Questions, and even then a lot of people don’t approach it that logically).  So eventually computer scientists tried something else.

One way you can make a better AI than a state machine is doing something called “machine learning.” With this, you take a bunch of data, and you feed it into an algorithm.  The algorithm is designed to analyze the data’s inputs and outputs: that is, if humans started with thing A (the input), then they might conclude thing B (the output).  If you have a decent enough algorithm, you can make a program that will conclude basically the same things that a human will, most of the time.  Of course, not all humans will come up with the same outputs given the same inputs, so your algorithm better be able to handle contradictions.  And naturally the data you feed into it (its “training data”) will determine entirely how good it gets.  If you accidentally (or deliberately) give it data that’s skewed towards one way of thinking, your machine learning AI will be likewise skewed.  But these are surmountable issues.

Another thing you could do is to create a “language model.” This also uses training data, but instead of examining the data for inputs and outputs, the algorithm examines the words that comprise the data, looking for patterns and learning syntax.  Now, “chatbots” (or computer programs designed to simulate a person’s speech patterns) have been around a long time; Eliza, a faux therapist, is actually a bit older than I am (and, trust me: that’s old).  But the thing about Eliza is, it’s not very good.  It only takes about 5 or so exchanges before you start to butt up against its limitations; if you didn’t know it was an AI when you first started, you’d probably figure it out in under a minute.  Of course, many people would say that Eliza and similar chatbots aren’t even AIs at all.  There’s no actual “intelligence” there, they’d point out.  It’s just making a more-or-less convincing attempt at conversation.

Still, the ability to hold a conversation does require some intelligence, and it’s difficult to converse with a thing without mentally assessing it as either smart, or dumb, or somewhere in between.  Think of Siri and other similar “personal assistants”: they’re not really AI, because they don’t really “know” anything.  They’re just capable of analyzing what you said and turning it into a search that Apple or Google or Amazon can use to return some (hopefully) useful results.  But everyone who’s interacted with Siri or her peers will tell you how dumb she is.  Because she often misunderstands what you’re saying: sometimes because she doesn’t hear the correct words, and sometimes because her algorithm got the words right but failed to tease out a reasonable meaning from them.  So, no, not a “real” AI ... but still something that we can think of as either intelligent or not.

Language models are sort of a step up from Siri et al.  Many folks are still going to claim they’re not AI, but the ability they have to figure out what you meant from what you said and respond like an actual human certainly makes them sound smart.  And they’re typically built like machine learning models: you take a big ol’ set of training data, feed it in, and let it learn how to talk.

Of course the best AI of all would be a combination of both ...

And now we arrive at ChatGPT.  A company called OpenAI created a combined machine learning and language model program which they referred to a “generative pre-trained transfomer,” or GPT.  They’ve made 3 of these so far, so the newest one is called “GPT-3.” And then they glued a chatbot-style language model on top of that, and there you have ChatGPT.  GPT-3 is actually rather amazing at answering questions, if they’re specific enough.  What ChatGPT adds is primarily context: when you’re talking to GPT-3, if it gives you an answer that isn’t helpful or doesn’t really get at the meaning, you have to start over and type your whole question in again, tweaking it slightly to hopefully get a better shot at conveying your meaning.  But, with ChatGPT, you can just say something like “no, I didn’t mean X; please try again using Y.” And it’ll do that, because it keeps track of what the general topic is, and it knows which tangents you’ve drifted down, and it’s even pretty damn good at guess what “it” means in a given sentence if you start slinging pronouns at it.

Now, many news outlets have picked up on the fact that Microsoft is trying to integrate ChatGPT (or something based off of it) into their search engine Bing, and people are speculating that this could be the first serious contender to Google.  I think that’s both wrong and right: while I personally have started to use ChatGPT to answer questions that Google really sucks at answering, so I know it’s better in many situations, that doesn’t mean that Microsoft has the brains to be able to monetize it sufficiently to be a threat to Google’s near-monopoly.  If you want to watch a really good breakdown of this aspect of ChatGPT, there’s a really good YouTube video which will explain it in just over 8 minutes.

But, the thing is, whether or not Microsoft succesfully integrates a ChatGPT-adjacent AI into Bing, this level of useful AI is likely going to change the Internet as we know it.  ChatGPT is smarter than Eliza, or Siri, or Alexa, or “Hey Google.” It’s more friendly and polite, too.  It can not only regurgitate facts, but also offer opinions, advice, and it’s even got a little bit of creativity.  Don’t get me wrong: ChatGPT is not perfect by any means.  It will quite confidently tell you things that are completely wrong, and, when you point out its mistake, completely reverse direction and claim that it was wrong, it was always wrong, and it has no idea why it said that.  It will give you answers that aren’t wrong but are incomplete.  If asked, it will produce arguments that may sound convincing, but are based on faulty premises, or are supported by faulty evidence.  It’s not something you can rely on for 100% accuracy.

But, here’s the thing: if you’ve spent any time searching the Internet, you already know you can’t rely on everything you read.  Half of the shit is made up, and the other half may not mean what you think it means.  Finding information is a process, and you have to throw out as much as you keep, and at the end of it all you hope you got close to the truth ... if we can even really believe in “truth” any more at all.  So, having an assistant to help you out on that journey is not really a bad thing.  I find ChatGPT to be helpful when writing code, for instance: not to write code for me, but to suggest ideas and algorithms when I can then refine on my own.  Here’s the thing: ChatGPT is not a very good programmer, but it is a very knowledgeable one, and it might know a technique (or a whole language) that I never learned.  I would never use ChatGPT code as is ... but I sure do use it as a jumping-off point quite a bit.

And that’s just me being a programmer.  I’m also a D&D nerd, and ChatGPT can help me come up with character concepts or lay out what I need to do to build one.  If I can’t figure out how to do something on my Android phone, I just ask ChatGPT, and it (probably) knows how to do it.  Networking problem? ChatGPT.  Need to understand the difference between filtering water and distilling it? ChatGPT.  Need help choosing a brand of USB hub? ChatGPT.  Want to know what 1/112th the diameter of Mercury is? ChatGPT (it’s 43.39km, by the way, which is 26.97 miles).

But you needn’t take my word for it.  The Atlantic has already published an article called “The College Essay Is Dead” (because, you know, students in the future will just get an AI to write their essays for them).  A Stanford professor gave an interview about how it will “change the way we think and work.” YouTuber Tom Scott (normally quite a sober fellow) posted a video entitled “I tried using AI. It scared me.” The technical term for what these folks are describing is “inflection point.” Before Gutenberg’s printing press, the concept of sitting down of an evening with a book was unheard of.  Before Eli Whitney built a musket out of interchangeable parts, the concept of mass production was ludicrous.  Before Charles Birdseye figured out how to flash-freeze peas, supermarkets weren’t even possible.  And there is an inevitable series of points, from the invention of the telphone to the earliest implementation of ARPANET to the first smartphone, that fairly boggles the mind when you try to imagine life before it.  My youngest child will not be able to conceive of life without a phone in her pocket; my eldest can’t comprehend life before the Internet; and even I cannot really fancy a time when you couldn’t just pick up the phone and call a person, even if they might not be home at the time.  Will my children’s children not be able to envision life before chatty AIs?  Perhaps not.  I can’t say that all those friendly, helpful robots that we’re so familiar with from sci-fi books and shows are definitely in our future ... but I’m no longer willing to say they definitely won’t be, either.

The future will be ... interesting.



__________

* Note: This is not designed to be a fully, technically correct explanation, but rather a deliberate oversimplification for lay people.  Please bear that in mind before you submit corrections.











Sunday, October 16, 2022

That's a big pile of ...

To say that the computer gods have shat on me would only be an accurate assessment if the pile of shit you’re imagining is the one from Jurassic Park.  There was a point last night when I was pretty sure my $work computer was complete toast and would have be reinstalled from scratch.  But I managed to find some advice on the Internet that helped me figure out how to fix it.

So now I’m mostly back to normal, but there’s still several lingering issues that I’m going to have to deal with over the next few days.  On the plus side, I jumped my operating system forward not one, but two fulll versions.  Which should eliminate several of the problems I’ve been experiencing lately (and, to be fair, will definitely introduce a few more).  It remains to be seen if, on balance, I come out ahead.  Given my history, it seems unlikely, but I remain ever optimistic.  Foolishly.









Sunday, October 2, 2022

The light at the end of the tunnel (which is hopefully not an oncoming train)

This weekend I’ve been taking advantage of the lack of a long post and being mostly caught up on $work to finally make some headway on that computer issue I was bitching about ever so long ago.  I really don’t seem to be able to actually fix it, apparently, so I’ve been reduced to coming up with a workaround.  And even that is somewhat sticky, but I’ve been making progress, actually, which is more than I’ve been able to say over the past few months.  So that’s nice.  I’m not out of the woods yet, mind you, but moving forward is better than standing still, I think.  Progress, not perfection, as they say!

So I think I shall get back to my computer work and leave you, dear reader, until next week, when there will most likely be a much longer post than this meager fare.  Till then.









Sunday, June 26, 2022

Cursed of the Gods

This week was another of those “the computer gods hate me” weeks.  I found a corrupted file, so I went to look at my backups, only to find that things aren’t really set up the way I thought they were.  So I have three recent versions (all of which were corrupted), and a version from January, and another from March.  So I restored it as best I could, sort of merging the newer parts that weren’t corrupted with the older parts that were outdated, but at least it gave me a full set of data.  Then I went trolling through scrollback buffers looking for any bits that I could use to update the old data to get it as close to what I had before as possible.

And, of course, after all that, I’m still going to have to fix my backups so they make this easier next time it happens.  I’m still not entirely sure how I’m going to do that, but I can’t even deal with it right now.  You ever have one of those weeks where everything you try to do just leads you to another thing you have to do first?  Yeah, that.

Anyway, enough bitching.  Next week there should be a longer post.  Tune in then!









Sunday, October 31, 2021

Kickstarter: To Be or Not to Be (Over It All)

Lately I’ve been reexamining my relationship to Kickstarter.  Like all websites that suddenly take off, how you used it when it first arrived on the scene will inevitably give way over time to something new and different.  Remember how you used to interact with Aamzon when it first appeared? or Google?  Things are very different now.  But I think the most relevant analog to Kicstarter may be eBay.

Once upon a time, I used to enjoy going to flea markets with my parents.  There would be aisles and aisles of complete junk, and, every once in a great while, you’d find a treasure.  Only it was a treasure that nobody but you realized was a treasure: everyone else thought it was just more junk.  And so the price was ridiculously low.  And you would buy the treasure, and take it home, and marvel at how you got such a magnificent thing for such an amazing proce.  It was fun.

In the early days of eBay, that’s what it was like: an online flea market that served up treasures disguised as junk, but from the whole world.  What could possibly be better?  But, over time, things changed.  Once upon a time eBay was where you went to find great prices on stuff you couldn’t even find anywhere else.  Now it’s where you go to see what ridiculous price some idiot might give you for the junk you have in your attic.  Once a few years back I asked my father if he was still going to flea markets, and, if so, could he look out for something for me.  He said, “son, you can just get all that on eBay.” I said, sure, but who can afford that?

And so my relationship with eBay changed.  There’s so much stuff that I can’t possibly spend time just browsing.  And the stuff that I do want, everyone else now knows it’s not junk, and I can’t afford to pay those prices.  Basically, the only times I’ve been on eBay in the past ten years, I’d say, was when I was doing image searches to see what something looked like so I could decide if I wanted to buy it from some other site with much better prices.

And I think I’m reaching a similar point with Kickstarter.  When it first started up, you could go there and find artists and inventors who were creating things and needed your help to fund their ideas.  If you didn’t pledge, that creation would most likely never get made.  Of course, even if you did pledge, there was no guarantee: those early days are full of stories of creators whose ideas were much bigger than their ability to deliver, or who simply misjudged how much things were going to cost.  But you took your chances, and every now and again you got screwed, but mostly you got what you were buying into, even if you often had to wait an inordinately long time to receive it.

But things are different now.  The financial stuff is much clearer these days: people understand that Kickstarter is going to take their cut, and that the tax man is going to get his, and they understand not to include shipping in the pledge amount.  They’ve also figured out that you need to ask for way less than you really want so that you can guarantee you’ll hit the goal; what used to be considered core deliverables are now “stretch goals.” The initial funding goals of most Kicstarters are so low that they often fund within the first day—sometimes even within the first hour or two—and then the creators proudly put up some flashy graphic (“funded in 2.5 hours!!”) and you look at it and go: yeah, yeah ... in other news, water is wet.

There are now “Kickstarter consultants” to help you run a smooth campaign, and even multiple different companies whose entire raison d’être is help you fulfill the rewards.  There’s a site (Kicktraq) to graph your campaign’s progress and project your final numbers.  There are people who treat Kickstarter just like Amazon: they don’t actually need your money to pay for their product, because the product is already completed; they just want the Kickstarter buzz, and they know they can make more money this way.  As Kickstarter creators get more and more savvy, Kickstarter consumers get more and more demanding.  I read a post from someone on an Internet forum recently saying that they wouldn’t even consider backing a project unless the product were already ready to deliver.  And I thought: doesn’t that defeat the whole purpose?

But things are different now, I have to admit.  Maybe it’s only in the few industries I tend to follow, but I suspect this is a general trend.  And the end result is, I often find myself wondering why I should bother to back a Kickstarter campaign at all.

Certainly not because the creator needs my support: it’s super rare these days for me to find any Kickstarter that hasn’t already met its goal.  Once the campaign ends, they will either struggle to get the physical product put together, or they’ll deliver it quickly because it was mostly (or even completely) done.  Either way, why wouldn’t I just wait and see how the thing comes out before committing to buy it?  It’s possible that they might charge more for it after the campaign is over, but that actually hasn’t been my experience: it seems to happen far more often that, in the absence of the exposure provided by Kickstarter, they drop the prices to attract those people who thought the Kickstarter pledges were too high.  So, for a chance at a lower price, I’m locking in my money for anywhere from months to years, and risking getting nothing at all at the end of the day?  What sense does that make?

Okay, fine: I miss out on some “Kickstarter exclusives” for many campaigns.  But, in exchange for that, I get to see whether the final product will materialize at all, and, if it does, if it will live up to the hype.  Once the product is done, I can actually read a review of it and decide if it really is worth the price.  If it is, I can buy it then.  If not ... then I just saved myself some money, and also however much time I would have spent fuming that the project was behind schedule.

For the past several years, for campaigns that in years past I would have immediately backed, about half the time I’ve just been making a note of the Kickstarter URL and setting myself a reminder to check up on it on whatever date it claims it will be ready.  I almost always have to give it a few more months after that date comes around.  Eventually, though, the product will come out (usually), and I can read a few reviews and decide if I want to get it.  I’ve done this a couple of dozen times now, and so far I’ve only found one product that I decided to purchase.  In every other case, I’ve said to myself, whew! dodged a bullet there.

And the other half of the time?  Well, I’ve had a lot of disappointments.  A lot of waiting around and wondering if my rewards will ever get fulfilled.  I have one project that funded over two years ago, and I did get the main product, and it was awesome, but I’m still waiting on one final “Kickstarter exclusive” to get done.  That company has done another five campaigns since then (and I’ve been waiting a year for the main product of one of those too), and I’m starting to just accept the fact that I’m never going to see that last item.  So even the promise of getting extra bits for backing is losing to lose its luster.  I keep thinking, if I hadn’t bothered to back the Kickstarter, but just waited for damn thing to be orderable online, I wouldn’t have spent any more money, and I also wouldn’t have the thing that I still don’t have, but I wouldn’t have had to be constantly whining about not having it to the company.  Just seems like it would have been better for everyone that way.

So lately I’ve been wondering: am I “over” Kickstarter?  Not exactly.  I think Kickstarter will continue to prove to be a valuable future-product discovery service.  Which is quite different from how it started out, but no less useful.  Well ... perhaps a little less useful.  But still handy.  I just think that my days of excitedly backing creators and looking forward to their creations are mostly over.  Perhaps a very few known, trusted creators may get my dollars at the time.  Perhaps some will win me over with their exclusive rewards.  Perhaps I’ll still find the occasional campaign that seems like it might not make its goal if I don’t pitch in.  But I think I’m taking all that with a grain of salt these days, and there will be a lot less of my dollars ending up in Kickstarter’s pocket, because that post-Kickstarter product’s price will go straight to the creator.  And, at the end of the day, I think we’ll all be happier about it.

Except Kickstarter.  But I suspect they’ll be okay.