ITworld.com
  Search  
ITworld Home Page ITworld Webcasts ITworld White Papers ITworld Newsletters ITworld News ITworld Topics Careers ITworld Voices ITwhirled Changing the way you view IT

Where does all the time go?

ITworld 11/19/2007

Sean McGrath, ITworld.com

In my formative years, I was lucky enough to be exposed to JSP. No, not JSP as in Java. The other one. The previous one. The one that stands for Jackson Structured Programming[1]. This led me to JSD (Jackson Structured Design)[2] and, to cut a long story short, the wiring of my brain was changed forever.

On this topic

JSP and JSD are software development methodologies. The details are not particularly relevant here. The relevant fact is that both methods feature a strong focus on boiling computing down into an activity that changes the state of digital information through time. It's all about things changing as time marches inexorably forward.

What happens when you author a word processor document on your PC? You change the state of data (your hard disk) from the state it was in prior to creating the word processor document, into the state it became afterwards. What happens when you update a database record? The state of the database at time T (before you started) is changed to a new state at time T+1 (after you have finished).

Crushingly obvious isn't it? So much so, I'm tempted to call it a truism. I would do if not for the fact that we spend an inordinate amount of time in this industry lovingly hand-crafting systems so that they have the concept of time built in to them.

When creating documents, we cannot just let change-through-time look after itself. If we wish to be able to trace how things changed over time we need to take explicit action - either versioning documents ourselves or installing some custom application on our machines that will do it for us.

When creating database records, we cannot just let change-through-time look after itself. If we wish to be able to trace how things changed over time we need to take explicit action - either versioning database records ourselves or perhaps buying into a less-than-commonplace database system that implements so-called "point-in-time" data access.

Also in my formative years, I was lucky enough to be exposed to a VAX. No, not that type of VAX[3]. The Digital Equipment Corporation kind of VAX[4]. VAX machines generally ran an operating system called VMS[5]. One of the great things about VMS is that it had an innate understanding of time. If I create a file on a VMS machine, let's call it "foo". The file will be stored as "foo;1" When I modify the file foo, I end up with a new file "foo;2". The old foo remains, frozen in time. No thought required on my behalf. Time looked after itself.

When I look around me at all the trouble and design effort caused by our mainstream operating systems not having this built-in concept of time, I cannot help feeling that the industry has missed an important trick.

Over the years, I have often benefited from thinking about computing in terms of time. I have often wished that the machines would do some of the thinking for me. These days, more and more applications for managing digital content are providing time-oriented services. Generally called versioning or perhaps change-control. Unfortunately, they all do it differently and they all do it at levels above the level where (I feel) it really belongs. Namely, baked right into the file system.

Perhaps this will happen. Some time. It won't be a moment too soon as far as I'm concerned.

[1] http://en.wikipedia.org/wiki/Jackson_Structured_Programming
[2] http://en.wikipedia.org/wiki/Jackson_System_Development
[3] http://www.vaxusa.com/
[4] http://en.wikipedia.org/wiki/VAX
[5] http://en.wikipedia.org/wiki/OpenVMS

Sean McGrath is CTO of Propylon. He is an internationally acknowledged authority on XML and related standards. He served as an invited expert to the W3C's Expert Group that defined XML in 1998. He is the author of three books on markup languages published by Prentice Hall. Visit his site at: http://seanmcgrath.blogspot.com.

Read more of Sean McGrath's ITworld.com columns here.




Sponsored Links

IP Networks Boost Secure Health Communications
AT&T provides secure communication to keep health care moving forward.
Multi-Core Test Results In Virtualized Servers
Check Out The Latest Xeon® Performance Results. Virtualized Servers vs. Non-Virtualized Servers.
Understanding VPN Technology Choices
Knowing the VPN options can help a manager work more effectively with available technologies.
Use Mainframe Data in Excel
It's easy and inexpensive with Spectrum Mainframe Exporter. Easy to use, yet full of features.
Processor-Based Server Selection Guide
All Servers Are Different. Find The Right One For Your Data Center.
» Buy a link now

Advertisements
Sponsored links
Bring harmony to your mix of UNIX-Linux-Windows computing environments
KODAK i1400 Series Scanners stand up to the challenge
Top 5 Reasons to Combine App Performance and Security
Locate Hidden Software on business PCs with this free tool
 Home   Application Development
www.itworld.com    open.itworld.com     security.itworld.com     smallbusiness.itworld.com
storage.itworld.com     utilitycomputing.itworld.com     wireless.itworld.com

 
Contact Us   About Us   Privacy Policy    Terms of Service   Reprints  

CIO   Computerworld   CSO   GamePro   Games.net   Industry Standard   Infoworld   ITworld  
JavaWorld   LinuxWorld  MacUser   Macworld   Network World   PC World   Playlist  

DEMO   IDG Connect   IDG Knowledge Hub   IDG TechNetwork   IDG World Expo  

Copyright © Computerworld, Inc. All rights reserved

Reproduction in whole or in part in any form or medium without express written permission of Computerworld Inc. is prohibited. Computerworld and Computerworld.com and the respective logos are trademarks of International Data Group Inc.