Computer Learning Zone CLZ Access Excel Word Windows

You can't make a deal if you're dead.

-125th Rule of Acquisition
 
Home   Courses   Templates   Seminars   TechHelp   Forums   Help   Contact   Join   Order   Logon  
 
Home > Forums > Captain's Log
Back to Captain's Log    Comments List
Upload Images   @Reply   Bookmark    Link   Email  
Right Tool for the Job
Richard Rost 
           
10 days ago
Today we're talking about why Microsoft Access is often a better tool for building small-to-medium business databases than a lower-level programming language like C, C++, or C#.

This comes from a real email I got from a prospective student. He's looking to build a CRM for his business, and he said one of his developers wanted to build them a database in C#. I have nothing against C#. It's a modern, object-oriented language with a lot of power. But building a database system in it? That raised an eyebrow.

C# is a descendant of C and C++, which I used to program in back in the 80s and 90s. I originally learned C because I was running a BBS at the time. That's a bulletin board system, for those of you who missed that era. This was before the internet as we know it. You didn't just hop online and check your email. You had to dial into local boards with your modem, and those systems would trade messages and files overnight with other boards around the country. The software I was running called WWIV and it was open source, meaning anyone could make changes and customize it. The source code was written in C. So I bought a copy of Teach Yourself C by Herbert Schildt (great book - still have a copy on my shelf) and taught myself how to code just so I could modify and maintain that system.

C was a great language for writing standalone apps. Later I learned C++, which added object-oriented features. But when I started doing consulting work, I had never even heard of Microsoft Access. One of my early clients asked me if I could build a customer tracking system. I said sure, no problem. So I wrote a full-blown application in C. I handled all the data structures, file management, forms, navigation, validation, everything. It worked. Technically. But it took weeks of effort for something that Access could have done in two afternoons*.

Then I discovered Access, and from there, you know the history. Right tool, right job.

Think of it like this. Building your ERP system in C# is like buying a plot of land and building your own house from raw lumber and bricks. You have to draw the blueprints, pour the foundation, run all the wiring and plumbing, frame every wall, and install every light switch. And yes, in the end, you get exactly what you want. But it takes a lot of time, money, and specialized skill.

Using Microsoft Access is like moving into a well-built prefab house. The walls are up. The electricity and plumbing are done. The rooms are all there. You just move in, maybe rearrange some furniture, knock out a wall or two, and start living. It's faster, more affordable, and more than sufficient for most businesses that just need to track inventory, customers, invoices, and so on. And when you need more customization, Access lets you open the hood with VBA and SQL.

Here's another analogy I like: Using C# for a database is like trying to haul freight with a racecar. Yes, it's powerful. It's sleek. It's built for speed. You can push pixels around and squeeze every bit of performance out of the machine. But that's not what you want in a database. Access is more like a container ship. It's not flashy, but it's built to carry large amounts of structured data, safely and reliably. It's not the fastest, but its stable, reliable, and gets the job done.

And if you'll allow me one Trek reference - this is a Captain's Log, after all - building a database in C# is like programming your own holodeck simulation from raw code instead of using the voice interface. You could write every scene, script every character, obsess over every tile on the wall, and hard-code every interaction. But why would you? You could just say Computer, create tropical beach, bring me a hammock and a fancy umbrella drink, and make the sun stay right there for the next three hours. Let the system do the heavy lifting. Access is the holodeck's voice interface. C# is doing it all manually, line by line, while the rest of the crew is already enjoying mai tais*.

Look, C# is a great language. If you're building a commercial desktop application, an embedded system, or anything that requires low-level control and full-stack flexibility, go for it. But for a basic invoicing system or a customer database, don't reinvent the warp core. Use the tools that are built for the job.

LLAP
RR

* I look back on that system now, and it had less functionality than the TechHelp Free Template. So, I could have built it now in a few hours.

** Made with synthehol, of course. We could go to Red Alert at any moment and need all hands on deck.

P.S. To be fair, I've also said on several occasions that Access isn't always the right tool for the job. For example, in my Excel vs Access video, I mentioned that if all you need is a small spreadsheet with 20 rows in it to track a few things, then Access might actually be overkill. It's all about choosing the right tool for the job. If Excel gets the job done, use Excel. I still use it for quick things I need to track. Yes, me, the Access guy, still reaches for Excel sometimes. It's faster and easier for certain one-off tasks. Usually, I move up to Access when I need relationships - when I want to connect two or more things together in a meaningful way. That's where Excel starts to fall apart. But for basic, flat tracking, I'll throw it in Excel first. If it grows beyond that, then I'll build the database. You can build a Letter Writer in Access too, but for a one-off letter, I'll use Word.
Richard Rost OP  @Reply  
           
10 days ago

Richard Rost OP  @Reply  
           
10 days ago
And yes, of course, in the future Starfleet has figured out how to let you tan through your uniform, but not so much that you get a sunburn. It's amazing technology.
Thomas Gonder  @Reply  
       
