VBA and ChatGPT

Yeah, but YOU are authoring the presentation article.
 
It's ironic that the whole point of his upcoming presentation is that JWC intends to explain how he used AI to develop a project.

The post title for this thread itself says it all:

VBA and ChatGPT

And yet, here we are stating how he MUST acknowledge that he used AI to complete a project, just as if that were not the whole point of the presentation?

I get it, all of the LLMs in use today depend on the availability of massive data coming from the work of billions of people. There are a lot of questions around the ownership of material produced with the assistance of those LLMs.

I could see a legitimate concern if John was touting the resulting VBA while trying to hide the fact that it was created largely with the assistance of ChatGPT. But that is the exact opposite of what is really going on!

I strongly suggest that those concerns are misdirected here. John explicitly states his presentation is all about using AI to assist in the development of code. What else do you need to see to get that?

Anyway, it may turn out that the controversy will help pique interest and we'll have a good turnout for the live presentation. I guess it's not bad after all.
 
I strongly suggest that those concerns are misdirected here. John explicitly states his presentation is all about using AI to assist in the development of code. What else do you need to see to get that?
apology, overthinking of me.
 
It's ironic that the whole point of his upcoming presentation is that JWC intends to explain how he used AI to develop a project.
I suppose it’s inevitable that some people will feel threatened by large language models… and ironically, the more of an expert you are, the more threatened you’ll likely be.

It’s amusing in a way — because the more cerebral among us would normally condemn the old Luddite mentality: smashing machines out of fear they’d take away jobs. But now that a new kind of machine is encroaching not on manual labor, but on the intellectual, creative work of experts — work they’ve spent decades refining — suddenly it’s the experts who start behaving like Luddites.

That’s what’s playing out here, I think. The objection isn’t really about attribution or intellectual honesty — not when John’s entire presentation is about how he used AI to assist his development process. It’s more about discomfort. A sense of territory being crossed.

It’s going to be a fascinating decade ahead.
 
and ironically, the more of an expert you are, the more threatened you’ll likely be.

But here's the thing — those same experts are still needed, at least for the next few years. Maybe longer.

That’s because a lot of what they know isn’t written down anywhere. It's the kind of hands-on, fiddly knowledge you pick up over time. I believe the correct term for it is tacit knowledge... Especially with something like Microsoft Access ....

Large language models are brilliant at scraping the surface — all the stuff that’s been written and indexed. But the real gold is buried in the bits that never made it to a blog post. And unless the AI is set up to learn from expert interaction, it won’t get there on its own.

Funny enough, this reminds me of when computers first started becoming a big deal. My brother-in-law was a programmer back then (earning top money) — real punch-card era stuff. But the clever part was, he got out early as the money dwindled, and became a manager of programmers (earning top money again). Not because he wanted to escape, but because there weren’t enough experienced people around to run the teams. He saw it coming.

And I think we’re at a similar point now. The world’s waking up to AI, but it’ll be the experts — the ones who work with the tools, not against them — who’ll shape what comes next. Not just because they know the old tricks, but because they’re the ones who can show AI where the real knowledge lives.
 
At this point, ChatGPT is not particularly threatening. It can't do anything out in the real world - yet. I am doing a big project in Python and SQL Server. Chat writes code and uses an almost comical variety of ways to get that code to me. Sometimes it places it in a .Py file and presents it to me to download. Sometimes it writes the code directly in the chat window, usually but not always in a "canvas" - with comments about why it is doing whatever it is doing. Sometimes it is a line or two, sometimes it is an entire .py file. Sometimes it places the comments in the chat window and opens a big canvas and places the code there. Sometimes it sloooooowwwwwwllllllyyyyy overwrites everything in the canvas in order to place some new code at the bottom.

It is damned annoying actually. Some of the time it asks if I want it to place it all into a py file and present it.

I have written a "coding standards" document which I was presenting to chat before every session. I discovered that because that is short it can just be placed into the project instructions window. I also had Chat generate Metadata stored procedures which I can run to get table / field / data type / index information.

This by the way is absolutely critical to give back to Chat. Even though Chat (mostly) provides me scripts to build out these things, once a chat session ends, it "forgets" the names of things. It then starts "making up" table and field names, which mostly appear that they are correct, until I try to run the next piece of the puzzle - often in python scripts trying to use these tables. Whereupon his made up names cause errors. I have learned to just run the metadata SP, get (scrape) the metadata out of SQL Server, and paste it into the chat and voila... chat acknowledges his errors and starts using the metadata.

It is so bad that this is part of my coding standards instructions:

Python Coding Standards​

  • At the top of every Py script I need a full explanation of what the script does.
  • Add print functions at the top, the very bottom and inside every loop until we are fully debugged
  • Wrap all database access in try/except blocks with full traceback.
  • Hard-stop on core logic errors using sys.exit(1) or raise SystemExit.
  • Catch and skip expected errors like duplicate key violations using error codes.
  • Batch process records when possible instead of row-by-row.
  • Use joblib or pickle to save/load model files in a dedicated models directory.
  • Use logging for status, errors, and progress — not just print().

