Void’s Vault

Knowledge source for efficiency.

Wake-On-LAN With a Stubborn Router Using an Arduino

This post is a tutorial that describes what needs to be done to remotely boot up your computer. When I did it myself, I had a stubborn router that did not allow the reception of the magic packet from the internet, so I used an arduino board with an ethernet shield to act as a LAN relay.

Avoid the Unavoidable Visitor’s Cycle of Dependencies

I got a quick tip. I had to implement a visitor pattern (as in GOF’s book, “Design Patterns”, go read it). After it was done, I suddenly realized that this class had created an enormous cycle of dependencies in my program. It is a problem inherent to the pattern when implemented in C++, C#, Java and in any other static languages.

Testing MapReduce With MRUnit

I’ve recently started a big data project with Mathieu Dumoulin. We are using Mahout with Hadoop to do some machine learning with some Map Reduce in order to deal with big data the right way. We’ve found the way to test our Map Reduce code, so that’s what I present in this post.

Things to Avoid When Using Design Patterns

While doing a code reviews in a class of studients at Laval University, I heard that some people think that design quality is a very subjective matter. As long as they were using design patterns, the code they developped was clean. In this post, I will explain that everyone should be careful when using design patterns. While there are a lot a reasons to use them (and we should!), some patterns have drawbacks and flaws that should be considered.