About

About Me

My name is Trevor Wilson. I am a software developer and independent contractor residing in Edmonton Alberta, Canada. I have been developing software professionally since 2001 and graduated from the University of Alberta in 2005 with a major mathematics and minor in computing science. One thing that I love about being an independent contractor, is that over the years I have worked for lots of different companies which has allowed me to contribute to a large variety of exciting projects written in many different languages. I have had the pleasure of working with so many wonderful teams who’s members have taught me a great deal.

About This Blog

This blog is not new. Previously it was hosted by WordPress, but then I discovered the wonderful world of static site generators such as Jekyll and Hugo. I loved the idea of blogging directly in Emacs org-mode and managing my blog in GitHub. I chose Hugo over Jekyll only because with Hugo I did not need to install Ruby, which I have no other need for at the moment. I considered migrating my old blog from WordPress to Hugo, but in the end I decided to just start fresh.

I intend to blog about Emacs, Linux, programming, infosec, robotics, side projects and teaching my children to code :-)

My Interests

  • editor: Emacs
  • Linux distro: Gentoo
  • windows manager: exwm
  • file system: Zfs on Linux
  • language: this is a tough one. I love so many languages :-). Since most of my professional life is immersed in .Net C# I will probably focus on exploring python, lisp, C/C++, Go, Rust and assembly throughout this blog
  • dev machine: Alienware 17 R4

Blogs I enjoy reading

My public key

My public key is available on hkp://keys.gnupg.net. You may also download it here, or copy the public key block below.

-----BEGIN PGP PUBLIC KEY BLOCK-----

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
=rA+H
-----END PGP PUBLIC KEY BLOCK-----