Well, again, you need a backbone, but it too can be a wireless mesh.
The advantage of wireless is cost. How can Google offer to wire San Francisco for free, when BellSouth wants $6B to re-run phone cables in New Orleans? Digging trenches, setting up poles, and running wire is expensive. Wireless is practically free in comparison.
Let the WiMAX revolution begin! Well, at least in some other country...
Well, technically you are correct, and a global mesh of simple WiFI routers would be nearly useless. You still need a backbone.
However, WiMAX and microwave backbones are relatively cheap (a few thousand $ per node), high bandwidth, and very practical. Also, with Internet caching schemes supported by multiple vendors, the non-local patterns of Internet browsing don't kill the network. Some ISPs even cache BitTorrent data.
Again, there's no real show-stopper problems here, just our government standing in the way, instead of being a facilitator. Too bad Gore lost that first election. He would have had a chance to re-invent the Internet:-)
Not that I'm any kind of expert, but isn't WiMAX supposed to help us build such networks? The idea is to use point-to-multipoint WiMAX radios to cover spots as large as 40 miles in diameter, with local WiFI meshes at the ends. Then connect the WiMAX hubs together with point-to-point to make a higher level mesh. I've got a good place for a tower in my yard, and I'm up on a hill, so I'd like to be a hub.
You can even support mobile guys with such a network.
I hear that BellSouth asked the government for $6B (yes, billion) to rewire phone service in New Orleans. With wireless, it can be done so cheaply that companies donated the equipment needed for free. Remember BellSouth taking back the building they donated, because they were mad at New Orleans for accepting free internet service?
If we want a separate, cheap, fast wireless mesh, all we need is for the government to let us. The big phone companies have a lot of pull, expecially with our current government. The FCC wont allow the wireless mesh. They simply wont allocate the bandwidth. In New Orleans, the FCC allowed an emergency license to some spectrum, which was key to enabling ultra-cheap internet service.
Ham radio guys already have a tiny bit of frequency spectrum to play with. The result? They already have such a mesh, independent from the internet, and it's very cool. Check out:
http://eng.usna.navy.mil/~bruninga/aprs.html
There are no real technical show-stoppers here, just big brother and phone companies whispering sweet nothings in his ear.
Here's smilindog's rule on copyrights and their effects on engineers and programmers:
If your government doesn't adopt copyright protection, you will always be poorly paid.
There is a natural cycle that countries go through as they develop:
1) They start out with no economy, and just a bunch of poor smart guys. This was certainly the case in India and China 10 years ago, and still is the case in Romania, Russia and in many other countries. At this stage, the government encourages piracy. Otherwise they export money they barely have, are handicapped in training their smart guys, and their population wont get their tunes and games (very bad for stability).
2) If their government can be stable enough, and if they eliminate enough corruption, it's possible for foreign companies to save lots of money by outsourcing skilled labor to the country. This employs the smart guys, increases taxes, etc. It's a good thing basically.
3) As the contracting services economy builds, wages go up. More good news.
4) Eventually, growth slows in the skilled outsourcing market, as labor is becoming too expensive. Also, you've now got a bunch of smart guys with real-world experience developing real products. These experienced smart guys what to help the country grow by forming their own companies. This is the point where the government has to switch over to obeying copyright laws. It's the only way that all their smart, creative, experienced guys can create anything and sell it locally at a profit. Without a locally viable market, the economy stagnates.
There are great examples of all this. Taiwan is stuck in the no-copy-right zone, where their engineers are paid low wages. There's nothing they can do about it, because their economic model is fabbing cheap silicon wafers, and cheap skilled labor is key. Thus, the poor Taiwan engineer will be forced to work at below his value for many years to come (unless China invades).
India and China both have highly paid engineers. $25K/year is a lot of money, even for foreign companies to pay. Their growth is slowing, and their skilled and experienced smart guys are getting restless, unable to make money in their own countries. Both China and India are at the point where some level of copyright protection makes sense, so they can continue their growth.
Russia has been too corrupt and hostile to foreign companies. They're stuck in the position of loosing outsourcing contracts to China and India. However, if they begin to get their act together, and as China and India begin to enforce copyright protection, the outsourcing will naturally shift to Russia. Even China and India will outsource labor to them.
I hear that BellSouth asked Uncle Sam for $6B to rewire New Orleans! With Wimax/WiFi, the cost was so cheap (a few million dollars), companies were able to donate the needed equipment. I think I understand why BellSouth is pissed.
If you recall, a Republican from Texas is trying to make it illegal for cities to bypass the phone companies and offer free Wi-Fi. BellSouth has the GOP in it's pocket.
Finer circuitry decreases the size of a chip and cuts per-unit production costs... NOT!
Moore's Law is showing it's age... The cheapest transistors in the world are not build in 65nm. They are built in 180nm, a much older process.
In China, you can get 8-inch 180nm (.18u) wafers for $600. Today, a 90nm 8-inch wafer is more than 4X more expensive, and you cannot yet buy 65nm wafers. The cost per transistor is actually higher! And people wonder why we're taking our time to move to finer geometry processes!
The most important thing is to get everyone coding the same way. If you've had no structure in the past, this is extremely hard to do. No one will want to listen to you, and each programmer will feel their creative freedom has been compromised. If you can get people writing code in almost identical styles, then you'll find cooperation between them will improve greatly, easily justifying the effort. In my experience, most often these efforts fail, and you'll be the guy they blame, while also saying how dumb the whole idea was to start with.
So, the easy thing that most people do is practically worthless: force everyone to use a complicated header over each piece of code that describes the author, purpose, I/Os, etc. This will make your bosses happy without seriously changing anybodies coding style. It's the wimp approach and does nothing to improve productivity.
Or, you could take the hard road: force everyone to use a common coding style. For example, if you're a C++ shop, pick a set of templates (like STL, or others) and force everyone to use them. Pick a code format and make everyone use it. Do you use case or _'s to separate words in identifiers? Pick one and enforce it. It's so much easier working with code that your fingers know how to type.
My advice is to keep the 'official' coding style simple. Many of your company's programmers will hurt their brains trying to understand aspect oriented coding. You'll be lucky if they can use abstract base classes properly. Remember that the less than average programmer will likely be in charge of your code some day. Target the coding style to help him succeed. The geniuses in your group could succeed in FORTRAN, so don't worry about them.
As for details... there are so many coding styles, and each takes a book just to describe it. We document our data structures with entity relationship diagrams and have separate internal and external header files for modules. We all use the same collection classes. We use access functions to access fields of objects, rather than accessing them directly. We use an old CASE tool that automates memory management and generates virtual recursive desctructors for us. Every funtion has a comment, and we keep functions small. We improve quality with data structure self-tests, and an automated run of many data sets through our system each night. We use SVN. We make everyone code in EXACTLY the same way. We use capitals in identifiers, keep braces on the same line as the 'if', indent by 4 spaces, and have 50 other rules for how code should look. Sometimes we can't remember who wrote what code, and there's no way to know!
True. However, most people seem to think that IPv6 will be good for p2p. In reality, I still wont be able to connect to your toaster, and I still wont be able to connect to your BitTorrent client. I predict that the Skype kludge will win: STUN and a way to deal with the skrinking number of machines that are not STUN-able.
I'd say that IPv6 multicast is a totally unworkable kludge. Peer-to-peer emulation of multicast seems the way to go. You get most of the benefit, with not need to upgrade hardware, and no central commitee controlled by Microsoft/Cisco/Intel designing a protocol so complex that only Microsoft/Cisco/Intel can build it.
I know it's not what people want to hear, but NATs serve two purposes: it allows multiple computers to share a single IP, and that's important. However, it's also important as a mechanism that protects home users from the Internet.
When IPv6 becomes common, as it must, a new IPv6 NAT will almost certainly emerge to continue that isolation. Whether or not it gives any kind of real protection or not, homes users and home router providers aren't yet willing to allow guys like me to connect directly to your toaster.
I've seen multiple algorithms that are O(n^2), and a proof that O(n^2) is optimal. So, in a sense, the problem is solved, however, the algorithms I've seen so far are so complex, that it's difficult to prove that they are correct.
Generally, they make use of the fact that you can back up one spot by following the most recent loop. The idea is that instead of marking each door with a tick mark, you mark it with a number that you increment each time you go through a door. So, when you come to a place you've been to before, you can back up by following the highest numbered doors until you reach the previous room. You have to keep track of three numbers, your door counter, and the number on the floor of that last room you were in, and a counter so you can label new rooms with a unique number.
However, this only works for backing up one room. As I recal, the modifications required to make this work basically convert the algorithm to depth-first search, but you have to embbed the stack info in numbers on the floors and doors, and you have to be able to pick up the depth-first search state whenever you come to a room that has not been finished. The hard part is proof of correctness.
I'd be very interested in hearing a good algorithm that wasn't so complex that I had lingering doubts about whether or not it actually works!
No planar embedding. Assume a 3-D maze. You can write what you like at each node, if it's constant space data.
It's basically a directed graph problem, but the kicker is that it's you with a marker, not a computer. The inability to go back through an edge is a physical constraint, which makes this problem different than problems faced by programmers. The optimal solution on a computer would be a simple depth first search with a linear time solution.
One thing I've heard is that all computer problems (not algorithms) with proven optimal order run-times are either constant, linear, n*log(n), n*log(log(n)), or expodential. For example, the problem of sorting using comparison is optimially solved in O(n*log(n)), but the bubble-sort algorithm is O(n^2). Are there no problems proven to require O(n^2) or O(n^3)?
I find that a simple maze to use for analysis is a linear chain from start to exit. At each node, there is also an edge back to the start. The random "run screaming" algorithm trivially requires expodential run-time for this maze, unless you're really fast:-). How long does your algorithm take?
This works! Another algorithm that works is just run screaming through the maze at random (screaming optional).
These are the two answers that I often hear. Now, for the hard part. Is it optimal? What's it's order run-time. Can you do better?
I know... it's mean...
In case it hasn't been posted, yet, here's a traditional logic puzzle:
You're in a room with three light switches. They control three lights in another room. Your task is to play with the switches, then go to the other room and determine which switches control which lights. It can be done in one trip. That's the easy one.
Here's the hard one...
It's easy to get out of a maze if you have a magic-marker in your hand, right? You mark doors with an X as you go through them, and rooms with an X on the floor when you first enter them, and remember the door you came through with an --> or some such mark. When in a room, go through an unmarked door. If you come to a room that's been visited, go back. If there are no unmarked doors left, take the one with the arrow. Basically, just do a depth-first search, with a linear time solution.
What if you introduce one-way doors between rooms? Assume that you can't peek and look into the next room, but instead must commit to going through the door before knowing what's on the other side. All you have is your magic marker, and you can remember a few numbers in your head. You have no sense of direction, and can't make a map.
There's lot's of interesting conclusions, but no simple solutions that I know of. If I ever get around to it, I'm going to build a giant one-way door maze in my basement. I'll put bad kids in it and let them starve to death;-)
As a code monkey since 1981, I have yet to see a spec worth writing on any software that had not yet been written. Good specs are really just documentation of what already works. Bad specs are carefully crafted theories by brilliant people in committee.
To design a great piece of software, you have to get your hands dirty.
Ok, I've had some time to think about it... This is a fun idea, regardless of how practical... One idea I had was that the force pulling the wire loop apart could be offset with gravitational pull, if you ran a wire in space in orbit around Mars. One kicker is the current required. According to this web site: http://hyperphysics.phy-astr.gsu.edu/hbase/magneti c/curloo.html#c2 A loop with the same radius as Mars that could generate close to the.5 gauss magnetic field we have here on Earth would need almost 300,000,000 amps of current. Putting Mars in the middle would reduce this, since there's clearly a lot of iron in Mars, but at even 1/10th of this, we'd still need 30 million amps. The best I've read about on the web for a single superconducting wire has been 20,000 amps/cm^2, so we'd need about at least 150 strands of 1-cm cross-sectional area super-conducting wire, stretching for over 10 thousand kilometers. It'd be a bit like those huge cables holding up the Golden Gate Bridge, but made of super-conductors instead of steel, and it'd have to be MUCH longer... Sounds fun! Of course, if ANY portion of the wire EVER rose to above around 100 degrees Kelvin, the whole thing would instantly vaporise, if not worse. I guess that doesn't mean that a magnetic deflector shield closer to the Sun couldn't do the job with a lot less material, using lots of smaller loops rather than one large one, but you still have the problem of the omnidirectional radiation.
Sorry about being so negative... I don't know much more about radiation in space, so it's hard to make good guesses. However, 1. I think I was wrong about dipoles not creating a shadow. For at least one charge polarity, I'd expect particles to simply be deflected away. 2. I did read that solar protons are omni-directional, however, I've had difficulty finding good info on this on the web. One site I visited stated that after a solar flare, about 70% of protons come more or less directly from the sun. 3. To shade Mars, the area needing to be blocked becomes larger as you get closer to the Sun, because the Sun is much bigger than Mars. There's also a problem in that the shade would naturally want to orbit faster than Mars if it were closer to the Sun. An interesting issue would be the force on a huge loop of super-conducting wire. I think the tensile strength of the wire becomes a limiting factor even at tiny currents, but I'll need to look into this.
There's some interesting research described on the web on protecting space-craft with magnetic fields. It sounds like it may be barely doable to protect a small crew willing to live in a cramped space. A field much larger sounds currently impractical.
Three other problems:
1) A magnetic field doesn't block solar wind, it just defects it around the field, after which the stuff gets right back on course, so there wouldn't be a shadow protecting Mars.
2) Solar protons come from all directions, as does galactic background radiation.
3) Even if you could create a shadow from the sun's radiation, the size of the protecting shade gets bigger as you get closer to the sun, not smaller.
So, the idea is fun, but I think it's currently impractical. Of course, so is terra-forming Mars... perhaps we just need to think bigger:-)
Well, again, you need a backbone, but it too can be a wireless mesh.
The advantage of wireless is cost. How can Google offer to wire San Francisco for free, when BellSouth wants $6B to re-run phone cables in New Orleans? Digging trenches, setting up poles, and running wire is expensive. Wireless is practically free in comparison.
Let the WiMAX revolution begin! Well, at least in some other country...
Well, technically you are correct, and a global mesh of simple WiFI routers would be nearly useless. You still need a backbone.
:-)
However, WiMAX and microwave backbones are relatively cheap (a few thousand $ per node), high bandwidth, and very practical. Also, with Internet caching schemes supported by multiple vendors, the non-local patterns of Internet browsing don't kill the network. Some ISPs even cache BitTorrent data.
Again, there's no real show-stopper problems here, just our government standing in the way, instead of being a facilitator. Too bad Gore lost that first election. He would have had a chance to re-invent the Internet
Not that I'm any kind of expert, but isn't WiMAX supposed to help us build such networks? The idea is to use point-to-multipoint WiMAX radios to cover spots as large as 40 miles in diameter, with local WiFI meshes at the ends. Then connect the WiMAX hubs together with point-to-point to make a higher level mesh. I've got a good place for a tower in my yard, and I'm up on a hill, so I'd like to be a hub. You can even support mobile guys with such a network. I hear that BellSouth asked the government for $6B (yes, billion) to rewire phone service in New Orleans. With wireless, it can be done so cheaply that companies donated the equipment needed for free. Remember BellSouth taking back the building they donated, because they were mad at New Orleans for accepting free internet service? If we want a separate, cheap, fast wireless mesh, all we need is for the government to let us. The big phone companies have a lot of pull, expecially with our current government. The FCC wont allow the wireless mesh. They simply wont allocate the bandwidth. In New Orleans, the FCC allowed an emergency license to some spectrum, which was key to enabling ultra-cheap internet service. Ham radio guys already have a tiny bit of frequency spectrum to play with. The result? They already have such a mesh, independent from the internet, and it's very cool. Check out: http://eng.usna.navy.mil/~bruninga/aprs.html There are no real technical show-stoppers here, just big brother and phone companies whispering sweet nothings in his ear.
Here's smilindog's rule on copyrights and their effects on engineers and programmers:
If your government doesn't adopt copyright protection, you will always be poorly paid.
There is a natural cycle that countries go through as they develop:
1) They start out with no economy, and just a bunch of poor smart guys. This was certainly the case in India and China 10 years ago, and still is the case in Romania, Russia and in many other countries. At this stage, the government encourages piracy. Otherwise they export money they barely have, are handicapped in training their smart guys, and their population wont get their tunes and games (very bad for stability).
2) If their government can be stable enough, and if they eliminate enough corruption, it's possible for foreign companies to save lots of money by outsourcing skilled labor to the country. This employs the smart guys, increases taxes, etc. It's a good thing basically.
3) As the contracting services economy builds, wages go up. More good news.
4) Eventually, growth slows in the skilled outsourcing market, as labor is becoming too expensive. Also, you've now got a bunch of smart guys with real-world experience developing real products. These experienced smart guys what to help the country grow by forming their own companies. This is the point where the government has to switch over to obeying copyright laws. It's the only way that all their smart, creative, experienced guys can create anything and sell it locally at a profit. Without a locally viable market, the economy stagnates.
There are great examples of all this. Taiwan is stuck in the no-copy-right zone, where their engineers are paid low wages. There's nothing they can do about it, because their economic model is fabbing cheap silicon wafers, and cheap skilled labor is key. Thus, the poor Taiwan engineer will be forced to work at below his value for many years to come (unless China invades).
India and China both have highly paid engineers. $25K/year is a lot of money, even for foreign companies to pay. Their growth is slowing, and their skilled and experienced smart guys are getting restless, unable to make money in their own countries. Both China and India are at the point where some level of copyright protection makes sense, so they can continue their growth.
Russia has been too corrupt and hostile to foreign companies. They're stuck in the position of loosing outsourcing contracts to China and India. However, if they begin to get their act together, and as China and India begin to enforce copyright protection, the outsourcing will naturally shift to Russia. Even China and India will outsource labor to them.
I hear that BellSouth asked Uncle Sam for $6B to rewire New Orleans! With Wimax/WiFi, the cost was so cheap (a few million dollars), companies were able to donate the needed equipment. I think I understand why BellSouth is pissed.
If you recall, a Republican from Texas is trying to make it illegal for cities to bypass the phone companies and offer free Wi-Fi. BellSouth has the GOP in it's pocket.
Finer circuitry decreases the size of a chip and cuts per-unit production costs... NOT!
Moore's Law is showing it's age... The cheapest transistors in the world are not build in 65nm. They are built in 180nm, a much older process.
In China, you can get 8-inch 180nm (.18u) wafers for $600. Today, a 90nm 8-inch wafer is more than 4X more expensive, and you cannot yet buy 65nm wafers. The cost per transistor is actually higher! And people wonder why we're taking our time to move to finer geometry processes!
The most important thing is to get everyone coding the same way. If you've had no structure in the past, this is extremely hard to do. No one will want to listen to you, and each programmer will feel their creative freedom has been compromised. If you can get people writing code in almost identical styles, then you'll find cooperation between them will improve greatly, easily justifying the effort. In my experience, most often these efforts fail, and you'll be the guy they blame, while also saying how dumb the whole idea was to start with.
So, the easy thing that most people do is practically worthless: force everyone to use a complicated header over each piece of code that describes the author, purpose, I/Os, etc. This will make your bosses happy without seriously changing anybodies coding style. It's the wimp approach and does nothing to improve productivity.
Or, you could take the hard road: force everyone to use a common coding style. For example, if you're a C++ shop, pick a set of templates (like STL, or others) and force everyone to use them. Pick a code format and make everyone use it. Do you use case or _'s to separate words in identifiers? Pick one and enforce it. It's so much easier working with code that your fingers know how to type.
My advice is to keep the 'official' coding style simple. Many of your company's programmers will hurt their brains trying to understand aspect oriented coding. You'll be lucky if they can use abstract base classes properly. Remember that the less than average programmer will likely be in charge of your code some day. Target the coding style to help him succeed. The geniuses in your group could succeed in FORTRAN, so don't worry about them.
As for details... there are so many coding styles, and each takes a book just to describe it. We document our data structures with entity relationship diagrams and have separate internal and external header files for modules. We all use the same collection classes. We use access functions to access fields of objects, rather than accessing them directly. We use an old CASE tool that automates memory management and generates virtual recursive desctructors for us. Every funtion has a comment, and we keep functions small. We improve quality with data structure self-tests, and an automated run of many data sets through our system each night. We use SVN. We make everyone code in EXACTLY the same way. We use capitals in identifiers, keep braces on the same line as the 'if', indent by 4 spaces, and have 50 other rules for how code should look. Sometimes we can't remember who wrote what code, and there's no way to know!
Sign up with Info-Tech.
With-it companies improve customer support with IM, and communication across time-zones with Skype. Both accounts will be on my next business card.
Errr.... what science education? Heck, I never got one in high school.
True. However, most people seem to think that IPv6 will be good for p2p. In reality, I still wont be able to connect to your toaster, and I still wont be able to connect to your BitTorrent client. I predict that the Skype kludge will win: STUN and a way to deal with the skrinking number of machines that are not STUN-able.
I'd say that IPv6 multicast is a totally unworkable kludge. Peer-to-peer emulation of multicast seems the way to go. You get most of the benefit, with not need to upgrade hardware, and no central commitee controlled by Microsoft/Cisco/Intel designing a protocol so complex that only Microsoft/Cisco/Intel can build it.
I know it's not what people want to hear, but NATs serve two purposes: it allows multiple computers to share a single IP, and that's important. However, it's also important as a mechanism that protects home users from the Internet.
When IPv6 becomes common, as it must, a new IPv6 NAT will almost certainly emerge to continue that isolation. Whether or not it gives any kind of real protection or not, homes users and home router providers aren't yet willing to allow guys like me to connect directly to your toaster.
Sorry. Reality bites.
I've seen multiple algorithms that are O(n^2), and a proof that O(n^2) is optimal. So, in a sense, the problem is solved, however, the algorithms I've seen so far are so complex, that it's difficult to prove that they are correct.
Generally, they make use of the fact that you can back up one spot by following the most recent loop. The idea is that instead of marking each door with a tick mark, you mark it with a number that you increment each time you go through a door. So, when you come to a place you've been to before, you can back up by following the highest numbered doors until you reach the previous room. You have to keep track of three numbers, your door counter, and the number on the floor of that last room you were in, and a counter so you can label new rooms with a unique number.
However, this only works for backing up one room. As I recal, the modifications required to make this work basically convert the algorithm to depth-first search, but you have to embbed the stack info in numbers on the floors and doors, and you have to be able to pick up the depth-first search state whenever you come to a room that has not been finished. The hard part is proof of correctness.
I'd be very interested in hearing a good algorithm that wasn't so complex that I had lingering doubts about whether or not it actually works!
3.141592.... pi
Cute. Is there a space in there, and more to the puzzle, or is that a typo of some sort?
No planar embedding. Assume a 3-D maze. You can write what you like at each node, if it's constant space data.
:-). How long does your algorithm take?
It's basically a directed graph problem, but the kicker is that it's you with a marker, not a computer. The inability to go back through an edge is a physical constraint, which makes this problem different than problems faced by programmers. The optimal solution on a computer would be a simple depth first search with a linear time solution.
One thing I've heard is that all computer problems (not algorithms) with proven optimal order run-times are either constant, linear, n*log(n), n*log(log(n)), or expodential. For example, the problem of sorting using comparison is optimially solved in O(n*log(n)), but the bubble-sort algorithm is O(n^2). Are there no problems proven to require O(n^2) or O(n^3)?
I find that a simple maze to use for analysis is a linear chain from start to exit. At each node, there is also an edge back to the start. The random "run screaming" algorithm trivially requires expodential run-time for this maze, unless you're really fast
This works! Another algorithm that works is just run screaming through the maze at random (screaming optional). These are the two answers that I often hear. Now, for the hard part. Is it optimal? What's it's order run-time. Can you do better? I know... it's mean...
In case it hasn't been posted, yet, here's a traditional logic puzzle:
;-)
You're in a room with three light switches. They control three lights in another room. Your task is to play with the switches, then go to the other room and determine which switches control which lights. It can be done in one trip. That's the easy one.
Here's the hard one...
It's easy to get out of a maze if you have a magic-marker in your hand, right? You mark doors with an X as you go through them, and rooms with an X on the floor when you first enter them, and remember the door you came through with an --> or some such mark. When in a room, go through an unmarked door. If you come to a room that's been visited, go back. If there are no unmarked doors left, take the one with the arrow. Basically, just do a depth-first search, with a linear time solution.
What if you introduce one-way doors between rooms? Assume that you can't peek and look into the next room, but instead must commit to going through the door before knowing what's on the other side. All you have is your magic marker, and you can remember a few numbers in your head. You have no sense of direction, and can't make a map.
There's lot's of interesting conclusions, but no simple solutions that I know of. If I ever get around to it, I'm going to build a giant one-way door maze in my basement. I'll put bad kids in it and let them starve to death
As a code monkey since 1981, I have yet to see a spec worth writing on any software that had not yet been written. Good specs are really just documentation of what already works. Bad specs are carefully crafted theories by brilliant people in committee. To design a great piece of software, you have to get your hands dirty.
Ok, I've had some time to think about it... This is a fun idea, regardless of how practical...i c/curloo.html#c2 .5 gauss magnetic field we have here on Earth would need almost 300,000,000 amps of current. Putting Mars in the middle would reduce this, since there's clearly a lot of iron in Mars, but at even 1/10th of this, we'd still need 30 million amps. The best I've read about on the web for a single superconducting wire has been 20,000 amps/cm^2, so we'd need about at least 150 strands of 1-cm cross-sectional area super-conducting wire, stretching for over 10 thousand kilometers. It'd be a bit like those huge cables holding up the Golden Gate Bridge, but made of super-conductors instead of steel, and it'd have to be MUCH longer... Sounds fun!
One idea I had was that the force pulling the wire loop apart could be offset with gravitational pull, if you ran a wire in space in orbit around Mars. One kicker is the current required. According to this web site:
http://hyperphysics.phy-astr.gsu.edu/hbase/magnet
A loop with the same radius as Mars that could generate close to the
Of course, if ANY portion of the wire EVER rose to above around 100 degrees Kelvin, the whole thing would instantly vaporise, if not worse.
I guess that doesn't mean that a magnetic deflector shield closer to the Sun couldn't do the job with a lot less material, using lots of smaller loops rather than one large one, but you still have the problem of the omnidirectional radiation.
Sorry about being so negative... I don't know much more about radiation in space, so it's hard to make good guesses. However,
1. I think I was wrong about dipoles not creating a shadow. For at least one charge polarity, I'd expect particles to simply be deflected away.
2. I did read that solar protons are omni-directional, however, I've had difficulty finding good info on this on the web. One site I visited stated that after a solar flare, about 70% of protons come more or less directly from the sun.
3. To shade Mars, the area needing to be blocked becomes larger as you get closer to the Sun, because the Sun is much bigger than Mars.
There's also a problem in that the shade would naturally want to orbit faster than Mars if it were closer to the Sun.
An interesting issue would be the force on a huge loop of super-conducting wire. I think the tensile strength of the wire becomes a limiting factor even at tiny currents, but I'll need to look into this.
There's some interesting research described on the web on protecting space-craft with magnetic fields. It sounds like it may be barely doable to protect a small crew willing to live in a cramped space. A field much larger sounds currently impractical. Three other problems: 1) A magnetic field doesn't block solar wind, it just defects it around the field, after which the stuff gets right back on course, so there wouldn't be a shadow protecting Mars. 2) Solar protons come from all directions, as does galactic background radiation. 3) Even if you could create a shadow from the sun's radiation, the size of the protecting shade gets bigger as you get closer to the sun, not smaller. So, the idea is fun, but I think it's currently impractical. Of course, so is terra-forming Mars... perhaps we just need to think bigger :-)