All posts by Chris Walden

Chris Walden is a multifaceted guy with a background in technology, writing, and theatrical production. He is the force behind Mythmade Productions in Austin, Texas and enjoys creating unique experiences for people that go beyond mere entertainment. He lives in Cedar Park with his wife, daughter and some number of cats. He is a regular correspondent for Saul Ravencrafts activities.

Quickie today about commercial control vs. true open source

My new Twitter follower Robin Mulkers (mulkers) pointed me to a great article written by Jeremy Allison, a major contributor to Samba, about the demise of Sun and how their decisions about how to handle their open-source contributions may have been part what killed them.

He brings up a lot of really interesting points that I have also observed about how some people approach open source, and why it may be unwise to believe that you can really win a siege against it.  There is great power in openness and we are only beginning to scratch the surface.

Patent news I like to hear

I got a fun bit of patent news today.  In a widely-reported news story, Novell and Red Hat have prevailed in a patent case, alleging patent infringement brought by IP Innovation LLC, a subsidiary of Acacia Research Corporation and Technology Licensing Corporation.  Groklaw has analysis.

As I’ve said before, I’m not opposed to protecting intellectual property.  People should be able to profit by their own ideas.  However, technical patents, especially software patents, have developed a great deal of complexity.  I think it’s easily arguable that the current system for awarding patents has a number of weaknesses and that patents are awarded that don’t necessarily have merit.  Unfortunately, it seems the only way to challenge a patent is in court, which is an expensive course of action that only the biggest players can afford to do well.

This situation is a real challenge for the open-source world, where ideas are freely contributed and distributed.  It’s made more complex by the fact that there are people working on projects that have to deal with just about every technology in existence.  I really don’t have an answer, or even a solid question about this.  I can see little experimental attack on the Open Source keep.  Only time will tell if someone is gearing up for a genuine siege.  Even if there is a massive commercial and legal battle against the open source world, will that kill it?  How many Linux users quit using Linux until these various court cases were settled?  How easy is it going to be to stuff this genie back into the bottle?

In the mean time, it looks like a time to celebrate.  As more people have more exposure to open-source software maybe it will become less of an issue.

Q: How do I get involved in Open Source?

Congratulations on discovering the importance and opportunity in Open Source software. The first step, in my opinion, is to start using Open Source yourself, wherever possible. You have probably already started on this path. The easy steps are using Firefox for browsing, and programs like OpenOffice.org and Thunderbird for productivity. (If you’re nervous about the whole Oracle thing with OpenOffice.org, fear not, there are forks that have occurred which will keep it open.) For development, you should look at the Eclipse project as well as the many other interesting development tools that are out there. There is a vast (and incomplete) list of interesting Open Source applications available in Wikipedia. You can also find a rather complete repository of Open Source projects (including the good, the bad and the really ugly) at the grand-daddy of all Open Source sites, sourceforge.net, a free repository for project owners to organize and share their project.

Of course, you should also consider taking the Open Source plunge and running Linux. (That link is not the official Linux kernel site, but a good starting place.)

Like I said, you are probably already using Open Source software to some degree, but the more you use the more you become aware of how the Open Source world works, how the community drives development and support and what you think is missing from the equation that you can contribute.

To get involved on the development end, you have a few options. One is to take a project that you use and identify something within your skill set that needs help. You don’t really have to ask permission to offer a solution, but you should follow the protocol for the project. Every project will have information about how to contribute. If they don’t, then write to the key players of the project and let them know that you have something to contribute. They will likely be very pleased. If they’re not, then go find someone else to help!

Another interesting thing to do is to look at the list of projects at sourceforge.net. They actually have a list of “help wanted” projects that you can dive into. If you dig around, you may even find projects that have lost their maintainer (which happens for a variety of reasons). Picking up that work could be a great project and a valuable service to the community.

