Daily Log

Happy new year

Today is a cleanup day. I’ve spent some time getting different search engines to index the site, setting up a better spot for my security camera to use its night vision, and running some insulation in the attic.

Daily Log

This blog is live again

It’s been a while since I had a running WordPress installation. I have a number of projects in the pipe that I want to talk about and I figure this blog is a good way to keep me honest.

Setting it up today was pretty easy. At some point I’ll spend some time on the theme but progress is what is important right now.

Daily Log

Organizing my music library

I have a fair amount of music that I’ve acquired over the years and my strategy has always been to just throw it in a folder and forget about it. Living with other people and sharing that collection is similar to the problem software engineers who work alone face when they have to grow a project beyond themselves.

Luckily, I can just use a free and programmatic way to organize my music. MusicBrainz Picard is impressive in its feature set. It organized my music folder without any effort on my part.

I only had to go into the settings to enable moving music and directing the location the music should be moved to and I let its clustering and fingerprinting do all the work.

Daily Log

My new security camera

I spent the day today installing a brand new 4K IP camera from Amcrest. My goal was to have information on who is at the door and a history of what has been going on in front of my home.

I went up in the attic and looked for a way to run some RJ-45 to the front of the house but settled on cutting and crimping some cheap UV resistant CAT-5e around the outside of the house. The area I want to run cable to would mean I would have to go through two double brick walls as my desired location is in an addition to my 1940s home. I settled running along the outside because running the cable in the attic would take way too much time and effort in a crawl space with only sheet rock as support.

I got a cheap switch from TP-Link that is POE to power the IP camera and it is also managed! So far I’ve been impressed. My only regret is that I should have purchased this TL-SG108PE for every project as I can do link aggregation, VLAN tagging, and various other enterprisey features for the low price of 50-60 bucks.


What I learned training for Ironman

This is a post I originally wrote on LinkedIn. I figured I’d move it to this blog.

Did you know Ironman training has many parallels with machine learning?

Nobody just does it. It is a commitment with real work.

In order to train for an event like this you build fatigue and stress through exercise over 2-3 week periods of increasing effort followed by a recovery week. Effort can be measured in time, average heart rate, speed, or power output. This saw-tooth pattern of effort is increased in each 3-4 week block so that the moving average increases over time until you are doing more than an Ironman of work every week. Some of these workouts are hard, some are long, but most are pretty easy. It is surprising how little you have to “push” yourself to improve but it is equally surprising how you feel when these easy efforts all start to add up. Motivation becomes is an inverse function of the effort you have done in the last week.

I was like most people who have never done an endurance race like Ironman and I initially focused on the distance. Ironman really isn’t about the distance, it is about learning how to create, change, and execute a plan that both your mind and your body are capable of finishing through experiencing success and failure. In machine learning, people spend way too much time focusing on the fact that the computers model will solve their problem. Machine learning is setting up a framework in your product for analyzing, collecting, cleaning data, and executing a plan that will ultimately mean your model can intuit what you spent the time to find a calculable outcome.

Trying to be the best means that you wont finish. In both disciplines, you just have to put in the work to finish the race. Sprinting is fun and interesting, but it is more the the slow grinds that enable success. Pushing too hard too quickly will cause you to drop out the race. Most engineers initially attracted to machine learning because they can write a model with someone carefully curated data set and have an improvement. I believe progression through a plan is better than blanket innovation. Going too far too soon can lead to disaster. I’ve seen many engineers want to focus on building models. If you don’t have the data or the infrastructure, your supposed quantum leap innovation in machine learning can’t be applied in the real world. The majority of the work is in collecting and creating a good data set.

Lastly, you will find a lot of success with weak supervision. Reading books, paying a coach, or relying on friends to verify you are on the correct track. Tools like snorkel will get you really far.