Microsoft Access for Beginners - Additional Information
"Where do I go from here?"
I wouldn't have been inspired to write this series if I hadn't talked to a number of people over the years who were just starting out with Access. Since then, I've received many e-mails from beginners who have discovered just how much fun Access can be. Some want to become experts and design professional applications that will help them to earn a bit more acknowledgement and respect at work. Maybe they just want to program for the fun of it or make their own work a little easier.
Whatever you get from your database work, it's important to realize that the ability to design normalized tables and a user-friendly interface is only the beginning of application design and programming. Access itself, despite being the leader in desktop database software and a great tool, is only one of many applications that you need to be familiar with if you truly want to become a database administrator or programmer of one type or another. There are people who assume these titles when they only know Access (and maybe not very well at that) but they're quickly exposed when the serious problems arise that require a perspective that only experience can bring.
So I decided to add a few notes here on some of the things you need to learn if you really want to become an expert with Access and perhaps move beyond Access into the field of database administration.
Start by paying particular attention to the resources I recommend in the intro to this series and the recommended reading page. These will help take you from beginner through developer level and lead you to other products you need to be familiar with. I'd also suggest the newsgroup comp.databases.ms-access as a reference whenever you get stuck on a particular point. Very often, it's not even necessary to ask a question. Just plug a few keywords into Google's search box for the group and you'll find the issue already dealt with in the archives. The archives of this group contain a wide range of advice, both practical and otherwise, on the different aspects of development.
A few other suggestions:
- Pay special attention to concepts like data normalization that work with systems other than Access. While Access is only a starting point, it does serve as a great introduction to database concepts in general and you can transfer a lot of the knowledge you gain from it to other software.
- Learn how to work with macros but don't depend on them. Learn to work with Visual Basic for Applications (VBA) as soon as you can. I rarely use macros as it's so easy for me to do it in code. Once you have a solid grasp on VBA, it can be a gateway to more advanced environments like VB.NET and the other languages of Visual Studio.
- Learn how to write SQL code so you're not dependent on the query builder in Access. There are some queries that must be written manually. This is related to the advice I give elsewhere against using wizards. The query builder is helpful but you won't truly understand queries until you know how to write them yourself.
- After you become an expert with Access, look into more advanced databases like Microsoft SQL Server. This is Microsoft's network database system that offers tighter security and better handling of large systems than Access. You can download a free version of the product from Microsoft along with free versions of VB.NET and other programming tools.
- Remember that no matter how much you know, there is always more to learn. The technology is always changing and if you want to stay current, you have to keep up with it. If you want to provide the best solutions to your employer, your clients or whatever problems you encounter yourself, you need to have a wide base of knowledge in order to make the best recommendations. There is no one tool that is appropriate in every situation.
- Remember that there will always be people who know more than you. Seek these people out and learn from them whether it's through participation in Internet forums, local user groups or even a new project that stretches your abilities. Being the most computer-literate person in the office can be fun but it can also lead to complacency. As long as you're willing to learn, you never have to be afraid to admit what you don't know.
- In their book, The Pragmatic Programmer, Andrew Hunt and David Thomas use the investment portfolio as a metaphor for a person's collection of knowledge and experience. The development of your 'knowledge portfolio' is essential to your success as a programmer or DBA. Adding to your portfolio often requires little more than an investment of your time. The state of your portfolio will affect such things as your salary, the respect your get at work and even where you are able to live.
- In your spare time, don't forget to learn what you can about networking and hardware. It's another part of the perspective that you need to be a true expert.
A final piece of advice: Every day that you put off learning increases the chance that the knowledge won't be there when you need it. That time might come when you have to admit to not knowing something that you realize you should have taken the time to learn a year ago or when you don't meet the requirements for that great job you really want and you know you could have if you'd been more attentive. This is a lesson I've learned the hard way more than once.
Once you get a good perspective on database operations and administration and have a decent knowledge of programming concepts, you'll have a foundation for building a rewarding I.T. career.
Have fun learning!