Don’t forget that there are open projects that need more than just coding. There are needs for testing, documentation, translation and just about anything that you can imagine in the business of software development. Simply writing excellent tutorials with good manuals and video demos could turn a project around… and this is typically the sort of work that the deep developers don’t find very interesting. There are even other opportunities, like the proofreading help needed by Project Gutenberg. Unusual projects like the Open Prosthetics Project, which try to accomplish goals for the general good.

It’s not hard to get involved in projects. It takes time and a little discipline to stick with it, even though you don’t have a manager demanding that you produce. However, I think that you gain the same satisfaction from this work as you do from any sort of good volunteer work that you might do, and you actually get to benefit from the work yourself by having greater functionality and improved skills.

Comments and pointers to opportunities are certainly welcome!

Real World Open Source: Finding a cure for tuberculosis. Open data at work

Does open source software really provide a benefit to the community, or is it just a drain on commercial resources, like people stealing office supplies?  Look at this and judge for yourself:

A colleague forwarded me an article called “Can Open Source Defeat the Scourge of Tuberculosis?” by Alan Shimel.  It talks about how a project, the Opens Source Drug Discovery (OSDD) is being used by scientists to find better drugs for combatting tuberculosis, a disease which affects about one third of the world population.  While people debate vigorously about the state of health-care and what are the best solutions, one fact seems to be agreed upon: the development of new drugs and new treatments is expensive.  Much of this has to do with the expense of collecting and analyzing the massive amounts of data required to understand a condition.  If an open repository allows this sort of work to be spread out further, so that more people can contribute to the work, doesn’t it make sense that the results will come out quicker and cheaper?

The OSDD is by no means the only open-data project.  In fact, I found the Open Knowledge Foundation which lists a number of projects that make data of various kinds publicly available.  There’s even an open project to help you find open projects called the Comprehensive Knowledge Archive Network (CKAN).  Browsing these projects is fascinating and I know that with a little digging I’ll find a resource or two that I find personally or professionally useful.

Get Involved

It’s honestly not difficult to contribute to open projects.  I just found a simple way that I can contribute to a project that I use regularly.  Project Gutenberg is a project to provide electronic versions of every possible book, free for digital rights management, publicly available.  Most of the works are ones that have fallen into the public domain, but others are works that the author has made available through the Creative Commons or some other open license.  Books are scanned and then transformed into text and other formats.

Recently, I discovered that they have a practice, called “distributed proofreading,” whereby volunteers can spend a little time here and there helping to keep a project moving.  To volunteer, you simply sign up through the website.  You act as an editor, proofing documents that have come in and helping them to meet the project standards.  Beginners simply help identify scanning (OCR) mistakes, by comparing the output to the original picture in the document.  More advanced and experienced editors move the document forward through other issues ending in a newly published text.  It only takes a few minutes to do several pages.  You receive advice and recommendations along the way.

Most projects do not have so elegant a system of getting involved.  But most of them would gladly accept help.  All you have to do is offer… and then follow up by actually doing the work.

Will this affect commercial work?

Undoubtedly commercial work in these areas will be affected as some of them become obsolete.  The village blacksmith and the office stenographer are both rare today.  As technology grows to allow people to record, analyze and share data it will become less necessary to have that done by an expert.  Yet expertise will always be needed (and paid for) to get things to the next step.  I rather like to think that open methodologies step in to do the things that the commercial people say are a hardship by applying a cloud-like entity of human resources.  Often the work is slower and more precise for each individual step, but since there are more people potentially available tocheck and recheck things, something accomplished in three steps rather than one is still done more efficiently.

Next week the Open Source zone will have an article on the harmonious blend of open source and commercial software.  Keep an eye out for it.  As you read it, consider how it applies not only to software, but to data and other projects.  There is a lot of value and potential in technological volunteer-work.  We’ll get the most benefit as people cease to fear or distrust it and everyone participates to improve it.

Novell 1, SCO… well… er…

