Monthly Archives: August 2012

Say cheese!

Web cam testing using Cheese

Web cam testing using Cheese

At The Working Centre’s Computer Recycling Project we build both Linux and Windows (through Microsoft’s Registered Refurbisher program) computers for the Kitchener, Ontario community. As a community tools project we care a lot about freedom and free software principles. So when hardware comes in we often test to see if that hardware is compatible with free software.

From time to time we get web cams donated. Testing these web cams for Linux-compatibility makes sense for us on a number of levels:

1. We sell computers with Linux installed on them (from as little as $35 for a complete Pentium 4 class computer).

2. We use Linux on most of our computers within the lab/shop.

3. Our volunteers get more experience with hardware under Linux and can see the range of equipment Linux supports.

4. Testing hardware allows us to contribute back to the free software community.

Special effects in Cheese

Special effects in Cheese

To test web cams we use Cheese, which was created as part of the 2007 Google Summer of Code using the Gstreamer framework. It supports a number of cool special effects including:

Creating a bulging looking photo, dicing up a photo (which looks neat if you’re wearing a striped shirt), edge (makes everything look like it’s embossed with black), flip (which just reverses the orientation of the picture), heat (which looks like infrared – neat for movie effects), historical (think greyscale with an aged filmstrip effect), hulk makes you green and purple, and kaleidescope which gives a triangular twist to the image.

Cheese can also take video, but we’ve found the videos it takes to be really choppy when compared with other programs supporting web cams (like Skype). Cheese is really first and foremost a photo booth, and like most Linux programs it does a good job of taking pictures.

Cheese can also shoot burst shots, several shots quickly one after another. We used this technique once to illustrate how to take apart a notebook computer (hundreds of photos we turned into a movie using other software).

Leave a Comment

Filed under Hardware, Linux, Refurbishing, Technology, Windows

Programmers and programming

Back in the days of the Commodore 64 I had the itch to learn programming. I wanted to make the next Ghostbusters game. To do so I picked up a book on assembly language programming. Unfortunately at the time I had no concept of an Internet, and I wasn’t old enough to be a University academic. I had no one to mentor me, but did have some encouragement from a couple of friends: Russell and Csaba.

My foray into assembly language was brief. I managed to put a sprite I created on the screen and move it horizontally or diagonally using the joystick… Except any movement just displayed a streak. I never did figure out how to create a delay loop long enough that sprite movement wasn’t at 1000 miles per hour.

The itch to program also hit me in the early to mid 90s when I ran a couple of BBS’s. As with before it was video games that inspired me, Tradewars and Legend of the Red Dragon in this case. This time my door game, BANG, did come to fruition. BANG was programmed in a proprietary language, BAJA, used by the Synchronet BBS Software system. I released the source code, thought at this time I knew nothing of GNU or free software.

Years passed and I took up Linux in the late 90s. About mid 2005 I decided I wanted to try writing some formula fiction. I thought one way that I might be able to inspire creativity and jumpstart the thought process was to program a suite of world generation tools. That itch turned into IceUtils, fantasy tools based on the Rolemaster RPG system.

I have never considered myself a programmer, and “real” programmers who look at my code would probably be horrified, but programming has to start somewhere…even if it’s a messy place.

These days potential programmers have an even greater chance to succeed. Free software and open source software have opened a lot more possibilities. No more buying several hundred dollar compilers. Source code examples everywhere and a plethora of free languages mean programmers have a bit more flexibility. Add to this the community aspect of free software and the willingness of experienced code monkeys to mentor hacks like myself.

So whenever I see talk about the separation between those who code and those who don’t I typically consider that it’s really just about desire. I don’t believe you have to be an expert to code a good program, but you have to start. As with my Ghostbuster sprite foray, you may not finish. And like my BANG door it may lack a bit of polish (in this case a real programmer improved my code for a version 2 of BANG). But if you write a program then you’ve done something.

Leave a Comment

Filed under Programming, Technology

Lifehacker posts Geeked out basement photograph

Lifehacker tweeted a link to an image they posted of Blake Patterson’s geeked out basement photograph. I see a large amount of Apple machines, but there’s some Atari’s in there too. Blake’s done a wonderful job of painting the walls and ceiling in retro gaming style. It’s also nice to be reminded of some of the great old games running on his machines (Gauntlet and Joust) and seeing newer machines like the Raspberry Pi running.

One question Blake, how on earth did you get all the power to run 14 machines and their monitors all at once? Talk about power drain!

Leave a Comment

Filed under Gaming, Hardware, Linux, Refurbishing, Technology