25 January 2010

Support for Sole Traders

Small Business SSEs (Small Small Enterprises)

I have been a member of the Hutt Valley Chamber of Commerce for quite a few years. I have learned a lot that has helped me, via some of the courses and events that they run.

I don’t know whether all Chambers in New Zealand are as good. But recently I talked with them about an idea, which they immediately offered their support for.  Here is the notice that they will shortly send out to their mailing list:

Interested in a “Focus Group”?

Maybe you work alone, or as a partnership.

Maybe your business is just you, or just you plus an assistant.

Maybe you work from a home office, maybe from a rented space somewhere, or maybe no office at all.

Such business owners often have a lot in common, regardless of the industry you work in.  For example:

  • It can get a little lonesome sometimes;
  • The line of accountability can be a bit flimsy;
  • Because you’re in charge of doing everything, sometimes you can’t exactly play to your strengths;
  • Compared to a larger business, it can be harder to find the time and resources to access professional input;
  • Etc…

So… we propose to establish a group to help meet some of these needs.

The plans are a bit loose around the edges at the moment – how it turns out will depend on who’s involved.  But ideas so far include:

  • Monthly meetings;
  • Informal, flexible, self-regulating;
  • Revolving facilitator;
  • Emphasis on mutual support, sharing, learning.

A lunch-time meeting to discuss the formation of such a group...
Hutt Valley Chamber of Commerce, Daly Street, Lower Hutt
Monday 1 March 2010, 12:00 – 1:00pm
Lunch provided.

If interested, but unable to attend the meeting, please let us know.

For myself, I know that I often find that problems and priorities become a lot clearer, and decisions a lot easier, if I have an opportunity to just speak out the thoughts instead of trying to grapple with them silently buzzing around in my head.

So I think this “focus group” idea just might lead to an opportunity to reduce some of the isolation that I and other “home alone” small business people experience.

24 January 2010

Real World Access (43)

One of a series of articles about where Microsoft Office Access applications have found a real-world niche.

 Doug Yudovich’s Claims Reconciliation


Sisyphus’s Questsisyphus

The process was grueling - if not physically, then mentally, filling one’s day with Sisyphean tasks:

  • Print the acceptance reports from the clearing house;
  • Print the claim run reports from our billing system;
  • Manually identify the invoice numbers between the two stacks;
  • Enter matched invoices to a spreadsheet file;
  • Scan clearing house reports to identify error messages;
  • Highlight said messages;
  • Send reports with the identified errors to the processing department;
  • The processor scans the reports, looking for the highlighted items;
  • Post the errors to the billing system.

When you were done for the day, there was tomorrow — with the claims reconciliation to, well... reconcile.

Calling the process less than optimal was an understatement.  The accuracy of the reconciliation was marginal at best — not all errors were captured, missed by either the initial reviewer or the processor. While not all invoices were reconciled as accepted and processed by the clearing houses, the claim run batches ended up being accepted in the billing system, causing an increase in the Accounts Receivable summaries.

Our billing system vendor was working on a reconciliation solution, but that was at least 18 months out.  We needed an immediate solution.

Enter stage left:  Access!

One thing in which Access excels (no pun intended) is reconciling data from various sources.  Not only can you import data into Access, you can also link directly to external data sources.

In our case, data import was the path we chose, as we were dealing with report files.

In addition to using Access’s data management engine, it is possible to automate other programs from within Access, and not only family members of the Office suite.

We reviewed the various files in the mix, and identified the approach to the data collection. Depending to the format of the source reports, a number of approaches were required — importing the file directly to Access, coding a custom import process, or writing a separate program to manipulate the date into a suitable format.

Thanks to the versatility of Access, we were able to automate that program from within Access. The automation simplified the process on a couple of fronts:

  • The user didn’t need to learn how to use a one-off product;
  • The automation guaranteed that no steps in the scrubbing process would be missed.

