Tag Archives: open_source

Thinking about Linux

When people talk about computers they usually label themselves a Windows or Mac person. I’m a Linux guy. I’ve run Linux on my computers for about 15 years. My family runs Linux on their computers. No, we’re not a super-cyber-family who hacks all the time. My daughter is 12 and mostly interested in her music. My wife works with Girl Scout events and is not deep into technology. In that time we’ve not had a single virus infection on our computers and we’ve been able to get things done. Maybe Linux is a good answer for you too.

Screenshot of Chris's laptop. He's running Ubuntu Linux with the Cairo desktop, giving him a Mac-like feel for some functions.
Screenshot of Chris’s laptop. He’s running Ubuntu Linux with the Cairo desktop, giving him a Mac-like feel for some functions.

I’m going to spend a few posts talking about Linux and why I use it. A few of my friends, after seeing how I get things done have also decided to move to Linux. Ultimately, I’m not trying to convince you to make a change. My goal here is to help you understand that you have choices and help you decide if Linux might benefit you.

What is Linux?

Tux the penguin
“Tux” the penquin has long been a symbol for Linux. You’ll see a lot of variations whenever Linux is around.

Linux is an operating system, the core software that runs your computer when you first turn it on. The operating system is the layer between the programs that you run—word processors, music players, Internet browsers, etc.—and your hardware—disk drives, keyboards, pointing devices, monitors, etc. They’ve always been around in one form or another and many have passed into obscurity that you’ve never heard of.

photo of Linus Torvalds
The father of Linux, Linus Torvalds

For personal computers the most popular systems are Microsoft Windows and Apple Mac OS. You’re likely already familiar with them, so I won’t go into more detail. In 1992, a developer named Linus Torvalds began a personal project to develop a new operating system. He based it on a long-standing system called UNIX, which had been running for decades on complex back-office computers. UNIX was designed to multi-task, or perform many different functions at once. A personal version of this seemed ideal for the way that computer usage was going.

Fast forward to today and his variation, called Linux (See what he did there?) has become very successful. Much of the Internet runs on Linux machines. Your high-end televisions and many other Internet-connected devices use it as well. I even saw a bar-top video game that ran on Linux. (I found out because I was curious what a button did. It turns out that it rebooted the machine. Curiosity is going to get me into a lot of trouble some day.)

While it’s true that Linux can run on very big, complex computers, it also runs well on laptops and desktop machine. If you have an Android device you are already running something that is based on Linux.

Linux is open-source software. That means that the code behind Linux is available for anyone to see. It is licensed with the GNU Public License (GPL), which means that it is specifically intended to be freely available. You can get the source code, compile it and use it without any cost. Obviously you would need to be a little nerdy to do that (and I’m afraid I have). However, there are pre-built installations of Linux with guided installations that are as easy to set up as Windows.

These distributions are easy to download from the Internet. In many cases you can test drive them or run them off of a CD, DVD, or USB disk without having to install anything on your system.

What this means for you is that if you want to you can get Linux for free, install it on your system, and use it for free. Modern installations have a graphical interface and all kinds of software included, everything from office suites to media software.

Photo of Lego-style blocks
Because Linux is free it’s easy for people to get creative and remix it in different ways.

A really interesting site to browse and learn about different Linux distributions is DistroWatch. There you will see all of the different installations that people have designed. It’s actually a little overwhelming because people treat Linux like Legos® and are always building new stuff with it. However, don’t be nervous. In my next entry I’ll break things down into a few distributions that I think are most useful to start with.

 

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!

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–

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.

Amazon signs a deal with Microsoft

This was written when I was working for IBM, so that’s why there are the protestations.


 

I suppose I should begin this one by reminding everyone that, while I am an employee of IBM, what I write here are my own thoughts and opinions and do not necessarily reflect the position of IBM on these matters.

So, I’m trying to enjoy my morning cup of tea and I come across this article from Reuters and many others talking about a new and mysterious deal that Microsoft has signed, this time with Amazon, to protect them as users of Linux.  A lot of speculation went up about similar deals done with TomTom and Novell.  In the case of TomTom it seems pretty certain that the issues had something to do with their use of the FAT file system.  The others are more mysterious.

My preferred solution for TomTom was for them to switch to an open file system, like ext3, and then load an ext3 driver onto Windows as part of their software installation.  I understand that the Windows driver may need a little work, but it would be nice to pay that money to open development rather than into Microsoft’s protection plan.