SQL Server Standards​

Never do something without knowing the metadata

  • sp_GetMetadataWithPurpose to get the existing table metadata.
  • Never guess. Verify actual table and field names before writing queries — never guess.
  • Use sp_addextendedproperty to document tables, fields, and indexes. If you build something, DOCUMENT IT, right then and there. Add a purpose property to anything new, whether table, field or index.
  • Always include a table-level description using SQL extended properties.
  • Views and stored procedures must be commented before the AS block.
  • Use clear, consistent naming conventions for all objects.

BTW there is a somewhat limited amount of text that can go in there.

From Chat:

The project “instructions” window (also called the system message or model instructions) can hold approximately:
32,000 characters (32 KB)
That includes:
  • Your custom coding standards
  • Metadata like project goals, preferences, and schema notes
  • All system instructions loaded into the session at startup

As Chat intimates, I paste a handful of documents in there. The contents, not the documents themselves. The problem is that the documents change and I have to occasionally go in and edit that memory area. But... once they are in that area, Chat (mostly) actually uses these things. And when it doesn't I can simply ask... "Did you use the metadata" or something similar.
 
It can't do anything out in the real world - yet.
Not 100% sure what you mean by "the real world," but recently Chattty was upgraded and can now perform agentically. It updated a Google Spreadsheet for me and now has an agent mode, where it can book things for you—like an Uber, a Tesco delivery (that’s a UK superstore), find the cheapest flights, catch up on Teams conversations, and even schedule an Uber to take you to the airport.

I’ve also created my own chat interface. If I say:
"file write"
"Mary had a little lamb"

…and give it a file and folder name, it will write that into the file. It can also read files onto the screen.

It can write Python scripts and run them, (on its own violation) and I have a test where it pops up a Hello World message box from a Python script.

To be clear: everything I’m doing is very rudimentary, completely error-prone, and frustrating—because I’m not getting it right.
This is about my third attempt. I’ve had to scrap two previous projects... Luckily, I’ve got a good backup, so I don’t have to start from scratch!
 
Well, my understanding is that Chat can now open a (virtual) browser inside of the chat environment and do stuff in that browser out in the world. As for writing a file to disk, I just had chat swear up and down it had written a python script to a valid path on my disk. In the end I did a screen shot of the dir with no such file visible and pasted it back in to Chat, whereupon it said... "oh yea, that was in my head". It appears to actually have an (virtual) environment and can run python etc in that environment. But to have me run that script in the real world it had to provide me a download link. I downloaded it (to my download dir), moved it where it actually belong and ran it from there.

I am doing this for the last many weeks and have never seen it able to do anything on my computer.
 
First, Chatty is a she...

Second, I agree; Even though programming actually encourages plagiarism, one should give credit to any and all sources that were used.
LOL, I call chatty Winsome Winch with the British accent, or Winnie for short. I use advanced voice mode on my phone, and chose that voice to interact with. "She" seems to "enjoy" that little exchange when I open a chat that way.

And where am I going to get the bajillion sources that has been scraped and inserted into the model?
 
LOL, and where am I going to get the bajillion sources that has been scraped and inserted into the mo
del?
Well, in your case, Ive had a little change of heart from what others have said.

In my own personal experiences, Ive made installation/FE updaters Powershell Scripts.

I didnt know SQUAT about PS so I had to employ ChatGPT to do all the heavy lifting. In the comment section, I made sure anyone looking at the code knew that John Clarks contibution was concept and testing.

No judgment here, just a quirk of mine
 
BTW I have been interacting with "Sir Chat" and it has integrated a lot of our interactions into some pretty humerus exchanges. I told it I was giving it the title Sir Chat in honor of it's service to me. And I routinely tell it "Make it so Number One" and it provides a ton of star trek references in response. Dilithium crystals melting down, shields failing etc.

It is kinda fun actually. It is easy to see how a person with mental health issues could mistake this for reality.

Ohh... that's me???
 
Well, in your case, Ive had a little change of heart from what others have said.

In my own personal experiences, Ive made installation/FE updaters Powershell Scripts.

I didnt know SQUAT about PS so I had to employ ChatGPT to do all the heavy lifting. In the comment section, I made sure anyone looking at the code knew that John Clarks contibution was concept and testing.

No judgment here, just a quirk of mine
And that's OK. I have been working with Chat for at least a month. I started using it to help me write some vba stuff for my book. It was when I realized how much depth it had in its coding abilities that I suddenly thought about other uses for it, other projects I wanted to work on. I have now worked on a Python / SQL Server project that I tried to do a couple of years ago, where I needed to learn Python in depth. And it just never happened. My project was just too large for my limited skills in Python. Back then I had never even heard of ChatGPT.

