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
-
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.
-
ZorinOS 17.1 Released, Includes Improved Windows App Support
If you need or desire to run Windows applications on Linux, there's one distribution intent on making that easier for you and its new release further improves that feature.
-
Linux Market Share Surpasses 4% for the First Time
Look out Windows and macOS, Linux is on the rise and has even topped ChromeOS to become the fourth most widely used OS around the globe.
-
KDE’s Plasma 6 Officially Available
KDE’s Plasma 6.0 "Megarelease" has happened, and it's brimming with new features, polish, and performance.
-
Latest Version of Tails Unleashed
Tails 6.0 is based on Debian 12 and includes GNOME 43.
-
KDE Announces New Slimbook V with Plenty of Power and KDE’s Plasma 6
If you're a fan of KDE Plasma, you'll be thrilled to hear they've announced a new Slimbook with an AMD CPU and the latest version of KDE Plasma desktop.
-
Monthly Sponsorship Includes Early Access to elementary OS 8
If you want to get a glimpse of what's in the pipeline for elementary OS 8, just set up a monthly sponsorship to help fund its continued existence.
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?