The Grand Rapids Popcorn Company announced a contest recently via the Awesome Mitten Instagram account, and I decided to try to recreate Patrick Stewart’s Twitter profile picture, using popcorn instead of balls in a ball pit. I think it turned out pretty well.
A few months ago I started keeping a commonplace book. Well, sort of. A long time ago, I started keeping a commonplace book, I just didn’t know that’s what it was called. Ryan Holiday has done a much better job than I could ever do of explaining what a commonplace book is and why it’s worth keeping. The commonplace book itself isn’t necessarily the point of this post, but I’m doing (what I think are) some interesting things with mine that I thought were worth mentioning. But if you have no idea what I’m talking about, you should stop reading this now, and come back to it after reading the link above.
I set a goal for myself at the beginning of 2014 to contribute to an open source project I didn’t start, and get my contribution accepted by the developers. As the year went on, I cataloged it in a special section of my blog. Now that the year is over, I’m moving it to a regular post. I’m pretty sure that this is not up to date, since I’ve barely touched my blog in about a year. For example I know I contributed to the Selenium project, and I think that was still in 2014, but it’s not listed anywhere here. At any rate, aside from this paragraph, I moved the thing whole sale from its own page into a regular blog entry.
I guess I wasn’t done with Postfix after all. After I wrapped up lasts night’s post, I got an email from someone, and tried to reply. Only to get a message that the email failed to send.
Updates: It turns out the relayhost setting below didn’t work for me. Here’s what I did instead.
If you’ve read any of my prvious posts about this (previous posts listed here), you’ll know they pretty much all included a “Next Steps” section. I have finally finished everything on the lists, so unless I discover I’ve done something wrong, or I think of something else this needs, I should be done with this project. Here’s what was left, which I’ll cover in this post:
Last week, I converted my blog from WordPress to Hyde.
Blogs are fairly straight-forward bits of software. Because of this, and the fact that everyone and their mother has a blog, building a blogging platform has become a sort of Hello World for showing off new programming languages or frameworks. Static site generators are starting to become more popular, too, because Amazon has made serving static content stupid-cheap with S3. The first big time static blog generator was Jekyll (at least that I’m aware of), which is built using Ruby on Rails. Not to be outdone, someone in the Python community made Hyde.
Since I moved my mail to my own mail server running on a Raspberry Pi in my apartment, I’ve been seeing weird delays in getting email. Most notably from Gmail accounts. I finally got to the bottom of what was happening. …Sort of. To tell you the truth, I found a couple of problems, and fixed them both, and only then tested sending from gmail. I’m pretty sure the last thing I fixed isn’t relevant, but who knows. This stuff probably isn’t worth a new post. But on the off chance that someone has actually been following these guides, I want to make sure they aren’t having the same problem. Plus, as I mentioned before, I’m documenting this as much for myself as anyone else. If something happens to the Pi and I need to do this all over again, I want a guide.
Calendar Syncing: Radicale
After I got a mail server running on my Raspberry Pi, I tried to find a way to sync my calendar and contacts to my phone, and computer. I was using Own Cloud, which handles contacts and calendar well. Unfortunately, Own Cloud was built for file syncing (like a self-hosted Dropbox), except it’s REALLY bad at it. It didn’t make sense to use it for the two add-on things I needed, since I couldn’t trust it to serve its primary purpose. I went looking for alternatives, and found Radicale.
Updates: @seanbonner has a great post on privacy vs security, which really gets at the heart of what I was trying to say at the end of this post, but in a much more easy to understand way. You should really check it out.
I also blogged about the technical details of how I build the mail server. That post is here.
For a long time, I’ve used Google for mail, calendar, and contact storing and syncing. I also used it for RSS. When Google announced they were shutting down Google Reader, I sort of panicked and started moving all of my various web stuffs off of free services. I moved my Tumblr and Blogger blogs to Hostgator WordPress instances, tried multiple new RSS readers, and tried replacing Dropbox, Google Calendar, and Google Contacts with Owncloud. Most importantly, I moved 6 years of email off of Gmail and into Hostgator’s mail servers.
Now that I’ve ranted about why I decided to build my own mail server, it’s time to explain how.
In order to build my own mail server, I decided to use Postfix and Dovecot on a Raspberry Pi. I chose these three very specifically. Postfix and Dovecot are the go-to for building a mail server, and Raspberry Pis have been the home server of choice ever since they were announced. By selecting these, I was certain I would be able to get the most community support, and I would be able to find the most comprehensive guides on how to set everything up.