"Agile is treating the symptoms, not the disease"

Where is this decade's Access?

It may seem like a snarky and trolling question, but think about it for a moment: for a decade or so, I was brought into project after project that was designed to essentially rebuild/rearchitect the Access database created by one of the department's more tech-savvy employees into something that could scale beyond just the department.

(Actually, in about half of them, the goal wasn't even to scale it up, it was just to put it on the web. It was only in the subsequent meetings and discussions that the issues of scale came up, and if my memory is accurate, I was the one who raised those issues, not the customer. I wonder now, looking back at it, if that was pure gold-plating on my part.)

Others, including many people I care about (Rod Paddock, Markus Eggers, Ken Levy, Cathi Gero, for starters) made a healthy living off of building "line of business" applications in FoxPro, which Microsoft has now officially shut down. For those who did Office applications, Visual Basic for Applications has now been officially deprecated in favor of VSTO (Visual Studio Tools for Office), a set of libraries that are available for use by any .NET application language, and of course classic Visual Basic itself has been "brought into the fold" by making it a fully-fledged object-oriented language complete with XML literals and LINQ query capabilities.

Which means, if somebody working for a small school district in western Pennsylvania wants to build a simple application for tracking students' attendance (rather than tracking it on paper anymore), what do they do?

http://www.javaworld.com/community/node/3530

That last question is the one that interests me more than just about anything else you can ask.

Posted October 13, 2009 11:52 AM

Comments

If they want free software:
1. Switch to OpenOffice and learn to use the HSQL database app (there is a learning curve involved)

2. Use Glom

If they can pay:
1. User FileMaker Pro or something like it

John Rowland, October 13, 2009 12:15 PM

CouchDb with a very high level app builder and GUI interface would be even better...

; )

John Rowland, October 13, 2009 12:17 PM

I just launched Access 2007 and it sure looks a lot like earlier versions in terms of template offerings etc. Was this a trick question?

Kevin Pettitt, October 13, 2009 12:29 PM

I would say that this decade's Access would be http://dabbledb.com/

Jon Gretar, October 13, 2009 12:43 PM

>Was this a trick question?

The point of "this decade's Access" is we shouldn't have to install proprietary fat clients to use a simple application. IMO, you shouldn't even have to install the devs tools to build it, you should just be able to build simple, secure database apps right from your browser.

Damien Katz, October 13, 2009 12:46 PM

Typically these things end up in Excel. Tools like Access, Filemaker and (sadly) Notes have been stamped out in the enterprise by the governance people. For the SMB or department power user today's options are very limited when compared to what was available 10 years ago.
Great post.

Ed Maloney, October 13, 2009 12:53 PM

Doing it in Access 2007 or Excel is missing the point because you are still stuck with desktop-era technology.

There is no way the small school district will bother with CouchDB even if CouchDB made free sandwiches on Fridays.

The obvious answer to me is to use something like Google Docs (or one of the competitors). Zero setup. Zero up-front cost (other than labor). No server to setup. No license to buy.

You can generate a nice spreadsheet and share it with all your users. It is not perfect, it does not scale insanely well... but you cannot beat the convenience.

(And I have seen plenty of people doing it.)

Daniel Lemire, October 13, 2009 1:19 PM

@Ed - I think you've hit on the real problem that power users have with throwing a "database" together: IT. Back in the pre-WAN days when there was no centralized IT dept., the LOBs/Branch offices could solve their own problems (to a degree anyway). Once IT grew into a mature bureaucracy concerned mostly with sustaining itself by assiduously avoiding "risk" (i.e. giving users any tools or apps that might conceivably become useful enough to warrant high up-time), it's been all downhill. Excel is indeed one of the few ungoverned tools left.

So the question then is how can we create a model in which IT can provide a sandbox to latter day power users that both minimizes their own risk and offers a clear path for "scaling up" should an application warrant it.

My answer is to use Notes and Domino, but create a "second-tier" production environment that has a lower up-time expectation than "real" production. It might be just a separate server, or a separate org/domain that users can access with their regular production ids. The restrictions on design modifications, creation of databases, etc. would all be fairly loose to allow select power users a level of flexibility similar to that of Excel. Indeed I've seen several instances where this has been an unofficial practice, where a "test" application on a "test" server was in fact being used for "real" work. Might as well give users what they obviously want.

And when that little gem of an app becomes strategic, scaling up is fairly trivial since it's already built in Notes.

When you consider the incredible productivity boost of going from an "email spreadsheet updates back and forth and let Penelope consolidate them" model to a simple "update your reports in the Notes database" model, you might even have a little money left for some Domino Designer training that would help prevent the usual amateurish power user/developer mistakes and allow IT to brag about risk reduction.

Kevin Pettitt, October 13, 2009 1:39 PM

Notes, or Google Docs. Which depends on a ton of factors and (as always) familiarity.

Erik Brooks, October 13, 2009 3:14 PM

For most "civilian" devs in most corporate environmenst the only option available is Excel. Although I'm an IT pro I've come to appreciate the wonders that business folk achieve with such spreadsheet "solutions". As my role changed more to that of a business analyst I too often found myself on the "wrong side" of the Excel divide.

