We're going to hit the quantum wall and the end of Moore's "Law" soon. The signs are all around us: CPU manufacturers throwing more processors ("cores") into chips and systems, CPU clock rate increases slowing down year over year. You won't be able to just "throw hardware at the problem" any more, in the very near future.
So, what does this mean for programmers?
Two things:
1. Parallel programming. You're going to have to figure out how to pull as much parallelism out of your problem (and spread that across all the CPUs you have to use) as you possibly can. However, there will always be an irreducible, non-parallel part of your program. That's the message of Amdahl's Law. Which leaves us with...
2. Instruction-efficient programming for those non-parallel codes. We won't be able to make the individual CPUs go faster once we hit the quantum wall; all we can do is use what we can get out of the hardware as efficiently as possible.
Study your algorithms well, and learn assembly language, if you want your programs to run fast. Compilers still aren't that good (though I have no doubt that there will be a renewed interest in making them better so that all the programmers who can't grok assembly can still be useful; it's called "leverage").
Oh, and keep an eye on FPGAs - reconfigurable computers morphed for the problem to be computed might just be the next big thing.
The main difference is that the cell phone networks are under a whole lot of technological flux. First, there was AMPS, then TDMA, then CDMA, and GSM (in the USA, anyway), now WCDMA (3G GSM), etc., etc.
Managing that is a bitch. POTS hasn't changed since DTMF was introduced, and their previous attempt at upgrading it (ISDN) failed.
Not that I have any sympathy for telecomms companies. They're all monopolistic bastards who will cheerfully screw the customer at every opportunity. It's the FCC's job (with our oversight) to make sure that there's enough competition in all markets so that they don't have that chance.
I wonder if this really is the largest donation in history, if you recast it into inflation adjusted dollars, and compare againt the largesse of Carnegie and others of his ilk?
The only reason that the ISPs can engage in application based service provision and traffic shaping is that we're allowing it!
If we all start using Encapsulated Security Protocol (ESP, part of IP Security), all they get to see is the IP addresses in the IP header - the rest is ESP with an encrypted payload. No more traffic shaping on an application basis because they can't see the transport protocol in use (e.g. TCP, UDP), let alone what application is in use. All they can do is traffic analysis, and shaping based on who you're talking to, but not what you're saying.
Very old rule: never say "no" - just quote an astronomical price to the people you don't want to work for. Who knows? They might say "yes" and you'll become really rich or powerful.
I've been approached by Microsoft a few times. My answer is always the same: I'll work for them if I get the authority to prevent any/all product from shipping if the product does anything with or to the Internet that isn't standards compliant. No more "embrace and extend." No more proprietary protocols and file formats.
...and the right protocol/system for it is netnews with NNTP.
If you make the NNTP links between servers match the physical topology of the Internet, you can make the guarantee that no message cross an Internet link (in a given direction) more than once. This is because the messages are all tagged with a network-wide unique message-ID, and duplicates (which are a necessary effects of a flood broadcast system) are rejected before they're sent.
You couple that with clean separation of content into enough different news groups, and users who subscribe to just what they're interested in, and voila! Efficient, reliable, fast distribution of information over the Internet, even better than the so-called "P2P" file sharing networks.
I oughta know - I am one of the guys who invented NNTP.
If you want to make a dent in spam, there are two entities to go after:
the senders of the spam E-mail.
the businesses that are selling the products or services being advertised.
I skimmed the act, and it's not clear to me that the businesses that commission spam are also under the gun here. I also didn't see provision for private cause of action ala junk fax.
What can they learn from it that we haven't already learned? They should concentrate on getting rich so they can buy the fruits of that research from us, rather than recapitulating what we've already done.
This is a classic "build or buy" decision, and for them, their money is best spent reinvested in their own markets.
The Internet turned 21 on January 1, 2004. The Internet was born on January 1, 1983 when the ARPANET converted from NCP to TCP/IP.
The ARPANET was Network 10. The ARPANET is dead. Long live the ARPANET!
Rather than opposing the PATRIOT Act outright on obvious civil liberties grounds, and thus giving the Republicans the opportunity to question their patriotism in "a time of war" (note carefully that Congress has not declared war), the Democrats did the next best thing:
The PATRIOT Act has a 5 year sunset clause.
This means that unless it is explicitly renewed by Congress, it goes away. President Bush made it clear that he wants the Act renewed/made permanent in his State of the Union address of 2004.
So, sometime in the next year or so, after the national elections I bet, Congressional hearings on the effectiveness of PATRIOT Act will begin, and the Executive Branch will have to rejustify the Act, and its effectiveness to the Congress.
If we're really lucky, Ashcroft will be out of office, and the new AG will allow the Act to quietly expire.
Failing that, it is up to all U.S. Citizens to make it clear to their elected representatives that unless the Act is allowed to expire or is explicitly repealed, they will be voted out of office in the next general election (every 2 years for Representatives and every 6 years for U.S. Senators).
IP Security in transport mode - so that your ISP has no idea what the heck you're doing, and thus cannot "prefer" or "degrade" any particular application.
Just turn off JavaScript. It's not useful anyway - it just sucks CPU on your computer, extra bandwith from your connection (to download it), and mostly it's for mouse-overs and other useless bells & whistles.
If your favorite web site uses it exclusively for navigation, bitch at them about making the site work without it.
Three years ago when the IETF met in London (UK), the crypto geeks took a little excursion north on a train to Bletchley Park. It was good fun to visit, particularly in that company. There is also a small computer museum there, too.
For those of you who are in/around Europe, I recommend it.
Yet another reason to be using IP security in transport mode. When you do this, all the ISP can see are the source & destination IP addresses, and the fact that the rest of the packet (transport protocol included) is encrypted.
No more spying.
No more "traffic shaping" based on the protocols you use.
Some urban communities do have fibre properly run around them, and properly run, e.g. Stockholm, Sweden.
However, others are completely hosed, e.g. Palo Alto, California. The fibre's been there for ages, and they're still not using it properly.
The trouble is that telephone companies hate competition, and any attempt to actually compete with them will result in them throwing whatever roadblocks they can into the way.
Computers have been of great benefit, also. Gene sequencing. Weather prediction. Medical imaging. How many lives saved by computers? How much better has life on the planet been made because of computers?
We're going to hit the quantum wall and the end of Moore's "Law" soon. The signs are all around us: CPU manufacturers throwing more processors ("cores") into chips and systems, CPU clock rate increases slowing down year over year. You won't be able to just "throw hardware at the problem" any more, in the very near future.
...
So, what does this mean for programmers?
Two things:
1. Parallel programming. You're going to have to figure out how to pull as much parallelism out of your problem (and spread that across all the CPUs you have to use) as you possibly can. However, there will always be an irreducible, non-parallel part of your program. That's the message of Amdahl's Law. Which leaves us with
2. Instruction-efficient programming for those non-parallel codes. We won't be able to make the individual CPUs go faster once we hit the quantum wall; all we can do is use what we can get out of the hardware as efficiently as possible.
Study your algorithms well, and learn assembly language, if you want your programs to run fast. Compilers still aren't that good (though I have no doubt that there will be a renewed interest in making them better so that all the programmers who can't grok assembly can still be useful; it's called "leverage").
Oh, and keep an eye on FPGAs - reconfigurable computers morphed for the problem to be computed might just be the next big thing.
http://en.wikipedia.org/wiki/Carterfone
The main difference is that the cell phone networks are under a whole lot of technological flux. First, there was AMPS, then TDMA, then CDMA, and GSM (in the USA, anyway), now WCDMA (3G GSM), etc., etc.
Managing that is a bitch. POTS hasn't changed since DTMF was introduced, and their previous attempt at upgrading it (ISDN) failed.
Not that I have any sympathy for telecomms companies. They're all monopolistic bastards who will cheerfully screw the customer at every opportunity. It's the FCC's job (with our oversight) to make sure that there's enough competition in all markets so that they don't have that chance.
I wonder if this really is the largest donation in history, if you recast it into inflation adjusted dollars, and compare againt the largesse of Carnegie and others of his ilk?
The only reason that the ISPs can engage in application based service provision and traffic shaping is that we're allowing it!
If we all start using Encapsulated Security Protocol (ESP, part of IP Security), all they get to see is the IP addresses in the IP header - the rest is ESP with an encrypted payload. No more traffic shaping on an application basis because they can't see the transport protocol in use (e.g. TCP, UDP), let alone what application is in use. All they can do is traffic analysis, and shaping based on who you're talking to, but not what you're saying.
Very old rule: never say "no" - just quote an astronomical price to the people you don't want to work for. Who knows? They might say "yes" and you'll become really rich or powerful.
I've been approached by Microsoft a few times. My answer is always the same: I'll work for them if I get the authority to prevent any/all product from shipping if the product does anything with or to the Internet that isn't standards compliant. No more "embrace and extend." No more proprietary protocols and file formats.
They usually smile and walk away after that.
...and the right protocol/system for it is netnews with NNTP.
If you make the NNTP links between servers match the physical topology of the Internet, you can make the guarantee that no message cross an Internet link (in a given direction) more than once. This is because the messages are all tagged with a network-wide unique message-ID, and duplicates (which are a necessary effects of a flood broadcast system) are rejected before they're sent.
You couple that with clean separation of content into enough different news groups, and users who subscribe to just what they're interested in, and voila! Efficient, reliable, fast distribution of information over the Internet, even better than the so-called "P2P" file sharing networks.
I oughta know - I am one of the guys who invented NNTP.
What the resonant frequency of those mirrors is...
If you want to make a dent in spam, there are two entities to go after:
I skimmed the act, and it's not clear to me that the businesses that commission spam are also under the gun here. I also didn't see provision for private cause of action ala junk fax.
What can they learn from it that we haven't already learned? They should concentrate on getting rich so they can buy the fruits of that research from us, rather than recapitulating what we've already done. This is a classic "build or buy" decision, and for them, their money is best spent reinvested in their own markets.
The Internet turned 21 on January 1, 2004. The Internet was born on January 1, 1983 when the ARPANET converted from NCP to TCP/IP. The ARPANET was Network 10. The ARPANET is dead. Long live the ARPANET!
Rather than opposing the PATRIOT Act outright on obvious civil liberties grounds, and thus giving the Republicans the opportunity to question their patriotism in "a time of war" (note carefully that Congress has not declared war), the Democrats did the next best thing:
The PATRIOT Act has a 5 year sunset clause.
This means that unless it is explicitly renewed by Congress, it goes away. President Bush made it clear that he wants the Act renewed/made permanent in his State of the Union address of 2004.
So, sometime in the next year or so, after the national elections I bet, Congressional hearings on the effectiveness of PATRIOT Act will begin, and the Executive Branch will have to rejustify the Act, and its effectiveness to the Congress.
If we're really lucky, Ashcroft will be out of office, and the new AG will allow the Act to quietly expire.
Failing that, it is up to all U.S. Citizens to make it clear to their elected representatives that unless the Act is allowed to expire or is explicitly repealed, they will be voted out of office in the next general election (every 2 years for Representatives and every 6 years for U.S. Senators).
IP Security in transport mode - so that your ISP has no idea what the heck you're doing, and thus cannot "prefer" or "degrade" any particular application.
Just imagine dodging taxis...
Turn off JavaScript support in your browser.
Just turn off JavaScript. It's not useful anyway - it just sucks CPU on your computer, extra bandwith from your connection (to download it), and mostly it's for mouse-overs and other useless bells & whistles.
If your favorite web site uses it exclusively for navigation, bitch at them about making the site work without it.
Who is the principal beneficiary if SCO wins?
Microsoft.
Who is under threat from Linux?
Microsoft.
Who already paid SCO?
Microsoft.
Which OSS OS will take over if Linux goes down?
BSD.
Ergo, SCO must also attack BSD.
Q.E.D.
Actually, it does work - I've done it.
Three years ago when the IETF met in London (UK), the crypto geeks took a little excursion north on a train to Bletchley Park. It was good fun to visit, particularly in that company. There is also a small computer museum there, too.
For those of you who are in/around Europe, I recommend it.
-Erik
Yet another reason to be using IP security in transport mode. When you do this, all the ISP can see are the source & destination IP addresses, and the fact that the rest of the packet (transport protocol included) is encrypted.
No more spying.
No more "traffic shaping" based on the protocols you use.
All they can do is traffic analysis.
It's called congestion collapse and the condition is described by RFC 896 by John Nagle.
Just firing packets into the network willy-nilly is very bad; it's the "tragedy of the commons" all over again...
Environmentalists (preachers, politicians) who know just what rules everyone should live by ... oh, except for them.
Some urban communities do have fibre properly run around them, and properly run, e.g. Stockholm, Sweden.
However, others are completely hosed, e.g. Palo Alto, California. The fibre's been there for ages, and they're still not using it properly.
The trouble is that telephone companies hate competition, and any attempt to actually compete with them will result in them throwing whatever roadblocks they can into the way.
Computers have been of great benefit, also. Gene sequencing. Weather prediction. Medical imaging. How many lives saved by computers? How much better has life on the planet been made because of computers?
It's not all gloom & doom!
Installing tcsh as csh is just wrong!
Apple MacOS X made this terrible mistake too.
If you must have tcsh, it's in NetBSD pkgsrc and trivially installed.
Sure. Just like the ARPANET wasn't an operational network...