Independence Day Giveaway

By | July 3, 2017

linux penguinIt wasn’t long ago when I decided to build a budget NAS/Linux machine. I remember browsing /r/buildapcsales and finding this great case. It was the last piece to my build, and it was on sale for a really low price so I bought it without hesitation. It was only when I was placing the motherboard into the chassis, watching as the motherboard cleared the edge of the case by a few centimeters, that I realized I had the wrong form factor. I bought a case that was mini-ITX form factor instead of micro-ATX. I have no use for the case, so I’m giving it away. My folly, your fortune.

I will be giving away this Rosewill Neutron case to one lucky entrant. Unfortunately, I will have to limit the contest to USA due to high international shipping costs for bulkier packages. I will be selecting the winner programmatically (I’m thinking about recording my screen while I do this). I will run this contest from sometime today (7/3) until the 5th. To enter yourself in this contest, please fill out the form below. If you have any ad-blocking plugins, please make sure to temporarily allow javascript as you will need to confirm your email which may require that you complete a Google  reCAPTCHA.

A bit on free

Given that this contest falls on my country’s day of independence, and that this is a free and open source themed blog, I would like to talk a little bit about what it is to be free. Hearing or reading the word “free” should invoke a feeling of relief, pleasant surprise, or satisfaction. But in some contexts, when people hear the word “free”, they instead react with skepticism, and caution. Is there truly such a thing as a free lunch? I am inclined to say no, there is not – but that doesn’t necessarily make it a bad thing. For example, if I wanted to buy a computer for say $700 in the United States, that same computer might cost upwards of $1,000 in other countries. But healthcare in those countries might be free. It works both ways. The point being, you end up spending the same amount in different ways. There is a saying “if you’re not paying for the product, you are the product.” Which might be true if you’re using freeware rather than free and open source software. The distinction being a matter of liberty instead of price – “free as in free speech, not as in free beer”. So if there is any thing that can be said to be truly free in our day and age, it is free and open source software. A good example of this is the Linux and UNIX-like (which I fully encourage reading the history of) operating systems. And while I completely understand that not everyone is going to drop what they’re doing and install Ubuntu (Windows is easier and will save the layman time), the important thing is that you have the freedom of choice. The power of open source comes from its openness. Open to people, open to ideas. Open data. Open government. The open design is a frame for something much greater to be built within. And so I will ask the winner of this contest to think about installing a flavor of Linux.

Good luck! And may the 1/n person win.

Update: The contest has ended. I will draw the winner shortly.

Update: Here is a video of the winner being picked with a Python script.

**Unfortunately, I will have to limit the contest to USA due to high international shipping costs for bulkier packages.
***I realize now that having full contact info as required fields for entering isn’t necessary – I can reach out to the winner and get that info once the contest has ended. I changed the form so all you need to submit now is your email and first name.

Source code
Here is the source code of how I elected the winner:


import sys
import csv
import random

def main():
	
	with open(sys.argv[1], 'r') as file:
		
		data = csv.reader(file)
		entrants = []
		
		for row in data:
			
			if not row[0] == 'Email Address':
				entrants.append(row[0])
			
		print("There are %s entrants in this contest. Chances of winning are %f." % (str(len(entrants)), 1/float(len(entrants))) )
		print("Winner, winner, chicken dinner! %s has won the contest." % random.choice(entrants))
	
if __name__ == "__main__":
	main()

Pass the path to the file in as a parameter like: “script.py /path/to/file.csv” or “python3 script.py /path/to/file.csv”.

Facebooktwittergoogle_plusredditpinterestlinkedintumblr

Leave a Reply

Your email address will not be published.