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

Interview coding challenge failure…

Today I went through a standard coding challenge: “Create a minesweeper board with variable rows, columns, and bombs”. The challenge was for 20 minutes, spent 31 minutes, and cannot really figure out why it could never generate.

After my previous posting of “omg my server didn’t have virtual memory” I decided to fiddle it out. With my own fingers this took 12 minutes tops, but the amount of regret I feel is priceless.

Read More

Server Problems, 2025…

After Gettin’ hacked and rebuilding with a cheaper server I started encountering random slowness and problems. I always seemed to have random CPU spikes here and there but the console at digitalocean didn’t really give me much to work with.

Today I tried to install git so I can get some repos cloned down to demo and the process kept getting Killed. After some simple googling and basic cross referencing of the system I’m leasing I learned the stupidest thing in the world.

Read More