In fact, I now use Excel as the preferred basis for a lot of my development work (admittedly, Excel enhanced somewhat by embedding SQLite and Python, my own Access-as-it-should-have-been :-) )

Tom

Tom Gleeson, October 13, 2009 3:34 PM

In my experience, for the last 10 years or so, most projects that would traditionally have been done in Access back in the 90s, have shifted more and more towards the PHP/MySQL combo.

It's web technology with an extremely low entry barrier, just as Access has been for the desktop.

With the advent of CouchDB as the standard data store for Ubuntu, I am very excited to see what cool desktop / web hybrid apps people will come up with in the next few years, and what will become the programming environment of choice for the desktop. Might turn out that we'll see a lot more of Prism / Air - like things because so many more people are familiar with web development these days than with desktop programming.

Markus Wolff, October 13, 2009 4:34 PM

@Kevin - Yes, you would think that Notes would be in the catbird seat of Agile development (did I really just say that?). The RAD model, off-line sync and granular ACL are still ahead of the latest competitive tools. And yet, Notes has been a tough sell outside of organizations that are already committed to the platform. Will ND 8.5x change that? Adobe, Microsoft and now Google have gained traction in this space, making the sales pitch even more challenging.

Ed Maloney, October 13, 2009 7:59 PM

Rails could totally be this decade's Access if some wrote up an Excel adapter for ActiveRecord and WYSIWYG form builder that compiled down to erb.

Carlo Cabanilla, October 13, 2009 11:52 PM

What does the school administrator in West-PA do?

They use this: http://www.filemaker.com/products/bento/

Darren, October 14, 2009 1:33 AM

+1 for DabbleDB. It's designed to work the same way the 'oh we do that with an excel spreadsheet on the shared drive' users work.

Trying to pick a webapp framework to replace Excel seems to be missing some fundamental points.
Chad Fowler summed it up nicely, seems to be discussing the same concerns you raise. I'd be interested to hear your thoughts on:

http://chadfowler.com/index.cgi/Computing/LongTailTriesToWagTheDog.rdoc,v

Dick Davies, October 14, 2009 6:52 AM

They probably will simply use C# Express Edition + Winforms + ADO.NET (Stable since .NET 1.1) for the GUI - a very productive environment with a $0 price tag and use Access 2007 to develop the DB. Or they could use SQL Server Compact Edition to save money - free to download and free to distribute.. Clients will install .NET and in case of access -the "Access 2007 Download: Access Runtime" (google for that) in order to use the client.

thats it. simple.

Another Voice, October 20, 2009 7:24 PM

@Damien "The point of "this decade's Access" is we shouldn't have to install proprietary fat clients to use a simple application. IMO, you shouldn't even have to install the devs tools to build it, you should just be able to build simple, secure database apps right from your browser."

Agreed. Who is doing this?

John Rowland, October 23, 2009 2:10 PM

@damien "The point of this decade's Access is we shouldn't have to install proprietary fat clients to use a simple application. IMO, you shouldn't even have to install the devs tools to build it, you should just be able to build simple, secure database apps right from your browser."

Agreed. Who is building the browser-based tools?

John Rowland, October 23, 2009 2:12 PM

They'd use an embedded database (e.g., HSQLDB). Or Sqlite. Or Berkeley DB. etc.

DAR, October 26, 2009 3:23 PM

Which means, if somebody working for a small school district in western Pennsylvania wants to build a simple application for tracking students' attendance (rather than tracking it on paper anymore), what do they do?
The pressing issue for someone working in a small school - and the thing that keeps them on paper is probably not the technology choice, but rather Information Governance. You can't just make a database these days if you feel like it. If you it without establishing mechanisms for security, authenticity and ultimately disposal - you are probably breaking the law.

On the bright side, the model of transaction documents that Document Orientated databases like couchDB make easy to implement may lead to a filemaker-pro or or MS-Access of the future that can meet the needs of that person needing to keep records, but wanting the advantages of moving away from paper.

Neither Notes nor MOSS are there yet.

Stephen De Gabrielle, November 30, 2009 3:29 PM

There's another option. It might not be for the Rails or Erlang fans, but it is a very good solution for schools, small businesses, departments, ISVs, etc.

It's older than Access, older than Notes. And as a development tool for end users/RAD tool, it's hard to beat. It's cross-platform (and that means Linux too), builds standalone executables. It can connect natively to MySQL, Sqlite, Postgresql, Oracle, Frontbase. It even has a browser plug-in. It groks URLs, it handles XML.

It can be used server-side (like PHP), if you're so inclined. The IDE for the tool is written in the language itself. The runtime environment can be as dynamic as a Smalltalk image instead of a normal compiled executable.

What is it? Hypercard. Or as it's known in this modern, cross-platform version, Revolution.

http://www.runrev.com/

I have no connection with this company other than as a paying customer of 7 years.

Bernard, December 11, 2009 7:24 AM

Post a comment




Remember Me?

(you may use HTML tags for style)