Older blog entries for steve (starting at number 186)

A Programmer Learns to Weld

That's right, I'm taking a welding class. Some fellow DPRG members found the community education class and were getting a group together to take it. Granted, welding isn't a skill I generally need in my daily routine but it intrigued me enough to join the class. It might come in handy if I find the need to create a giant robot, or a big metal dinosaur for the front yard.

The first day of class was spent on the use of a fuelgas welding rig to cut and make holes in metal. Practical lesson #1: sparks fly everywhere and, while they're harmless if they hit your skin, they have deleterious effects on some types of clothing, like those cheap hoodies you find at Sam's Club that are covered with a thin later of fuzzy stuff. The sparks create mysterious little craters in the fuzz. Practical lesson #2: if you're wearing non-leather shoes, watch out for blobs of molten metal falling on your feet.

Moralizing about Free Software

Over on robots.net, I posted a link to an interesting Steven Pinker article about the human moral instinct. Aside from the obvious aspects of the article relevant to cognitive science and AI, it struck me today that the "moralizing trigger" Pinker describes may help explain the difference between the Open Source and Free Software movements. While they're both effectively doing the same thing, they're doing it for different reasons. Pinker uses vegetarians as an example:

The psychologist Paul Rozin has studied the toggle switch by comparing two kinds of people who engage in the same behavior but with different switch settings. Health vegetarians avoid meat for practical reasons, like lowering cholesterol and avoiding toxins. Moral vegetarians avoid meat for ethical reasons: to avoid complicity in the suffering of animals. By investigating their feelings about meat-eating, Rozin showed that the moral motive sets off a cascade of opinions. Moral vegetarians are more likely to treat meat as a contaminant — they refuse, for example, to eat a bowl of soup into which a drop of beef broth has fallen. They are more likely to think that other people ought to be vegetarians, and are more likely to imbue their dietary habits with other virtues, like believing that meat avoidance makes people less aggressive and bestial.
Substitute a binary blob in the Linux kernel for the drop of beef broth in the vegetarian soup and this sounds exactly like the difference between the Free vs Open camps. The article goes on to explain how mammal brains seem to have five "moral spheres" which appear to represent something akin to moral absolutes. The way different cultures and individuals map things to those five area creates the moral differences we see and leads to a lot of unfortunate conflict. Could it be that understanding the physiological basis of morality will help not only to solve big problems like Middle East vs West but also smaller ones like Open Source vs Free Software?

7 Nov 2007 (updated 8 Nov 2007 at 20:12 UTC) »

I went to the Austin Maker Faire October 19-21. I've been promising various people I'd write about it for a while but events have conspired to prevent it until now. The short version is that it was fun, interesting, worth the trip, and I'll be returning next year. It was interesting to compare this to my Marfa trip a couple of weeks ago for the Chinati Open House art festival. I'm even more convinced of a growing convergence between DIY/homebrew technology geeks and artists. I even ran into a guy in the Maker Store wearing a Chinati 2007 T-shirt, so there were at least two of us who attended both events and probably more.

I drove down to Austin from Dallas and stayed in a Holiday Inn Express. Despite having four lamps, my hotel room was strangely dim. Rather than complain, I tried to get into the spirit of the Maker Faire by driving to a nearby Home Depot and purchasing a box of 100 Watt light bulbs, which I used to upgrade all the lamps. While hanging around the hotel, I met a cat in the hotel parking lot. The hotel's main entrance had automatic doors which relied on motion sensors. The cat had learned that it could enter the hotel any time it wanted by walking up to the doors. It frequently walked into the lobby, where it caged treats off the hotel guests. The daytime hotel clerks chased the cat away but I noticed the nightshift guy feeding and playing with the little cat.

Susan wasn't able to go with me. Actually, I think she was afraid it was just going to be another boring robot event. She's patiently attended more than her share of robot-related events. It's always more interesting to view art and technology when you can share the experience with someone. Fortunately I met Alix, a local Austin blogger, and we hung out together during the Maker Faire. Hopefully she enjoyed it as much as I did.

Maker Faire was too full of interesting experiences to describe them all in a short blog entry. Maybe I can get across the general idea. Unlike most conferences, fairs, and similar events, people attending the Maker Faire are not idle spectators. Participation is allowed or even required for nearly everything there. If there's a ride, you can bet you'll have to pedal. If you buy an electronics kit, you'll be provided with tools, test equipment and space to assemble it. Stand too close to the girl building synth gear out of salvaged medical equipment and she'll put you to work disassembling equipment. If you go to the Swap-O-Rama to trade clothes, you'll be cutting, sewing, and silk-screening them yourself, with expert help if needed. Maker Faire is very much a DIY event in every sense.

There are a few exceptions. You'll have to keep your distance from noisy machines belching flame and sparks, for example. And while you may be asked to help turn the cranks to hoist the 4,000 lbs safe into the air during the execution of the Life-Size Mousetrap game, you'll have to stand behind the fence when it plummets to the ground with an impact that can be felt a hundred yards away.

Everywhere you look at Makers Faire you'll see interesting people who are always willing to stop and explain how their creation works, how they made it, why they made it, who did their tattoos, or answer any other question you might have for them.

