September 28, 2018

Caesar's Cipher in Python (AVW ZLJYLA!)

Aol Ffily-Vtlsslaal


Growing up I was always fascinated by hidden messages, secret codes, ancient languages, and all manner of disguised communication. As I started learning math and computer science, that interest strangely faded. This was likely because modern cryptography seemed so complicated I didn't think I'd be able to make sense of it.

This all changed recently when I read a spectacular book called The Code Book. It starts with examples of secret codes (or ciphers) used in Ancient Rome, Medieval Scotland, and Victorian England. It carries on through WWI, WWII, early internet encryption, and ends with a breakdown of the expected uses of Quantum Computing.

I would love to share much more about this book, but you're better off to just read it and I'll get on  with my post. 

While reading the early chapters, I started thinking about how powerful I could have been in Medieval times if I had access to a computer and a python interpreter. Naturally I started writing some code just in case. The resulting program ended up being both fun, and pretty beginner friendly. So I have decided to write up a guide to how these work.

In this post I will start with what is called Caesar's Cipher.

Caesar's Cipher




June 03, 2018

Glass vs Reflective Film Smart Mirror Showdown



After upgrading my Smart Mirror from a reflective film mirror to a glass two way mirror, I thought it would be interesting to attempt a (semi) scientific comparison between the two types of mirror.

This test involves taking a bunch of pictures and rating the mirrors on a few categories. I decided to focus on transmission, reflection, and simplicity when evaluating each solution.

You can also checkout my album of comparison photos here to draw your own conclusions!

February 19, 2018

Laser Cut Cutlery Drawer

I recently joined Toronto's SteamLabs, and got access to a laser cutter for the first time. Laser cutters are incredible machines which use a freakin' laser to carve or etch patterns into flat materials like wood or plastic. They are fast too!

Over the past few years of 3D printing, I have learned that often some of the best uses for these amazing tools are to take something really mundane and just make it easier to make. For example, one of my most useful 3D prints was some "S" shaped hooks to hang Christmas tree ornaments. Within about 20 minutes, we had enough for all the ornaments we could hang.

Well, my laser cutting got off to a start with a similarly thrilling project. A cutlery drawer! It's pretty straightforward, but since it has proved to be so easy and useful, I decided to share it in case anyone else needs a custom drawer organizer.

Here's how it went down.



December 11, 2017

Fire From Water

This is a project I've had on the backburner for almost exactly 1 calendar year. The seed was planted when I toured the Harry Potter Studios last year and saw a fake fireplace effect being used quite extensively. I am also an avid watcher of the "Fireplace for your Home" Netflix channel, so I eventually realized I needed one of these imitation fires of my own. So here we are now!

Take a look at what I put together, and if that curiosity is still burning keep reading for instructions to reproduce this project yourself.





October 15, 2017

Haunted Home Automation

Halloween is one of my favourite holidays of the year. One reason for this is that it's totally optional and low stress. People can get exactly as in to it as they want. I'm also really intrigued by the perseverance of belief that there are supernatural forces at work. No matter how fact based and rational you are, I'd wager you still get a tingling feeling on the back of your neck crossing a cemetery during a wind storm all alone at night.

In other words, even if you don't believe in ghosts, you still end up scared of them anyway. The goofy costumes and haunted houses are just icing on the cake.

My absolutely favourite part of Halloween however is that DIY is deeply ingrained in the traditions. There's pumpkin carving, costume making, haunted houses in a garage, and a lot more.

Naturally as a DIY fan, I've been thinking of how to incorporate technology into a good scare. Home automation has a lot of potential here, and it pairs nicely with the smart mirror in our house. Check out the video below to see what I came up with (with some help)!



Do it Yourself


If you like this effect and want to do it yourself, a good starting point is a smart mirror with Alexa and a custom skill to run scripts. You'll also need some Philips Hue lights.

September 24, 2017

Automated Plant Watering with a Raspberry Pi

This post starts with two facts:

1. I have a penchant for killing plants.
2. People in Holland grow things really well indoors.

After reading about how well things can grow indoors, I started thinking that maybe automation was my path to healthy plants. So I decided to build the bare minimum - get a plant, a pump, and a water sensor. When the water sensor says "no water here", use the pump to put water there.

I also decided to run it all through a Raspberry Pi to as an excuse to interact with the RPi GPIO.

Here's how I did it!



August 19, 2017

Am I Hearing this Right?

 The Lyrics Repetition Analyzer


I have just returned from a two week vacation, which contained a sizeable amount of road tripping. And with every great road trip comes great tunes!

One of the albums I was excited to be listening to was The Arcade Fire's newest release, called Everything Now. It has received some mixed, but I try to keep an open mind.

Upon first listen I actually really liked the album (and will listen many more times), but something stuck out to me. It seemed like several of their songs were just the same couple of words repeated for the whole track. The instrumentals were great, but the lyrics seemed like an after thought in a few songs.

May 28, 2017

Detecting Reddit Vote Manipulation

I'll start this post with a disclaimer. This project has not produced conclusive results. But I'm optimistic! In fact, I've got a couple hurdles that maybe some of the people reading this can help with (which is what I'm hoping for).

So let me describe what I have been working on. This is a python tool with two modes of operation. The first mode of operation looks at a single reddit post, and gathers statistics about the first 5 users to comment. This includes the user karma (average), account age (average),  number of interactions on the subreddit (average), and number of interactions with other commenters in the thread (max, avg max, and average).