One Change, Many Modifications

Introducing a multiple language listing for the Seven Gates newsletter was a relatively easy task, making the necessary modifications for the files and pieces of code that depend on the same files and code that make the multiple language listing possible proved far more daunting.

In the short run, the benefit of a multi-lingual introductory newsletter may prove unworthy of its cost of implementation.  In the long run, however, I cannot help but believe that it was well worth the effort.  In any case, the worst of it is now water under the bridge, and I can at last begin the implementation of Matomo — Grammar Captive’s Google Analytics without Google.


Language Selection

In order to sign up for a Grammar Captive account a user must enter his native tongue.  In his confirmation email is included this language.  When he confirms this information is sent to the database, and the user receives a copy of Seven Gates in his preferred language automatically.  Whereupon he can choose to subscribe, if he has not already, or even unsubscribe, if he changes his mind.

An introductory letter in your native tongue is likely to be more easily digested and encourage subscription or discourage unsubscription.  Once received, advanced users can select the English version with a simple click, if they so prefer.

The multilingual nature of Grammar Captive is an important selling point of the site, and now users will be able to select newsletters in the language of their choice.  This is the newest addition to the Grammar Captive mainpage.

At present there is only one alternative language — namely, Japanese;  this said, the technology is now in place for many more.

When you land on the page look for the word Archives under the heading Regular Updates / Weekly Newsletter in the navigation bar, or alternatively, perform a search in Japanese or English under the heading Search Grammar Captive.

Nearly a week has been lost due to a failed system upgrade, but we are nearly back on track.  Certainly the fundamentals for a mass mailing in multiple languages is now in place, and the long promised counter that replaces Google Analytics has already been installed.  What remains is coordinating the data bases for the mass mailing  and choosing what to count for Grammar Captive’s substitute for Google Analytics — namely, Matomo.



小さな一歩でも、日本人は国語で文法キャプチッブの「Seven Gates」というニューズレターの初版を読めます。取り敢えず、国語初版は第一の版として、英語で書いたレターと一緒に同様のアーカイブに保管されています。アーカイブの第二ページにご覧ください。も少し初版だけではなく、全部の国語で書いたレターは自分のアーカイブに預かられます。


Two Steps Forward, One Step Back

Grammar Captive has produced its first Japanese newsletter.  It is currently listed as Letter No. 1 on Page 2 in the newsletter archive.  In an effort to not to confuse readers, however, the creation of separate archives for different languages is now under way.  This will insure the integrity of the letter numbering, as well as uniformity in the formatting of different languages.

Hopefully, the last of two remaining development tasks before the new counter is initiated and podcast production begins!


What Appears Small, Can Sometimes Be Very Big

While creating the Grammar Captive online search engines an important design flaw in the way many of the site’s forms were created was discovered. Users could submit their data by clicking on the button provided, but they could not submit it by depressing their ENTER/RETURN key.  In fact, when they depressed the key, the page would refresh and their data would vanish.  As many users would be discouraged by this outcome and fail to submit their data, and as many users are surely accustomed to submitting their data by this latter method, a solution had to be found.

After three days of experimentation users can now submit their data with the button or the key.  This success has led, however, to still another task:  fixing the design flaw for all of the other forms — another unwanted, but necessary delay.

A thankful, but weary developer.


Three New Grammar Captive Search Engines

Users are no longer limited by the options provided by Grammar Captive for their selection of information. Users can now query the newsletter, podcast, and question-answer data tables using their own search information!

By way of example go to the Grammar Captive mainpage and click on Newsletters, Podcasts, or Q&A under the heading Search Grammar Captive in the navigation bar Having clicked enter the following italicized words or phrases:

  • Newsletters:  lorem ipsum
  • Podcasts:  podcast
  • Q&A: Frage

and watch what happens.  Please keep in mind that these selections are based on non-information included merely as a surrogate for real information that will be provided in the future.  For the moment, the focus is on the mechanics, not the substance.



Database Preparation

As all of the substantive text related to Grammar Captive newsletters and podcasts is stored in rows and columns of several tables in the Grammar Captive database, the column definitions of these tables must be modified to accommodate natural language full-text search and match operations.  As this modification has now been achieved, I can begin writing the code that receives the user’s search request, matches it against the data contained in the various tables related to his request, and returns it in a user-friendly, readable format.

In the meantime a user interface for a new search engine has been added to the Grammar Captive mainpage.  Look under the heading Search Grammar Captive.  This engine will match the user’s search request with the Seven Gate’s weekly question-answer pairs.

Have a great day!


The Addition of an Onsite Search Engine

What follows is truly exciting for a novice developer with natural political enemies.

Grammar Captive has discovered Matomo (formerly called PIWIK or Kiwi-P spelled backwards).  Matomo is Google Analytics on your desktop.  In other words, the data with which Grammar Captive does its analysis will not become the property of Google, but remain that of Grammar Captive.

What is more, the software that collects and process the data can reside on the user’s  computer, or a third-party host-server of the user’s own choosing.  Alas, Grammar Captive is free from the clutches of “Big Brother”!

Finally, Matomo costs nothing additionally, but the time of installation and set-up. Indeed, rather than reinventing the wheel and creating my own counters for activity on the Grammar Captive site, I will now write script to tell Matomo what it is that I want counted and how I want it analyzed.

This discovery has also resulted in a new task, but one that is fairly easy to implement and will not cause a great amount of additional delay — an onsite search engine.

The reason that I am adding this fourth, pre-production, development task is the important user information that it offers.  Where before users had to select newsletters and podcasts with the alternatives that I provided, they are now free to select Grammar Captive material without constraint.  The ramifications are both grand and immediate, as I will no longer have to second guess what my users want, for they will tell me directly each time they submit a search in the new Grammar Captive newsletters and podcasts search boxes.  Such information is simply too valuable to be without.

If you would like a preview of what is to come, open to the Grammar Captive mainpage and click in the navigation bar under the subheading Search Grammar Captive.


Completed Upgrades

The following upgrades have been completed:

All communication with the Grammar Captive database is now achieved through a single PHP class.  This means that the database settings of all documents that communicate with the database can be changed by changing only one document.  As this document is only visible to the webmaster, the entire site is now more flexible and secure as a result.

There are now 6 different ways to sign up for the Seven Gates newsletter including four on the Grammar Captive main page and two on the Grammar Captive Podcast host page.  All of these avenues for subscription now use the same, secure, backend mechanism for communication with the Grammar Captive database — namely, MySQL prepared statements.

The offer of a free webinar is now independent of the Grammar Captive webinar series.  The free webinar will become a regularly scheduled webinar available to new and potential Grammar Captive users to ask questions and become acquainted with Grammar Captive’s host.  Sign-up for the webinar is now accessible via the Grammar Captive main page under the heading Introduction in the main page navigation bar.

In order to remove the bubbling effect when doing a search in the Concept and Form and Use podcast archives, the hover mechanism was changed to a click mechanism.  The effect is slightly less dynamic, but much more stable.

The final two plus one remaining development projects are:

  1. the completion of the PHP class for counting user activity in regard to newsletter, podcast, and page hits,
  2. modification of the database to account for different language versions of the Seven Gates newsletter, and
  3. tweeking the PHP mass mailer to handle mass mail.  Up until now it has only managed one email or newsletter at a time.

Surely there will be other important changes down the line, but not until after podcast production has been set into motion — say, in two to three weeks?

By the way, the Grammar Captive website ( has now received just under 410,000 successful page requests since its inception in March 2017 for an average daily request rate of more than 1,750 requests.  This is astounding in light of the fact that not a single podcast has yet to be published.

Where there is a need that I can satisfy, there is hope.