I suppose I should at least give you a quick sampling of the things you might see at a Makers Faire: art cars, dirty art cars, biped robots, robots on wheels, robotic toys, robot art, robots that make art, cute girls who drive all the way from Iowa to show off the art-making robots they built, strange musical instruments, stranger musical instruments, tesla coils, tesla coils that are musical instruments, drummers who knit, free-roaming ferris wheels, working medeviel siege weapons, strange fire-breathing machines, homebrew supercomputers, stirling engines, fur-bearing dinosaurs, girls with tattoos, girls with hula hoops, girls with 5-inch plastic heels, the amazing mouse girl, the cigarette-smoking bee girl, scary insectoid robotic things, Dalek pumpkins, photovores, things that spin around until you get dizzy (unless it snaps your feet off like twigs first), things that I don't even know what they are but if you pump them full of gas, pressurize them, and apply high voltage, they glow purple. And I should point out that I hardly saw half of what was there. For more weird stuff, check out my Maker Faire flickr gallery.

Those who got tired of looking at mind-blowingly strange things could stop to listen to mind-blowingly strange music playing on any one of the three stages. There were also several talks and tutorials going on at any given time. Wendy Tremayne, the founder of the Swap-O-Rama, gave an interesting talk entitled The Maker as Revolutionary. For me that talk tied together some of the loose threads between art, DIY geeks, and the free software movement that I'd been pondering since my trip to Marfa.

Diehl Martin RIP

I knew Diehl Martin, or Marty, as one of the founders of the Free Hardware movement. Like many free software/hardware people I work with, I never met him in person and knew him only online. Almost single-handed, Marty created and maintained the FreeIO.org website, designed, built, and tested numerous GPL'd hardware designs ranging from ISA bus I/O boards to USB development boards. He somehow also found time to promote Linux and other free software, work a full time job, enjoy his Ham radio hobby, participate in competitive shooting, teach Sunday school, and assist his wife with her photography business. For the last several years, Marty has been fighting pancreatic cancer, a disease which has a 100% fatality rate. He beat the odds for a surprising amount of time and continued working and blogging daily until the very end. Marty passed away at 5am on the morning of the 27th. He wrote his final blog entry bidding the world farewell on the 25th. He will be missed.

29 Oct 2007 (updated 4 Nov 2007 at 23:41 UTC) »

On Friday night, I attended the Slashdot 10th anniversary party. Well, I attended the one in Dallas, anyway. There were others all over the world. It was a fairly uneventful event. For reasons known only to himself, the organizer chose to have it in a small, noisy bar despite many suggestions of better (i.e. bigger, quieter) alternatives. So for about an hour and half 20 to 30 geeks shared a cramped space and engaged in conversations that went something like:

"Hi, is this the Slashdot party?"

Most people either shouted into the ear of the person immediately next to them or just gave up on conversation as not worth the effort and just sat around staring at each other and waited for the organizer, who had the free T-Shirts. He eventually showed up shortly before the event was scheduled to end and passed out the shirts. A lot of people had given up and left already, so there were plenty to go around.

At a couple of points, the loud music stopped long enough to have some quick conversations and I learned that: 1) I was the only one there who ran Linux on my workstation or laptop 2) most people I talked to ran CentOS Linux on their servers 3) Everyone I talked to had tried Ubunutu and hated it 4) In ever case where I could get specifics about what they hated, it turned out to be something I do on Fedora all the time (I'm pretty sure most of what they wanted worked fine on Ubuntu as well, so I don't know why they were having troubles) and 5) I was the only person there who actually wrote code for Free Software or Open Source projects.

Once I got my free T-Shirt, I headed home. It was too dark to snap a photo inside with my phone (no flash) so I shot one of the exterior of the Inwood Theater. The dark, noisy bar is attached to the theater's lobby.

I haven't forgotten the Austin Makers Faire. Full account coming soon. Stay tuned.

Road Trip to Marfa, Texas

Every year, artists from all over the world gather in Marfa, Texas for the Chinati Open House art festival. For a few days the town has more art galleries than any other city on Earth. Lacey, my artist friend in Houston was planning on driving out to Marfa this year because one of her bronze pieces was going to be displayed at Camp Marfa, a gallery of works by Houston and Lubbock artists (Camp Marfa catalog [flash]). I signed on at the last minute as traveling companion. She left Houston by car on the morning of Oct 4 and I flew down to San Antonio that afternoon, where I met her as she passed through.

We stopped briefly at a WalMart in Boerne, where I bought a tent, bedrolls, and assorted other things one might need when arriving in a crowded small town with no hotel reservations. We made it as far as the city of Junction where we stayed in the luxurious America's Best Value Inn, where each room is provided with all the live crickets you could want at no extra charge.

We later talked to other artists who'd chosen to drive through the night and we were glad we hadn't attempted it. One driver hit a deer and several others reported close calls with other wildlife. Even driving during daylight, we came within a few feet of hitting a good-sized bobcat that charged across the highway in front of us, probably chasing a jack rabbit. In addition to wildlife, we also passed along side a wind farm with hundreds of huge wind turbines. It was an amazing site but due to the tight schedule we weren't able to take the time to check it out.