With the data safely tucked in Access tables, it only took a few queries and a couple of reports to get the output we needed:

  1. An itemized error report for the processor to post from;
  2. An acceptance report from the clearing house for each claim run;
  3. A list of invoices that were not accepted by the clearing house within 3 business days.

The third report was a new one.  Identifying missing claims for the processor to take care of before the Accounts Receivable gets too old.

2 months later

Sisyphus had reached the top of the mountain.

The final product was a user interface with three buttons (four when you count the ‘Exit’ button). Importing the data and generating the reports takes about 5 minutes. The reconciliation accuracy is 100% and no claim is left behind more than 3 days out.

To top it off, we freed one staff member to deal with operational needs, versus shuffling (a lot of) paper around.

Epilogue

Today, 5½ years later, we are finally testing one aspect of the reconciliation process in our billing system. We anticipate that the complete process will be incorporated into our billing system by 2012.

Harnessing the power of Access to manage information, and as a rapid development tool, saved us a lot of money and resources.

This application also paved the way for developing additional Access applications for the company. Some became critical to the mission of the business… but that’s a different story.

10 January 2010

Real World Access (42)

One of a series of articles about where Microsoft Office Access applications have found a real-world niche.

 Gina Whipp's Franchise Management

franchise Imagine you're a Company with franchises all over the United States.

You have Brokers located in several states managing their regions. You have billions of Prospective Buyers all over the world that might be interested in your Franchises. You need to connect the two while still maintaining control over your Franchises and your Brokers.

A Microsoft Access application, using data stored in an SQL Server database, provided the perfect interface for this.

  • When a Buyer enters their information via a website, that information is immediately available to the Broker.
  • Franchises are automatically connected to Buyers by Zip Code and County, or by Location Interest entered by the Buyer.
  • Buyer activity on the website is viewable by the Broker.
  • Quickly identify hot Buyers and available Franchises.
  • Reminders you set in the Access application are automatically sent to Microsoft Outlook.
  • Send eMails without ever leaving the Microsoft Access application.
  • Admin logon has full control over Brokers and their Regions and their access to menus.

Since mid-2007 this database handles ten Brokers in as many States, each handling an average of eight states, including Provinces in Canada, with 700 to 1,000 new Prospective Buyers logging on to the website each month.

08 January 2010

Enigmatic Technology

Some rambling quirky personal revelations

sponge My friend Kirk once told me that I am “an enigma”.  I remember this, because even though I have a pretty good vocabulary, I had to look this one up to be sure.

The circumstances at the time were that I chose not to try and find a place on the floor in a crowded Los Angeles airport departure lounge to open up my laptop and check my email.

Kirk knows that I don’t have a TV or a microwave, and such like. But this email failure apparently was beyond the pale. How can I call myself an IT professional, and pass up any opportunity to use technology to the full?

Not a Luddite

My daughter asked me today about early cameras. I told her about the Kodak Brownie box camera I had when I was (much) younger, and we then watched a guy on YouTube pulling one apart.

But I have a nice digital camera now, and have no urge to revert to older technology.

On the other hand, I bought my CD player in 1987.  It still plays music, and I have no desire for anything more “modern”.

But I prefer playing records. We bought a new turntable last year. My friend Oli thought I was joking when I told him. But our turntable is by far my most recent acquisition as regards entertainment technology.

It was heartening to read an article in our local weekly rag this week, suggesting a resurgence of interest in vinyl records as a music medium. For myself, I don’t know how the interest ever waned. Playing a record is an incomparable process.

Autofocus

I also thought about this theme recently when, being the beginning of the year, I bought my 2010 diary.

For a few years I tried various software – calendars and task managers and all that.  But in the end I had to conclude that for me there is no future in this – it’s just too sterile and remote.  Computers are really awesome for some stuff. Other stuff needs hands on. Simple as that. In the case of diaries, it means pencil and paper - it looks like an increasing number of people are agreeing with this assessment too.