I’ll admit that I’m someone who is primarily curious about technology and what I can make it do.  I’m probably pretty naive when it comes to matters of big law and big business.  Yet I just don’t understand this game that is being played about the dark secret that Microsoft has about Linux.

I envision this scene in a conference room where a group of lawyers and business executives all sit around the table.  Someone speaks:

“We’ve examined this issue in great detail.  We’ve had our patent lawyers search and we just don’t see what the issue is with Linux in our environment.  We don’t see why we should sign this deal.”

Another figure across the table, dressed in an elegant, yet timeless way, with piercing eyes and a face that will reveal nothing but mild amusement responds in silvery tones.

“I understand.  It is a confusing and difficult matter at best.”

“So you’ll have to pardon us if we just don’t understand the benefits of this deal.  We’re going to need to see exactly what you are talking about.”

“But of course.  That is to be expected.”

The figure raises a gloved hand and snaps his fingers.  A misshapen little man comes in bearing the weight of an ancient looking, ornate box and lays it gently on the table, as though he is afraid to disturb the contents.  His gaze turns to the man who summoned him, his body wracked with anticipation.

A cold, soulless smile breaks across the face of the figure at the head of the table.  “I think that this will make everything clear.”

The little man opens the lid of the box and the conference room is bathed in a sickly green light.  The executives and lawyers turn  pale  as each man finds his own place between utter terror and total astonishment.  After a few moments the box is closed again.  Each man looks at another, trying to make sense of what he has just witnessed and imagining what would happen if such a thing were unleashed against the world.  The feeling slowly fades and, with resignation, men reach for their pens.

OK.  That’s probably a little melodramatic and reveals more than is necessary about my choices of fiction.  Yet,based on the information that I’ve been able to determine about the so-called infringements of Linux and open source I can’t throw it out completely.  I followed the previous attacks on Linux and open source and they really seemed to lead nowhere.

I certainly don’t think that this is the time to develop unfounded fear, uncertainty, and doubt about the future of open source.  I think that many analysts and people who thrive on conflict for the sake of conflict will try to make you think that “the big one is coming.”  I think that many people selling something will try to convince you that you need to buy a little insurance.  I would rather that you look at great examples like the Ernie Ball corporation who made the move to Linux and open source years ago and never looked back.  There are other companies that have happily made the move.  (Here’s an incomplete list.)

Again, I’m not speaking for IBM.  If you want to know the IBM position, watch for the press releases, if any.  I speak to you as someone who has happily used open source software for years now.  I know that it works.  It gets better for me every day.  It’s not to be feared, but embraced and enjoyed because it really will change your use of technology forever.

Community-driven art.

 I live in Austin, Texas.  For those of you who don’t know, music is big herevery big.  I can go out on any night of the week, any week of the year and hear live music.  As you can imagine, with all of those musicians it’s pretty hard for any of them to stand up and be counted by a Megacorp Music Company.  It happens often enough for people to keep trying, but it’s a difficult road.

Erin Ivey, who I’ve been following for about a year now is working to finish an album by going directly to the community.  I think this is pure genius!  For a while, I’ve had an idea that I would be doing pretty good if I could get 1 million people to give me $1 a year for what I do.  (Now I just need to find the right million!)  Basically it’s the idea that just about all of us have something that is of value to someone.  You can shoot for the over-inflated Hollywood kind of value, which seems to have a number of side-effects.  You can also make a direct connection to your fans.

Many open source projects do this.  They provide software that people like.  They don’t sell it.  They keep it open, but they ask for support from the people that want to use it.  I happily donate to projects that I use from time to time.  Amazingly all of those dollars can add up.  If you were to donate a small fraction of what you pay to commercial software to projects that you use I think you would be amazed at the difference it would make.  The money you donate goes for many things:  hardware and hosting to keep a project going, booths at trade shows and other approaches to getting these projects out next to their commercial counterparts.  A lot of money donated would allow someone to devote their full time to keeping the project moving forward.

On the music side, here is what Erin is doing.  She has put up a pre-sale page for her upcoming album.  Her “buy-in” is pretty modest.  But then she suggests some premium levels.  At each level you get the album, plus some extras.  The ultimate is a private concert and a tin of chocolate, home-made by Erin herself.  Many people won’t pay any attention to this, because they have no connection.  They don’t value what she’s doing like the people who have followed her music.  But I’ll tell you, sitting in the shadowy confines of the Ghost Room in Austin, listening to Erin wrap herself in a song spread it around the audience so that you too float and fly with the melody… well… it’s pretty cool.  As someone who has had that experience I’m grateful for a chance to be in on something like this rather than waiting for some commercial marketing machine.