I needed a pick-me-up today, and I got one from, of all places, groklaw.net.  (Actually the initial notice came from my colleague Ian Shields.)  Groklaw just posted a story:  Novell Wins Again – Jury Rules Copyrights Didn’t Go to SCO!

The SCO war against Linux has quietly been waged in the legal system while the rest of us have been getting on with our lives.  Finally, something that we can be pleased with.  The owner of the relevant UNIX copyrights appears to be Novell, and since they are the owners of Suse Linux the aren’t likely to be doing anything to take it down.  In general, to my understanding, the entire anti-Linux lawsuit asserted that Linux infringed on the copyrights of SCO because of SCO UNIX, which was derived from previous editions of UNIX.  The ultimate decisions says that SCO didn’t own the copyrights of these items anyway, Novell did.  Barring something strange in an appeal that should bring everything else toppling down like a house of cards.

I’m sure that some lawyers will do something unpleasant to make it complicated again.  Lawyers seem to be amused by that sort of thing.  (I am, of course, not talking to the kind and good lawyers that help me with the things that I need.)  However, today, it looks like Linux can enjoy the light and all of us who felt that this whole thing was just a mess can take a breath and feel that the world makes a little more sense.

Hooray!  Of course, I’m sure the games aren’t over.  I talk to people regularly who feel that Linux and open-source software are threats.  They don’t like the changes that are occurring to the technological landscape and they want to just make it all go away.  There is a lot of anger and resentment there.  I don’t get it.

To celebrate, grab a copy of Linux and play with it today.  Heck!  I’m more of an Ubuntu guy, but I just may buy a copy of Suse for the heck of it to say thanks!

I’ve been putting this off…

I’m sure that all of you are focused individuals.  I’m sure that all of you see tasks clearly laid before you and that you systematically work your way through them with the persistence of a census-taker… each one in turn until all the jobs are done.  How wonderful that must be.

I’ve always been full of curiosity.  I seek knowledge and experiences of all kinds, which has led me in many interesting directions.  It’s probably also the reason that I’m so drawn to open-source, because there is always something new to discover.  Recently, I came across this article:  Work Smart: How to Make Procrastination Productive

I like the way this person thinks.  Procrastination isn’t so much laziness, or fear of action.  It’s a sort of intuitive prioritization where things get done, just not in the way that some would consider logical.  Are there out there who suffer from my fascination with the next shiny thing moving at the corner of vision?  Does this broaden your reach or weaken your grasp?

One of the things that I’ve been exploring in my distraction is what one can do with a Web Cam.  (Great!  Some of you are already writing your own jokes.  Fine!  Laugh it up.)  I hadn’t looked to seriously at webcams because I just didn’t have a specific need for one.  Additionally, most equipment like that tends to be pretty Windows-centric and, while I can usually find the right piece and get it to run OK under Linux, I just wasn’t motivated.  Then, I’m in a big-box technology store beginning with an F where I normally don’t shop because I don’t find that the cheap prices are worth all of their other hassles.  (I might as well order on-line!)  Yet, there I am, looking for an adapter for my Droid, that I thought I need to have that day.  I happen by the webcam section and start looking at the different models.  I find a Creative Live! Cam Socialize HD, which actually lists Linux as an option under it’s system requirements!  I’m so pleased and surprised that I find myself taking it home.

I connect the camera and it works right out of the box!  Yay.  I talk to my dad and convince him to get a web cam as well.  The next night we experiment a little and decide that for bed time we’ll let Grandma and Grandpa join us for story time.  It’s pretty cool.  My daughter read her story (she always reads one to us too) and she would read the text and show the pictures to the camera.  Another night we did it again and Grandma and Grandpa had a story for us.  What a wonderful way to reach out and touch bases with each other.  As someone with a home-office I appreciated the value of being able to have some virtual presence and sharing seemingly insignificant things.

