Friday, October 19, 2018

Introduction of Basical Molecule Design and Basic Pathway Search Tutorials, Undo/Redo feature, and create molecule by IUPAC name feature

Release 2.11.0

This update was directly inspired by a comment on the previous post:

Hi, is there any intro-level text or blog post you recommend before using your tool?

Great question! I think it was indeed high time some sort of introductory text or tutorial was, for lack of better word, introduced. I played with a few options: creating a blog post detailing how to get started, creating some sort of slide based demonstration, and finally implementing an interactive tutorial. I still might add the first two options, but I was most excited about the interactive tutorial; not only would it provide the most hands on way to introduce the tool to a new user, it would also serve as a great way to clean up/test the interface while designing the tutorial. Which in fact it did quite a bit.

The three goals for the first round of tutorials were: 
  1. Get the user able to create/design a simple molecule via the interface by physically adding and attaching the atoms of the molecule. In this case, ethanol (ethan-1-ol) was chosen as a good example molecule because it is simple in structure, a very well known molecule, and very readily reactive. 
  2. Get the user able to use the create molecule by IUPAC name feature. This feature involves the user typing the IUPAC (or common) molecule name in the appropriate field, then viewing the resulting molecule in the interface. Essentially, this is the opposite of the first goal: going from the IUPAC name to the molecule structure rather than vice versa. Ethanal (commonly acetaldehyde) was chosen as it also has a simple structure and can be formed via an oxidation of ethanol.
  3. Get the user able to perform a simple pathway search between two molecules. In this case, ethanol and ethanal, logically chosen because they were created in the first two steps.
The second goal actually required adding the feature of creating a molecule by IUPAC name to the main molecule workspace page. This feature was already on the home/splash page in the first section, so it just needed to be added to the molecule workspace page as well. The user can now click on the molecule name, enter a new molecule name, press enter, and see the new molecule created in the workspace.

After the create molecule by IUPAC name feature was finished, it became clear during the tutorial implementation process that having undo functionality would be VERY helpful. Namely to provide step by step instructions on successfully completing each tutorial, it would be necessary to undo a user's step if it was incorrect. That is, for the first goal of creating ethanol, if the user added a Chlorine atom to ethane, for example, we would want to undo the addition of Chlorine and instead instruct the user to add an Oxygen/Hydroxyl group. Undo/redo functionality had been on the plate for a while now, so it seemed like a perfect time to implement it. For now, the maximum amount of undos/redos allowed was set to five, though this may be changed in the future.

With both the undo/redo feature and the create molecule by IUPAC name feature implemented, it was possible to finish the tutorials in mind to accomplish the three goals listed above. The first two goals were accomplished with the Basic Molecule Design and Creation tutorial. The third goal was accomplished with the Basic Pathway Search tutorial.

Standards: No significant new standards were introduced. Per normal, all existing IUPAC naming rules were followed.

Controls: The controls for the undo/redo functionality should be straightforward. The icons at the top control bar of the workspace are now enabled to allow the user to click undo and redo when desired. In the case of an undo or a redo not being possible/allowed, that particular icon will be disabled.

The user can utilize the create molecule by IUPAC name feature as follows: 1) Click on the molecule name or the text "Click to enter molecule name" if one the workspace is currently blank. 2) Enter the IUPAC or common name of the desired molecule. (Note: this feature does not yet support EVERY possible molecule, but that indeed is the goal eventually.) 3) Click "enter".

Beginning the two tutorials that were added should be straightforward. The user can either click the "Open Tutorials" button in the Instructions panel, or click on one of the tutorial links on the Help page.

Future Considerations: The two added tutorials seem to be enough to get the user started. However, of course more tutorials for advanced molecule creation/design and pathway searches need to be added. Also, we MAY increase the possible number of undo steps. Finally, the create molecule by IUPAC name feature will eventually be improved to add a certain level of tolerance. That is, we would expect the user entering "1, 3-dichlorobutane" to result in the same molecule as "1,3-dichlorobutane". That extra space should be considered a tolerable discrepancy.

I greatly appreciate the user's comment and absolutely welcome more! Please go ahead and comment!


OChemdle

In light of the recent popularity of games such as Wordle and its offshoots (Worldle, Octordle, Semantle, Redactle, etc), a conversation beg...