When I was teaching my son to drive, there were moments when I just said, "Do it this way. Trust me." Not because I didn't have a reason. I had plenty of reasons. But explaining reaction time, blind spots, braking distance, and the fact that half the drivers on the road are texting while eating a taco is not what you do while a brand-new driver is merging onto a busy road. Sometimes the lesson isn't a lecture. Sometimes the lesson is, "Keep both hands at 9 and 3. Start braking sooner than you think. Trust me."
I used to run into the same thing when I taught piano years ago. I'd tell a beginner, "Start with your right thumb on middle C." Why? Because just do it. There are theoretical reasons. Hand positioning. Muscle memory. Efficient movement across the keyboard. But on Day One, they don't need a dissertation on biomechanics and music theory. They need a starting point that works. Later, when they've played a few songs, the why becomes obvious.
That's exactly what happens in my beginner Access classes.
Sometimes I say, "This is the way we're going to do it. Trust me." And occasionally someone thinks I'm being mysterious or holding something back. I'm not. I'm compressing thirty years of experience into a simple rule so we can keep moving forward without falling into a rabbit hole.
Take field names. I tell beginners: no spaces in your field names. Could I explain how [Order Total] turns into a bracket jungle in SQL and VBA? Could I show you how forgetting those brackets breaks your code and how dynamic SQL strings become a pain in the butt to debug? Absolutely. But if I stop in Beginner 1 to unpack parsing rules and name resolution, I'll lose half the class before we even build our first form. So the rule is simple: no spaces. Later, when you're writing advanced queries, you'll suddenly think, "Ohhhh. That's why."
Same thing with Lookup fields in tables. Access makes them look friendly. Helpful, even. But they hide what's really going on under the hood and can cause confusion when you start building queries. Explaining that properly requires understanding relationships, joins, and how Access stores the underlying key value. So early on, I just say, "Don't use Lookup fields in tables. We'll handle that with proper relationships and combo boxes." Trust me.
Every table gets a primary key. Yes, even your tiny two-table database. The deeper conversation involves indexing, performance, referential integrity, and updatable recordsets. That's not Day One material. Day One material is: every table gets a primary key. Period.
And don't name your field Date. Or Name. Or any other reserved word that seems harmless until Access decides to interpret it as something else and your query starts acting like it's possessed by a mischievous tribble.
This is all part of how I teach. Most reference books are depth-first. They'll give you everything there is to know about tables in one giant chapter. Every property. Every data type. Every obscure option you may never use. Then they move on to queries and do the same thing. That's great if you're using it as a reference manual. It's not great if you're brand new and just trying to build something that works.
I prefer a breadth-first approach. A little bit about tables. Then a little about queries. Then a form. Then a report. Then we circle back and go deeper. Crawl. Walk. Run. You can't appreciate composite keys until you've actually built something simple and felt the limitations. You can't understand why I'm picky about naming conventions until you've written enough code to see how small decisions ripple outward.
Even Starfleet works this way. They don't hand a brand-new ensign the warp core schematics and say, "Here, memorize every plasma conduit." They teach fundamentals. Procedures. Protocol. Later, when Geordi starts talking about phase variance in the EPS grid, it makes sense because the foundation is there. If Captain Picard says, "Make it so," you don't demand a 20-minute explanation while the Romulans are decloaking. You execute, and you understand the nuance later.
When I say, "We'll cover that in a future lesson," I'm not dangling an apple in front of you. I'm building scaffolding. Your brain needs structure before it can handle the details. If I try to teach every nuance of field-level properties for long integers in the first hour, you won't retain it. You'll just be overwhelmed.
So yes, sometimes you'll hear me say, "This is the way we're doing it. Trust me." That's not ego. That's pattern recognition earned over decades of building databases, fixing broken ones, and answering the same painful mistakes over and over again.
There's a time for nuance. There's a time for deep dives. And there's a time to keep your hands on the wheel, your thumb on middle C, and just follow the process.
And for those of you keeping track at home, Google Gemini is once again the better image generation tool.
They just dropped Nano Banana 2, and it's not only superior to ChatGPT in image quality, but it's so much faster. It's like ten times faster now. I love how this AI image generation race keeps going back and forth because it keeps upping the ante every time, and I love it. The image above is from Gemini. Here's what GPT produced, and it's pretty good, but again, Gemini's got better quality now, and it was a whole lot faster. Your move, OpenAI.
Plus, I think OpenAI is a lot more worried about copyright infringement, so the images aren't exactly photo realistic.
By the way, I finally figured out how to get image generation working with the OpenAI API and I connected it to my Microsoft Access database. Not only can you use image generation like we did before, but it doesn't just make you pull a URL. It actually transfers the image to your machine, which you just have to decode the text, and you can send a reference image up.
I got all that working. It's pretty complicated though, so if I do it, it'll be probably a separate seminar or developer lesson. If you guys are curious about how that works, let me know.
Donald Lader
@Reply 2 months ago
I will take anything for working with OpenAI API to include a paid course.
Sorry, only students may add comments.
Click here for more
information on how you can set up an account.
If you are a Visitor, go ahead and post your reply as a
new comment, and we'll move it here for you
once it's approved. Be sure to use the same name and email address.
This thread is now CLOSED. If you wish to comment, start a NEW discussion in
Captain's Log.