I think it’s the same with open source projects.  Many people just do no have the experience of finding technology that makes a difference for them.  They pretty much use what they’re given.  Yet, when you find that special project and discover that there are other ways to do things it gives you a sense of empowerment.  “I don’t have to use the software that do.  Ithey make me change.  I have something that does things the way that I want to.”  It’s an easy step to go from advocate to participant by lending a little support.  If money’s not your thing, then there are other kinds of support that are needed.  You don’t even have to be a coder.  Many projects need translation, writing– as in people who can communicate information and documentation in clear language for non-technical people– and a number of other things.  I know of one instance where a broadcaster donated a voice-over advocating Linux to be open-sourced as a radio ad.  (It actually was scheduled to run here in the Austin area for a while.)  You don’t have to just be a consumer.  You can be a part of what you like and use and help keep it alive.

Good luck, Erin.  I’m looking forward to the new album.  I think it’s awesome that you are giving your fans a chance to help make it happen.  I think you’re on the edge of the future of art, science and technology.  We drive what we want.  We make it happen, as a community.

Open Source in Government… will it really happen?

One of the areas where open standards and open source are a no-brainer for me is in the realm of government.  Here are a couple of stories highlighting government decisions to consider open source:  UK Government upgrades Open Source policy and San Francisco Institutes Open Source Software Policy.

On the face of it, this sounds like a good thing.  If the requirement says that contractors have to look into open-source solutions then there will be a flood of open-source being used, right?  Not necessarily.  These don’t seem to require use of open source, simply consideration.  I’m pretty certain that a company who has a favorite proprietary decision will still be able to come back with a statement that they considered the open-source option, but found it lacking in certain key areas, so they still recommend the proprietary solution.  Unfortunately I think that in many cases government is at the mercy of its service providers.  There are technical people in government… even passionately technical who want to see elegant solutions.  However, because of the nature of government these people are not necessarily on the front lines of these decisions.  I remember my own time in state government when I was the only one arguing.  That got pretty lonely pretty quickly.

So why does it matter?  Well, for one thing these solutions are spending tax dollars which could be used for other things.  If the applications and data are properly protected with alternative data centers and fail-over then you have at least a pair of licenses for everything used.  If the tech budget is tight, then some levels of protection may be skipped because the money just isn’t there.  The more software in the mix that can be freely distributed the more money that is available for other technical requirements.

The other issue is the freedom of the information.  Government information should not be held hostage by a proprietary data system.  It is appropriate that this information be held securely and that privacy be protected, but it should be recorded in a way that can change with growing technology.  The more exotic the means of recording data the more costly it is to move that information to any other system.  On the other hand, if the means of recording data are open, these migrations are simplified.  I do wonder how much of government IT is spent nursing archaic systems that have been deemed to expensive to upgrade.

Any changes here are going to have to be a requirement of the people.  As citizens we are going to have to demand that open source and open standards be a part of solutions for government.  Those of us who are technical are going to need to keep an eye on what is done and blow the whistle when open solutions are not being used where they should.  I do have some hope.  Lately I’ve found more government services that I can access on-line and I generally have no problem making them work in my Gnu/Linux/Firefox environment.  This has been improving.  Maybe openness in government technology is for real.

The future of software delivery?

I just had to laugh a little when I came across this article: Microsoft Click-to-Run: The future of software delivery?

Wow!  They invented the idea of getting software over the Internet when you want it!  Anyone who has used open source software has been enjoying functionality along these lines for years.  In Ubuntu if I try to execute a command which doesn’t exist I’m given suggestions on how to install it now.  Tools point to on-line repositories of existing software which is installed easily with a few clicks and kept up to date for you as you use them.

Now it’s a new and innovative idea?  *sigh*

In other news is this story “Mozilla Drumbeat Aims to Expand Web Participation.”  I’m intrigued by this project and the upcoming live site.  I’ve been consistently impressed by what is accomplished through open source development.  Yet I also recognize that the nature of open source makes it more difficult to organize and tackle certain kinds of problems.  Mozilla and Apache are both open source groups that immediately get my attention, and a certain level of trust, when they put out a project.  I plan to watch this space and see what they do next.  You can see the progress on the official Mozilla Drumbeat page.