Microsoft Access is fun, but its also powerful and more importantly, it has a place in the development community and in the real world of production applications. What follows are the top 10 reasons why Danny Lesandrini believes this is still true.
When this 20-something programmer-kid who reports to me happened to notice the title of this article on my screen he said something like, You arent really going to write that article, are you? His attitude is exactly why I am writing this article. Dont get me wrong. This kid is a programming genius who can do anything and Id be lost without him but his comment encapsulates the perspective of most real programmers who believe that Microsoft Access is just a toy.
Well, Ive been playing with access for over 15 years, since version 2.0, so I guess I wont argue with calling it a toy. Its fun, but its also powerful and more importantly, it has a place in the development community and in the real world of production applications. What follows are the top 10 reasons why I believe this is still true.
The price is right
Access is freely available to everyone who has Microsoft Office Professional. This philosophy is what got my career as an Access developer launched. The father of a good friend was on the SQL Server team at Microsoft back in 1994 and he told his son to learn Microsoft Access. His reasoning was that Access is bundled with Office and since Office was selling like hotcakes, it would only be a matter of time before Access programmers would be in great demand. It proved true in the 90s and the reasoning hasnt lost any validity for the 2010s.
Landing pad for data
A number of years ago a Microsoft representative gave a presentation at the Denver Area Access Users Group where he used the expression landing pad for data. While I felt that this characterization promotes a dumbing down of Access, it is none the less accurate.
I regularly copy and paste data from Excel and Notepad directly into Access tables. One can suck email messages out of Outlook or Exchange into a table where its easier to analyze. While I have 10 years experience with SQL Server, I only recently learned how to use SQL Server Integration Services (formerly DTS) because Access is easy-peasy-lemon-squeezy when it comes to importing and exporting data from relational databases like SQL Server and Oracle, not to mention DB2 and virtually all others.
If for no other reason, developers should keep their shortcut to Access handy. Handling, scrubbing and migrating data is easier with Microsoft Access than with any other interface available to Microsoft programmers.
Plethora of books and training materials
When I first started learning Microsoft Access, I checked out every book from the library and read them from cover-to-cover. There were dozens of them, and I read them all. Before long, my confidence grew and I started out on my own as a programmer-consultant. While I had done some punch-card FORTRAN programming in college, this self-paced learning was sufficient to launch my career. Virtually nothing about this has changed today, except that there are even more books in the library, not to mention online resources, to assist anyone who wants to break into the Access programming business.
Vast online community ready to offer free help
After reading a number of books, I started lurking around the Microsoft Access newsgroups; visitors post questions and get answers. At first, I simply read the threads but before long, I was answering questions myself. Mostly, I just marveled at the quantity and quality of assistance that was available for free. And more often than not, questions are answered within minutes of being posted, answers from the most accomplished Access developers in the world.
While this can also be said of other languages, I never felt the camaraderie or the community in SQL Server or .Net newsgroups that was ubiquitous in the Access ones. There are great people who frequent those groups, some of whom I count as friends even though weve never met in person. Definitely one of the top 10 things that make being an Access developer great.
This might be outdated, but Im going to include it anyhow. Decades ago when I developed in PowerBuilder, Visual Basic 6 and Access, the ability to drag and drop a form onto another form to create a synchronized pair was huge. Sure, there were very accomplished VB developers who could build parent-child forms in their sleep, but it was never as simple as it was in Access.
This feature has only been improved in Access 2007 where creating synchronized parent-child forms is even easier. Perhaps its also simple in .Net applications, which means that Access no longer has an advantage, but the fact remains that this feature is one reason why Access still Rocks!
At the event where SQL Server Reporting Services was first released in
For years Ive been meaning to learn and use SSRS but its just never been convenient, so I cant make a perfect comparison but from what I had read, Access reports used to be able to be upsized to SSRS. If this is still true, it only serves to enhance the value of building reports in Access.
Real Access developers dont use macros we write VBA code. Its not that difficult and there are virtually unlimited online resources out there to help you accomplish any task you may need to code. In addition to the native functionality that comes with VBA out of the box, one can attach all kinds of libraries that add features like file manipulation, email, zip and Windows API calls. Just like I said above in the section on reports, virtually anything can be accomplished (and probably has) with VBA in Microsoft Access.
Integration with real databases
One of the first applications I inherited was a time tracking tool used by Anderson Consulting at one of its business client accounts. The front end was an Access 97 mdb file, which linked to an Oracle database. On Friday at , 125 employees would scramble to update their digital time sheets and the system didnt blink. Maybe it was the fact that the data was in Oracle or maybe it was because the Access used Pass Through queries to execute stored procedures and server side views, but the reason doesnt matter. Microsoft Access can play with the big boys.
New features in 2010
Table macros and publish to Web. 'Nuff said.
10) The Play-Doh factor
Yes, the top reason why Access rocks as a development platform is because of what I call the Play-Doh factor. Access applications are easy to mold and shape into whatever you or your client needs. In this context, easy means inexpensive.
I once spent a morning with a C++ developer who didnt seem impressed with my career choice. He said he was on a team building an application that had been in the works for over a year. They had $1.5 million into it when the company was merged with another. They all lost their jobs, the unfinished application was shelved and it never saw the production light of day.
That has never happened with any Access application Ive ever built. They come together quickly and are easily delivered on time and at budget. If requirements change or were misunderstood, it is usually a trivial matter to reshape the application into what it needs to be.
In one case, I was asked to enhance a VB .Net that another developer had built over the course of the previous year. Rather than modify his code, I simply rebuilt it as an Access Data Project. In 3 days, I had fixed all of the SQL Server database issues and replicated all the front-end functionality. Three more days I had implemented the new features that the client had been told would take six months. Clearly, the developer I replaced was not the sharpest tool in the shed, but the fact remains: in 6 business days I created an entire application in Microsoft Access. That is the definition of Rocks.
I didnt show the finished article to that programmer-kid I work with yet. I doubt it would convince him to abandon .Net for Access anyhow. Truth is, its a friendly rivalry between our two coding worlds and just as I admire what he does, he respects what Im able to accomplish for the business productivity of our users with Microsoft Access.
So you can become a real programmer and learn C# or Java, but you dont have to. Both today and apparently for some years to come, Microsoft Access still Rocks for developers.