Tag Archives: unix

Unix and Obamacare

I was working on my Linux machine and thinking about the required insurance mandated in Obamacare when it hit me. Why don’t large companies split themselves up into smaller companies of less than 50 people in order to avoid having to pay insurance for their employees? Now this may be practically impossible but humor me for this article.

In Unix-based operating systems, the real power is found on the command line, where you chain together small programs in order to accomplish complex tasks. It looks something like this:

> # put list of video devices into a file
> lspci | grep VGA > video_devices.log

In this little shell script “lspci” lists all the devices connected to the PCI bus in your computer. This list is searched by “grep” for all lines with “VGA” and those lines are put into the file “video_devices.log”. Now, while this is a very simple shell script, the flexibility and power that is present is enormous. Each program is small, does one thing well, and is able to communicate to each of the other programs the information that they need in order to fulfill their function.  Why should a company not do the same thing?

To put this into better perspective for business owners, the idea would be for the different functions of the company to be split off into different smaller companies rather than keeping everything under one roof. This isn’t very different from what some companies to today, with IT and human resources being outsourced to different companies.  Let’s say I were to take a product from a large technology company like Google (I know there’s probably no chance that Google will do this, but come on, work with me here.) and spin off of Google a group of different small companies with less than 50 people on staff to work on this product. One company could work on the product’s design, another on developing it, a third on testing it.  Each reporting to the others, like a bunch of Unix programs, working together to help form one fantastic product. if one design company isn’t enough, then bring in another company to help work with the product.

Now, this is probably a logistics nightmare, especially if communication broke down between two companies and, because of “corporate secrets” and the current patent system, this kind of arrangement might well be untenable, but this kind of arrangement, if those communication kinks were worked out, would allow companies to be more flexible, increase competition, and possible even create jobs as more employees are needed in order to help keep the different businesses running. It might be ridiculous to have, say, 10 different software development companies working on a single project, but, if you look at the model that has been formed by the Open Source Community, there is a way for such cooperation to happen.

What do you think, Internet?