Raymond invents an amusing story to illustrate this which will ring true to anyone who has ever used a library in binary form.
Unfortunately, I can't tell you how many Open Source libraries I've thrown away after trying to use them for the exact same reasons. They APIs aren't documented (if at all), the APIs don't work like they are described, the APIs don't work like it seems they should, the APIs just don't work, or the APIs are just way overly complicated to use for what I/we need done. So what if I can debug through the source, maybe it gets me to the point of throwing away the OSS library faster because I can see that it is useless, but the end result is the same.
You can also chalk up the GPL to some of it. I've found libraries that seemed OK but were GPL'd and software we write doesn't have GPL'd source in it, thus forcing me/us to reinvent the wheel.
Neither model is perfect and programming never will be the utopian ideal of being able to always reuse everyone else's code. Sometimes others' code just isn't written to fit the way someone else thinks so it seems unnecessarily complicated and/or contrived.
The Utopia we were all hoping for; affordable digital media with which you can do what you want (except distribute), will be crushed.
Heh... I don't know about you but I have yet to see anyone big into p2p and the like care about anything *other* than distribution. Doing what they want with it is putting it up on a torrent somewhere and distributing it all over and downloading it all for free. It's those people who make it difficult for the rest of us who want what you mention here.
Yeah, but those power figures aren't for max load. Also, the Pentium-M parts they are comparing those G5 parts to are significantly faster on most things. Also, given the timeline of the Apple conversion, Yonah will be ready for mass production which is dual core Pentium-M at the same (27W) power usage and at the same clock speeds as today (2.13GHz). The low power G5 is a day late and a dollar short for Apple's desires.
Single cycle execution - Originally RISC instructions were designed to be executed in a single cycle. CISC processors often had highly complex instructions that would take multiple cycles to execute (sometimes 100's or 1000's in the case of the VAX). Today, processors are pipelined but the idea is still the same - pump out instructions once per clock cycle. CISC processors tend to do this now as well.
Not exactly true. With pipelining, an instruction could be retired at the rate of one per clock cycle. The number of clock cycles an instruction takes to execute (from start to finish) is the length of the pipeline (in the most basic explanation). If the RISC processor had 5 pipeline stages, for example, then the instruction executed in 5 clock cycles, but because of pipelining, one instruction per clock can be retired (after the four clock startup bubbles).
Another big thing about RISC was very few memory manipulation methods. This is typically called load/store architecture. For example, some RISC processors had only one memory addressing mode (register + constant offset) and you could only load from memory into a register or store from a register to memory. In contrast, CISC typically had a number of memory addressing schemes that were typically orthogonal to the instruction itself. The most notable example of this is a memory to memory move (bypassing registers completely) and the addressing for each memory operand could be any of such things as: register with autoincrement, register with constant offset with autoincrement, absolute, register with offset, register with register offset with autoincrement. These just complicated the things a compiler had to consider when doing operations and, depending on revision of the chip, may change in performance dramatically (early versions memory to memory may have been optimal but later versions de-emphasized this and didn't optimize it so that memory to register followed by register to memory may have been faster and better to schedule, for example).
I guess the other big thing about RISC is that the logic for the instructions because it was "reduced" was combinatorial logic instead of translation which was thought to be "better" at the time.
In the end, RISC and CISC are pretty much moot arguments. Arguably the most popular commodity RISC CPU (the PPC) actually has more OPs than the Pentium4 when you take into account Altivec, SSE3 and PNI.
A friend of mine and I were talking and he came up with this:
If you could spend just a little more on a machine and get one that would run OSX and Windows vs. the cheaper one and just run Windows, which would you get? We talked and came up with stuff like this:
$0: no brainer, sure get the OSX-able one $100: probably get the one that runs OSX $200: probably not get the OSX one
As you say, the Mac faithful will buy whatever Steve puts out for them to buy. However, some of the Windows folks might just shell out a little more to get the option (even if never used) to be able to run OSX... if the price difference is reasonable enough. I think Apple will gain by switching to Intel parts, even if the performance is comparable, it just allows a wider market easier access to Macs and OSX.
The concept, while unique, is quite simple. Anyone who has a product or service to sell, or needs monetary support for a charitable cause, or who wants to organize a group purchase, posts their requirement on Fundable.org. They specify the number of contributors needed and the amount of money required from each. They also specify a deadline by which to raise the needed capital. Fundable.org holds all contributions until the total amount requested is received, or the deadline is reached. If, by the deadline, the amount contributed is less than the required amount, the project is scrapped and the contributors receive a full refund.
So, all they do is collect money (and earn interest on said money) and watch a date. They don't care that the software is actually delivered and/or works (which is somewhat smart because they collect interest up until the deadline regardless and they aren't responsible for the quality or even the delivery of said product). I think we finally found that #2!
1. Collect money for someone 2. Collect interest on said money up until a deadline and either give the money back or give it to the person who set up the fund depending on amount. 3. Profit!!!
Man... the stuff that people do to justify their church...
Yeah, my InsertFavoriteThingHere(tm) has a hole in it's head and wobbles a bit... but that hole makes a delightful whistling sound that informs everyone to its presence and that wobble is just a side product of its agility!
We actually work with some wireless as well and my experiences with wireless (several years) is that I'd much rather have wires but there are problems that can pretty much only be handled by wireless. Given the choice of either on my desk, I'll take wires before wireless any day.
Reasons: 1) Wireless connections in certain areas just aren't reliable because you get dropped and readded a lot because of interference. 2) While wireless "ignores" walls a wall between you and your AP degrades the signal a bit - causing general slowdown in your network - sure, you may be running at 54Mb but you have to retransmit a lot of packets which degrades your performance a bit. 3) You have to worry more about security (WEP is practically worthless, for example, then you also have to worry about broadcasting your ssid and such).
No problem here. I'm not sure what the patent number is (don't have it handy right now) but it's basically a way of classifying and manipulating data along with a bunch of other stuff all balled up in it. Right now, the patent is so that we can 'do our thing' and one day it may be licensed, but I don't know if/when that will happen.
I agree with you, though, that software has a much more rapid turn-around than other things such as mechanical devices or procedures (such as smelting aluminum) and think that software patents should be 3 years (5 years at the most). I've always been of the mind that someone who comes up with a better mousetrap should be compensated for it. (Another case is where my dad works. The owner of that business came up with a new design for some tool that is used in the oil industry that makes things much easier/better. He has a patent on it and now makes a good living off of it. Before that, their shop wasn't so big. Without the patent, any company could make the tool and his invention wouldn't have earned him much, if anything. But for now, he can benefit from his ideas/work.) I've seen patents used by the "little guy" to benefit and the only arguments I've seen about patents on Slashdot are those where big companies own the patent and ProgrammerJoe can't use someone else's ideas to make his own stuff in his basement because he likes the technology or something. That, to me, isn't sufficient reason that there shouldn't be patents.
Plus, although I'm a fan of (and use daily) OSS, there is a tremendous potential, especially for larger companies, to torpedo any emerging software market without patents. I guess some might see it as a good thing, though. Basically, if CompanyA has a product that is used all over (say that is Microsoft Office) and another company can't break into the market, all they have to do is torpedo the market by making/funding OSS projects that directly compete in that space. Basically, saying that "if I can't make any money in that market, no one will". I see this as the biggest motivation behind OSS to date. Although we see many articles like "Venice switches to Linux/OSS" it isn't about the superiority of the product or anything like that. There is always a large undercurrent of "take that Microsoft!". That may be good and all, but to me that is a lot of negative emotion that I just don't need.
We haven't licensed to patent to anyone. We do the work ourselves.
Funny how people don't mind patents on things like... cars, that have both intellectual property and material costs. Since computer programs and the like have few material costs there is a perception that the intellectual property doesn't matter. In both cases, it helps small guys (like us) make money off our ideas and work.
We exist completely due to that patent. Other than some outsourcing of labor that we've done to get some cash flow early on, there isn't anything else we do here. I'm not sure if that answers your questions.
Just remember that any time you write software that you don't have a patent on, any big company can incorporate your ideas for free into their products and you will neither have recourse nor compensation for them. Copyrights don't keep someone else from reimplementing your ideas.
Of course, if all you ever think about is letting someone else think up the ideas and you just want to copy them, well... not having patents is exactly what you want.
There's a big interest in keeping guys like these around. This one kid "cost" some people millions but also help justified thousands of jobs for people in the security industry, virus protection firms, etc.
The crack dealers you mention "help justify" thousands of jobs in the DEA, FBI, and local LEAs...
I posted similar... just wanted to ++ this. We played around with translucent windows on Windows many years ago. It sucks to make it 100% transluscent... hard to find the window and bring it back!
Among the few noted features is that Windows now offers transluscent UI, finally catching up with Apple. "
Well... it wasn't documented but the GUI being transluscent in Windows is nothing new. I distinctly remember
a) reading about how to turn it on via a registry entry back in around 1998 (it was evidently around before then because that's when I "discovered" it 2) actually using said registry entry to turn transluscency on in the GUI D) writing programs that made use of said transluscency in the GUI
So... it's finally documented and a "standard feature" of the GUI.
Well... without the F-22s to provide air cover and to gain air superiority over the target area, the 10 JSFs will tend to have a more difficult time performing their missions, stealthy or not, over an area that actually has trained, hostile air forces available.
Perhaps you've always eatten filets? That's where you cut the meat in such a way as to avoid (and not include) the bones in the piece of meat you intend to cook and eat.
I think I saw one of these things in the Chattanooga Aquarium (Tennessee) once. It looked like a giant gar or pike. I thought it was a log at first but it moved. I think it was like 13 feet long or something and was freshwater. I don't know if that's the right thing but it was freakin big.
I liked (from the same episode):
... The miracle is yet to come.
GILLIAN: A miracle, Mr. Scott.
SCOTTY:
And of course the whole scene where they show transparent aluminum to the guy in his office.
Rest In Peace James, You touched my life.
Raymond invents an amusing story to illustrate this which will ring true to anyone who has ever used a library in binary form.
Unfortunately, I can't tell you how many Open Source libraries I've thrown away after trying to use them for the exact same reasons. They APIs aren't documented (if at all), the APIs don't work like they are described, the APIs don't work like it seems they should, the APIs just don't work, or the APIs are just way overly complicated to use for what I/we need done. So what if I can debug through the source, maybe it gets me to the point of throwing away the OSS library faster because I can see that it is useless, but the end result is the same.
You can also chalk up the GPL to some of it. I've found libraries that seemed OK but were GPL'd and software we write doesn't have GPL'd source in it, thus forcing me/us to reinvent the wheel.
Neither model is perfect and programming never will be the utopian ideal of being able to always reuse everyone else's code. Sometimes others' code just isn't written to fit the way someone else thinks so it seems unnecessarily complicated and/or contrived.
The Utopia we were all hoping for; affordable digital media with which you can do what you want (except distribute), will be crushed.
Heh... I don't know about you but I have yet to see anyone big into p2p and the like care about anything *other* than distribution. Doing what they want with it is putting it up on a torrent somewhere and distributing it all over and downloading it all for free. It's those people who make it difficult for the rest of us who want what you mention here.
anything untrue on the internet? not that i've ever seen, but I'd imagine so.
You're joking... right? The Internet is the largest source of false/mis- information on the planet.
Yeah, but those power figures aren't for max load. Also, the Pentium-M parts they are comparing those G5 parts to are significantly faster on most things. Also, given the timeline of the Apple conversion, Yonah will be ready for mass production which is dual core Pentium-M at the same (27W) power usage and at the same clock speeds as today (2.13GHz). The low power G5 is a day late and a dollar short for Apple's desires.
Single cycle execution - Originally RISC instructions were designed to be executed in a single cycle. CISC processors often had highly complex instructions that would take multiple cycles to execute (sometimes 100's or 1000's in the case of the VAX). Today, processors are pipelined but the idea is still the same - pump out instructions once per clock cycle. CISC processors tend to do this now as well.
Not exactly true. With pipelining, an instruction could be retired at the rate of one per clock cycle. The number of clock cycles an instruction takes to execute (from start to finish) is the length of the pipeline (in the most basic explanation). If the RISC processor had 5 pipeline stages, for example, then the instruction executed in 5 clock cycles, but because of pipelining, one instruction per clock can be retired (after the four clock startup bubbles).
Another big thing about RISC was very few memory manipulation methods. This is typically called load/store architecture. For example, some RISC processors had only one memory addressing mode (register + constant offset) and you could only load from memory into a register or store from a register to memory. In contrast, CISC typically had a number of memory addressing schemes that were typically orthogonal to the instruction itself. The most notable example of this is a memory to memory move (bypassing registers completely) and the addressing for each memory operand could be any of such things as: register with autoincrement, register with constant offset with autoincrement, absolute, register with offset, register with register offset with autoincrement. These just complicated the things a compiler had to consider when doing operations and, depending on revision of the chip, may change in performance dramatically (early versions memory to memory may have been optimal but later versions de-emphasized this and didn't optimize it so that memory to register followed by register to memory may have been faster and better to schedule, for example).
I guess the other big thing about RISC is that the logic for the instructions because it was "reduced" was combinatorial logic instead of translation which was thought to be "better" at the time.
In the end, RISC and CISC are pretty much moot arguments. Arguably the most popular commodity RISC CPU (the PPC) actually has more OPs than the Pentium4 when you take into account Altivec, SSE3 and PNI.
Yup... Good points.
A friend of mine and I were talking and he came up with this:
If you could spend just a little more on a machine and get one that would run OSX and Windows vs. the cheaper one and just run Windows, which would you get? We talked and came up with stuff like this:
$0: no brainer, sure get the OSX-able one
$100: probably get the one that runs OSX
$200: probably not get the OSX one
As you say, the Mac faithful will buy whatever Steve puts out for them to buy. However, some of the Windows folks might just shell out a little more to get the option (even if never used) to be able to run OSX... if the price difference is reasonable enough. I think Apple will gain by switching to Intel parts, even if the performance is comparable, it just allows a wider market easier access to Macs and OSX.
The concept, while unique, is quite simple. Anyone who has a product or service to sell, or needs monetary support for a charitable cause, or who wants to organize a group purchase, posts their requirement on Fundable.org. They specify the number of contributors needed and the amount of money required from each. They also specify a deadline by which to raise the needed capital. Fundable.org holds all contributions until the total amount requested is received, or the deadline is reached. If, by the deadline, the amount contributed is less than the required amount, the project is scrapped and the contributors receive a full refund.
So, all they do is collect money (and earn interest on said money) and watch a date. They don't care that the software is actually delivered and/or works (which is somewhat smart because they collect interest up until the deadline regardless and they aren't responsible for the quality or even the delivery of said product). I think we finally found that #2!
1. Collect money for someone
2. Collect interest on said money up until a deadline and either give the money back or give it to the person who set up the fund depending on amount.
3. Profit!!!
Man... the stuff that people do to justify their church...
Yeah, my InsertFavoriteThingHere(tm) has a hole in it's head and wobbles a bit... but that hole makes a delightful whistling sound that informs everyone to its presence and that wobble is just a side product of its agility!
Give
Me
A
Break.
We actually work with some wireless as well and my experiences with wireless (several years) is that I'd much rather have wires but there are problems that can pretty much only be handled by wireless. Given the choice of either on my desk, I'll take wires before wireless any day.
Reasons:
1) Wireless connections in certain areas just aren't reliable because you get dropped and readded a lot because of interference.
2) While wireless "ignores" walls a wall between you and your AP degrades the signal a bit - causing general slowdown in your network - sure, you may be running at 54Mb but you have to retransmit a lot of packets which degrades your performance a bit.
3) You have to worry more about security (WEP is practically worthless, for example, then you also have to worry about broadcasting your ssid and such).
but generally just moving a few feet is enough to clear problem up.
Kind of like your computer with short hair and nerd glasses walking around saying "Can you hear me now?... Good."
No problem here. I'm not sure what the patent number is (don't have it handy right now) but it's basically a way of classifying and manipulating data along with a bunch of other stuff all balled up in it. Right now, the patent is so that we can 'do our thing' and one day it may be licensed, but I don't know if/when that will happen.
I agree with you, though, that software has a much more rapid turn-around than other things such as mechanical devices or procedures (such as smelting aluminum) and think that software patents should be 3 years (5 years at the most). I've always been of the mind that someone who comes up with a better mousetrap should be compensated for it. (Another case is where my dad works. The owner of that business came up with a new design for some tool that is used in the oil industry that makes things much easier/better. He has a patent on it and now makes a good living off of it. Before that, their shop wasn't so big. Without the patent, any company could make the tool and his invention wouldn't have earned him much, if anything. But for now, he can benefit from his ideas/work.) I've seen patents used by the "little guy" to benefit and the only arguments I've seen about patents on Slashdot are those where big companies own the patent and ProgrammerJoe can't use someone else's ideas to make his own stuff in his basement because he likes the technology or something. That, to me, isn't sufficient reason that there shouldn't be patents.
Plus, although I'm a fan of (and use daily) OSS, there is a tremendous potential, especially for larger companies, to torpedo any emerging software market without patents. I guess some might see it as a good thing, though. Basically, if CompanyA has a product that is used all over (say that is Microsoft Office) and another company can't break into the market, all they have to do is torpedo the market by making/funding OSS projects that directly compete in that space. Basically, saying that "if I can't make any money in that market, no one will". I see this as the biggest motivation behind OSS to date. Although we see many articles like "Venice switches to Linux/OSS" it isn't about the superiority of the product or anything like that. There is always a large undercurrent of "take that Microsoft!". That may be good and all, but to me that is a lot of negative emotion that I just don't need.
We haven't licensed to patent to anyone. We do the work ourselves.
Funny how people don't mind patents on things like... cars, that have both intellectual property and material costs. Since computer programs and the like have few material costs there is a perception that the intellectual property doesn't matter. In both cases, it helps small guys (like us) make money off our ideas and work.
We exist completely due to that patent. Other than some outsourcing of labor that we've done to get some cash flow early on, there isn't anything else we do here. I'm not sure if that answers your questions.
Actually, the small company I work (five people) for was founded because of a patent of the owner so I'd refute your last statement.
Just remember that any time you write software that you don't have a patent on, any big company can incorporate your ideas for free into their products and you will neither have recourse nor compensation for them. Copyrights don't keep someone else from reimplementing your ideas.
Of course, if all you ever think about is letting someone else think up the ideas and you just want to copy them, well... not having patents is exactly what you want.
There's a big interest in keeping guys like these around. This one kid "cost" some people millions but also help justified thousands of jobs for people in the security industry, virus protection firms, etc.
The crack dealers you mention "help justify" thousands of jobs in the DEA, FBI, and local LEAs...
a "prize" or a "price"?
I posted similar... just wanted to ++ this. We played around with translucent windows on Windows many years ago. It sucks to make it 100% transluscent... hard to find the window and bring it back!
Among the few noted features is that Windows now offers transluscent UI, finally catching up with Apple. "
Well... it wasn't documented but the GUI being transluscent in Windows is nothing new. I distinctly remember
a) reading about how to turn it on via a registry entry back in around 1998 (it was evidently around before then because that's when I "discovered" it
2) actually using said registry entry to turn transluscency on in the GUI
D) writing programs that made use of said transluscency in the GUI
So... it's finally documented and a "standard feature" of the GUI.
Well... without the F-22s to provide air cover and to gain air superiority over the target area, the 10 JSFs will tend to have a more difficult time performing their missions, stealthy or not, over an area that actually has trained, hostile air forces available.
Perhaps you've always eatten filets? That's where you cut the meat in such a way as to avoid (and not include) the bones in the piece of meat you intend to cook and eat.
Catfish belong to the Bony Fishes. They most definitely have bones.
Just looked it up on Google and that was the fish I saw.
I think I saw one of these things in the Chattanooga Aquarium (Tennessee) once. It looked like a giant gar or pike. I thought it was a log at first but it moved. I think it was like 13 feet long or something and was freshwater. I don't know if that's the right thing but it was freakin big.