I have Verizon Business DSL for my house for the express purpose of getting a higher speed and avoiding the crap restrictions on Residential service. It works great: I pay a bit more and they don't give me any crap.
Actually, with a programmable router in your house and another in a data center somewhere bonding a bunch of crappy DSL lines together should be entirely feasible. It'd be obnoxious and expensive though - my quick figuring is showing that it's not a good deal money-wise.
I assume the main difference is the total available bandwidth (both directions) is much higher with Fios.
For VoIP, as with many realtime applications, the bandwidth is much less important than the latency. A VoIP call over a connection with 128k of bandwidth and 5ms latency will sound great. A VoIP call over a 100 meg connection with 500ms latency will sound terrible.
In such a situation, all the clues in the world won't get you what you want.
Use Skype, it's encrypted p2p so it's annoying to block. If they do block that, you could get more advanced and rent a virtual server and set up an encrypted tunnel using a protocol they don't block. If they make the latency so bad that VoIP is worthless or do protocol white listing or something, their service will suck so much that any competitor will obviously be better than they are.
Overage on my cell phone costs some stupid rate per minute, and even more for international calls. My VoIP service costs $0/month + $0.023/minute to almost anywhere. I don't see any reason not to take advantage of the better price of VoIP service.
Erh... comparing the systems of Sweden and the USA isn't really a good idea, pal. They are VERY different. You'd notice when you see the paycheck of a Swede and realize that he pays about 10 times the tax you pay. I've known people from there who paid about 50% income tax. Yes, half their paycheck went straight back to the feds.
Comparing them is an excellent idea, because it allows us to see how they differ. The Swedish system doesn't seem to suffer from as much lobbyist corruption as the USA does - instead it has the disadvantage of higher taxes. My point isn't that trying to replicate the Swedish system would be good (or even possible) for the United States, simply that Sweden, with a socialist republic with a relatively small population, is an example of the one political / economic setup that has actually been tested and shown to work largely as desired.
Colonisation of space isn't possible for reasons of really really basic physics, and it's a depressing how few 'believers' are engaging with Mr Stross' actual case.
It's depressing to me how little time you actually spent evaluating Mr Stross' case. He makes the fatal assumption that space colonization is only interesting if you can colonize planets, and that's one of the key things he gets wrong. After going through all the effort to get enough people to form a colony out of the Earth's gravity well, why would you want to ship them down another one?
As for "isn't possible for reasons of really basic physics", bullshit. Sure, we can't generate enough energy to push much of anything much of anywhere with hydrogen/oxygen chemical rockets - luckily we don't have to use those. Nuclear pulse propulsion works fine, and getting pure-hydrogen detonation looks reasonably feasible. If we can get fusion power working, we get to play with all kinds of more interesting propulsion methods - and energy production that efficient it solves most of the "survival in space" problem pretty well too.
Funny enough, the only market model that would give our product acutal value is the communist one, where the value of a product is determined by the amount of work necessary to create it. Unfortunately, we already know that the model doesn't work.
Do we really? From what I've seen, pure communism is in the exact same realm as pure free-market capitalism: really nice on paper, but never successfully tested because people cheat and warp the system in their favor enough that it's not pure enough to have the desired properties anymore. Instead we get these janky socialist/capitalist hybrid systems (note that socialism isn't communism) that - at least under democratic republic governments - mostly work with small populations (i.e. Sweden) or slowly degrade into "corporate feudalism" with larger populations (i.e. the USA).
Most people I know who pirate Windows and Windows software don't consider Linux as an interesting alternative because "Windows is free too and has free games". If Windows really cost $100 and Office really cost $300 and Photoshop really cost $400 then a lot of them would think that Ubuntu was the obvious choice - going for Windows + Software would double the cost of the computer. Hell, for that money most of them would figure out how to run their WoW and COD3 under Wine.
I like either GPL version, but if you're not too hung-up on using GPL, http://www.opensource.org/ has a whole array of open-source offically-sanctioned licensing - one of those may fit your needs better. (cue RMS fans w/ mod points stampeding in protest, but seriously; if it does the job, use it).
So... you're suggesting that he solve his GPL version compatibility problem by choosing some other license that's potentially incompatible with all versions of the GPL? Somehow I don't think that's going to help.
I don't release any of my code with the "or later" bit, because I don't know if I'll agree with what comes later.
That plan is great until you start accepting code from other people. There will be new GPL revisions periodically, and you don't want your project to be stuck in the position that Linux is in. At very least, I'd suggest requiring that contributors allow you to relicense their code to future versions of the GPL at your discretion.
This is misleading at best. (...) What you say is true only if a library is licensed under the GPL (and not the LGPL).
Right. That's why he said "GPL" and not "LGPL". There are a number of libraries that are licensed explicitly under the GPL with the express purpose of requiring that code linked with them be released under the GPL. In the specific case of "GPLv2 only" libraries, this could cause something of a mess with GPLv3 - hopefully the authors can be persuaded to change their license to "GPLv2 or later" or "GPLv2 or v3".
Cable television is so over-regulated and wrapped up in anti-compeditive contracts and local-monopoly contracts that it's already outside the realm of "small government" and the free market. The only thing that can really effect it is changing the regulations.
Personally, I'd like to see all of the local monopoly contracts get replaced by a full-bandwidth net neutrality rule. We have the technology to make all television be on-demand streamed over IP from companies other than the local telecoms. That's the only way to really allow competition in the market, but instead we get FIOS that's allocated 1/10th for non-neutral internet and 9/10ths for Verizon services like FIOS TV.
until we see a lot more real-world apps running on multiple cores, we won't know how much of a performance gain will be seen.
You can estimate that sort of thing reasonably well. A lot of things parallelize in some really obvious way - enough that you'll get better than twice the throughput if you move from one to four cores. Other things would gain a perceived performance advantage simply by using a concurrent programming model even on a single core - tabbed web browsers with plugins / javascript are a good example.
I'd say anything less than a average improvement of 25% wouldn't justify rewriting a legacy app to accommodate multiple cores.
Only some few really obnoxious cases like finite state machines can't be parallelized for a >25% performance gain. And even for those cases, it frequently turns out that you want to run more than one of them in parallel anyway.
I do not agree with killing and eating these animals, unless you're doing it with nothing but a knife. A hunter with a rifle vs. a deer or moose is not a fair fight.
Screw "fair fight", these are walking chunks of self-reproducing steak we're talking about. The question isn't "is it fair", the question is "if we take X amount of steak now, what impact will that have on steak harvests next year?". As long as we're using our steak resources sustainably, it's all good.
Are we going to be able to buy 50W CPUs in five years
Sure. You can even get a 1W CPU today if you want. There's just an energy / performance tradeoff, and the V8 goes for all-performance. "Normal" desktop processors today have design power usages of either 65 or 90 watts. Low power 45W desktop processors are available, and you can go to notebook / specialty processors below that.
Half-made-up answer to the rest: From what I have heard, Linux will handle up to 8 (some say 16) quite well, but tends to taper off after that.
Linux probably scales a bit better than that now, but it's not crazy like some systems.
On the other hand, Solaris is a free-software operating system that you could use on your desktop (it's a little rougher than Linux, but not too bad), and it'll handle 100+ cores no problem.
If you use it to play games or rip one DVD at a time it won't be much faster than if you had only one or two cores.
But that's just because the software isn't written to take advantage of more cores yet. Video transcoding can be parallelized pretty well, and games definitely can use all the processing power they can get.
Intel is trying to pre-empt AMD marketing Barcelona as the one true 8 core workstation processor. AMD is going to have a somewhat more appealing offering, especially as a gaming platform what with non-registered RAM, but simply by hyping their server platform as a workstation Intel gets to get to an 8 core enthusiast platform first. And with multi-threaded applications so far behind, the performance difference between two native quad core processors communicating via hypertransport and two dual-dual core processors communicating over the FSB may not even hurt Intel's initial benchmarks much.
Multi-core and multi-threaded processors are innately different to program for than compute clusters or even multi-socket SMP systems. On a Core2Duo, the delay for communicating between threads is the same as a level 1 cache miss - which isn't that big a deal at all. On an UltraSparc T1 it's the same as a level 1 cache *hit* when the two threads are running on the same core. This means it starts to be feasible to spawn "asynchronous subroutines" for even reasonably trivial operations.
Once you start thinking like that, it becomes reasonably obvious that most of the programs that we use are naturally somewhat parallel. It's just that after making them serial to work on serial processors, converting that code into parallel code is a mess.
Concurrent programming isn't really that hard a problem. To do it easily using todays tools requires some "design patterns" that many programmers aren't used to, but the concurrent models actually end up being cleaner / more intuitive than the serial model in many cases (including things like network programming and GUI programming).
The problem is that the tools don't make these patterns blindly easy, and they require a little bit of programmer discipline to use properly. That occasionally includes giving up minor performance advantages for code cleanliness - think of it like the "don't use gotos" rule in structured programming.
That doesn't solve the general "number crunching" problem - for that you need parallel algorithms - but that's been solved in scientific computing clusters for decades.
That sucks, but that's all way easier to fix than the US problem of simply not putting in any physical infrastructure at all - in spite of the fact that the telecom companies received federal funding for the infrastructure already.
Laughingstock? Seriously, you need to stop caring so much what other people think of you.
I just want a decent speed internet connection. I pay twice as much for a 3 Mbps / 768 kbps connection than a South Korean pays for a 100 Mbps symmetric connection. I'm not worried about what other people think - I'm pissed off that getting the same speed connect it would cost $30/month to get in Tokyo would cost me me more than $10,000 / month.
I have Verizon Business DSL for my house for the express purpose of getting a higher speed and avoiding the crap restrictions on Residential service. It works great: I pay a bit more and they don't give me any crap.
Actually, with a programmable router in your house and another in a data center somewhere bonding a bunch of crappy DSL lines together should be entirely feasible. It'd be obnoxious and expensive though - my quick figuring is showing that it's not a good deal money-wise.
For VoIP, as with many realtime applications, the bandwidth is much less important than the latency. A VoIP call over a connection with 128k of bandwidth and 5ms latency will sound great. A VoIP call over a 100 meg connection with 500ms latency will sound terrible.
Use Skype, it's encrypted p2p so it's annoying to block. If they do block that, you could get more advanced and rent a virtual server and set up an encrypted tunnel using a protocol they don't block. If they make the latency so bad that VoIP is worthless or do protocol white listing or something, their service will suck so much that any competitor will obviously be better than they are.
Overage on my cell phone costs some stupid rate per minute, and even more for international calls. My VoIP service costs $0/month + $0.023/minute to almost anywhere. I don't see any reason not to take advantage of the better price of VoIP service.
Comparing them is an excellent idea, because it allows us to see how they differ. The Swedish system doesn't seem to suffer from as much lobbyist corruption as the USA does - instead it has the disadvantage of higher taxes. My point isn't that trying to replicate the Swedish system would be good (or even possible) for the United States, simply that Sweden, with a socialist republic with a relatively small population, is an example of the one political / economic setup that has actually been tested and shown to work largely as desired.
It's depressing to me how little time you actually spent evaluating Mr Stross' case. He makes the fatal assumption that space colonization is only interesting if you can colonize planets, and that's one of the key things he gets wrong. After going through all the effort to get enough people to form a colony out of the Earth's gravity well, why would you want to ship them down another one?
As for "isn't possible for reasons of really basic physics", bullshit. Sure, we can't generate enough energy to push much of anything much of anywhere with hydrogen/oxygen chemical rockets - luckily we don't have to use those. Nuclear pulse propulsion works fine, and getting pure-hydrogen detonation looks reasonably feasible. If we can get fusion power working, we get to play with all kinds of more interesting propulsion methods - and energy production that efficient it solves most of the "survival in space" problem pretty well too.
Do we really? From what I've seen, pure communism is in the exact same realm as pure free-market capitalism: really nice on paper, but never successfully tested because people cheat and warp the system in their favor enough that it's not pure enough to have the desired properties anymore. Instead we get these janky socialist/capitalist hybrid systems (note that socialism isn't communism) that - at least under democratic republic governments - mostly work with small populations (i.e. Sweden) or slowly degrade into "corporate feudalism" with larger populations (i.e. the USA).
Most people I know who pirate Windows and Windows software don't consider Linux as an interesting alternative because "Windows is free too and has free games". If Windows really cost $100 and Office really cost $300 and Photoshop really cost $400 then a lot of them would think that Ubuntu was the obvious choice - going for Windows + Software would double the cost of the computer. Hell, for that money most of them would figure out how to run their WoW and COD3 under Wine.
So... you're suggesting that he solve his GPL version compatibility problem by choosing some other license that's potentially incompatible with all versions of the GPL? Somehow I don't think that's going to help.
That plan is great until you start accepting code from other people. There will be new GPL revisions periodically, and you don't want your project to be stuck in the position that Linux is in. At very least, I'd suggest requiring that contributors allow you to relicense their code to future versions of the GPL at your discretion.
Right. That's why he said "GPL" and not "LGPL". There are a number of libraries that are licensed explicitly under the GPL with the express purpose of requiring that code linked with them be released under the GPL. In the specific case of "GPLv2 only" libraries, this could cause something of a mess with GPLv3 - hopefully the authors can be persuaded to change their license to "GPLv2 or later" or "GPLv2 or v3".
Cable television is so over-regulated and wrapped up in anti-compeditive contracts and local-monopoly contracts that it's already outside the realm of "small government" and the free market. The only thing that can really effect it is changing the regulations.
Personally, I'd like to see all of the local monopoly contracts get replaced by a full-bandwidth net neutrality rule. We have the technology to make all television be on-demand streamed over IP from companies other than the local telecoms. That's the only way to really allow competition in the market, but instead we get FIOS that's allocated 1/10th for non-neutral internet and 9/10ths for Verizon services like FIOS TV.
You can estimate that sort of thing reasonably well. A lot of things parallelize in some really obvious way - enough that you'll get better than twice the throughput if you move from one to four cores. Other things would gain a perceived performance advantage simply by using a concurrent programming model even on a single core - tabbed web browsers with plugins / javascript are a good example.
Only some few really obnoxious cases like finite state machines can't be parallelized for a >25% performance gain. And even for those cases, it frequently turns out that you want to run more than one of them in parallel anyway.
You can find it on his member page at the GNAA. Go to http://www.gnaa.us/, click "Members", and click "CornFlake917".
Screw "fair fight", these are walking chunks of self-reproducing steak we're talking about. The question isn't "is it fair", the question is "if we take X amount of steak now, what impact will that have on steak harvests next year?". As long as we're using our steak resources sustainably, it's all good.
Sure. You can even get a 1W CPU today if you want. There's just an energy / performance tradeoff, and the V8 goes for all-performance. "Normal" desktop processors today have design power usages of either 65 or 90 watts. Low power 45W desktop processors are available, and you can go to notebook / specialty processors below that.
Linux probably scales a bit better than that now, but it's not crazy like some systems.
On the other hand, Solaris is a free-software operating system that you could use on your desktop (it's a little rougher than Linux, but not too bad), and it'll handle 100+ cores no problem.
But that's just because the software isn't written to take advantage of more cores yet. Video transcoding can be parallelized pretty well, and games definitely can use all the processing power they can get.
Intel is trying to pre-empt AMD marketing Barcelona as the one true 8 core workstation processor. AMD is going to have a somewhat more appealing offering, especially as a gaming platform what with non-registered RAM, but simply by hyping their server platform as a workstation Intel gets to get to an 8 core enthusiast platform first. And with multi-threaded applications so far behind, the performance difference between two native quad core processors communicating via hypertransport and two dual-dual core processors communicating over the FSB may not even hurt Intel's initial benchmarks much.
Multi-core and multi-threaded processors are innately different to program for than compute clusters or even multi-socket SMP systems. On a Core2Duo, the delay for communicating between threads is the same as a level 1 cache miss - which isn't that big a deal at all. On an UltraSparc T1 it's the same as a level 1 cache *hit* when the two threads are running on the same core. This means it starts to be feasible to spawn "asynchronous subroutines" for even reasonably trivial operations.
Once you start thinking like that, it becomes reasonably obvious that most of the programs that we use are naturally somewhat parallel. It's just that after making them serial to work on serial processors, converting that code into parallel code is a mess.
Concurrent programming isn't really that hard a problem. To do it easily using todays tools requires some "design patterns" that many programmers aren't used to, but the concurrent models actually end up being cleaner / more intuitive than the serial model in many cases (including things like network programming and GUI programming).
The problem is that the tools don't make these patterns blindly easy, and they require a little bit of programmer discipline to use properly. That occasionally includes giving up minor performance advantages for code cleanliness - think of it like the "don't use gotos" rule in structured programming.
The simplest view into the method of concurrent programming that I'm talking about is here: http://video.google.com/videoplay?docid=8102320126 17965344
That doesn't solve the general "number crunching" problem - for that you need parallel algorithms - but that's been solved in scientific computing clusters for decades.
That sucks, but that's all way easier to fix than the US problem of simply not putting in any physical infrastructure at all - in spite of the fact that the telecom companies received federal funding for the infrastructure already.
It's safe. It's the really cute and funny kitty cat picture that occasionally shows up on goatse-looking URLs.
I just want a decent speed internet connection. I pay twice as much for a 3 Mbps / 768 kbps connection than a South Korean pays for a 100 Mbps symmetric connection. I'm not worried about what other people think - I'm pissed off that getting the same speed connect it would cost $30/month to get in Tokyo would cost me me more than $10,000 / month.