Now something weird has started.  Skype, which is what we were using, has suddenly decided to only use my camera at 15 FPS, rather than the 30 that it will do, and all of the settings and adjustments are shielded from me in Skype.  I can make it work fine with the other, open applications that talk to the camera.  I did some digging and found that this was not unusual for the Linux version of Skype.  I don’t know if they are behind on the video technology that’s available through the Linux kernel, or what.  Perhaps they are doing some of that intuitive prioritizing.  In the mean time I’m looking for other options that are more open that will also be easy for my dad to use.  I’ve even toyed with setting up my own SIP server using Kamailio, but I haven’t had a chance to learn the in and outs of how it works.  Too many shiny things… like getting articles done, drawing a paycheck and other things that.

Maybe soon my intuitive priorities will align and I’ll be able to share with you the secret formula for doing this yourself.  In the mean time I’ll share a little hint with you:  You don’t need a fancy service to connect to your computer from anywhere.  You can do it with SSH and a system that you leave connected to the Internet.  I’ll give the basics for the adventuresome and maybe write up a more substantial tutorial later:

  1. Set up the openssh server on your home system.  Make sure that you have a port opened to the Internet for ssh.  I recommend choosing something other than 22 or you’ll just get your log files clogged by script-kiddie attacks.  I also recommend setting it up so that you require key authentication for a good connection.  It’s a little bit of a pain to deal with the keys, but it makes your setup exponentially more secure.
  2. Get a dynamic DNS address and configure your home network to update that address whenever your home IP is reset.  Now you can get to the home system by domain name rather than having to know the IP.
  3. On your “work” system set up ssh and vnc.  Whenever you want your system to be reachable set up a reverse-port-forward (-R) of the vnc port (590x) back to your home system.  At that point, only your home system will be able to connect back to the work system through VNC.
  4. If you want to connect from another machine, establish another ssh connection from, say, your laptop to your home PC, doing a standard port forward (-L) to the same port that you reverse-forwarded.  Now you Use VNC to go from the laptop through the home PC to the work machine.  Here’s a brief example:

Connecting Work PC to home:
ssh -i mykey -R 35900:127.0.0.1:5900 myuser@mypc.dyndns.info
Connecting from Home PC to Work PC through encrypted channel:
vncviewer localhost::35900
Connecting from remote laptop to Work PC:
ssh -i mykey -L 35900:127.0.0.1:35900 myuser@mypc.dyndns.info
vncviewer localhost::35900

That’s the sort of expert view.  Maybe some of you can use it.  Selecting a higher port like 35900 helps avoid firewall issues where lower ports are blocked.

Ooo!  Something shiny!  I’m just going to take a moment and–

Take a moment to appreciate Ada Lovelace

Not much time today, but I have several entries brewing.  I just wanted to take a moment out of my day to appreciate Ada Lovelace.  She was quite a mathematician and created notes for what might be considered the first computer program.  Here’s a Wikipedia entry that describes her life.  Next time you’re talking to a young lady who thinks that there aren’t interesting women in technology, introduce her to Ada.

Is it safe?

I read an interesting article today: Hackers aren’t as sneaky as you think.  Ah!  The good old days.  I grew up on the hacker culture.  I remember the inspiration of the movie War Games and the almost romantic vision of young, smart people getting past the system and into the secret world of government and big business.  Of course, the truth underneath was a little less glorious.  Cracking computer security is now much more about vandalism and identity theft.  Yet, that early curiosity gave me an awareness of computer security and steps that could be taken to protect one’s self.  Most computer crime is result of sloppiness on someone’s part.   It could be the system administrator who’s not a big fan of browsing logs and running patches.  There’s not too much that you can do about that.  However, you can do things about your own security.

I’ve thought about a few ways that I do to keep safe, and they’re not too hard to do.  Yes, you have to make some changes to your behavior, and you will have to learn a few things, but it’s not any more difficult than the things that you have learned to keep yourself safe on the motorway.  I’m sure that some will argue with a few of my conclusions, but at least they’ll be thinking about it!

