If a crime was committed you need to punish the *people* who did it.
If I had free choice of punishments i'd say chain them up in the stocks for a week or two and let people throw rotten fruit at them. Then send them to do hard labour for a year or so in a remote mining camp with the condition that any attempt to access or borrow against the wealth they have in their life outside punishment will result in permanent confiscation of that wealth. Visits from friends and family would be allowed but at least half the cost of those visits would have to come out of their payment for work in the mines with the remainder being paid by the visiting friend of family member and any gifts during those visits would be limited to token levels.
In particular, any movement of small amounts of money (in the $100 range) between countries typically takes upwards of 50% of the total in various fees (and that assumes 1st-world countries with more-or-less legitimate banking and postal systems on both ends of the transaction).
If I as a brit receive a commercial paypal payment in dollars from an american and choose to convert it to pounds (I also have the option of keeping it in dollars) I will pay a 3.4% +20p transaction fee, a 0.5% cross-border fee, a 2.5% currency conversion fee. A total of arround 6.5%. Fees for international credit card transactions are comparable
Yes some banks charge stupid fees for small international transactions but that just means avoiding using those banks for small international transfers, not avoiding the whole regular financial system.
The biggest extra cost with buying stuff internationally vs buying stuff domestically in my experiance has been the delivery charges from the supplier and customs fees from the carriers, not the costs of making the payment.
The likelihood of finding a datacenter with P&C costs low enough to justify the expense of moving servers for that reason alone is pretty low so the decision to move would require additional motives in most cases.
The obvious one being hardware upgrades. Many companies replace their servers every few years anway and there is no real reason the replacements have to be hosted in the same datacenter as the servers being replaced.
MS had already started the process of gimping the start menu in win7, they just went full retard in win8.
The initial start menu isn't too bad in win7 but when you go to the full list of programs it's held within a little box rather than using the screen height it opens in a small box. This is bad enough on a secondary machine with relatively few programs installed, I dread to think what it would be like on my primary office machine.
The gene is out there in every grain elevator. Once the patent expires you use roundup once and you have a field full of roundup resistant plants. Then you save seeds.
What if monsanto develops "roundup ready 2.0" which also contaminates every grain elavator? how will you select for "roundup ready" (for which the patents would have expired) without selecting for "roundup ready 2.0" (for which the patents would still be in force)?
You can reduce the inductor and capacitor sizes a lot by increasing the switching frequency. Of course doing so will likely increase your switching losses but it may still be worth it if it lets you put the regulator closer to the load. Especially given the ever lower voltages that modern chips are running at.
The protocol can only be ammended if you can get everyone who matters (most of the miners and major exchanges) to agree to the ammendments. Otherwise you get a damaging fork. Little fixes like increasing the maximum block size to allow for more users or fixing obvious bugs are pretty uncontraversial and likely to be accepted. Changing the core rules on which bitcoin was based is likely to be a much harder sells.
As for transaction fees they only apply to bitcoins that are moving arround. They don't apply to bitcoins that are lost or hoarded (and there is no way for anyone other than the owner of the bitcoins to know the difference between lost bitcoins and hoarded bitcoins.
Failure to do so can lead to opening up security holes via consensus failure which can in turn lead to double spending (and thus your users lose money!).
Afaict roughtly speaking you can divide differences into two categories.
1: you accept something that the majority implementation doesn't 2: you fail to accept somethign that the majority implementation does.
1 isn't so bad, the strongest blockchain rules mean that a block containing something you accept but the majority doesn't is unlikely to ever see more than one "confirmation" before it gets knocked off the blockchain by the majority implementation.
2 is potentially worse as it means users of your implementation will fork off into their own blockchain. However unless there are significant miners using your implementation your blockchain will gain blocks extremely slowly until it's difficulty readjusts and that readjustment will take a long time because readjustmenet intervals are measured in blocks not time.
In summary as long as you require a reasonable number of confirmations and keep an eye on the block rate i'd say the risk of such an issue allowing a double spend attack by an attacker with normal computing resources* is fairly low.
A much bigger risk IMO is that you fail to properly verify proof of work allowing an attacker to feed you blocks they generate at an arbitary rate.
* An attacker with hashing power that represents a significant fraction of the bitcoin networks hashing power is another matter but such an attacker could probablly profit more by just mining normally than by attacking you.
"Wine is not an emulator" reffers to the fact that wine is not emulating the CPU. It still has to emulate windows.
Wine is fundamentally a layer that maps the functionality that windows programs expect onto the functionality that linux provides. When writing a mapping layer like that sometimes that mapping will be easy and of negligable overhead. Other times the functionality will not map well and the mapping layer will have to go to more effort to simulate them..
Also the way MS volume and to a lesser extent OEM licensing generally works is that you buy the latest version and then use downgrade rights to get the version you really want. So sales of win8 licenses don't mean people are actually using them to run win8.
If a company has an old machine which is currently licensed for XP or Vista and wants to put win7 on it than afaict they will need to buy a win8 license for it. (one win8 license sold) If a company buys a new machine from a vendor that doeesn't offer that machine with a win 7 pro license and wants to put winXP on it (because they aren't ready to migrate yet) then afaict they will also need to buy a win8 volume license for it since the standard OEM edition includes no downgrade rights at all and the PRO OEM edition only includes downgade rigths to vista. (two win8 licenses sold) If a company buys a new machine from a vendor that doesn't offer that machinew ith a win 7 license and wants to put win 7 on it then they will buy it with win 8 pro and downgrade (one win8 license sold)
AIUI skype first tries direct connection using nat traversal techniques if needed. If that fails it routes the call via a node with a public IP address (they used to (ab)use customers on open internet connections to provide this service but nowadays I belive they provide it from their own servers).
Actually I think all we really needed was a transition mechanism that went with the flow of NAT e.g.
1: for each IPv4 address and UDP port combination an IPv6 address would be allocated. 2: IPv6 packets passing over legacy infrastructure would be encapsulated in a UDP packet. An anycast address would be created to represent IPv6 addresses with no IPv4 equivilent. 3: if a NAT changed the IPv4 address or UDP port of a packet containing an encapsulated IPv6 packet then the IPv6 addresses of the packet inside would be updated to match
With this system the end systems and internet core would need to be updated, but the rest of the existing infrastructure could be left in place.
But i'm just a nobody. Those with power over the stamdards process were on a crusade against NAT so such a system would be unthinkable to them and the transition mechanisms we got either ignored NAT (6to4) or fought it (teredo). Worse still ISPs didn't take either of those transition mechanisms seriously meaning that connectivity between users of transition mechanisms and users of native IPv6 has been poor.
To track abuse reliablly from behind a NAT two things are required
1: the service being abused logs port number information as well as IP and time information 2: the NAT keeps sufficient logs to map that IP/port/time combination back to a user.
If the NAT keeps sufficient logs then in some cases item 1 may not be required, for example if the abused service can also provide the IP the abuse was received on then that is likely to narrow things down significantly.
Yeah, it's sad but it was also inevitable in a world of companies driven more by selfish buisness interests than a desire to improve the system as a whole.
The thing is NAT delivers it's benefits immediately. You deploy the NAT box and then you can connect more computers than you have IPv4 address for. Simple. Yes some applications will break, that is why if you are a provider selling service you deploy it on your lowest tier customers who are least likely to be using such applications and represent the smallest loss of revenue if they decide to quit over the issue. If you are a company serving internal users you work out who does and doen't need to accept incoming connections to perform their buisness role.
For most networks* IPv6 only delivers it's benefits when a substantial fraction of OTHER PEOPLE have also deployed it thereby allowing you to start deploying IPv6 only systems in roles that need external connectivity. Until then it's just an extra cost with no benefit. So the selfish but rational thing to do is to wait for other people to go through the pain of early IPv6 deployment and then learn from their mistakes.
* There is at least one provider that is so damn big that they ran out of private IPv4 addresses to address systems that did not need external connectivity but that is the exception.
Worse than that with the rate at which many people change email addresses you probablly don't even actually need access to the victims real email address, just an address that looks sufficiently plausible that the contacts think it's the victim.
If you are going to use this feature and want your account to remain secure you need to carefully instruct the friends on when they should and should not give out the code (preferablly in person only) and make sure that you can trust them to follow those instructions. Sadly I doubt that will happen in most cases.
The cherry picking started years ago though. Sure the incumbent telco (BT for me) will give you a copper pair that will support voice calls and 14.4K (or was it 28.8 I don't remember) dialup and if you pay enough they will sell you expensive leased line services. But broadband is only available to those the telco thinks it profitable to offer it too* and even where it is available the speeds can be terrible.
I'm pretty sure that here we never had any requirements for the cablecos to wire up everyone round here but that is something that may vary between different places. I'm not too familar with the US but I know there are places there that don't have cable.
Interestingly there is a group here in the UK who reckon they can run a viable buisness offering gigabit fiber (and it's point to point fiber, not PON) in a rural area using blown fiber and running it across farm fields rather than along roads (much lower digging costs that way, but it requires the farmers to be cooperative, lukilly farmers want decent internet too). It will be interesting to see how they fare and whether copycats will pop up.
*basically those who either live in a cableco area or where there is a phone line available that is both short enough and not via DACs
Building your website on dynamic content is oh so tempting but it also makes it really easy to get knocked offline if you get a sudden burst of popularity.
Normal web serving of static files scales pretty well to lots of clients requesting the same thing. The files in question will sit in the server's disk cache and copying it from there onto the wire is a trivial process. Furthermore the server will send details of when the file was last modified so clients and proxies can do conditional get requests and only refetch the file if it's changed. If you do run out of bandwidth then you can contract a caching service put it between your server and your clients and it will just work.
Pages generated on demand by webapps OTOH often takes significant CPU work and many database queries on the server to produce. Modification time stamps have to be explicitly implemented in the webapp and even if they are implemented the webapp may still have to perform multiple database queries to work out when the page was last modified. The result is that sites which generate pages on demand often end up running out of CPU long before they run out of bandwidth.
It's possible to cache the pages generated by webapps but it requires support from the webapp and someone with the skill to configure the webapp and cache to work together. Merely shoving a cache running on it's default configuration in front of a webapp will achieve very little. I suspect that is what has happened here.
"conventional" fossil fuel (and nuclear if you can find a way to shut up or bypass the nimbys) power plants can be put near where the powe is needed. They also for the most part* tend to generate power when the operators ask them to.
Renewable generation has to be put where the resources are and tends to be far more erratic in it's output**.
The result is that in a renewables powered world the grid will need to have much increased capacity for long distance transmission so that a supply peak in one area can be used to balance a load peak in another area. It is also likely to need storage.
* Yes I know there is some downtime but afaict most of it can be scheduled in advance. ** With the exception of dam based hydro
Hydroelectric (They don't talk about this much, I am not sure why)
Hydro can be broadly divided into three categories.
Waterfall based, find a large natural waterfall, for example niagra falls and construct a bypass route with turbines in it. Power available is large and is limited largely by how much you are prepared to reduce the natural "spectacle of the waterfall" (according to wikipedia at niagra falls one third is taken by the US, one third by canada and one third is left to nature).
Dam based, put a large dam across a river and send the water through turbines. This is in many ways an ideal power source since it can supply very high peak power with the utility choosing to spend the energy stored by the dam whenever they feel it nessacery. Of course it also floods a lot of land and creates issues for fish and boats.
Run of the river, put turbines in a flowing river.
The problem is that most sites for the first two categories are either already taken or politically difficult (people don't like it when you propose flooding thier homes) and the third category has many of the same issues that plague other renewables (low energy available per site, intermittent power, etc)
Bitcoin mining is starting to move towards ASICs now.
But ignoring that even with FPGA while the FPGAs themselves are standard parts the boards usually aren't. Afaict most off the shelf boards for FPGAs fall into one of two categroies. Either they are PCIe/PXIe cards designed to move a lot of data over a bus system or they are hardware dev boards with loads of different interfaces for a developer to play with. Bitcoin mining needs neither of those, it just needs power and a way to get a tiny ammount of data in and out. The result is an off the shelf FPGA board is a poor value proposition for mining and a mining optimised FPGA board isn't much use for anything else.
I guess you could desolder the FPGAs from your no longer viable FPGA boards and then reball them and try and sell them but I think you'd find it pretty hard to find a buyer for such parts (afaict reballing voids the warranty) and if you did find one you'd have to sell them at a massive discount to fresh FPGAs from the manufacturer.
Freebsd and gentoo at least also have binary package systems.
Afaict the difference is that on BSD/gentoo building from source at install time is the primary method while installing binaries is an extra. On debian installing binary packages is the primary method while building from source at install time is an extra.
You don't have to upgrade every version but you pretty much have to upgrade every 2-3 versions if you want to keep getting security updates and support for new hardware.
Right now afaict most companies have either just upgraded from XP to 7 or are in the process of doing so. In principle a company could go straight from XP to 8 and maintain security support throughout but a combination of dislike for the interface and the fact that companies need time to plan things means that I haven't heard of anyone doing this.
With linux you have to upgrade more often but at least you don't have to pay through the nose to do it.
That may have been the intention but in practice freedom to redistribute without paying any royalties means that downloadable copies are available free of charge and physical media copies are available very cheap. I'm sure this factors into many peoples descisions on what software to use.
If a crime was committed you need to punish the *people* who did it.
If I had free choice of punishments i'd say chain them up in the stocks for a week or two and let people throw rotten fruit at them. Then send them to do hard labour for a year or so in a remote mining camp with the condition that any attempt to access or borrow against the wealth they have in their life outside punishment will result in permanent confiscation of that wealth. Visits from friends and family would be allowed but at least half the cost of those visits would have to come out of their payment for work in the mines with the remainder being paid by the visiting friend of family member and any gifts during those visits would be limited to token levels.
In particular, any movement of small amounts of money (in the $100 range) between countries typically takes upwards of 50% of the total in various fees (and that assumes 1st-world countries with more-or-less legitimate banking and postal systems on both ends of the transaction).
If I as a brit receive a commercial paypal payment in dollars from an american and choose to convert it to pounds (I also have the option of keeping it in dollars) I will pay a 3.4% +20p transaction fee, a 0.5% cross-border fee, a 2.5% currency conversion fee. A total of arround 6.5%. Fees for international credit card transactions are comparable
Yes some banks charge stupid fees for small international transactions but that just means avoiding using those banks for small international transfers, not avoiding the whole regular financial system.
The biggest extra cost with buying stuff internationally vs buying stuff domestically in my experiance has been the delivery charges from the supplier and customs fees from the carriers, not the costs of making the payment.
The likelihood of finding a datacenter with P&C costs low enough to justify the expense of moving servers for that reason alone is pretty low so the decision to move would require additional motives in most cases.
The obvious one being hardware upgrades. Many companies replace their servers every few years anway and there is no real reason the replacements have to be hosted in the same datacenter as the servers being replaced.
MS had already started the process of gimping the start menu in win7, they just went full retard in win8.
The initial start menu isn't too bad in win7 but when you go to the full list of programs it's held within a little box rather than using the screen height it opens in a small box. This is bad enough on a secondary machine with relatively few programs installed, I dread to think what it would be like on my primary office machine.
The gene is out there in every grain elevator. Once the patent expires you use roundup once and you have a field full of roundup resistant plants. Then you save seeds.
What if monsanto develops "roundup ready 2.0" which also contaminates every grain elavator? how will you select for "roundup ready" (for which the patents would have expired) without selecting for "roundup ready 2.0" (for which the patents would still be in force)?
Afaict it's not explicitly stated but it's implied by a caption on page 24 of the slides pdf that someone linked above.
You can reduce the inductor and capacitor sizes a lot by increasing the switching frequency. Of course doing so will likely increase your switching losses but it may still be worth it if it lets you put the regulator closer to the load. Especially given the ever lower voltages that modern chips are running at.
The protocol can only be ammended if you can get everyone who matters (most of the miners and major exchanges) to agree to the ammendments. Otherwise you get a damaging fork. Little fixes like increasing the maximum block size to allow for more users or fixing obvious bugs are pretty uncontraversial and likely to be accepted. Changing the core rules on which bitcoin was based is likely to be a much harder sells.
As for transaction fees they only apply to bitcoins that are moving arround. They don't apply to bitcoins that are lost or hoarded (and there is no way for anyone other than the owner of the bitcoins to know the difference between lost bitcoins and hoarded bitcoins.
Failure to do so can lead to opening up security holes via consensus failure which can in turn lead to double spending (and thus your users lose money!).
Afaict roughtly speaking you can divide differences into two categories.
1: you accept something that the majority implementation doesn't
2: you fail to accept somethign that the majority implementation does.
1 isn't so bad, the strongest blockchain rules mean that a block containing something you accept but the majority doesn't is unlikely to ever see more than one "confirmation" before it gets knocked off the blockchain by the majority implementation.
2 is potentially worse as it means users of your implementation will fork off into their own blockchain. However unless there are significant miners using your implementation your blockchain will gain blocks extremely slowly until it's difficulty readjusts and that readjustment will take a long time because readjustmenet intervals are measured in blocks not time.
In summary as long as you require a reasonable number of confirmations and keep an eye on the block rate i'd say the risk of such an issue allowing a double spend attack by an attacker with normal computing resources* is fairly low.
A much bigger risk IMO is that you fail to properly verify proof of work allowing an attacker to feed you blocks they generate at an arbitary rate.
* An attacker with hashing power that represents a significant fraction of the bitcoin networks hashing power is another matter but such an attacker could probablly profit more by just mining normally than by attacking you.
"Wine is not an emulator" reffers to the fact that wine is not emulating the CPU. It still has to emulate windows.
Wine is fundamentally a layer that maps the functionality that windows programs expect onto the functionality that linux provides. When writing a mapping layer like that sometimes that mapping will be easy and of negligable overhead. Other times the functionality will not map well and the mapping layer will have to go to more effort to simulate them..
Also the way MS volume and to a lesser extent OEM licensing generally works is that you buy the latest version and then use downgrade rights to get the version you really want. So sales of win8 licenses don't mean people are actually using them to run win8.
If a company has an old machine which is currently licensed for XP or Vista and wants to put win7 on it than afaict they will need to buy a win8 license for it. (one win8 license sold)
If a company buys a new machine from a vendor that doeesn't offer that machine with a win 7 pro license and wants to put winXP on it (because they aren't ready to migrate yet) then afaict they will also need to buy a win8 volume license for it since the standard OEM edition includes no downgrade rights at all and the PRO OEM edition only includes downgade rigths to vista. (two win8 licenses sold)
If a company buys a new machine from a vendor that doesn't offer that machinew ith a win 7 license and wants to put win 7 on it then they will buy it with win 8 pro and downgrade (one win8 license sold)
AIUI skype first tries direct connection using nat traversal techniques if needed. If that fails it routes the call via a node with a public IP address (they used to (ab)use customers on open internet connections to provide this service but nowadays I belive they provide it from their own servers).
Actually I think all we really needed was a transition mechanism that went with the flow of NAT e.g.
1: for each IPv4 address and UDP port combination an IPv6 address would be allocated.
2: IPv6 packets passing over legacy infrastructure would be encapsulated in a UDP packet. An anycast address would be created to represent IPv6 addresses with no IPv4 equivilent.
3: if a NAT changed the IPv4 address or UDP port of a packet containing an encapsulated IPv6 packet then the IPv6 addresses of the packet inside would be updated to match
With this system the end systems and internet core would need to be updated, but the rest of the existing infrastructure could be left in place.
But i'm just a nobody. Those with power over the stamdards process were on a crusade against NAT so such a system would be unthinkable to them and the transition mechanisms we got either ignored NAT (6to4) or fought it (teredo). Worse still ISPs didn't take either of those transition mechanisms seriously meaning that connectivity between users of transition mechanisms and users of native IPv6 has been poor.
Mobile providers have been doing it for ages but at least here in the UK fixed line providers generally haven't.
To track abuse reliablly from behind a NAT two things are required
1: the service being abused logs port number information as well as IP and time information
2: the NAT keeps sufficient logs to map that IP/port/time combination back to a user.
If the NAT keeps sufficient logs then in some cases item 1 may not be required, for example if the abused service can also provide the IP the abuse was received on then that is likely to narrow things down significantly.
Yeah, it's sad but it was also inevitable in a world of companies driven more by selfish buisness interests than a desire to improve the system as a whole.
The thing is NAT delivers it's benefits immediately. You deploy the NAT box and then you can connect more computers than you have IPv4 address for. Simple. Yes some applications will break, that is why if you are a provider selling service you deploy it on your lowest tier customers who are least likely to be using such applications and represent the smallest loss of revenue if they decide to quit over the issue. If you are a company serving internal users you work out who does and doen't need to accept incoming connections to perform their buisness role.
For most networks* IPv6 only delivers it's benefits when a substantial fraction of OTHER PEOPLE have also deployed it thereby allowing you to start deploying IPv6 only systems in roles that need external connectivity. Until then it's just an extra cost with no benefit. So the selfish but rational thing to do is to wait for other people to go through the pain of early IPv6 deployment and then learn from their mistakes.
* There is at least one provider that is so damn big that they ran out of private IPv4 addresses to address systems that did not need external connectivity but that is the exception.
Worse than that with the rate at which many people change email addresses you probablly don't even actually need access to the victims real email address, just an address that looks sufficiently plausible that the contacts think it's the victim.
If you are going to use this feature and want your account to remain secure you need to carefully instruct the friends on when they should and should not give out the code (preferablly in person only) and make sure that you can trust them to follow those instructions. Sadly I doubt that will happen in most cases.
The cherry picking started years ago though. Sure the incumbent telco (BT for me) will give you a copper pair that will support voice calls and 14.4K (or was it 28.8 I don't remember) dialup and if you pay enough they will sell you expensive leased line services. But broadband is only available to those the telco thinks it profitable to offer it too* and even where it is available the speeds can be terrible.
I'm pretty sure that here we never had any requirements for the cablecos to wire up everyone round here but that is something that may vary between different places. I'm not too familar with the US but I know there are places there that don't have cable.
Interestingly there is a group here in the UK who reckon they can run a viable buisness offering gigabit fiber (and it's point to point fiber, not PON) in a rural area using blown fiber and running it across farm fields rather than along roads (much lower digging costs that way, but it requires the farmers to be cooperative, lukilly farmers want decent internet too). It will be interesting to see how they fare and whether copycats will pop up.
*basically those who either live in a cableco area or where there is a phone line available that is both short enough and not via DACs
Building your website on dynamic content is oh so tempting but it also makes it really easy to get knocked offline if you get a sudden burst of popularity.
Normal web serving of static files scales pretty well to lots of clients requesting the same thing. The files in question will sit in the server's disk cache and copying it from there onto the wire is a trivial process. Furthermore the server will send details of when the file was last modified so clients and proxies can do conditional get requests and only refetch the file if it's changed. If you do run out of bandwidth then you can contract a caching service put it between your server and your clients and it will just work.
Pages generated on demand by webapps OTOH often takes significant CPU work and many database queries on the server to produce. Modification time stamps have to be explicitly implemented in the webapp and even if they are implemented the webapp may still have to perform multiple database queries to work out when the page was last modified. The result is that sites which generate pages on demand often end up running out of CPU long before they run out of bandwidth.
It's possible to cache the pages generated by webapps but it requires support from the webapp and someone with the skill to configure the webapp and cache to work together. Merely shoving a cache running on it's default configuration in front of a webapp will achieve very little. I suspect that is what has happened here.
"conventional" fossil fuel (and nuclear if you can find a way to shut up or bypass the nimbys) power plants can be put near where the powe is needed. They also for the most part* tend to generate power when the operators ask them to.
Renewable generation has to be put where the resources are and tends to be far more erratic in it's output**.
The result is that in a renewables powered world the grid will need to have much increased capacity for long distance transmission so that a supply peak in one area can be used to balance a load peak in another area. It is also likely to need storage.
* Yes I know there is some downtime but afaict most of it can be scheduled in advance.
** With the exception of dam based hydro
Hydroelectric (They don't talk about this much, I am not sure why)
Hydro can be broadly divided into three categories.
Waterfall based, find a large natural waterfall, for example niagra falls and construct a bypass route with turbines in it. Power available is large and is limited largely by how much you are prepared to reduce the natural "spectacle of the waterfall" (according to wikipedia at niagra falls one third is taken by the US, one third by canada and one third is left to nature).
Dam based, put a large dam across a river and send the water through turbines. This is in many ways an ideal power source since it can supply very high peak power with the utility choosing to spend the energy stored by the dam whenever they feel it nessacery. Of course it also floods a lot of land and creates issues for fish and boats.
Run of the river, put turbines in a flowing river.
The problem is that most sites for the first two categories are either already taken or politically difficult (people don't like it when you propose flooding thier homes) and the third category has many of the same issues that plague other renewables (low energy available per site, intermittent power, etc)
Bitcoin mining is starting to move towards ASICs now.
But ignoring that even with FPGA while the FPGAs themselves are standard parts the boards usually aren't. Afaict most off the shelf boards for FPGAs fall into one of two categroies. Either they are PCIe/PXIe cards designed to move a lot of data over a bus system or they are hardware dev boards with loads of different interfaces for a developer to play with. Bitcoin mining needs neither of those, it just needs power and a way to get a tiny ammount of data in and out. The result is an off the shelf FPGA board is a poor value proposition for mining and a mining optimised FPGA board isn't much use for anything else.
I guess you could desolder the FPGAs from your no longer viable FPGA boards and then reball them and try and sell them but I think you'd find it pretty hard to find a buyer for such parts (afaict reballing voids the warranty) and if you did find one you'd have to sell them at a massive discount to fresh FPGAs from the manufacturer.
Freebsd and gentoo at least also have binary package systems.
Afaict the difference is that on BSD/gentoo building from source at install time is the primary method while installing binaries is an extra. On debian installing binary packages is the primary method while building from source at install time is an extra.
You don't have to upgrade every version but you pretty much have to upgrade every 2-3 versions if you want to keep getting security updates and support for new hardware.
Right now afaict most companies have either just upgraded from XP to 7 or are in the process of doing so. In principle a company could go straight from XP to 8 and maintain security support throughout but a combination of dislike for the interface and the fact that companies need time to plan things means that I haven't heard of anyone doing this.
With linux you have to upgrade more often but at least you don't have to pay through the nose to do it.
That may have been the intention but in practice freedom to redistribute without paying any royalties means that downloadable copies are available free of charge and physical media copies are available very cheap. I'm sure this factors into many peoples descisions on what software to use.