Mechanical Music Digest  Archives
You Are Not Logged In Login/Get New Account
Please Log In. Accounts are free!
Logged In users are granted additional features including a more current version of the Archives and a simplified process for submitting articles.
Home Archives Calendar Gallery Store Links Info
MMD > Archives > March 2021 > 2021.03.29 > 01Prev  Next


Behind the Scenes at the MMD
By Jody Kravitz

I retired from my job as a software engineer at the end of October.  I
had been thinking about retiring for a couple of years.  I'd put it off
because the company was great to work for, the work was interesting, and
my coworkers were great to work with.  As it turns out, the company
decided to offer many of its "old timers" an opportunity to leave
voluntarily in exchange for a pleasant package of benefits. The timing
was right, so I accepted the offer.

Retirement has given me an opportunity to work on a bunch of deferred
personal projects such as maintenance on my home and catching up with
old friends that I haven't talked to in ages.  I've started learning how
to do 3d modeling and printing. Now, for the first time I can work on
MMD software development as much as I want to.  There are a number of
MMD items that have been on the back burner for a long time. The truth
is that I'm probably busier now than when I was working full time.

On the MMD "to do" list, the first item was to migrate the MMD to a new
dedicated server at our hosting site in St. Louis.  This task is fully
completed.   The new server is running MUCH more modern operating system
software. The age 'signature' of the old software caused some vendor's
anti-malware software to flag our server as potentially vulnerable to
certain kinds of malware attacks.  While we monitored the server and
believed that there was never a problem, this produced a "false positive"
that caused some MMD subscriber's anti-malware software to not let the
user connect to our website at all.  While there was never an infection,
the migration to the new server software should cause this erroneous
blockage to stop.  The new server software should allow us to stay
current on latest security patches for 5+ years after which we'll probably
be migrating again.  

We've also improved the way that the MMD server sends email.  Currently
the only email messages the server sends are the messages related to
creating and maintaining accounts on the MMD server.   In the past we
also, of course, sent out the daily MMD mailings directly from our server.
Issues with email reliability led us to hire an outside service to send
the emails.  This outside service improved delivery to some users while
introducing random "unsubscribes" via "false positive" bounces generated
by various subscriber's ISPs.  The improvement we've made is that we now
cryptographically sign the emails we send to demonstrate/prove that they
aren't forged by a 3rd party.  We believe that this will improve delivery
reliability to be better than that of our hired mailing service.  SOMEDAY
we hope to move the daily mailings back onto our server.  This will require
adding code that will CORRECTLY detect bounces from deactivated email
accounts without accidentally unsubscribing people who have a full mailbox,
etc.  There's a lot of work left to do for this, but we're hopeful.
There are actually about 3,000 people subscribed to the MMD.  Only about
2300 of those people get their daily Digest mailed to them because our
mailing service isn't certain those other 700 people want the MMD.   We
will, at some point, reach out to the people that are involuntarily
unsubscribed to see if they might still want to receive the MMD.  We
will do this slowly and cautiously as we don't want our inquiry to be
seen as SPAM if those folks really did want to be unsubscribed.

The inbound email which Robbie edits into the daily Digest comes from
two origins.  One is from the email sent to the 'rolls-1701" email
account.  The other is from messages submitted through the MMD Contact
Form on the website.  There is a program that Robbie runs once or twice
a day that collects up the emails and Contact Form messages and generates
a "proto" Digest.  We have been doing this in an automated way since the
late 1990s.   This program reduces Robbie's workload but isn't very smart
about attachments which is why we added the ability to upload attachments
to the Contact Form.  This program also isn't very smart about characters
outside of the standard ASCII character set.  Technically, it supports
the ISO-8859-1 character set with some Microsoft CP-1252 extensions.
This is anachronistic and makes it impossible to correctly handle
characters from some European languages, and many special symbols get
garbled.  Never mind handling any special characters from countries on
other continents.   I'm modernizing the "tool chain" to support UTF-8
encoded Unicode which, in theory, would allow us to handle virtually any
inbound characters from any language.  Please don't bombard Robbie with
emoji's as I expect him to maintain the look and feel of the MMD, but we
do want to know if special characters or letters from other alphabets are
not showing up correctly in the MMD or on the website.

The program that collects the inbound mail for Robbie has also been
improved to handle attachments. In theory, you should be able to send
email to the "rolls-1701" account with attachments and not have them
disappear anymore.  If you do submit articles via email, please make it
clear that the mail and attachments are intended for publication.  The
contact form has a checkbox to indicate that the message is for
publication.  There's no way for us to remind people submitting an
article via email that we'd like to know.

I'm also working on modernizing the website.  While the web server
natively supports UTF-8 encoded Unicode, the Archives section of the
MMD website is generated by a program that Bob Fitterman wrote for us
in 1997.   Bob did an AMAZING job with that program and it has stood
the test of time.  It reads in the Daily Digests, breaks the Digest back
up into its constituent articles and stores them in an SQL database.
The database is queried to generate the various pages of the MMD Archives.
This is still a clever and sound way to do this.  However, the program
is written in VBA (Visual Basic for Access) and only supports ISO-8859-1
and the CP-1252 extensions.  So now, even though we can receive and send
email messages with a more diverse character set than ISO-8859-1, the MMD
Archives are limited by the limitations of VBA and Microsoft Access.
So, I'm in the process of rewriting the website's Archives generation in
a modern programming language called Python.  Bob has been a big help
and mentor to this project.  He's joked that "no program should be allowed
to live as long as his 1997 Access program lived!"  My hat's off to Bob,
as the program lasted 23 years and has needed only a couple of minor
fixes in that time!

So, for the next few months you'll be seeing some improvements rolled
out.  You may also see bugs.  If you do, please report them.  If your
Digest is late, you'll know I'm having some issue with the toolchain
that prepares or sends the Digest out.  Robbie's very reliable about
getting his part done on time.   I'll be trying to get my half working
smoothly too.

Thank you for your patience, your interest in the MMD, and for your
financial support. (It is almost time for the Spring Fundraising Drive...)

Jody 


(Message sent Wed 31 Mar 2021, 15:42:03 GMT, from time zone GMT-0700.)

Key Words in Subject:  Behind, MMD, Scenes

Home    Archives    Calendar    Gallery    Store    Links    Info   


Enter text below to search the MMD Website with Google



CONTACT FORM: Click HERE to write to the editor, or to post a message about Mechanical Musical Instruments to the MMD

Unless otherwise noted, all opinions are those of the individual authors and may not represent those of the editors. Compilation copyright 1995-2024 by Jody Kravitz.

Please read our Republication Policy before copying information from or creating links to this web site.

Click HERE to contact the webmaster regarding problems with the website.

Please support publication of the MMD by donating online

Please Support Publication of the MMD with your Generous Donation

Pay via PayPal

No PayPal account required

                                     
Translate This Page