Start with a safe vehicle

I quit using Windows.  I know that not everyone will do this, but I simply had repeated problems with viruses (should that be virii?) and other issues that I just could not keep a handle on.  When I discovered Linux and started making it work for me all of those issues went away.  I have had zero virus infections.  I also got a lot more information through logs as to what people were trying to do to attack my system and came up with ways to complicate that.  I think of it this way… when driving on a dangerous highway, which would you rather have between you and the idiots: a Pinto or a Volvo?  If you decide that you must stay with Windows, then make sure that you have all of the safety features installed.  You should have firewalls, virus scanners, spyware scanners and make sure that they are always up-to-date.

Maintain your vehicle

It’s great to have a solid vehicle, but if you don’t keep it running smoothly then it will cease to be reliable.  The most critical thing is to keep your patches and software up-to-date.  Elderly software tends to be behind the times on security issues.  If cost is what is preventing you from staying current, then you really should consider finding a freely available solution.  The Open Source World provides a good number of solutions that you should consider.  If cost is not what is holding you back, then set up a regular procedure for making you are up-to-date.  Many software packages have ways to automatically check for updates.  Turn this on.

Pay attention to how your computer is running.  A slow computer may mean that you’re just overloading it with software and outgrowing the system.  It may also mean that your computer may be doing a lot of work on behalf of a SPAM-bot or something else.  If nothing has changed on your computer, no major software changes or changes to how you are using it, then it is not normal for your computer to suddenly start running more slowly.  If you were driving on a straightaway and your car suddenly started losing acceleration you would be concerned.  Computers are the same.  When you see signs of problems, check them out.

Keep a look out

A while back I got SPAM from my sister’s email address.  I wrote to let her know that I had gotten it.  Generally if SPAM comes from someone and it’s a random mix of email addresses (usually alphabetical) then it’s just someone spoofing that email address.  The SPAM did not actually come from your friend’s computer.  However, if the SPAM was sent to people from their address book, then you are likely dealing with something that is more of an attack.  The computer needs to be checked out.  Don’t ignore it when something suspicious happens.  Tell the people who need to know.  They can’t do anything about it if they don’t know.

Accept that security may require some inconvenience

Yes, it’s nice to be able to turn on your computer and get to work.  But that also means that anyone can turn on your computer and get to work.  Are you sure that the kids aren’t on there when you’re not around doing things that they aren’t supposed to?  How about your spouse or your roommate.  If you keep something on a computer that you would not leave laying around for people to read at a party then you should probably close the door on your computer with a password.  It’s not just your personal information, either.  Maybe you have nothing to hide, but what if this other person goes poking around in places that they shouldn’t.  They see the warning that says “Are you sure that you want to activate this malicious program that will steal your identity?” and they click “OK” because they just want to get to the video.

If you’r going to have a password it should be a good one.  When I was working as a system tech supporting a company I was called to do some work on a workstation in the security department.  She had left, even though she knew that I was coming and her screen was locked– which was good.  She had a Corn Huskers football plush sitting on top of her monitor and a few other Huskers things laying around.  I took a guess and typed “huskers” and I was in!  I left her a note telling her that it was pretty easy to guess and she made it more secure.  The best passwords are phrases with numbers and letters.  Abbreviations that only you would know are good too.  “H0w much is that doggie in the wind0w?” would be a pretty difficult password to guess.  Names of family, birth dates, etc are terrible password.  Take a line from your favorite song in High School.  Many security requirements demand that you change your password regularly, but once you find a way to pick things you can remember you will find it easier to change and maintain.

Consider encryption

