Caché Tutorials
I’m writing a small series of tutorials for Pick developer/admins to get familiar with the Caché environment. The first one explains how to telnet in, create an account, create a file, edit/compile/run a program – the bare essentials. What would you like to see?
Small expansions and explanations are provided along the way but it’s very compact material. The text is written more as a script for videos that will run for just a couple minutes each, but with screenshots the hardcopy should be suitable as well.
As a Pick developer, would this sort of really fundamental info help to kick off your introduction to Caché? Have you avoided looking at Caché because you had no idea where to start? Confused by terms like global, Zen, SQL, classes, or ^funky%[syntax?
The Caché environment is “MV-plus”, but I think common product introductions confuse Pick people with the plus. I think a baseline needs to be established so that people first recognize Caché as just another familiar MV environment. As with any product, once you’re familiar with the platform it’s much easier to discuss the extras, and see that it’s not “just” another platform. But before then, the extras can get confused with requirements, people may think they need to change the way they do things to adopt the platform, and interest may fade.
So if you think about Caché and you come to that “I have no idea what it is” point (which can happen quickly), exactly where is it that you get stuck? What is the “just tell me how to do foo” thing that will get you to the next step?
I started writing the tutorials to lay a foundation that allows people to open up to the next step. Most of the demos/tutorials that I’ve seen from ISC (InterSystems Corporation) quickly jump to Studio (GUI IDE) and other features. These other features are great, but I think Pick people may quickly qet lost, alienated, and discouraged. I think Pick guys like to take things slowly, and when they’re comfortable that the environment is Pick-enough and familiar enough, then they’ll be more open to all the other stuff. For example, my tutorials will have an introduction to globals for Pick developers, explaining how these global variables are used for storage of all data. But I have avoided the more common approach which is like “Hello Pick guy, welcome to Caché, let’s talk about how great globals are…” I think it’s better to see Pick files, items, and dynamic arrays, and then show how globals (like frames but more accessible) contain all of this data.
Personally, whenever I start working with a new MV environment, I want to see all of the familiar features first so that I can navigate the environment, and then I’m open to experimentation with the platform-specific value-add. Just tell me how to get to TCL. Do I list files with LISTF, LISTFILES, LIST-FILES? Is the environment case-sensitive? Do verbs have hyphens or dots? Can I set the environment with flavors, options, or modes to work more like another familiar environment? If I can put items in a file with the editor, then read/write them with BASIC, I’m pretty much in my comfort zone (working from a position of strength) and open to anything else that comes next. If I can’t even see what verbs are available, or typing familiar verbs results in incomprehensible errors, then I won’t have a lot of interest in web development tools, reporting, or anything else the platform has to offer. But once I can navigate the environment, then all of that “plus” stuff will make more sense, because now it has context.
I don’t know when I’ll make these tutorials available (I’ve only started them recently), or whether they’ll be sold or published for free. I don’t have a relationship with ISC to produce marketing materials, and frankly I have a chronic issue where people get valuable sales/marketing information from me and then they go buy software and services from someone else. I have learned to temper my enthusiasm for publishing information, trying to provide resources beneficial to the community (like info on various tools and products) without sabotaging my own ability to pay bills. In upcoming postings I will take some time here in the blog to lead you to Caché tutorials and documentation provided by InterSystems, which should help to kickstart your own experience. If you want more, let’s talk, perhaps I’ll have a series of tutorials which will be of some use.
For now I’d just like to understand what you feel you need to get a better understanding of the Caché DBMS and its full-featured support for MV data and applications – or put another way, why aren’t you using Caché yet? Feel free to e-mail me if you prefer.