10 days ago
May I point out that Access, out of the box, isn't quite as complete as users often need.
If it was, then Richard would be out of a job. As would I.
No need for hundreds of seminars and Tech Tips (or the ADS).
Richard Rost OP  @Reply  
           
10 days ago
You could say the same thing about any software, really. Even something as simple as Microsoft Word. If you don't understand what those icons do, you're going to get a very simple document. Or something like Excel. If you don't know how to do basic formulas, it's just a glorified notepad. So the more difficult the tool, the more training that is required. But if your end goal is to make, say, a customer database, you'll need a lot less training with Access than you would in something like C++ to build the same thing.
Richard Rost OP  @Reply  
           
10 days ago
Oh, and that's another 2 cents. I'll add it to your tab. :)
Thomas Gonder  @Reply  
       
10 days ago
Richard While, like the other Office applications Access has lots of bells and whistles, for what I want to do I've found there is no substitute for VBA. Northwind Tranders is full of VBA too. Somewhat different animal than formulas and formatting. I'm sure someone, somewhere has created a db app shell for the various versions of C. While C is great for machine automation and core O/S applications, for something like organization app programming, I think a robust BASIC can't be beat for simplicity and maintainability.
Richard Rost OP  @Reply  
           
10 days ago
I agree. Right tool for the job. I wouldn't try to build a first-person shooter game in VBA. :)
Abraham Breuer  @Reply  
     
2 days ago
MY GPT Response!

When building a software system, think of it like working with wood—from raw tree to finished furniture. This process happens in stages, and each stage offers different levels of effort, control, and customization.

Stage 1: From Tree to Panel
At this stage, you start with raw materials—you chop down trees, dry the wood, and cut it into flat panels. This is just preparation; no furniture exists yet. In software terms, this is like writing code from scratch with a general-purpose programming language. You have to build everything yourself: databases, user interfaces, security, business logic, and deployment. Frameworks can help speed up this work by providing useful tools, but they don’t eliminate the need to do much of the groundwork.

Stage 2: Handcrafted Furniture – The Joiner’s Work
With your prepared wood panels, you begin crafting custom furniture by measuring, cutting, shaping, and joining every piece by hand. This approach gives you full control to create exactly what you want, but it requires time, expertise, and money. In software, this means building a fully custom system—even if you started with a framework, you still code every detail yourself. You can tailor everything to your needs, but at a higher cost.

Customization beyond this stage is always possible—for example, you can start with a basic piece and later invest more time and money to refine it further, just as a joiner can modify or enhance a piece of furniture.

Stage 3: IKEA Kitchen – Modular but Customizable
Now imagine you’re designing your kitchen using pre-made cabinets and parts. These pieces are standardized and fit together easily, but you control the layout, choice of finishes, and accessories. This is similar to using a tool like Microsoft Access or other low-code platforms. You get a ready-made system with built-in database tables, forms, and logic, which you can quickly assemble and customize. While it might not be as fully bespoke as handcrafted furniture, it’s often good enough for 90% of what a joiner can do, and with less time and cost.

Importantly, this modular approach still allows deeper customization if you invest more effort—just like a kitchen that looks professionally done, but can be adjusted and improved over time.

Stage 4: IKEA Table – Ready-Made and Limited
Finally, you can simply buy a fully assembled table. It looks good, serves its purpose, and you can pick from a few sizes or colors, but you cannot change its shape or structure. This is like off-the-shelf software or SaaS products: fast to deploy but often rigid. If your business needs don’t align perfectly, customization options are limited and can be costly or impossible.
Add a Reply Upload an Image

 
 
 

The following is a paid advertisement
Computer Learning Zone is not responsible for any content shown or offers made by these ads.
 

Learn
 
Access - index
Excel - index
Word - index
Windows - index
PowerPoint - index
Photoshop - index
Visual Basic - index
ASP - index
Seminars
More...
Customers
 
Login
My Account
My Courses
Lost Password
Memberships
Student Databases
Change Email
Info
 
Latest News
New Releases
User Forums
Topic Glossary
Tips & Tricks
Search The Site
Code Vault
Collapse Menus
Help
 
Customer Support
Web Site Tour
FAQs
TechHelp
Consulting Services
About
 
Background
Testimonials
Jobs
Affiliate Program
Richard Rost
Free Lessons
Mailing List
PCResale.NET
Order
 
Video Tutorials
Handbooks
Memberships
Learning Connection
Idiot's Guide to Excel
Volume Discounts
Payment Info
Shipping
Terms of Sale
Contact
 
Contact Info
Support Policy
Mailing Address
Phone Number
Fax Number
Course Survey
Email Richard
[email protected]
Blog RSS Feed    YouTube Channel

LinkedIn
Copyright 2025 by Computer Learning Zone, Amicron, and Richard Rost. All Rights Reserved. Current Time: 6/15/2025 9:40:19 PM. PLT: 1s