This time around, having 'discovered' chat, I just told Chat to "act as a programmer" (which BTW is what one is supposed to do to make it approach whatever you are doing in a specific manner). I described my project in English language, in extreme depth, and it started writing code. It was quite the learning experience on my end, as I have described already. But I am now halfway up to speed on ramrodding Chat and my project is taking shape. I'm telling you, I have stuff done that it would have taken years of learning on my part to make happen.

AFAIAC it is my project. I am the owner. I am building a company essentially. Chat will build the app, but the ideas are mine. Chat will write a business plan but the ideas are mine. Chat will write a proposal but the ideas are mine. Chat is not a person it is a computer program. I would not give acknowledgement to Microsoft when I write in the C# interpreter or Turbo Pascal. I am writing code in the English language in Chat. I pay the $20 monthly fee and it is mine to do with as I can.
 
Last edited:
My daughter is 22 years old but operates at a 3rd grade level due to her intellectual disabilities. I asked Chat (Winnie on my phone) to act as an author. I described how I want to write a book that Allie can read, about fictitious adventures she has out in the world with her dog Sadie and her Brother's cat Puuuursephony. I talk to Winnie. I describe places that Allie and I go, things she likes to do, how she loves to fish, how she gets the hook out of the fish on her own, how she loves to go to specific campgrounds etc.

So I feed Winnie ideas about each chapter and Winnie writes short chapters for the book. My instructions to Winnie is to write in a style appropriate for her working level. I want her to be able to read the book. So far Winnie and I have 6 little chapters written. I am trying to use ComfyUI to create little cartoonish pictures to put at the top of each chapter, showing some thing happening in that little chapter. When I described that to Sir Chat he "offered" to write the text descriptions or prompts to get ComfyUI to build a picture for each chapter. I uploaded the book to him ((S)he had actually written most of the text) and (s)he wrote little text prompts to feed into ComfyUI to generate a little picture for each chapter.

Now it is helping me get ComfyUI figured out again. I was generating pictures a year ago but I forgot how to use it...

Chat is amazing what it can do for us.
 
I asked Chat (Winnie on my phone) to act as an author. I described how I want to write a book that Allie can read, about fictitious adventures she has out in the world with her dog Sadie and her Brother's cat Puuuursephony.
:love:
 
But to have me run that script in the real world it had to provide me a download link. I downloaded it (to my download dir), moved it where it actually belong and ran it from there.

I am doing this for the last many weeks and have never seen it able to do anything on my computer.

This was my first attempt which was basically a proof of concept, where I had the large language model writing to a file on my PC.... The video shows a demonstration of write to a file on my PC ...

Using Agents in Uber Chat Master​


It took me ages to understand how it works … and I'm still not a hundred percent sure but it basically works, because I say (written) "tool" the large language model will look for a "tool" and because it's near the word "write" it will find a tool that will write to a file and there's a path there, and a file name, so it's pretty obvious that my intention is writing to a file....

But it's not exact, nor predictable, that's the problem and that's the problem I'm working on at the moment, making it called the right tool at the right time without any error ...

Now the way to think about it is you're not talking to an inanimate object you're talking to an imitation of a person an "intellect" … and this is the beauty of large language models and it's also the large language model curse, because just like humans they can get the wrong end of the Stick....

I think the way to stop a TOOL being called by Casual speech where the large language model might interpret an instruction to read or write to a file in text when there was no intention of that.. I think the solution is to write the name of the Script that is called, the named TOOL and they're in a TOOL folder within the project... To make it less unpredictable, name the tools in an unusual way so instead of naming a tool "read file" and another one "write file" you would name them as file read or file write so that's a less common occurrence in normal communication …

The point is, the tool isn’t “found” just because you used the word tool next to write, like some kind of keyword scanner. That’s the old way of thinking — the programmer’s way. You imagine some Python script scanning for “tool” followed by “write”, then mapping it to a function.

But that’s not how these large language models operate. You’re not talking to a dumb parser anymore — you’re talking to an intelligence.

It doesn’t need you to spell things out. It sees that you mentioned tool, and it sees that you mentioned write, and it infers: Ah, he probably wants to use the writing tool. But it goes further. You could say something like:

“Can you yeet that paragraph into the digital abyss where I store my other half-baked thoughts?”

And it’ll still open the notes writer and save the file. No direct reference. Just vibes and intuition.

Now for something... completely different:
Let’s say, late one night, you mumble:

“Stick this saucy brain dump somewhere private, where the wife won’t find it…”

Boom.
Model saves it as private_draft_69.txt in a hidden folder called /Midlife_Musings/Confidential/.

Did you mention the writing tool? Nope.
Did it guess exactly what you meant? Oh, absolutely.
Did it encrypt the file just to be safe? Possibly. Depends on how much sass you've coded into your assistant.
 
“A motorhome parked next to a forest creek, an early teen girl, short blond hair, with her chocolate labradoodle and fluffy gray cat discovering a treasure map under a rock. Rain clouds above, but warm light from the RV windows. Cozy cartoon scene, adventurous and magical.”

1753756774246.png
 

Users who are viewing this thread

Back
Top Bottom