Daily Scrum (2014-05-13)

What did I do last time?

Progress has been steady on my little loan servicing program.  I debugged the code that imports data from MLP2 portfolios.  It's now at the point where it typically imports without a hitch.  Eventually I got it to fully import all the template information so now I have templates in the system to try to print.

The system that matches the loan data up to the tags in the templates needs an overhaul, and the statement system as a whole will get a pretty big revision.  I was surprised to see the first draft of the new statement printing dialog during testing.  I wrote it probably more than a year ago and had forgotten that I had been working on it already!  There's a bunch of new options for emailing statements.

Initially, MLP3 will require loan servicers to use their own mail servers.  Typically, if you have internet access, your internet access provider also provides a mail server for you to use along with a few email accounts.  

Once I can ease up on MLP3, I'll devise an elegant solution to provide the email functionality through TrailsWeb for people who don't have access to a mail server.  There are a lot of factors to sending email reliably.  I need to make sure whatever system I create works well for everyone while keeping clear of blacklists and greylists.  In the six or seven years I've run my own mail server, I've had a handful of major service headaches.  Most recently, a customer forwarded me a phishing email to ask if it was a scam - and when I replied, their ISP (who was all too happy to send that same phishing email to my mail server) banned me for sending a phishing email!  You never know what weird things are going to get you blocked, and it changes all the time.

What do I plan to do today?

I roughed in a new set of structures to handle the various ways that tags are converted during printing… tags that just substitute text, tags that format numbers and dates, tags that pop up question dialogs, tags that do more expensive calculations on the fly but only if the tag is actually present in the template, and a few others.

Also, Moneylender 3 has a new template type for printing checks, but it's not going to be much work to add them to the system.  There will be a few places across the program where they'll get used.


The move to NY is less than a week away.  We've been packing and the mess in my office is in a different shape than I'm used to.  ;)  But today's work should go pretty smoothly.


Daily Scrum (2014-05-08)

I know these posts get read by a relatively small number of people, but I want to put it out there now: I need some help with the Metro2 part of Moneylender 3.  If you're using Moneylender 2 and reporting to the credit bureaus, please email me at support@trailsweb.com if you're willing to help me iron out Metro2 functionality in Moneylender 3.  It'll be another four or five weeks until I'm ready to start working on Metro2 support in Moneylender 3, but I want to get things lined up so development can go as efficiently as possible.  Thanks!

What did I do last time?

Yesterday I worked on writing the system to import records from MLP2 portfolios into MLP3.  That system mostly works now. 

Also, as a side effect of developing the import routines, I improved the user feedback of the reindexing process to include a progress bar.  In production, reindexing takes about one third longer than the time it would take to read the whole file.  A portfolio with 600 loans might take one or two minutes to reindex.  In development, reindexing takes about four times longer because of the overhead the debugging environment adds to the partial decryption process. 

What do I hope to do today?

Now that data is importing, I have access to the template records in the new program and can start debugging the statement system.  Additionally, I'll be adding a NumberOfPages setting so users will be able to create templates that are comprised of several pages.  

I still need the import system to split payments from MLP2 into payments and adjustments in MLP3.  I hope to have that written today, also.  I hope to start using some of the more recent real portfolios that I have to do further testing on the loan calculator.  I'll be doing a side-by-side comparison of MLP2's loan balance calculations with MLP3's to make it easier to identify where the calculations are different.


None that I can think of.  The bills are paid, the coffee pot's full, I'm excited to see so much progress on MLP3 after so many years of slowly putting the pieces together.  A recent cluster of sales set a new record for most licenses sold in one day, which is just the icing on the cake.


Daily Scrum (2014-05-07)

What did I do last time?

I did a bunch of work on Additional Fees.  I worked up the form that now allows for fees to be marked as recurring and to set the recurrence schedule.  The creation and management of fees is set up, but it still needs to be tied into the loan calculator properly to do what it's supposed to. 

I also tested and fixed the ability to set a password on a portfolio.  When creating a portfolio you can specify a password to open it.  Once set, you'll never see your data again… unless you enter the password exactly as you set it.  Seems to work very well.  To change the password on an existing portfolio in MLP3 is a lot more code, and that code still needs to be written.

I also started working on importing templates from template files, but quickly switched to importing MLP2 portfolio data since that'll include templates and is a much more important task.  I had written an upgrade system for MLP 2.5, but MLP 2.5 was abandoned in favor of making the leap all the way to MLP3.  Some of that code doesn't convey, but some of it - like choosing which 3rd parties to treat as loan servicing fees and which to treat as escrow charges is still quite useful.  I have the UI set up, and some small parts of the code that actually converts records written, as well as a nerfed copy of MLP2's file portfolio system to allow reading the records from the old portfolio format.

What do I hope to do today?

I hope to get data from MLP2 portfolios to copy into the MLP3 format!!!


We're moving from Pierre, South Dakota to Rochester, New York in a week and a half, so there's probably some packing and other stuff I need to do for that change.  It's a pretty major relocation, and has taken a lot of preparation and money.  The contract negotiation I was in has ended without reaching an agreement.  It's great news for Moneylender users because I'll be working full time on MLP3.  Effective immediately, phone support is available five days per week!! (Except the week of the 19th when I'll be driving to NY)