If the free (libre) software / free whatever else community had managed to solve the last mile problem with regard to wireless communications, we wouldn't be in this mess. Consider a situation where the last mile connectivity is much more decentralized. There would be no "phone company" type carrier to be a single point of wiretapping or a coercive force keeping device firmware and software locked down. Consolidation of power, (wireless and media industries,) is what has caused the diversion of energy from writing freedom-preserving software to arguing about whether or not the FBI should get a backdoor in phones. The free (libre) software community can take some of these matters into their own hands by developing stuff that is an alternative to proprietary products.
Current WiFi, bluetooth, and other wireless standards could be used to implement mesh networking. IP is inherently decentralized. The internet was designed to route around points of failure. There are alternatives to captive mobile phone/broadband service that could exist now, with existing hardware. I don't know of anyone working on this stuff because nobody seems to talk about things like that anymore. I assume this is because the common forums for such discussions are all now owned and operated by entities that have consolidated significant power. I unfortunately don't know how to fix this when nobody seems to be interested in anything that smells like a DIY project.
Remeber one of the major rules of security: If you have physical access to the machine, you have access to the data. If the machine can decrypt the data, then whomever has the machine can decrypt the data.
If the FBI is even remotely intelligent, the first thing they did upon seizing the phone was crack that sucker open and disconnect the battery to prevent any data self-destruct or remote wipe mechanisms from functioning. To consider the case where the FBI wants to brute force it like they have been claiming, there are probably a few different ways of getting at the data. The first thing you would want to do is get a byte-for-byte copy of the flash contents. This can probably be done via JTAG, but if it can't or it is considered too risky to try, the flash chips can be unsoldered from the board and sent read commands directly via a dev board. It is not like such hardware is hard to get or restricted in any way. Once the data from the flash chips is backed up, you can brute force without risk of losing something useful. Does anyone know of any reason this wouldn't work?
This means that all the instructions required to boot and decrypt the data are now available to be dissected offline, since the phone couldn't decrypt the data without those instructions. All that is missing is whatever the secret is that is used to encrypt the user data.
One exception to the "immediately unplug the battery" rule might involve putting the phone in some sort of ICE mode via JTAG without rebooting it so as to get a RAM dump of the running system. If Apple were sloppy, they might have left a copy of the secret in plantext somewhere in memory. I don't know if it is possible to inject instructions into an iPhone via JTAG that would allow this without rebooting the phone, but I'm sure that could be figured out on a test device first. Maybe "immediately remove the battery" should be replaced by "immediately put the phone in a Faraday cage with a charger."
In any case, what is most distressing about all of this is that both Apple and the FBI are clearly using this situation and the courts to get press that is favorable to their agendas. Apple wants everyone to think they are super pro-security, anti-government power, and the FBI wants everyone to think that they can't decrypt an iPhone without a backdoor. This is all just theater.
I would say the GPL itself. It is the only thing that has allowed the software part of the computer industry to at least partially transcend the iron fist of capitalism, (or whatever the iconic hand thing is supposed to be for capitalism.) Without the GPL, we probably wouldn't have internet access at home. We wouldn't have smartphones. Google wouldn't exist. GPS would probably still be military only. It will probably always be at or near the top of any sane, "biggest tech/freedom promoting work," list.
Firefox's addons ecosystem is much better than Chrome's, though that may eventually change. Some of those Firefox addons are things I consider mandatory.
I imagine that they do, given that there are a lot of people in the world and it is possible to do so. I can't imagine why one would, however. Is there any advantage to doing so that is unique to Azure?
Chrome OS isn't a complete unknown from the user's point of view. Imagine a laptop that runs Chrome, (the browser) in full screen mode and has as it's home page a selection of commonly used office-type web apps and and an app store that works pretty much like the Android web store. You log on to the machine with your Google/Gmail account credentials. That is not particularly unknown even to non-technical users. I don't really like Chrome OS because the hood is welded shut, but for every day usage, (browsing, email, Pandora, video conferencing, etc.), it works fine.
I was actually going to point out that probably 98% of the Office 365 (Word) users out there would be entirely fine using whatever the most recent version of Word was in 2005. I wrote plenty of stuff in Word in the early-late 90s when I was in school. Lab reports including Excel graphs, etc.. Nearly everything that annoyed me about Word and Excel in 1995 still annoys me about Word and Excel in 2015.
"And I know there's a lot of MS hate from IT people, and sure, I hear you, they could do a lot more to make it better for all you tech wizards that know networking like the back of your hand. It's probably that which is clouding your judgment of their system. To a non-programmer, non-tech guy who thinks CLI is some small government agency and not common language infrastructure or command line interface, MS's stuff is gosh darn fantastic."
Your post implies that non-tech guys' opinions are the only ones that matter. When you need a tech guy, and they can't/won't help you because you have chosen the option that nobody can easily fix, you better have honed your vendor arse-kissing skills in advance because most vendors aren't that helpful unless you give them lots of money first and 90% of the market share isn't going to pay a vendor (much, if at all) for tech support. Knowing networking well does not cloud one's judgement of the system; being technically knowledgable allows one to see features and flaws that the less knowledgable cannot; being knowledgable only "clouds" judgement if your goal is to be wrong.
I have been very concerned about this as of late. (Not slashdot, I mostly gave up on it a long time ago, there are other sites that have sort of picked up where slashdot left off, however.) The only thing that makes me feel a little better about systemd is that it is actually GPLd, and the distros I have looked at that are switching/have switched to systemd still have full-fledged init.d packages. The "roll another distro" is probably the right answer. That being said, I think the real reason to be concerned is that there has been a stunning lack of transparency on the part of the distros that are switching. Reasons that have been given are clearly BS. It appears that docker and similar things benefit from systemd, but it isn't obvious how. I wish I knew. Gentoo FTW.
Actually, I believe Ballmer was the one who first publicly referred to open source as "open sores". I think that qualifies as at least some amount of disgust at open source, if not visceral hatred. And yes, the GPL's intentionally viral nature is the one thing that pisses MS off the most about it. I'm guessing it is because MS was started by the offspring of lawyers and they didn't think of it first.:) Don't forget Bill Gates' "Open Letter to Hobbyists", wherein he mentions that he is opposed to sharing software because it deprives developers of royalties. This is at least, against the "free" in "Free Open Source Software", though not against open source explicitly.
The GPL does not prohibit anyone from producing software and then not distributing the source code. The GPL prohibits someone from distributing a binary derived from GPL code without also making the source that compiled into that binary licensed under the GPL and available. An entity can take GPL code, modify it, write stuff that uses it, whatever, and as long as they don't distribute binaries of the derivative work, they are not obligated to release any code at all.
I might suggest PHP/Apache. Use the browser as the interface. Set Apache to listen only on 127.0.0.1, then you avoid most security concerns. Compilation not necessary. With modern Javascript libraries for complex UI stuff, you might be surprised how much you can get done quickly.
Java development also slowed down a lot when Oracle bought Sun and thereby gained ownership of the most commonly used JVM. Something similar happened to MySQL.
Java is *not* the darling of open source zealots. Java, (the various JVMs,) is just the least annoying of the cross-platform, business-friendly choices.
I would love to believe that MS really is a different company. Realistically, if MS isn't a different company, then it is circling the drain, (albeit, from a great distance still.)
But nobody should believe that a company that has for decades made tons of money by selling units of something that has no incremental cost of production, (copies of software or licenses to use them,) and which is publicly traded and whose investors expect it to do more of the same, will suddenly embrace a project that promises no direct revenues and which will compete with their existing product.
One of the ways you can tell that MS doesn't understand open source is that they are pushing Mono. There is a reason that Mono has been around for more than 10 years without gaining any real traction. It is a clone of.NET. Why on earth would the open source community care about cloning.NET? Particularly back when Mono started, and still now to a large degree, this is what the open source community mostly seems to say about Mono: if you want a.NET runtime, run Windows. What is the point of running.NET stuff on, say, Linux?
"Pulling JVM into the equation not really helps either, cause the consequent question would be: Do you trust Oracle? Or Google, for that matter if you count Dalvik in."
There is an open JVM. There is not a fully open CLR or a fully open clone of the CLR. So no, I don't trust Oracle, or Google, or IBM, (you forgot IBM's JVM,) but that doesn't really matter. Nobody who cares about their software stack being maximally open should be super-enthused about Mono.
One theory about why the big distributions are pushing systemd is that they want to make all the Windows admins currently migrating over to the Linux world more comfortable. They may see Mono, and the resultant large pile of Steam games that now run on Linux as the biggest opportunity open source has ever had to pound nails in MS's coffin. Another theory is that various people in the open source world have been bought in one way or another. Still another theory is that there is now a generation of otherwise great programmers that are basically clueless about the virtues of the UNIX way and think that they have made a significant improvement on those flat config files in specifically named directories and flat log files and cron by making a big monolithic brick that does all the same stuff only less conveniently.
It would probably be more reliable for Microsoft to just write front ends for their compiler for these languages rather than relying on FUD to prevent people from using them.
The patent indemnification promise is irrelevant as it is basically legally meaningless. Microsoft wants the open source community to write stuff that uses Mono for all the same reasons they court non-open-source developers so aggressively. This post used to be a lot longer, but I am shortening it to simply reference some things that one should look up in a search engine if they want to know what this Mono / patent indemnification / "C# and Visual Studio are the best things ever" bollocks is really about.
Here is what I would look up: Miguel de Icaza, (pay attention to his role in Gnome, Mono, and Novell.) Consider how unlikely it is that the guy who started Gnome suddenly sprouted an interest in an open source version of.NET without money being involved. (.NET was even less interesting to the open source world back then than it is now.) Look up Microsoft's phony error messages on DR-DOS. (I personally witnessed one of these error messages back in the day that was slightly different from messages I see documented now. I also made it go away by editing the DR-DOS command.com with a hex editor to change some english/printable strings in the binary to their MS-DOS counterparts. Yes, Microsoft really was so lame and devious that changing the copyright message string in command.com to read "MS-DOS" instead of "DR-DOS" made the "incompatible" software suddenly work perfectly under DR-DOS.) Then look up a Powerpoint presentation that Microsoft used to explain their "Tech Evangelism" practices to people who would be responsible for carrying out such evangelism. This presentation was made public as part of court proceedings against Microsoft somewhere in Europe related to antitrust violations or whatever they call that sort of thing in whichever country it was. Look up the "Evangelism is War" document.
The point I am making here is that the "it's a trap" posts that always arise when Microsoft says... pretty much anything, and which people often find amusing, are only partially a joke. There is more than a kernel of truth in that assertion. Mono *is* a trap..NET *is* a trap. If Mono ends up making MS even less relevant than it already is, it is only because the trap backfired. And if the trap backfires too hard, and the open source community embraces the.NET API via Mono and then extends it and accidentally threatens to extinguish the relevance of MS's version of it, you can bet that MS's lawyers will be especially rabid.
I seriously doubt MS's customers were demanding that MS make it possible to run Linux virtualized on MS systems. Running Linux virtualized on MS systems has been possible and easy for many years already, and almost nobody that wants to run Linux wants to run it virtualized on MS systems. Lots of people that need to run Windows for something want to run it virtualized on Linux or Mac OS, but that has been possible and easy for years also.
"The collection of branching stochastic feedback loops necessary to carry out the processes of life, at every level from transcription to tissue function, is like nothing any sane engineer would ever try to build."
I beg to differ. It is exactly the kind of thing a sane engineer would try to build if said engineer were trying to build a machine that would, when given information about a black box, (inputs and corresponding outputs,) describe the contents of the box. Or something to that effect. Pattern matching, correlation discovery, reverse-engineering of algorithms from inputs and outputs, etc. Of course, all of this can be simulated by a regular computer....
I am not a big fan of the supernatural either. I see the realm of the supernatural as simply containing the things we have not yet figured out how to integrate into our understanding of the universe.
At the same time, no matter how far up the chain of causality/explanation you go, you can always ask, "why is *that* there?" When considering the big bang as the origin of the universe, one can simply ask, "where did all of the big bang fuel, (energy, basically,) come from?" Saying, "it was just there -- it didn't come from anywhere and it didn't happen for a reason," just doesn't satisfy some people, (myself included.) No matter how much we know, humans will always want to know what caused . This insistence on always seeking further explanation can probably be explained by the fact that humans can't accurately comprehend nothingness. A total absence of anything cannot be simulated by the brain; humans can only perceive nothingness as a sort of void that exists -- a specifically present nothingness, which obviously doesn't make sense. (See historical scientists believing in the existence of an ether, etc...)
The heat death of the universe involves the total energy + mass equivalent of the universe remaining constant while the spatial density of it asymptotically approaches zero. This, of course, implies that it never actually reaches zero, which means that in a sense, the entire universe, when considered as a whole, does exhibit perpetual motion if the universe is open. It would be interesting to prove that this is the only situation in which perpetual motion exists.
It might be possible to perturb an asteroid's trajectory with a pulse laser. When you hit various materials with very short, intense pulses of light at a wavelength that the target material tends to absorb, it causes such rapid localized heating that it either vaporizes a little bit of material, turning it into very hot gas, (a tiny little rocket,) or it causes a tiny, rapidly expanding piece of material to spall off the surface, (a higher-mass, lower velocity rocket.) Repeat a few thousand times per second and you will basically turn the asteroid into a crappy rocket, using the asteroid's matter as the working mass. The biggest problem I can see with this is that the mass ejected from the asteroid will have a tendency to hit the laser. It might be possible to avoid this simply by aiming the laser slightly off-normal.
If the free (libre) software / free whatever else community had managed to solve the last mile problem with regard to wireless communications, we wouldn't be in this mess. Consider a situation where the last mile connectivity is much more decentralized. There would be no "phone company" type carrier to be a single point of wiretapping or a coercive force keeping device firmware and software locked down. Consolidation of power, (wireless and media industries,) is what has caused the diversion of energy from writing freedom-preserving software to arguing about whether or not the FBI should get a backdoor in phones. The free (libre) software community can take some of these matters into their own hands by developing stuff that is an alternative to proprietary products.
Current WiFi, bluetooth, and other wireless standards could be used to implement mesh networking. IP is inherently decentralized. The internet was designed to route around points of failure. There are alternatives to captive mobile phone/broadband service that could exist now, with existing hardware. I don't know of anyone working on this stuff because nobody seems to talk about things like that anymore. I assume this is because the common forums for such discussions are all now owned and operated by entities that have consolidated significant power. I unfortunately don't know how to fix this when nobody seems to be interested in anything that smells like a DIY project.
Remeber one of the major rules of security: If you have physical access to the machine, you have access to the data. If the machine can decrypt the data, then whomever has the machine can decrypt the data.
If the FBI is even remotely intelligent, the first thing they did upon seizing the phone was crack that sucker open and disconnect the battery to prevent any data self-destruct or remote wipe mechanisms from functioning. To consider the case where the FBI wants to brute force it like they have been claiming, there are probably a few different ways of getting at the data. The first thing you would want to do is get a byte-for-byte copy of the flash contents. This can probably be done via JTAG, but if it can't or it is considered too risky to try, the flash chips can be unsoldered from the board and sent read commands directly via a dev board. It is not like such hardware is hard to get or restricted in any way. Once the data from the flash chips is backed up, you can brute force without risk of losing something useful. Does anyone know of any reason this wouldn't work?
This means that all the instructions required to boot and decrypt the data are now available to be dissected offline, since the phone couldn't decrypt the data without those instructions. All that is missing is whatever the secret is that is used to encrypt the user data.
One exception to the "immediately unplug the battery" rule might involve putting the phone in some sort of ICE mode via JTAG without rebooting it so as to get a RAM dump of the running system. If Apple were sloppy, they might have left a copy of the secret in plantext somewhere in memory. I don't know if it is possible to inject instructions into an iPhone via JTAG that would allow this without rebooting the phone, but I'm sure that could be figured out on a test device first. Maybe "immediately remove the battery" should be replaced by "immediately put the phone in a Faraday cage with a charger."
In any case, what is most distressing about all of this is that both Apple and the FBI are clearly using this situation and the courts to get press that is favorable to their agendas. Apple wants everyone to think they are super pro-security, anti-government power, and the FBI wants everyone to think that they can't decrypt an iPhone without a backdoor. This is all just theater.
I would say the GPL itself. It is the only thing that has allowed the software part of the computer industry to at least partially transcend the iron fist of capitalism, (or whatever the iconic hand thing is supposed to be for capitalism.) Without the GPL, we probably wouldn't have internet access at home. We wouldn't have smartphones. Google wouldn't exist. GPS would probably still be military only. It will probably always be at or near the top of any sane, "biggest tech/freedom promoting work," list.
Firefox's addons ecosystem is much better than Chrome's, though that may eventually change. Some of those Firefox addons are things I consider mandatory.
I imagine that they do, given that there are a lot of people in the world and it is possible to do so. I can't imagine why one would, however. Is there any advantage to doing so that is unique to Azure?
Chrome OS isn't a complete unknown from the user's point of view. Imagine a laptop that runs Chrome, (the browser) in full screen mode and has as it's home page a selection of commonly used office-type web apps and and an app store that works pretty much like the Android web store. You log on to the machine with your Google/Gmail account credentials. That is not particularly unknown even to non-technical users. I don't really like Chrome OS because the hood is welded shut, but for every day usage, (browsing, email, Pandora, video conferencing, etc.), it works fine.
I was actually going to point out that probably 98% of the Office 365 (Word) users out there would be entirely fine using whatever the most recent version of Word was in 2005. I wrote plenty of stuff in Word in the early-late 90s when I was in school. Lab reports including Excel graphs, etc.. Nearly everything that annoyed me about Word and Excel in 1995 still annoys me about Word and Excel in 2015.
"And I know there's a lot of MS hate from IT people, and sure, I hear you, they could do a lot more to make it better for all you tech wizards that know networking like the back of your hand. It's probably that which is clouding your judgment of their system. To a non-programmer, non-tech guy who thinks CLI is some small government agency and not common language infrastructure or command line interface, MS's stuff is gosh darn fantastic."
Your post implies that non-tech guys' opinions are the only ones that matter. When you need a tech guy, and they can't/won't help you because you have chosen the option that nobody can easily fix, you better have honed your vendor arse-kissing skills in advance because most vendors aren't that helpful unless you give them lots of money first and 90% of the market share isn't going to pay a vendor (much, if at all) for tech support. Knowing networking well does not cloud one's judgement of the system; being technically knowledgable allows one to see features and flaws that the less knowledgable cannot; being knowledgable only "clouds" judgement if your goal is to be wrong.
I have been very concerned about this as of late. (Not slashdot, I mostly gave up on it a long time ago, there are other sites that have sort of picked up where slashdot left off, however.) The only thing that makes me feel a little better about systemd is that it is actually GPLd, and the distros I have looked at that are switching/have switched to systemd still have full-fledged init.d packages. The "roll another distro" is probably the right answer. That being said, I think the real reason to be concerned is that there has been a stunning lack of transparency on the part of the distros that are switching. Reasons that have been given are clearly BS. It appears that docker and similar things benefit from systemd, but it isn't obvious how. I wish I knew. Gentoo FTW.
Actually, I believe Ballmer was the one who first publicly referred to open source as "open sores". I think that qualifies as at least some amount of disgust at open source, if not visceral hatred. And yes, the GPL's intentionally viral nature is the one thing that pisses MS off the most about it. I'm guessing it is because MS was started by the offspring of lawyers and they didn't think of it first. :) Don't forget Bill Gates' "Open Letter to Hobbyists", wherein he mentions that he is opposed to sharing software because it deprives developers of royalties. This is at least, against the "free" in "Free Open Source Software", though not against open source explicitly.
The GPL does not prohibit anyone from producing software and then not distributing the source code. The GPL prohibits someone from distributing a binary derived from GPL code without also making the source that compiled into that binary licensed under the GPL and available. An entity can take GPL code, modify it, write stuff that uses it, whatever, and as long as they don't distribute binaries of the derivative work, they are not obligated to release any code at all.
I might suggest PHP/Apache. Use the browser as the interface. Set Apache to listen only on 127.0.0.1, then you avoid most security concerns. Compilation not necessary. With modern Javascript libraries for complex UI stuff, you might be surprised how much you can get done quickly.
Java development also slowed down a lot when Oracle bought Sun and thereby gained ownership of the most commonly used JVM. Something similar happened to MySQL.
Java is *not* the darling of open source zealots. Java, (the various JVMs,) is just the least annoying of the cross-platform, business-friendly choices.
But nobody should believe that a company that has for decades made tons of money by selling units of something that has no incremental cost of production, (copies of software or licenses to use them,) and which is publicly traded and whose investors expect it to do more of the same, will suddenly embrace a project that promises no direct revenues and which will compete with their existing product.
One of the ways you can tell that MS doesn't understand open source is that they are pushing Mono. There is a reason that Mono has been around for more than 10 years without gaining any real traction. It is a clone of .NET. Why on earth would the open source community care about cloning .NET? Particularly back when Mono started, and still now to a large degree, this is what the open source community mostly seems to say about Mono: if you want a .NET runtime, run Windows. What is the point of running .NET stuff on, say, Linux?
"Pulling JVM into the equation not really helps either, cause the consequent question would be: Do you trust Oracle? Or Google, for that matter if you count Dalvik in."
There is an open JVM. There is not a fully open CLR or a fully open clone of the CLR. So no, I don't trust Oracle, or Google, or IBM, (you forgot IBM's JVM,) but that doesn't really matter. Nobody who cares about their software stack being maximally open should be super-enthused about Mono.
One theory about why the big distributions are pushing systemd is that they want to make all the Windows admins currently migrating over to the Linux world more comfortable. They may see Mono, and the resultant large pile of Steam games that now run on Linux as the biggest opportunity open source has ever had to pound nails in MS's coffin. Another theory is that various people in the open source world have been bought in one way or another. Still another theory is that there is now a generation of otherwise great programmers that are basically clueless about the virtues of the UNIX way and think that they have made a significant improvement on those flat config files in specifically named directories and flat log files and cron by making a big monolithic brick that does all the same stuff only less conveniently.
It would probably be more reliable for Microsoft to just write front ends for their compiler for these languages rather than relying on FUD to prevent people from using them.
The patent indemnification promise is irrelevant as it is basically legally meaningless. Microsoft wants the open source community to write stuff that uses Mono for all the same reasons they court non-open-source developers so aggressively. This post used to be a lot longer, but I am shortening it to simply reference some things that one should look up in a search engine if they want to know what this Mono / patent indemnification / "C# and Visual Studio are the best things ever" bollocks is really about.
Here is what I would look up: Miguel de Icaza, (pay attention to his role in Gnome, Mono, and Novell.) Consider how unlikely it is that the guy who started Gnome suddenly sprouted an interest in an open source version of .NET without money being involved. (.NET was even less interesting to the open source world back then than it is now.) Look up Microsoft's phony error messages on DR-DOS. (I personally witnessed one of these error messages back in the day that was slightly different from messages I see documented now. I also made it go away by editing the DR-DOS command.com with a hex editor to change some english/printable strings in the binary to their MS-DOS counterparts. Yes, Microsoft really was so lame and devious that changing the copyright message string in command.com to read "MS-DOS" instead of "DR-DOS" made the "incompatible" software suddenly work perfectly under DR-DOS.) Then look up a Powerpoint presentation that Microsoft used to explain their "Tech Evangelism" practices to people who would be responsible for carrying out such evangelism. This presentation was made public as part of court proceedings against Microsoft somewhere in Europe related to antitrust violations or whatever they call that sort of thing in whichever country it was. Look up the "Evangelism is War" document.
The point I am making here is that the "it's a trap" posts that always arise when Microsoft says... pretty much anything, and which people often find amusing, are only partially a joke. There is more than a kernel of truth in that assertion. Mono *is* a trap. .NET *is* a trap. If Mono ends up making MS even less relevant than it already is, it is only because the trap backfired. And if the trap backfires too hard, and the open source community embraces the .NET API via Mono and then extends it and accidentally threatens to extinguish the relevance of MS's version of it, you can bet that MS's lawyers will be especially rabid.
I seriously doubt MS's customers were demanding that MS make it possible to run Linux virtualized on MS systems. Running Linux virtualized on MS systems has been possible and easy for many years already, and almost nobody that wants to run Linux wants to run it virtualized on MS systems. Lots of people that need to run Windows for something want to run it virtualized on Linux or Mac OS, but that has been possible and easy for years also.
"The collection of branching stochastic feedback loops necessary to carry out the processes of life, at every level from transcription to tissue function, is like nothing any sane engineer would ever try to build." I beg to differ. It is exactly the kind of thing a sane engineer would try to build if said engineer were trying to build a machine that would, when given information about a black box, (inputs and corresponding outputs,) describe the contents of the box. Or something to that effect. Pattern matching, correlation discovery, reverse-engineering of algorithms from inputs and outputs, etc. Of course, all of this can be simulated by a regular computer....
I am not a big fan of the supernatural either. I see the realm of the supernatural as simply containing the things we have not yet figured out how to integrate into our understanding of the universe. At the same time, no matter how far up the chain of causality/explanation you go, you can always ask, "why is *that* there?" When considering the big bang as the origin of the universe, one can simply ask, "where did all of the big bang fuel, (energy, basically,) come from?" Saying, "it was just there -- it didn't come from anywhere and it didn't happen for a reason," just doesn't satisfy some people, (myself included.) No matter how much we know, humans will always want to know what caused . This insistence on always seeking further explanation can probably be explained by the fact that humans can't accurately comprehend nothingness. A total absence of anything cannot be simulated by the brain; humans can only perceive nothingness as a sort of void that exists -- a specifically present nothingness, which obviously doesn't make sense. (See historical scientists believing in the existence of an ether, etc...)
The heat death of the universe involves the total energy + mass equivalent of the universe remaining constant while the spatial density of it asymptotically approaches zero. This, of course, implies that it never actually reaches zero, which means that in a sense, the entire universe, when considered as a whole, does exhibit perpetual motion if the universe is open. It would be interesting to prove that this is the only situation in which perpetual motion exists.
Why do you think Slashdot chose you over other for a live Q&A?
It might be possible to perturb an asteroid's trajectory with a pulse laser. When you hit various materials with very short, intense pulses of light at a wavelength that the target material tends to absorb, it causes such rapid localized heating that it either vaporizes a little bit of material, turning it into very hot gas, (a tiny little rocket,) or it causes a tiny, rapidly expanding piece of material to spall off the surface, (a higher-mass, lower velocity rocket.) Repeat a few thousand times per second and you will basically turn the asteroid into a crappy rocket, using the asteroid's matter as the working mass. The biggest problem I can see with this is that the mass ejected from the asteroid will have a tendency to hit the laser. It might be possible to avoid this simply by aiming the laser slightly off-normal.