I have also started using a time management system called Autofocus. It is brilliant in its simplicity, and manages to combine the intuitive with the rational.

Such a system can be managed electronically.  However, I join the author of the system, Mark Forster, in preferring the pencil. He says it like this: “I find paper and pen much quicker and easier, and it has a meditative natural quality about it which the computer entirely lacks.”

Sixth Sense

I have recently watched this presentation with fascination. It is a hint at emerging technology, which is always fun to see, and ponder on the possible future real-life application of what might emerge from it.

One thing that struck me in the point that Pranav Mistry makes about this development at the end of his talk. Bridging the “digital divide”, staying human by retaining a more intuitive and natural connection with the physical world, is a desirable pathway forward.

Technorati Tags: ,

15 November 2009

The Place of VBA

John R. Durant helps put things in perspective

snooker3Over on Glenn Lloyd’s blog, there is a reference to an interesting article on John Durant’s blog, entitled “Why VBA Still Makes Sense”.

At first glance, I thought this article was making a case for VBA to have a continuing strong place in the toolkit of Office developers.  But a closer reading gives the impression of “damning with faint praise”.

We see a few examples of what makes VBA attractive to work with.  But in the end, the feeling is that it is down the scale.

I don’t think this is how I want to look at it, from the Microsoft Access point of view.  And I think one of the things this article does for me, is highlight once again that Access is exceptional.

Therefore it is not surprising that Durant doesn’t mention Access even once.

He refers to programs that have macro recording features – which in Access, of course, would not make sense.  He refers to the integration of .Net programming into Office applications – and of course, VSTO does not include Access specifically.

However, I would imagine (I have no hard evidence) that in the real world, Access is the main locus of VBA code.  That’s because Access is primarily an application development tool, and it’s hard to develop an application without doing the kinds of things that VBA provides.

Therefore, wouldn’t it be true that VBA is central to Access, in a way that does not apply to any other members of the Office family?

Access 2010 is coming with significant enhancements to macros (Access macros, that is), associated with enabling the new web application functionality.  But nobody is pretending that these macros, cool though they are, will be a replacement for VBA.

So for people (like me) who plan to continue using Access to develop serious desktop applications, the antennae will always be sensitively poised to detect any hint of change in the level of Microsoft’s support for VBA.

At the moment, I think it’s still looking good!

11 November 2009

What is SharePoint

… from the Access developer’s point of view?

Ropescourse We’re moving towards the release of SharePoint 2010, and with it a new stage in the life cycle of Microsoft Access.

In a nutshell… we will be able to build a database  application, right in Access itself, using tools entirely native to Access.  And then we will be able to publish that application to a SharePoint site, and use the application in a browser.

This is causing some Access developers to start to look at SharePoint in a new way.  And it is causing some SharePoint people to look at Access in a new way.

Perspective

I might write some more about this in future posts.  But for now, let’s just say 2 things.

1.  From the Access angle, here's an absolutely critical point to remember…  The new web application functionality is additional.  Nothing is being removed or replaced.  If you don't have a use for this new stuff, then you don't have to use it, and you can just ignore it.

Desktop database solutions are not going away in a hurry.  VBA continues to be enhanced too, and VBA is not going away any time soon.  We will still be able to build good database applications using Access, just like we have always done.

2.  From the SharePoint angle, Access Services is a tiny corner of a huge product, and most SharePoint developers and users will probably blithely proceed with their work, totally oblivious to our existence.

Facets of SharePoint

Because SharePoint is such a big pool, it can be a bit tricky to grab hold of its meaning, depending on your perspective.

In a video from the recent SharePoint Conference in Las Vegas, you can hear Microsoft’s Steve Ballmer say that SharePoint is:

  • a collaboration system
  • a business insight system
  • a social networking system
  • workflow
  • document management
  • search
  • a platform for business intelligence
  • a platform for a whole big set of scenrios
  • kinda magical, in a certain way

