Category Archives: Work

Access Work

What’s so wrong with Access??

Be prepared for a slightly ranty post, but with a twist (i.e this time not about infographics).

I’ve been developing applications using Microsoft Access for over ten years now, and I still find it an extremely easy to use, versatile and powerful application development platform.  I still regularly build systems with it today, although my time is now somewhat split between Access, Excel and ASP.

About a year ago I met with a colleague from another organisation to discuss a regular annual return we send to report on our organisations progress.  In these talks we discussed data quality and how we as an organisation store and analyse our data for export.  The bulk of the data I access for reporting either comes from information stored in an old and somewhat clunky Access DB, and the rest from a number of linked SQL server views containing information from our primary MIS.  It works well, and the queries/forms I’ve created provide all the information and reporting that we need.

This ‘data expert’ spent a great deal of time explaining how we shouldn’t use Access for systems development as it is ‘clunky’, ‘unsecure’ and ‘unreliable’ as a platform.  At the time this bugged me somewhat but I let it go.

Earlier this week at a conference in London I bumped into the expert again, and the first thing she asked was whether we were still using Access to develop some of our business tools.  I confirmed and I got a ‘look’.  The ‘look’ said ‘you need to move with the times, mate’.  We went our own separate ways and I started thinking about things..

Over the past couple of days I’ve come to the conclusion that she is wrong, and has probably only ever seen the ‘bad’ side of Access usage (and believe me, I’ve seen some really bad Access databases in my time).

I do agree that, at enterprise-level it’s certainly not the best platform as a standalone DBMS – you’d be much better served to have your data stored in one of the enterprise-level DBMS systems, such as SQL server.  That’s pretty much a given, especially from a multi-user perspective.

Where I disagree with her most is in terms of using Access to develop a reasonably sophisticated front-end, with data stored in a separate and scalable database – in fact this in particular is one of the areas in which I think Access still holds its own.  With the use of careful planning, a decent, reliable, secure and versatile application can easily be put together, but I think only as long as the application is developed properly and sensibly.

What do I mean by properly?  Here’s a brief list:-

  • Controls and forms should be unbound.  Creating, deleting and updating records should be carried out using VBA to ensure reliability and properly defined control.  Access wizards and bound controls don’t provide enough data validation or error-checking.  Any decisions on how to deal with data shouldn’t be left entirely to the user, and the system should have adequate business logic inbuilt to make those decisions and act accordingly.  With a decent grasp of VBA it’s actually very easy to implement such logic seamlessly and transparently to your application.
  • Data shouldn’t be stored locally in an MDB file if possible – any data used by the application should be stored in separate tables, linked for example using ODBC and whatever necessary authentication.
  • Access applications should be locally installed for each user, and not stored on shared network areas, where files are at risk of corruption or accidental deletion.
  • Security needs to be implemented properly.

I’m sure there are more examples of ‘proper’ development I could highlight, but I’m tired, and my main point is that I don’t feel that there’s anything wrong with using Access as long as the application is developed properly, securely and using VBA and robust programing practices rather than macros, bound controls or wizards.

Before anybody feels the need to respond negatively to my comments, I want to clarify that I’m aware that there are many better systems to develop in than Access.  I merely find it irritating when people dismiss it out of hand, especially if they aren’t aware of what the tool is capable of if used sensibly.

Another similar view on this can be found here (I even felt the need to use the same post image!)

Any thoughts or comments?  Keep them constructive, please.

2toria Life Work

Developers Block

At my day job, other than data analysis and reporting, I develop applications using VBA, Office and VB2008, and I think I’ve gotten reasonably good at doing it.  I’m there to identify areas which need improvement and then I develop tools that staff can use to streamline their day-to-day jobs.  Most of these things I come up with myself based on awareness of these ‘gaps’ in productivity or access to useful data, but staff also approach me with ideas which I then convert from paper to electronic systems.  So, basically, in my day-to-day role I’m never without a challenge in terms of coming up with ideas or developing those suggested by others.

When I get home and try to think of real-world solutions that I can write and maybe even make available for lovely people like you to use I often fall short of ideas.  It’s kind of like a ‘developers block’ of some kind.  I find myself looking for ‘that thing/idea’ that doesn’t yet exist, only to come away with nothing.  I know, I know, I’m not going to find something that doesn’t exist, but some ideas would be nice.

It’s actually quite difficult for me to gauge what people would find useful in terms of desktop software applications.  Somewhere out there, somebody wants something that will make their daily lives easier.  It could be some kind of financial function that just doesn’t exist yet, or access to multiple streams of data into one package so that analysis tasks can be made easier, but I don’t know what these things are.  And when I try to think about what would make my life easier in terms of software that I don’t have that does that thing I need, I have periods where I simply fail to come up with ideas.

Does anybody else have that problem?  Do you have any suggestions on software/services that don’t exist yet or could be improved upon?  It’d be interesting to hear your thoughts…

Life Work

Ten Interview Tips

A previous member of staff came to see me yesterday after being rejected following a job interview.  After a bit of a chat and a few questions about how she conducted the interview it was obvious there was some work to do.  Certain elements of her interview technique were all wrong and it got me thinking about whether or not others don’t know some of the very basics.  So, with that in mind here are ten quick tips:-

  1. Know the organisation.  Research what they do, what rules and regulations they have to follow.  Know this stuff like the back of your hand and understand it.
  2. Turn up early.  About 20 minutes will do – it’s just enough time to read through any notes you’ve made and so that you can calm down a little before your big moment.
  3. When the interview is under way, don’t feel you have to start talking the moment a question is asked.  Take a breath and repeat the question in your mind so that you can figure out what it is they’re asking and how you can give them the answer they’re searching for.
  4. Put yourself in their place.  If you were interviewing you, what answer would impress you?  Again, take your time and give them what they want.
  5. Use eye contact whenever possible – address your interviewers directly and don’t stare blankly into space whilst you’re talking.  Smile and appear friendly.
  6. Use open body language – try not to fold your arms or play with your paperwork or pen as this creates a physical barrier between you and them.
  7. Have a good reason why you want to work for this company/organisation and make it clear at interview.  Don’t just say you’re looking for new work because you hate your current job, even if you do.  Have a plan for where you want to be in x years time and be ready to talk about it.
  8. Remember this is a two-way conversation.  You might be after a job, but they are after an employee, and that makes their day equally difficult.  Get them to sell the job to you whilst you’re selling yourself to them, which leads to…
  9. …come up with a list of intelligent questions to ask your interviewees at the end.  ‘What is an average day in this role like?’, or ‘what is the office culture like here?’ are good starting points.  Remember, you need to be happy that this organisation is the one for you as well as them being happy that you’re their ideal candidate.
  10. If you’ve been told you’re going to hear about your interview after x days and you haven’t, get in touch with them.  It might be that you didn’t get the role, but don’t let them get away with not giving you feedback on your performance, as any advice given could be helpful in the future.  Additionally, you’ll appear more assertive and this could be useful if you get any future interviews with the same organisation.

Available for hire!

I’ve added a page to the contacts link at the top of the page for any consultancy or project work anybody might want me to do for them. I’ve been developing applications in Excel and Access for 10 years so do get in touch if there’s anything you want putting together.