Graduation Embedded Thumbnails

Graduation is an amazing accomplishment, and getting quality photos is also another accomplishment.

This year our daughter walked the stage and the school hired a studio to take the Diploma-Holding photos. Today they provided us a link to their pixieset.com shop to view those photos.

These are great photos, and as much as we would like both of them at $27.00 per photo we just cannot afford it. They even went the extra distance of overlaying their advertising/copyright as well as adding in copyright and tag exif metadata within each photo to hammer it home that it’s their property.

…except they forgot one tiny thing about their Canon EOS R5 camera…

Read More

Learning python

Part of learning a new programming language when you already know a couple is getting deep into the nitty gritty of it. With Python being the new BASIC I decided to start with something, well, basic.

I remember “back in the good old days” when there was a goofy standard of “web-safe colors”. Specifically there were 216 defined colors, so I decided to start by writing a program to take an image and covert it as if it was presentable in the late 1990s.

Read More

It came down to a Capital T…

I had an opportunity to take a coding challenge from Dorsia with very strict rules:

  • No AI
  • No googling for info
  • Use your own code editor
  • Share your screen and video

Everything started perfectly. I was able to get the initial tests functional and things sailed very well. Then I had to write an exclusion routine and test cases for that. This is where the wall started to fall in…

I spent over 40 minutes on a problem I couldn’t diagnose, which left the remainder of the challenge with minor doubts. After getting up and walking around things magically fell into place and it came down to the letter “T” that was sabotaging me, as well as my code editor.

Read More

dovecot – out of the box setup

Trying to learn a new programming language is a daunting task. My process is to take programs that I’ve written before and rewrite them in the target language of choice.

I’ve got a PHP program that interacts with my IMAP server (smart-imap), reads all the messages in the Inbox, takes the localpart of the email address, creates a folder and moves that email into that folder. If the localpart is part of a pre-determined list of email addresses that have been sold off for Spam it’ll move it to the SPAM folder. If there are no localparts that match the domain name of the server then it drops it into an UNSORTED folder.

Today’s language of choice is Python, specifically 3.9.21. To do this entire feat without breaking things I need an IMAP server, and dovecot 2.3.16 is going to be the death of me.

Read More