In fact, SharePoint is trying to do so much, in a holistic, integrated, comprehensive way, that it is easy to get bamboozled.

As well, it is also becoming more clearly a part of the Office family.

So it seems to me that one’s understanding of SharePoint will depend on which particular bits of it we have contact with. Which, unless you are a dedicated SharePoint consultant/developer, is likely to only be a small part of the overall picture.

Keep It Simple

I have referred before to Ishai Sagi’s book, and quoted his opening sentence: “SharePoint is a platform that allows users to build websites.”

In the talk about SharePoint, this is a simple truth that is often left out.  We come back to the baseline that SharePoint is a platform for building websites.

Websites for many different purposes. The tools provided by SharePoint to allow those sites to be used for document management, and team collaboration, and social networking, and all the other points mentioned by Steve Ballmer, are impressive.

Enter Access

Well, as I understand it, from SharePoint's point of view, an Access web application is just another website - one of a number of different types of sites it supports.

In the same talk, Steve Ballmer listed Access Services (along with SharePoint Designer, and InfoPath Form Services), under the heading of “Composites”.  So maybe we will start calling ourselves compositors rather than developers. :)

But here’s the key thing… Access 2010 is coming with some unbelievable new functionality, specifically to allow database applications to be run in SharePoint sites.  And SharePoint 2010 is coming with some fantastic new functionality, specifically to allow Access web applications to be supported and integrated.

The aspect of Access Services is just one corner of the pie – a corner that is presently getting a lot of attention because it's new and surprising, but nevertheless still just a corner of Access's overall place in the world. But if Access developers want to take advantage of the expanded range of applications that we will soon be able to offer, then I really think we will eventually be very happy to have SharePoint as one of our closest buddies.

06 September 2009

Three way street

Collaboration the hard way

crossedtracks I have recently had one of the more unpleasant experiences of my career in software, and have been reflecting on where did the process go off track.

Analogy

It was pertinent for me to think of a building analogy.

Let’s say you’re a plumber.  You’ve been looking after the plumbing needs for a particular client for 10 years.

Out of the blue, a building company gets in touch… “We have built new offices for your customer, and they’re waiting to move in. All we need is the water and sewage – when can you get it done?”

Well, supposing you value your customer, and you want to do your best by them.  Also, you know they are normally cost sensitive, so we have to aim for quick and simple if possible.  Especially as you are charging out your time anyway at non-profit discount.

On the other hand, this is obviously going to be a tricky job.  So you put aside your bamboozlement about why you weren’t involved in the process at an earlier stage, you adopt a task focus, and start drawing up specifications.

In the expectation that a collaborative relationship with the building company will yield greatest efficiency, you arrange for them to show you the new premises.  Trouble is, they keep forgetting to bring the key.  If there were ever any drawings, they have long since been misplaced, and the guy who can tell you what’s inside the walls is out of town. Only some of the holes you want to put through will they agree to.

You fly out of town at your own expense to kick the project into a higher gear, otherwise it will never get done.  The builder says he will do the plumbing himself, but rapidly backtracks when you call his bluff.

When you finally get inside, you find that everything not directly visible from the front door (which is as far as your customers have been allowed to go) is incomplete and in disarray.

And then, they have put a toilet pan in the middle of the board room, that they just know the customer will need, but they can’t let the customer in until all the plumbing is connected. But the only way to get to this board room toilet is by running pipes around the outside of the building and up through the garage floor.

Well, after a while you finally get it piped out, in spite of the difficulties. The builders are still not opening the doors, but somehow you’re getting it in the neck from your customers because they’re still out in the cold. And as for keeping it cheap, well, that idea went down the drain a while ago. Get the picture?

Reasons

All right, here’s the point. Unless I am mistaken, this type of process would not really happen in the building industry. It would not happen in transport, or hospitality, or fishing. But it does happen in the software industry.  Not frequently of course, but my experience is not an isolated example. Why?