There are many ways now to encrypt information.  Encryption turns things into secret code so that no one else can read it.  You can do this with emails (and most people should) so that email to you can only be read by you.  You can also do it with file systems, so that you have a section of drive that requires a password to access what’s in there.  Encryption is a larger subject than I’m prepared to cover here, but you should take a look at what can be done with the Gnu Privacy Guard, which is free and powerful encryption software.  You can hook this functionality automatically into your applications and make encryption easy to deal with.

Is that it?

There is a lot more ground to cover to keep yourself from being cracked, but these things right here will make a dramatic difference in your vulnerability.  If there is more interest in this topic, especially about specific practices or solutions I’d love to write more about it.  Shoot me a note and we’ll try to cover more detail.  If it’s enough conversation it might be worth a group on My developerWorks to help everyone participate in the conversation.

Maybe it’s time to reduce our FAT intake

In the continuing action on the patent battlefield, a recent announcement declares that “German appeals court upholds Microsoft Long File Name patent.”

This is the sort of thing that caused problems for TomTom and is likely to cause problems for other device manufacturers as Microsoft begins to explore ways to augment their revenue stream.  Please don’t get me wrong.  If Microsoft is legally entitled to receive royalties for this technology then it is appropriate that they pursue those royalties in whatever manner they see fit.  It would be nice if they could take the more magnanimous route of allowing it to be freely used by anyone, but that does not appear to be what they want to do.

So, why do we still want to use the FAT file system on devices?  There are other, unencumbered file systems that are available which would do the job —  arguably a better job — that FAT does today.  The initial argument is that everybody uses Windows and so we have to follow that protocol.  While it may be true that many people use Windows, FAT is no longer the de facto standard in a Windows environment.  FAT is just a legacy carry-over which could be allowed to go to pasture.

I would like to propose that manufacturers consider using the open ext2 file system.  There are Windows drivers for ext2 available.  The openness of ext2 breaks down the barriers of drivers for any operating system.  When someone buys a device, they are accustomed to having some sort of driver disk that goes with it.  The device could simply install the ext2 driver along with whatever other helper software was provided.  If this became more common, OS manufacturers might simply start providing a driver as part of the standard software stack.

The open-source world provides viable alternatives for many problems.  Rather than fighting this further, let FAT go and start working with a truly freely-available alternative.

You need to see this web site

I was poking around through some resources and came across this website called worrydream.com.  You really need to take a look at it.  I’ll wait here.

Wasn’t that awesome?  What an interesting approach to dealing with information!  … extremely visual… extremely interactive…

What makes this especially cool is that this site is driven by OpenLaszlo, the open-source, Rich Internet Application platform.  I’m running Firefox on Linux and it worked just fine for me.  Of course, there are some issues with a site like this.  OpenLaszlo uses the Flash player to operate, and so it is only available in environments where Adobe is supporting a Flash plugin.  (For example, the site does not work on my Droid right now.)  There are some open-source alternative flash players, but these are fairly fledgling projects and likely suffer from trying to recreate rather than to create.  It would be interesting to see if standards around RIA evolve to the point that there are more solid choices in this arena.

Another issue with worrydream.com is accessibility.  As a user, I am blessed to be able to ignore such issues.  My eyesight is good enough and I can click around with no problem.  However, as an editor I’ve become painfully aware of these issues and the potential impact that they can have for users.  As a sort of eye-candy site, worrydream.com is not necessarily intended to be accessible, and someone with special needs may not really be missing out on anything that they would find valuable.  However, if this was a commercial site the designer would have been leaving out a chunk of his audience who might provide business.  He’d probably be in violation of some laws as well.  It’s a difficult problem where technology is both a savior and an obstacle.

Yet, I admit that I would really like some of my work to feel more like what I saw on that web site.  I like the almost tactile nature of grabbing things.  I know that it’s probably not for the masses, but I would prefer an environment that wasn’t all about shoving a little arrow around the screen all the time.

Is worrydream.com the future?  Who knows.  The designer has used his skills to help build other OpenLaszlo-based sites.  Maybe there is a new world around the corner.