Background to the AME Electrical/Electronic Index
When preparing my written work for the “Sparks 'n' Arcs” column in AME, I found that I needed to refer to earlier articles in the magazine. First there was the matter of reflecting on earlier reading matter that the readership had been exposed to. This gave me a guide to the level of background knowledge I could assume in my reader. Second, any ideas that I was to put forward would reach the reader in the context of what had come before. Was I reinforcing earlier material, or was I expanding on it? Was I actually contradicting it? These factors had to be considered carefully so that I could deliver the important ideas with maximum impact.
At first, I just searched through back issues for material that I remembered was there somewhere. This quickly proved to be unproductive. When I resolved to make myself an index, I realised that this would be quite a job as well, so to maximize the benefit, I decided to share it with other AME readers.
The Standing of this Index
I had read in AME that there is an official AME Index in preparation. I was keen to not cut across this important work, or blunt the edge of it when it is released. For this reason, I restricted the scope of this to strictly electrical and electronic subject matter. I sought and obtained the blessing of David Proctor, Editor of AME at the time. This Index is 100% my personal enterprise, and the style or words I have chosen do not reflect on AME. I would like to offer this Index for inclusion in the AME Website in the future, and to this end, I am carefully avoiding little personal quirks that would be inappropriate there.
What is it, and how is it brought together?
I have not used what might be the latest wizz/bang techniques and software for this project, but I have used software and methods which I am familiar with, and which I have used many times before. The final product is an html file. This is the type of file that is specified for reading by a web browser (A program such as “Internet Explorer” or “FireFox”). A feature of html is the “hyperlink”. The hyperlink is the facility that enables the reader to jump to a different place by clicking on a particular item in the text. Web page designers have many ways of prissying this up, but the traditional default is that text which can be clicked on to provide such a link is coloured blue.
So the file that you can access is in two parts. The first part is the Index. This has all the selected key words in alphabetical order. Clicking on any of these will cause a jump to the location in the second part where that word was identified as being worthy of becoming a “key word”. The second part is simply a list of AME issues in Issue number order, with summaries of interesting relevant material added. The hyperlink thus takes the reader from the alphabetical listing to where the word appeared in the magazine contents summary. The browser “Back” button can be used to take the reader back to the Index.
Where a word is picked for “key word” status several times, then that word will appear several times in the Index. The reader can click on each of them in turn until he identifies the item of interest. Where there are several instances of a word, they will represent appearances in the magazine contents summary in the order in which they appear (that is Issue number order which is the same as chronological order).
For example, “Dave Harper” appears five times in the Index at the time of writing. These five entries provide links to Issues 33, 34, 38, 94 and 96 in that order.
How was it done?
I wrote out my original Magazine Contents Summary on my word processor. To the raw text, I added a few extras:
(i) I chose a character to be my “comment field delimiter”. The idea here is to choose a character that is unlikely to be needed in the text. In this instance, I chose the tilde “~”. Any writing after a tilde on a line does not find its way into the published file.
(ii) I added some commands to control what became what in the final file. For example, I devised commands with meanings such as “Start here” and “stop here”. I wanted to process for indexing some of what I had written, but I did not want the title or explanatory notes to be indexed.
(iii) I added a marker to show the program where to put the index in the file
(iv) I chose a way of identifying “key words”. In this instance I chose the “\” character to mark the beginning and the end of a “key word”. The “\” does not appear in the final result, but the writing between the flags appears in colour. Thus when I wrote:
P59 \S&A\ Notes on \LED\s and their constant current supplies. Part 2 \Peter Dawes\
..... what the reader sees is:
P59 S&A Notes on LEDs and their constant current supplies. Part 2 Peter Dawes
I then wrote a program in QBASIC to search out the key words, sort them alphabetically and then generate the index. QBASIC is an old fashioned facility, but I make no apologies for still finding it very handy. For those who follow such things, the sorting method used is “bubble sort”. Last time I wrote a sorting routine, it was for my phone numbers list. My good friend Ian O'Brien mucked it up by having a non-alpha character in his name. This time, I set up a surrogate for each key word or phrase, in which I changed all letters to upper case, and deleted all characters which were not letters or numerals. I then sorted on the surrogates, but printed out the original form.
All readers are invited to send me suggestions for additions or changes. Unfortunately, my QBASIC program only works with the file from my particular Word Processor which has been laid out in my particular way, so I cannot place that in the public domain for others to add to. In the case of emails sent to me though, I can copy additions and changes straight from the email to the file.
Please let me know if you find this helpful, and alert me to any gripes or problems.
If you want my email address to plonk in your email software, take this:
plonk it in, then edit all the “y” characters out of it.
(The reason for this round about way of giving you this is that we do not want to place valid email addresses here, as web bots will get them and send me spam.)