After months of using MX Guarddog to filter spam coming to my public email (as detailed in my prior post Using Posteo with a Custom Domain), I had to find another service. While MX Guarddog was essentially free, it was ineffective. I was still receiving (and reporting) multiple spam emails in my inbox (curiously they mostly came on Monday mornings, I guess spammers have schedules too). I tried to work with support, but even after “adjusting” my filters, there was just too much spam.
Probably the best VPN out there is Mullvad. It is incredibly fast, reasonably priced, completely private, and supports the new WireGuard VPN protocol. Update A lot has changed since this post was originally written, and for the better. For one, the WireGuard Android App now supports user mode, and WireGuard has similar support for macOS, OpenWRT/EdgeOS, OpenBSD/FreeBSD, and of course all the Linuxes. What this means is you can use the app on Android without root and without a custom kernel.
So /r/privacy pointed me to an awesome tool that taught me about fancy new privacy (and security) headers! I actually scored quite well when I first ran the analysis (0 cookies, 0 third-party requests, and 0 third-parties contacted), but improved my results by adding this to my Nginx configuration: add_header Referrer-Policy no-referrer; add_header X-Content-Type-Options nosniff; add_header X-Frame-Options SAMEORIGIN; add_header X-XSS-Protection "1; mode=block"; The “no-referrer” Referrer-Policy instructs the users’ browser not to send referrer headers for any linked clicked from the site.
Recently I have been taking back control over my data. One of the biggest jumps I made was to ditch Gmail in favor of a privacy-oriented email provider, Posteo. Of all the email providers suggested by PrivacyTools.io, I chose Posteo because of their commitment to sustainability, transparency, and self-sufficiency. They support full encryption of all user data, and yet do so in a way that supports the standard IMAP, CalDAV, and CardDAV protocols for easy syncing (specifically I use DAVdroid to sync to my phone).
A few weeks ago I attended the conference Reflections|Projections at the University of Illinois at Urbana-Champaign. It’s a student-run conference that’s been a regular occurrence for around twenty years, which is especially impressive considering that students are constantly graduating! I gave a talk to a roomful of students entitled “Open Source and Us” (forgive me, my title skills are lacking), where I shared my story of working in open source as a student, on through internships, and into the industry.
On the Paradox of Tolerance, from The Open Society and Its Enemies, by Karl Popper: Less well known is the paradox of tolerance: Unlimited tolerance must lead to the disappearance of tolerance. If we extend unlimited tolerance even to those who are intolerant, if we are not prepared to defend a tolerant society against the onslaught of the intolerant, then the tolerant will be destroyed, and tolerance with them.—In this formulation, I do not imply, for instance, that we should always suppress the utterance of intolerant philosophies; as long as we can counter them by rational argument and keep them in check by public opinion, suppression would certainly be most unwise.
This is an ancient post that I started in 2015. The actual content is in this Sway presentation, but at this point, you need some context. During my senior year of college I participated in an experimental (and amazing) class, Evolving Games: CS 404 / Biol 404 by Dr. Terry Soule and Dr. Barrie Robison. Ten computer science students partnered with ten biology students, and we wrote an evolutionary tower defense game, EvolvedTD, where the creeps evolve in response to the player’s tactics.
Update: I no longer use nor recommend this setup, see my new setup. I previously hosted my own email server, but found that I don’t particularly like administering one. But I still use my public fronting email to send and receive email, as a custom domain for Gmail. My solution to this utilizes MailGun’s free tier. I won’t cover how I setup the forwarding, as there are many guides. This solution works quite well, except when an email you sent (or was sent to you) fails to be delivered.
I have been pretty busy over the past year. After starting work as a software engineer with the Microsoft Open Source Technology Center June 1, 2016, my life has been a non-stop drive to put a cross-platform port of PowerShell on GitHub. Today that happened: GitHub (Check out the contributors graph) Release Video (I’m in this) Official Announcement I would like to especially thank my bosses, John Fawcett and Li Li, my mentors Peter Honeder, Paul Allen, Garrett Serack, and James Truher, and of course, many fellow coworkers: Alex Jordan, George Fleming, Sergei Vorobev, Joey Aiello, Raghu Shantha, Travis Plunk, Jason Shirk, Dongbo Wang, David Wilson, Steve Lee, Francisco Gamino, Mike Richmond, Angel Calvo, Jeff Coffler, John Kordich, Jan Kotas, Stephen Toub, Jan Vorlicek, among so many others that I’m certain I cannot name them all.
Suppose you just goofed and think you lost some changes. Here’s a step-by-step guide in order to maximize their chance of being recovered. If you’re not already there, go to your Git repository’s directory in your favorite shell, and we’ll commence: git status to see what Git says. If you’re unfamilar with Git, do this after each step. git diff to see if your changes aren’t actually lost at all.