Daily Scrum (2013-09-20)

What did I do last time?

It’s hard to tell…  I’ve been working nights for the last three weeks upgrading, securing, and monitoring a lot of different systems.  Gmail still has a block on my mail server, which has meant an increased number of customer inquiries.  There has been some software development, but it hasn’t been significant.

What I hope to do today…

I have a few changes to post to customer websites and then I’d like to get back into MLP3 development.  It feels like it’s been forever since I’ve been able to work on Moneylender.  So, maybe today I’ll work through a few more of the program’s dialogs, upgrading to the new file system and put another dent in the cone on the main window.  Rewriting the loan calculators is a looming task that promises to be both interesting and challenging – but I won’t be touching that today.  I’ve been drinking twice the normal amount of coffee for the last few weeks to power through the 13 hour work days and my brain is in sub-par condition. 


Nope.  Not going to worry about anything.  Some HTML, a little VB/C#, a handful of server configuration, and a few emails.  No big deals, nothing too difficult today.

I learned how to write Java/Android apps over the last two weeks.  It wasn’t too tough since I’m pretty competent in C# and Javascript.  My very first app: a flashlight that turns the screen white.  My second app: an app that downloads State of South Dakota well locations to a native SQLite database, then displays them on a dynamic map with a cached imagery layer and allows agents in the field to collect well quality survey data and render those surveys in a format that feeds directly into the Department of Environment and Natural Resources’ existing infrastructure.

After learning something new at my State job, I was looking forward to going back to C# and ArcObjects in ASP.NET (technologies I’m very comfortable in) to give my brain a break from all the new material.  I was putting in two or three extra hours each night dealing with the mail server problems, and I was already feeling pretty burned out at the beginning of this week.  Instead, I’ve spent this last week learning about the changes ESRI made to how ArcServer works from version 10.0 to 10.2.  I have to rewrite many of the systems I’ve built over the last two years.  So I spent this week learning another new trick, and now I’m exhausted.

Having been in software for over 20 years, I know the thing I learn today will be obsolete in five years.  I consider myself a bit of a renaissance programmer because I like to know as much as I can about all the technologies out there and how it works.  I can program complex apps for Windows, the Web, iOS, Android, Windows Mobile, Arduino, even Minecraft’s ComputerCraft mod.  I know many programming languages and the technologies they enable.  Trying to list the protocols, platforms and technologies I know and love would become a voluminous list in a hurry.  But it isn’t easy to stay abreast of the trends in technology, and the last three weeks have been taxing.

So, the moral of the story here is that our civilization is advancing awesomely and it’s a thrill to ride the wave.  No roadblocks today.


Daily Scrum (2013-09-13)

What have I done since last time?

It's been one very challenging week for me. After those email accounts were compromised two weeks ago, I’ve been working hard to really lock down the mail server. Gmail still has us banned but hopefully that will have lifted by this time next week. Spam is at an all-time low for many of TrailsWeb’s users thanks to the rewrites I did on the spam filter.

No progress on Moneylender Professional since the last daily scrum, and it looks like the email snafu has also gotten MLP (hosted on the same IP as the mail server) booted from Google’s search results. Getting to Google’s front page was the result of years of hard work and persistent content creation – dashed out in an instant by a handful of spammers. We haven’t sold a copy of the software since the mail server was compromised.

What do I plan to do today?

Today I’ll be filing more paperwork, paying bills, registering with various government entities and creating bank accounts for TrailsWeb, myself, and the brand-new Whitman Technological Corporation.

I’ll also be writing a windows service that scans a variety of server logs and reconfigures the firewall to block IP addresses if malicious traffic is detected. It appears I can’t afford to be without something like this to keep everything running properly, and neither can the other businesses that rely on my hosting services.

I’ll also be “turning the screws” on my spam filter. Right now, it’s doing a fantastic job and it’s set to only block mail if the combined subject and message body spam probabilities are 98% or higher. I have some good history built up in the last week that I can use to determine a lower setting, blocking more spam without blocking good mail.

I doubt I’ll get more than that done today. If I can, I’ll go back to making revisions to the code for Moneylender’s main window.

Any roadblocks that stand in my way?

The huge downgrade for Moneylender’s placement on Google is disheartening. From a technical standpoint, there aren’t many hurdles. All the code for firewall management has been tested experimentally. Now it’s just a question of putting it into a practical application.


Daily Scrum (2013-09-06)

What I did last time…

I ended up taking Labor Day off from the State of South Dakota and worked on Moneylender Professional 3, instead.  I made some pretty good headway toward getting the program to compile under the new file system.  Specifically: finished revising the Borrower Wizard, Lender Wizard, Multilender Association dialog, Loan Wizard, Import Payments Wizard, Third Party Wizard and Loan from Template Wizard; rewrote the code that reads and writes images for the borrower and lender, and made several edits to the program’s main window.  A lot of code was updated.

What I hope to do today…

My mail server has been plagued with problems lately.  Hackers hijacked two accounts and flooded my server with spam for about 16 hours.  Then the spam filter died because it couldn’t keep up with all the new examples of spam to train on anymore.  Without a spam filter, regular amounts of spam were flowing through the server.  Some of my customers have their email forwarded to gmail, yahoo and hotmail accounts.  With regular levels of spam being redirected to these other mail servers, my server was blocked by those service providers.  I managed to cobble a rewrite together in the hours before and after my 10 hour shifts at the State, but I’m still on the no-fly list for at least gmail.

So, what I’m doing today is beefing up my spam filter, including a revision to the networking components.  Since those networking components are the same ones that will drive MLP3’s new encrypted network protocol, it’s actually a good thing for MLP3.  All those videos and whitepapers on machine learning algorithms and probability statistics has finally paid off – I finally understand how to get a numerically accurate percent likelihood that a message is spam, based on previous exposure to spam and ham.  My new Bayesian classifier should be significantly better than the old one.

Actually, I already spent most of the day tweaking the spam filter by the time I’m actually posting this.  At this point I just need to wrap the server in a windows service and install it on the server again.

Any roadblocks?

Yeah, all the spammers bombarding my server 24/7 and all the hackers trolling every Barnes and Noble WiFi scraping credentials.  Grrr…


Daily Scrum (2013-09-02)

It's a national holiday, so it's a bonus day to work at TrailsWeb.

What I did on Friday?

Formed a new corporation, obtained an EIN, and registered multiple domain names.  I wrote a few pages into a client's site that allow advertising information to be submitted.

What do I plan to do today?

I'm going to spend today working on Moneylender Professional 3.0.  I'd like to finish up the image code for borrowers and then finish the borrower wizard.  Because the lender wizard is almost the same, I'd like to rewrite that, copying the image code onto the lender.  If there's time, I'd like to start the loan wizard.


None that I can tell.  Happy Labor Day!