I don’t claim to have the answers here.  But here are a few factors that may be relevant.

First, there is the notorious difficulty of being precise about software specifications in advance.  This is partly a result of the fact that software projects tend to be more individual, or in other words less similar to other projects that the developer has done previously, and so harder to put it within a familiar perspective.

Armen Stein discusses some aspects of this problem in this article.

Second, there is a tendency for the clients to not be clear about what they want; or not know what is possible until they actually see it; or not understand what is involved technically in achieving what they seek.  The average person would have a much clearer idea of what has to be done to put a door in a wall, than they do about what has to be done to synchronise data between two databases with different structures.

Perhaps even trickier, given the customer’s extensive experience with some aspects of computing as an application user or power user, they can therefore believe they actually do understand what is involved in database application development, whereas in fact they do not.

Third, there are the many competing technologies, some of them with their passionate adherents, and others where the approach to be taken is decided based on the familiarity and skills of the developer.

I am an Access enthusiast.  If a job can’t be done using Access, then it’s not a job for me.  Whereas I certainly refer on, in cases of Access not being the suitable tool for the job, on the other hand my experience and expertise in Access allows me to recognise scenarios where Access can work well, which others with an incorrect conception of Access will not realise.

When it comes to putting in a toilet, there is probably not a lot of variation from one to another, from the core technology point of view.  But for a database to track an organisation’s membership and finances, there are a bunch of wildly diverse ways of setting this up.

I think this factor makes it more difficult for collaboration between independent consultants working on different aspects of the project.  And again, the fact that the clients are not necessarily aware of this factor, can exacerbate the problem.

Fourth, there are a lot of unscrupulous charlatans about.

Conclusion

This has been a learning experience for me.  In this industry, one needs to be acutely aware of the special factors as discussed above.  They need to be allowed for and compensated for.

Trying to shortcut the communication about specifications, done with the best of intentions in the interests of expediency, can backfire.

Finally, remember who the client is. Communicate primarily with the client, and communication with any third party or other provider should go via the client.

08 July 2009

Real World Access (41)

One of a series of articles about where Microsoft Office Access applications have found a real-world niche.

 Roger Carlson's Training Registration

classroom Several years ago, Spectrum Health, the largest hospital system in out-state Michigan, changed its Hospital Information Management system.

Since they employ over 12,000 people, scheduling the training for those employees in the dozen or so modules the HIM offered was a challenge.  They needed an application to schedule people, courses, and classrooms; and they needed it quickly.

Each course had multiple sessions, each of which could be scheduled in one of many classrooms.  Each course could have only one teacher, but multiple teaching assistants assigned to it.  Naturally, each course could also have multiple students assigned to it, up to a maximum, which varied based on the classroom to which it was assigned.

The application had to be able to:

  • create courses and sessions;
  • assign sessions to classrooms;
  • assign teachers, assistants, and students to each session.

It had to keep track of:

  • the seats assigned;
  • the maximum seating;
  • who had attended the course;
  • who had completed the course;
  • create session rosters;
  • create certificates of completion.

With Access, I created the database application in under a week's time, and it worked so well, they ended using it for several more projects.  All they had to do was copy it, wipe the data, and start over.  It was generic enough to be used for most any training initiative.

You can see a working copy here.

07 July 2009

SharePoint Book Recommendation

Ishai Sagi’s new book

IshaiSharepoint SharePoint MVP Ishai Sagi has recently published a brand new book about SharePoint 2007.

In a word – masterful.  Congratulations, Ishai, on a great contribution!

The author is careful to point out that the book is not targeted to the technical end of the spectrum – the professional SharePoint developers and administrators.

Perfect! There are lots of books, and other resources, that make the assumption that you already know stuff, and jump right in to the intermediate or advanced level.

