DIY
Paw Prints: Writings of the maddog
I was working for Digital Equipment Corporation when I first met Linus and facilitated the port of Linux onto the Alpha processor.
During the port, a member of the community contacted me and asked if Digital would contribute their math library to the Linux project, since Digital's math library was a great deal faster than the one currently in use on the Alpha Linux port. I easily got Digital to contribute the Digital Unix math library in binary form, but they refused to make the library "open source" because of the investment that they had put into it.
Digital was afraid that one of their competitors might take the source code, most of which was written in complex Alpha assembler, analyze it and re-write the code to make a library that would directly compete.
Since I walked the dual line of Digital employee and Free Software advocate, I was torn between the two groups.
After receiving yet another email complaining about the lack of source code, and I replied back to the list:
"If you guys are such great programmers, why don't you write a better library?"
Silence from the list.
Then a few days later an email came: "Cos() is 5% faster".
A couple of days after that: "sqrt() is 3% faster".
Each day or two another email, another subroutine in the library was re-written to be faster on the Alpha, compiled from sources than the binary from Digital Unix. Sometimes the improvements were small, but sometimes they were significant.
Finally, all but one subroutine was faster, and it turned out that subroutine was not used a lot, so it would not mean significant speed-ups in the over-all program if it was re-written.
While we might like all closed-source people to "open" their libraries, sometimes it is better to just buckle down and do it yourself.
Comments
comments powered by DisqusSubscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.
Patents add real and very unfair hurdles to all other hurdles
Software patents poised to cripple the industry and shut out real innovation
Patents can be and frequently are too broad. Think of some great inventions of the past (or think of fiction writing analogies) and how these would have been held back if a more general patent showing much less insight had been created. Well, in the past we didn't have much to worry about software patents. Most patents granted covered industrial process/products requiring material costly to manufacture and to distribute.
Today, any person with a general idea over a new area (possibly already being developed and looked at by many other players) can apply for a broad patent and get it in many cases. These will hamper the work being performed by everyone else. This will affect negatively better innovation.
Narrow and brilliant (takes longer to be realized): E=mc^2
Broad and less brilliant (insight happens earlier): "Mass has an associated energy and energy has an associated mass."
Narrow and brilliant (takes longer to be realized): c^2=a^2+b^2 (Pythagorean Theorem)
Broad and less brilliant (insight happens earlier): "The length of two sides of a right triangle are enough to determine the length of the third side."
Narrow and brilliant (takes longer to be realized): Romeo and Juliet
Broad and less brilliant (insight happens earlier): "Explain the relationships between .. and the following thematic elements ... in a play about feuding families in "modern" times.
Every great narrow invention has a broader invention concept that is difficult or impossible to avoid to solve certain types of problems. These broader inventions can readily (though not necessarily very easily) be expressed as a patent claim.
Take a look at almost any patent claim that can be implemented in software. [Search http://www.freepatentsonline.com/ , eg, for Microsoft API] It's the patent claim itself that matters in court. These claims are extremely general.
So while we can't technically patent as above to prevent math from being used and fiction from being written, we can patent in this same degenerate fashion to prohibit software creations that would be used to solve real-world problems.
The only real obstacle to patent application writers is to add some twist (eg, add some general bits limited to some context such as a current and important problem domain) somewhere so that prior art is either avoided or difficult to prove years into the future when the lawsuits come in.
The patent laws are horribly broken. We just looked at a single reason for this, yet it's enough to show how broken the concept is. For software inventions (even if attached to hardware.. duh), patent monopolies do not "promote the progress of the sciences and useful arts."
Good Point.
Links?