Each of the art collectives is apparently responsible for coming up with their own facility to house their art. The Houston art enclave worked out a deal to use the historic Building 98, part of Fort D. A. Russell. The adobe and concrete building was originally the officers club in the 1920s. During WWII it became a prison camp for German POWs. Interestingly, the Germans painted ornate murals on the walls of the dinning hall, making the building the largest work of art created by POWs in world. What could be more appropriate for use as an art gallery?

Paintings and sculptures were installed throughout the building and one room was used for the multimedia works of a Houston group called Apocalypstick. The building had a large rear patio area where we had a couple of bands playing in the evenings. The Lubbock artists had improvised their own gallery inside of a Ryder truck. They arrived, backed the truck up to rear patio, installed in and out ramps, powered it from the building's AC and - instant art gallery. There seems to be a lot of creative DIY cross-over between artists and geeks.

Overall we had a blast out in Marfa with only one mishap. On Friday night, Lacey twisted an ankle on the front steps of the building. She was in quite a bit of pain and this changed our plans to walk through the art galleries Saturday, shooting photos and seeing the sites. We ended up sticking to Camp Marfa most of the day and Lacey turned in early, sleeping in the SUV to avoid the party. Did I mention the party? Sonic Youth played a free concert Saturday night for the thousands of art and music fans in Marfa. Somehow, one of the members of the local band playing at our gallery had gotten them to make an announcement that everyone should head over to Camp Marfa after the concert. We had to close off the art areas and route people to rear of the building where our band was playing. And, aside from Lacey, none of us got to sleep until early the next morning.

After a few hours of sleep, Lacey and I headed out about 7am and repeated the inbound journey except with me driving. She felt up to driving by the time we were approaching San Antonio and assured me she'd be okay to drive the remaining distance back to Houston, so I called Susan and she was able to book me a flight back to Dallas. The shocker came a day later when Lacey got her leg x-rayed and it turned out she hadn't just twisted her ankle, she'd broken her leg. It was a clean break of the fibula and she's now in cast. This certainly explained the pain and swelling but not why the pain was all in her ankle when the break was much higher. And I really regretted letter her drive when I heard that. How many people can say they've driven from San Antonio to Houston with a broken right leg? Not many I bet.

Lacey wrote her own account of the Marfa trip in her blog. It's more detailed and probably more fun to read than this one, so check it out. What's that? You'd like to see photos? No problem, check out my Marfa, Texas 2007 road trip photo set on flickr.

Did anyone else attend a local Software Freedom Day 2007 event? I showed up at the Dallas event. I wasn't sure what to expect but it was fairly well attended. They had a lot of free (in both meanings of the term) stuff to give away, ranging from GNU/Linux CDs to T-Shirts and stickers. I was only there for a short time but I talked to one curious person who had heard a little about open source and free software. He took a FSF flyer, membership form, and some Ubuntu CDs. I ended up with one of the green SFD2007 t-shirts myself. I took a couple of photos with my phone, which are now on flickr with assorted other SFD 2007 photos.

If anyone in Dallas is looking for the local Software Freedom Day 2007 event, it's being sponsored by Ubuntu Dallas folks. Sounds like they'll be meeting at the Tempest Tea at 5600 West Lovers Lane around 11am on Saturday the 15th. There's an announcement and a little more information in a forum thread on their site. I'll try to make it by if possible.

Object Oriented Programming in C

One of the C projects I'm working on needed some object oriented features of the type one would normally use C++ for. I thought it shouldn't be too hard to do some minimal OO stuff in C and it turns out there are plenty of examples and complete frameworks out there to help. If you'd like a complete OO framework for C, Laurent Deniau's webpage, Object Oriented Programming in C, is a good place to start. The most interesting system described is the C Object System (COS) which is described as "strongly inspired from CLOS and Objective-C and to a lesser extend by Cecil, Dylan, Haskell, Python, Slate and SmallTalk". The description also notes that COS provides dynamic message dispatching that's up to 1.5 times faster than Objective-C and generic message forwarding that's up to 80 times faster than Objective-C. COS is designed to match the simplicity, flexibility, and extensibility of Python, Ruby, or Smalltalk while retaining the efficiency and portability of C. The COS framework is licensed under the LGPL. Pretty cool.

Laurent also describes the Object Oriented C (simplified) framework, which is a small (300 sloc) pile of code derived from OOC-2.0 that provides C programmers with a feature set similar to Java. There's also "Exception in C", which provides a Try-Catch-Finally implementation for C.

I also found Axel-Tobias Schreiner's book, Object Oriented Programming in C very helpful. A PDF version of the book is available online (alternate link).

Perl Survey 2007

If you use Perl at all, how about taking the Perl Survey 2007? They're collecting results until September 30th. After that the results of the survey will be freely available. They're trying to answer some basic question about the Perl Community like how many people use Perl as a primary language; how many Perl users participate in mailing lists, user groups, conferences; and what other languages are used by programmers who use Perl.

177 older entries...

Share this page