No, this is for the user.  Well, in a sense, the author misses slightly here. He forgot to mention those who don’t necessarily work directly with SharePoint, but work with technologies that can integrate closely with SharePoint.  Like (ahem) Access developers, for example.

So really, it’s for people who need a good, solid, overview understanding of SharePoint. Terminology, concepts, functionality.  In my experience, there was a big gap for this type of book, and Ishai has filled it superbly.

Here’s the first sentence in Chapter 1:

SharePoint is a platform that allows users to build websites.

That’s what I like… start at the beginning, and move on up from there.

Not that it’s all on the basic level. By the time we get to page 341 we’ve covered some pretty meaty topics.

I have learned heaps from this book, and will continue to do so as I explore it more thoroughly. Just what I needed for my present stage of SharePoint knowledge and skill.

I have no criticisms at all. It is nicely written, in a very readable style. Very well organised. Excellently illustrated. Highly recommended.

06 July 2009

Doing the Access Stretch

Pleasing Some of the People Some of the Time

birdfish I have heard it said that the best thing about Microsoft Access is that it's part of Microsoft Office, and the worst thing about Access is that it's part of Office.

For one thing, if it wasn't part of Office, it's doubtful it would have survived like it has.  On the other hand, it is clearly in a completely different league compared with the other Office products.  Most people find it a pretty steep learning curve, and it takes a lot of hard work to achieve proficiency.

In the sense that it is used to “develop” database applications, it is clearly a developer program.

Here's another thing that is a best/worst thing about Access.  It provides the ability for beginners to make effective simple applications, as well as providing a very powerful set of tools for professional developers to build complex applications.  It simplifies the ability to connect to a wide range of data sources.  It provides for a wide range of different application types - desktop / multi-user / hybrid desktop-web / client-server.

There is not a product on the planet that does now, nor ever has, come even close to catering to the needs of such a diverse range of IT workers and such a wide range of application scenarios. And guess what, I reckon this trend is going to become even more so, as Access continues to move forward and keep pace with the wider IT industry.

Is this an advantage?  Yes.  Is it a disadvantage?  Yes.

This is a topic that is close to my heart.  Unlike many professional freelance programmers, I do not have a deep IT background. I came to databases from an entirely different background.  If it wasn't for the fact that Access provides something for the newbie, I would never have got into it.  It was still a steep learning curve, but it was manageable.

I have been full-time Access developer for about 12 years, part-time for a few more years before that.  Know what I'm saying?  I love my work, and I owe my career to being able to do something with Access without knowing what I was doing.

This type of story is not uncommon in the Access world in general.

Now, that's the trouble... The fact that anyone can have a go, and think they're doing cool stuff, but in reality making a mess, because Access is in Office like Word and Excel and some people therefore assume it is as easy to use - that's the root of the stuff you sometimes hear about Access being regarded as "just a toy".

In many situations, it is a constant battle for Access developers to maintain their dignity and get taken seriously.  And for Access to be seen as an appropriate/best tool for jobs, which it really is but the reputation is tarnished. That's the reason I built this webpage, to try and demonstrate that Access does some serious stuff.

But of course, for a computer programme to continue at the cutting edge, it has to change.

With Access 2007, Microsoft made a huge investment. I thank the Access team at Microsoft, for their willingness to take the hard and unpopular decisions in order to keep Access current with the IT industry, create a product that is unique in its scope of functionality, and provide Access with a future.

I see Access 2007 as the first tentative steps in a major movement
towards Access 2010 and beyond, and sometimes tentative steps only make sense in retrospect.

It looks to me that Access is just reaching adolesence.  As such, I anticipate that in 10 years, my work will still be centred around Access development.

What a stroke of luck that some of us hitched our wagon to the Access horse, and not one of those other technologies that are slowly fading into oblivion.

We are expecting the Technical Preview (Beta) of Office 2010 sometime soon, and my bet is on an increase in the number of people who will recognise that Microsoft is getting it right.