Saturday, March 19, 2016

ACBOOK 7.0

This post serves as a changelog of my MATLAB program for personal ‘Accounting’ purposes: AcBook. Why does it require a separate post, you ask? Because this major version upgrade (5.0 → 7.0) has truck loads of new features, enhancements, updates and behind-the-GUI optimizations. To capture all of that on this page would have been a nightmare and anyway where else am I supposed to show off my creation if not on my own blog, huh? So, let’s get started!

Even ‘before’ the start, there are 2 small but important noticeable changes:

  • A ‘waitbar’ displaying the progress in setting up the GUI.
  • A ‘startup’ folder selection dialog box (if needed) for storing login info, data files, etc.
Waitbar

And then when the GUI is finally on the screen, there’s the major new feature:

  • Exchange Rates Calculator. It has been added below the Login panel. The data is downloaded from here but only at the start of the program. [This data is current at the order of past one hour. This is not supposed to compete with the data on search engines or professional websites that updates in the order of seconds.]
ERC Panel

After successful login (a dumb bug related to Log Off has been fixed), you're greeted with a familiar layout:

Main Screen

Well, I say familiar… Smile First, notice a few ‘minor’ GUI changes:

  • The user ID is displayed on the title bar.
  • Background colour of the panel titles is now slightly darker to differentiate it from the lighter shade of the table rows.
  • The panel headers get new & simpler button icons on the right. [Display panel: “Undock / Dock”; Balance Summary panel: “Minimize / Restore” & “Show / Hide Summary”.]
  • The text descriptions for ‘Particulars’ & ‘Amount’ no longer take extra space as they are shown in the fields themselves (which sadly means, for now, tabbing doesn’t work).
  • All the buttons are a bit more colourful (should have noticed that already).
  • Two of the four buttons (Modify & Delete) have been moved to the Display panel.
  • The buttons scale gracefully as the height remains fixed so that the text is never cropped. Actually, the text doesn’t scale with resizing, including the panel titles, too. (Anything for texts is a lose-lose situation but this behaviour is at least consistent with the ‘non-scaling’ buttons.)

Second, I tell you a secret:

  • All ‘numeric’ data fields accept valid arithmetic expressions like 669+241, 1/66.38, etc. (Try it out for yourself because there was a bug in earlier versions, where even though this was mentioned to be a feature, it was not actually implemented… WTH indeed!)

Next, let’s talk about the elephant in the room or another major new feature:

  • Groups. The manifestation of this feature is visible in the Data panel as a drop-down menu and as a new menu in the Menu bar. This feature, simply put, allows tagging / categorizing your data (a highly requested feature by a tester who tested AcBook for a few minutes or so ages ago). A few built-in groups are available and more can obviously be added. As expected, the Group menu is very similar to the Category menu.
  • Most of the work done for this feature is behind-the-GUI and deals with handling old files that don’t have groups associated with the Data. Most of the data will be assigned to the ‘protected’ Miscellaneous group but few like Food or Rent will be assigned properly to Living or Housing Expenses group. But since no one other than me has ‘old’ files, who cares about this.
  • To facilitate changing groups, a context (right-click) menu has now been activated in the Display panel. It allows changing all three defining properties of the Data.

Talking about the menu bar, let’s dive into it:

  • The Menu items have been shuffled / renamed / added (Uninstall has been removed as it is deemed to be no longer necessary; just use the Control Panel / Settings App). Check the updated & comprehensive Manual (via Help menu) for these details.
  • Category & Group deletions are confirmed now.
  • The Reorder option for Categories (Groups can’t be reordered; they are ‘sorted’ internally) gets a place in the toolbar too for easy access. Why? Because I want to show off the colourful ‘Drag & Drop’ implementation (including the sorting option) compared to the dreaded numbering option of previous versions!
Old vs. New 'Reorder' option

As an aside, when asked about the above photo, Cortana gives a hilarious answer! She suggests it is “Wood Camaro”… Do you know what that is? I didn’t know it till then either so I urge you to ask her about it! If you’re thinking how to do that, here’s a step-by-step guide: Open this post in Edge, then right-click on the image above and click ‘Ask Cortana’. It’s that simple!

Ok, back to menu items, some new ones now:

  • A Graphical Analysis tool has been added, which shows a 3D Pie Chart of the Expenditure (or Earning) data in a particular Category split across the Groups.
  • If some data in the Display panel looks fishy to you, you may check on it by ‘checking’ this new tool: Show Raw Data. (Get familiar with it on your own.) This place also allows you to quickly edit the Names of Categories & Groups and Particulars for the Data.

Last but not the least:

  • All errors (hopefully) will be ‘caught’ (instead of being notified by an annoying ‘ding’ sound) and all the gory details displayed like this (which makes debugging that much simpler, if you share the screenshot with me, of course!):
Error Caught!

Finally, a lot of behind-the-GUI bugs have been squashed but it is highly likely that new ones may have been introduced in spite of / despite / due to that, especially with the introduction of the new ‘Group’ functionality. This is exactly what the above error-catching feature is expected to tackle! Hoping for your support in that.

Thanks for reading this changelog, now go download the program and start accounting (for your shi*s).

AcBook 7.0