Wow... can I visit the fantasy land where you live? It sounds just like a classic sci-fi novel! Do you have flying cars too?
Lets break this down:
The real estate to spread a colony upon
We have plenty of real estate here. Lots of it, and it's cheap. There's the frozen tundra of Canada, or the arid interior of Australia. All of Canada is warmer than Mars, and all of Australia is wetter than Mars. So... why isn't there a big "land rush" to move out to those places? Hmm?
1/3 gravity would be healthier
There's absolutely no data for this, so you're just making shit up. If anything, an educated guess would be that it would be less healthy. Look at the long term zero-g space missions, where astronauts returned back barely able to walk.
Local water is pretty damn nice too
There's water here, in enormous quantities, and in a conveniently liquid form. Mars has some icy rocks, in some places. Most of the planet makes the Sahara look moist.
Easier construction environment
A near vacuum and lethal sub-zero temperatures are "easier"? Where did you build your last house, the core of the Earth?
simpler building designs
You mean, much more complex building designs that would have more in common with a space station, right? There's no air! Right off that bat that means every building must have a complex series of airlocks, safety systems, self-healing walls, air pumps, pressure sensors, filtration systems, humidifiers, water collection, CO2-scrubbers, air quality monitors, etc... At least the first few hundred colonists would have to take their buildings with them, so then you're looking at all of that, but with incredibly tight weight budgets. You'd have to build a robust air-tight building out of what amounts to foam and thin plastic sheeting.
The closest you could come to living on Mars on Earth is to live in the Death Zone of a tall mountain for a year. It actually has way more air, but you'll have roughly the same amount of resources available to you: cold rocks. Now live there for a year, and pay a charity $10K for every pound of material you take up there with you.
Benchmarks don't give an indication of "real life" performance, which is to be blunt, quite shit.
I run the betas on several platforms, all high-end machines with next-gen SSDs, 64-bit, etc... and FF is slow. Especially during startup, it does a crazy amount of I/O, which gets worse over time.
Developers wouldn't notice this while doing micro benchmarks of nightly builds with a fresh Firefox user profile, because it takes a few weeks or months of real-world usage to really bog it down.
The mozilla devs really need to start investigating the growth and fragmentation of their SQLite databases, or whatever the source of the problem is.
Here's a rule of thumb I like to use: If your end-user app does so much I/O during common tasks that it runs slow on a high-end SSD, then you've made some big design errors.
Google results for unwashed masses dealing with technology problems != the list of valid solutions to technology problems.
But it's indicative of a real issue.
To enable a smooth transition of a huge number of people to a new technology, the transition has to be easy. It has to "just work". How many end-users had issues with the Y2K cutover? I bet not many had to "turn off 4 digit dates" to make their "computer work properly".
The problem with IPv6 adoption is that it has zero immediate tangible benefit, so convincing management at a corporation to cut over would be hard enough, but if enabling it causes problems, any problems, not matter how slight, it's impossible. Why would any mid-level suit-wearing paper-pusher risk breaking the entire production network to resolve a problem that doesn't yet impact the organization? It's instant career suicide!
There is not a single IPv6-only service anywhere that a corporation in the English-speaking world desperately wants. I hear there's free porn somewhere on IPv6 that someone uploaded as a "carrot", but there's free porn on IPv4 too, so I don't even see that as a serious motivation for anyone else either, even the horny technophiles at home.
NAT is stateful, 6to4 is stateless. Nat multiplexes using port numbers, 6to4 tunnels but doesn't multiplex. Nat munges headers, 6to4 doesn't. Nat undermines global addressability, 6to4 adheres to this principle.
Yeah, they are practically identical.
My mistake, I was thinking of something else.
It's possible that you've confused your acronyms too, 6to4 is an IPv6 to IPv6 protocol that enables the packets to tunnel over IPv4, but it does not allow IPv4 to IPv6 communicatio. It requires a unique IPv4 address for each IPv6 endpoint, so it doesn't solve IPv4 address exhaustion. NAT and/or proxying is still required in some form, which will be carrier grade NAT in practice, with all of its inherent horrors. Most home users will be have a double-NAT, because of ADSL or Cable routers. I'd love to see the gymnastics required to establish a P2P connection across 4 layers of NAT.
The 6to4 system is effectively carrier-grade NAT. You can't say that they found that "NAT didn't scale", because the two technologies solve the same problem in practically identical ways.
Did you read all the way to the end? Where it says: "If your network meets these requirements and you'd like to receive Google over IPv6, please see our FAQ for how to request access."
In other words, it would be broken if enabled, and it's not enabled for everyone, unless access is explicitly requested by an ISP network administrator. I even tested this, take a look:
nslookup > set type=AAAA > www.google.com Server: ####.#####.### Address: 151.178.210.155
In other words, the organisation that is likely the world's most competent "Internet host" in terms of pure technical skill had to develop a procedure to enable ISPs to dip their toe in the water and enable IPv6 access only if they're very very certain it won't break anything.
If that's the state of IPv6 adoption in 2010, mere months from IPv4 address space exhaustion, we're in big trouble.
And there is a quite active IPv6 forum in Australia, and AARNET is IPv6 for a long time...
Talk is cheap. There's no action, particularly in management.
Imagine if in late 1999, there would have been "active forums" for some techos to talking about "testing" the possibility of rolling out 4-digit dates just as soon as management approves it. Not too quickly though, because it might "break things". Meanwhile, the world's biggest banks have "experimental" 4-digit date support, if you open a new "test" account.
There might be some pressure in the States to push IPv6 adoption, but there's none here in Australia.
Every consulting project I've been on in the last two years, I've asked this standard question: "Do you have a business requirement or mandate to deploy IPv6 now or in the future?"
Inevitably, the answer is "No."
Here in Australia, at both private enterprise and government, nobody has even begun to think about IPv6 at any level. Nobody requires IPv6 capability when purchasing software or equipment, and even when the capability is available, nobody turns it on. The more "IPv6 aware" clients turn it off to avoid compatibility issues. Even when I offer to implement IPv6 for some new system ("no extra cost, I'll just turn it on"), nobody wants it.
Pure IPv6 networking will be particularly hard to implement. I've tried experimental setups with products from various vendors. The usual result is that with IPv6 only most things work, but some things break. Stop and think about this for a moment: imagine if that sentence was: "the usual result is that with IPv4 addresses most things work, but some things break." That would be totally unacceptable for any enterprise software, yet it's "perfectly acceptable" for every major vendor to ship software where that's the situation with IPv6, because... nobody cares. The failures are often quite pathetic too, like dialog boxes that require an IPv4 address to be entered, even if it's never used or needed, or only accept IPv4 address for things like DNS servers. Clearly vendors have never tested their products in pure IPv6 environments, or did test them and decided it's too much effort to fix for something nobody cares about.
Let me whip out my crystal ball and predict that when IPv4 addresses run out and organisations scramble to implement IPv6, it's going to be a rush job, and we'll start hearing horror stories of incompetent admins that inadvertently bypass or break firewall rules by enabling IPv6 and cause major issues. These reports in turn are going to scare off management, who'll assume "IPv6 is bad", because they "read about some horror story of how Incompetent-r-Us Pty Ltd was hacked when they turned IPv6 on, hence, IPv6 must be insecure". Combined with stories of broken software and issues like IPv6-connected browsers waiting 30-60 seconds for IPv6 requests to time out, I'm certain that nobody is going to start using it until absolutely forced to.
It's a bad, bad sign that all the major websites like Google and Facebook have "ipv6.normalurl.com". That's because practical IPv6 implementations are often broken, and if enabled it on the main website, it breaks it for a huge fraction of users. If Google and their like can't implement IPv6 transparently without issues, and are forced to create "experimental" websites, then what hope does the typical admin have?
Electrical systems for heating... can have significantly higher efficiency
Huh? Burning gas to produce heat is pretty damn efficient. Whereas if you convert it to electricity you'll get 60% efficiency at best and then lose 5-7% in transmission. Perhaps the article has a different definition of efficiency.
It's counter-intuitive, but it's true. You're thinking of "space heaters", where the electricity is used to directly heat the environment, which is less efficient than direct heating with fossil fuels compared to using the fossil fuels to generate the electricity.
In practice, electricity for heating and cooling is primarily done using air-conditioners, which are heat pumps, and don't heat or cool the air directly. Heat pumps are very efficient, sometimes over 100%! In other words, one can obtain more than 1W of heating using 1W of power, as long as the heat is simply "moved", cooling something else (the outside air, typically).
It's possible to create heat pumps without electricity, but that technology is not commonly used. I'm not sure why, but there's probably a good reason. I suspect complexity and/or reliability.
It's not a direct comparison, AT&T-s network has a much higher aggregate capacity.
The Iridium satellites can only handle 1100 concurrent phone calls each. While there are 66 active satellites, most of the coverage is over the poles because of their orbits, so the capacity over occupied land is much lower than one would think, probably below 10,000 concurrent calls. Each of those channels in turn is very narrow bandwidth, about 2400 bits per second, and uses heavy audio compression to make speech intelligible. This explains why Iridium plans are so expensive. They're not for "chatting", they're for professionals that need emergency communication in the middle of nowhere.
The iPhone in my pocket has a higher bandwidth for a single connection than an entire Iridium satellite!
Open notepad, paste in some text, and hit print. Now try to print anything other than "All pages". Can't, can you?
You're joking, right? The Windows 7 print dialog looks like this. Isn't that a page range selection box in the bottom left?
Did you not notice how the "current page" option is disabled? It's permanently disabled, and cannot be enabled via the WPF API.
The GUI elements are virtualized, but the data is not. . . . There is NO WORKAROUND. None.
Wrong again. There are sensible workarounds involving lazy loading, like this. No new data grid necessary. That said, this needs to be in the framework, and it sounds like they will be addressing this soon.
Now, I complain nearly everyday about all the quirks in WPF/XAML. I hate spending an hour writing XAML code, compiling regularly, and finding out at runtime that the basis of my strategy is flawed because of something that could have been checked in the compiler, but was not. But I can't deny the flexibility and ease that WPF lends to nice UI design. The XAML language needs a makeover, but WPF itself is second to none.
The workaround that doesn't involve writing huge amounts of code yourself is a mere 109 KB of source code involving substantial multi-threading and knowledge of the WPF data binding internals, most of which is undocumented. I'll just roll my sleeves up and do that right away.
Not counting third-party commercial control suites, this is the first such solution I've seen that even remotely has a hope of working. I've seen several before that claimed to virtualize the data but enumerated everything anyway. Either way, using this code will disable smooth scrolling, so significant functionality is lost. I tried turning it back on, but even with a 50 ms data loading delay, the result is unusable.
Also, notice that this is a post from April 2010. WPF has been out since Nov 2006, so it's taken over 3 years for a free-to-use solution to appear for what is a critical performance design flaw.
From what I've heard, most of the changes in WPF 4 were prompted by Microsoft's attempt to use it for Visual Studio 2010, the GUI of which was unusable while it was still using the 3.5-era WPF framework.
It's still broken, and at the rate Microsoft is going, it won't be fixed until WPF 6 or 7, by which time they'll get bored of it and invent something new and shiny and broken.
Out of everything I've tried (pretty much everything usable from C, C++, and C#), WPF is the best UI framework around....
WPF is the GUI framework that is "almost good enough" for whatever it is you want to do. It doesn't really matter what you're trying to do, it almost, but doesn't quite, do it right.
For example, data virtualization: it allows controls to display "millions" of records without slowdown. The GUI elements are virtualized, but the data is not. So the stupid control will read in 999,000 rows of data from the database to display the last 100 rows of it. Brilliant. There is NO WORKAROUND. None. Write your own damned data grid control if you don't want it to melt your database server into a pool of slag. Not surprisingly, there's a roaring trade in third-party controls written by developers that didn't eat their crayons in school.
I love how it has a print dialog which does not allow users to select what pages they want to print. I spent weeks trying to figure this one out until I realized that it's just broken, and the best thing to do is call the old version of the print dialog.
Don't believe me? Are you running Vista or Windows 7? Open notepad, paste in some text, and hit print. Now try to print anything other than "All pages". Can't, can you? That's Microsoft quality, right there.
(I assume you mean "Windows Server", not "Windows Security")
Of course, a lot of admins assume that the "Core" edition is somehow magically more secure. In practice, it has the same default settings as the "full" editions, it just has fewer services and components, so there's less to patch. Real security comes from applying security templates that lock down the machine for a specific purpose, and tools like AppLocker, what restrict what executables are allowed to run.
That's just under 3 micrograms of arsenic. According to our trusted interwebs source, wikipedia: "The acute minimal lethal dose of arsenic in adults is estimated to be 70 to 200 mg". In other words, each chip contains about 1/25,000th of the lethal dose, in a non-soluble form.
depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
And I believe you can crank that dial all the way up
Also consider this: the number of cores in my desktop is doubling every year or two (and this is with a single core chip), 6 and 8 cores are cheap now, so we'll be at 1024 in roughly 7-14 years which makes sense because the GHz war is done and simply making more cores is relatively cheap (once you have the interconnect making a bigger CPU isn't all that hard).
Don't you worry, the GHz war is not done!
There's talk of exotic materials (SiC, diamond, etc...) going to 10 GHz. If someone figures out how to make the Rapid Single Flux Quantum digital chips with high temperature superconductors, then we may seriously start to see 1 THz clock speeds in practical computers, using extreme Peltier cooling to get the CPU core down to cryogenic temps.
so...they were right many hundreds of years ago when they thought the earth was the center of the universe...
i am being serious here.
It's not! Your own head is, not "the Earth", unless your head is at the center of the Earth!
An interesting metaphysical concept is that if you define the universe as the "observable universe" around an "observer", then it's still not 100% clear where there "center" is, because the human brain is not a mathematical point, it is an extended object! That is, there's a distinct "observable universe" around each infinitesimal point in your brain, but your brain has a large volume of those with a significant distance between them. This may have deep connections to quantum mechanics and the many-worlds theorem. For example, it implies that we observe a some sort of "combination" of a small volume of nearby universes, because our stream of consciousness is physically spread across them.
There's an obvious universal frame of reference: measure everything relative to the place where the big bang happened. Your choice of axes is somewhat arbitrary, though.
This is a common misunderstanding of the big bang theory.
There is no center. It didn't start at a "location". The entire universe is evenly expanding, from everywhere.
They common analogy is to reduce the 3D space of the universe to a 2D example. Imagine two points on the 2D surface of a balloon. One point is you ("the observer"), the other point is something distant, like a star, that you are observing. Now inflate the balloon. The result is that the two points move apart, because space (the rubber of the balloon) is expanding. A line drawn between the two points would be longer and longer. Note that neither point is "special". Both points observe the same symmetric effect: the other point moving away.
The real universe is a lot like this, except instead of a 2D surface expanding, it's a 3D volume expanding. There's no "center", all of the points move away from each other. From the point of view of each observer, they are the center.
More accurately speaking, each observer is the center of their own private spherical "observable" universe expanding away from them. The center of the universe is your own head. 8)
If IPv6 had not been horribly misconceived in the first place there would be no dual stack and there would be a much less painful transition path. By extending IPv4, not by trying to leave it behind.
It is in fact not too late to go back to IPv4 and extend it. Maybe the time is about right to do that.
IPv6 is exactly that: IPv4 with an extended address field.
You do realise that if you change the size of the address field of IPv4, then by definition, it's a whole new protocol, right?
There's no way to add more addresses to IPv4 without breaking compatibility.
no possible reason to want to write custom, non GUI software from scratch on Windows
That's a bit excessive! It does have some nice things going for it, including a fairly nice API that's been binary and source compatible for decades. There's end-to-end Unicode support in all APIs, a nice event logging and tracing system, a nice performance monitoring system (WMI), various asynchronous file and socket APIs, including advanced copy-less APIs that can tie TCP streams to specific CPU cores, etc...
Unlike Linux, Windows has a built-in volume snapshot system that supports application quiescing (not just cache flushing), exportable snapshots, advanced access-list support that is standard and consistent, etc...
Really, the biggest issue with Windows is that the source is closed, so if you need something special for a cluster, you're out of luck. "patch tuesday" is only an issue on networks which are not controlled, and a supercomputer would use a dedicated, isolated network.
All of the potential issues you have raised could be fixed using just two minor tweaks to the grandparent's suggestion:
- Trade every hour, on the hour (this is unaffected by timezones) - Trade 24/7 (it's done by computers, after all, so it makes zero sense for an exchange to be "open" at only certain times of day) - Every trade is logically split into some small unit (share, dollar, whatever), and randomized, or an algorithm is used that effectively trades simultaneously in a completely fair way.
Done.
Problem solved.
The current situation is not necessary and the alternative proposed by the gp has no real issues except that a bunch of HFT traders would lose their jobs. Boo-friggin-hoo.
Now try using SSE intrinsics. With Java, you can't do that. In C(++) you should get a nice speedup ending up several times faster than Java, unless you're bound by memory bandwidth.
Or use a better C++ compiler, like the Intel one, which gives a substantial speed boost with no developer effort.
There's also ready-made C++ maths libraries for pretty much everything, many with SSE optimizations.
These micro benchmarks also ignore cache thrashing, which kills Java performance for large apps.
That's a very valid point, most people don't realize that there never will be any "magic" improvements in rocketry to bring the cost down to the point that we'll all be taking holidays on Mars. It's still a high-energy problem, and new technology doesn't necessarily make the hard problems much easier.
The ultimate limit on the cost of getting into orbit is the cost of rocket fuel, which is not a lot. What is needed is reliable, reusable launchers which don't require months of maintenance by thousands of people between flights, and that's perfectly possibly with enough engineering effort... the idea that it will 'never' happen is just silly.
If there are no people, nothing needs to be reused.
So we should build single-use container ships and sink them after they've crossed the ocean once?
Reusability is _the_ biggest cost-saver possible, so long as it doesn't require the massive maintenance that a shuttle does between flights (not to mention the cost and complexity of the external tank and boosters).
You can't re-use the rocket fuel, and it makes up the bulk of all rockets, by both mass and volume. It is also necessarily much heavier than the payload. (think: rocket equation)
In contrast, a container ship is mostly metal, with only a small fuel fraction, and a high payload fraction.
The cost computations wildly are different, by several orders of magnitude.
None of this will change, ever, with chemical rockets for fundamental reasons. We'd need to invent entirely different propulsion systems (nuclear, fusion, etc...) before we can start designing rockets like container ships!
Your kind of logic created the shuttle, the least cost effective of all commonly used space launch system in use today.
Returning to my original point about the shuttle, I did mention that re-using the engines might be worthwhile. They're usually complex pieces of turbomachinery made from high-tech alloys. In contrast, the bulk of most rockets is basically just a tube with some internal struts for strength. Compared to the total cost of a typical launch (including payload), the cost of a metal tube is irrelevant.
Point me to a genuine major advance in airframe materials, thermal protection systems, or rocket engine design since the 1970s and maybe this contempt might be better supported by actual evidence.
That's a very valid point, most people don't realize that there never will be any "magic" improvements in rocketry to bring the cost down to the point that we'll all be taking holidays on Mars. It's still a high-energy problem, and new technology doesn't necessarily make the hard problems much easier.
There have been improvements though, they're just not that big or visible. For example, computer-aided design would allow a new rocket to be extensively modeled without expensive testing. Multiple design and testing iterations could be performed without ever stepping into a machine shop. This in turn allows design simplifications, a reduction in part counts, etc...
Computer-aided machining has made enormous improvements since the seventies, in part complexity, cost, precision, and the type of materials that can be used. Old designs would not have assumed the availability of CAM, so they might rely on manual steps, such as welding and riveting. To use parts made automatically by machines, a design optimized for that manufacturing process is required.
There have been significant materials-science advancements, which is why both Boeing and Airbus are now creating aircraft made of composites, which wasn't practical or cost-effective in the 70s. Of course, some of these advancements have made it into the shuttle, for example the Super Leightweight Tank is made of a high-tech aluminium-lithium alloy. That's an easy part to replace, but upgrading the orbiter would be essentially a redesign, so it has remained relatively unchanged.
The real problem with the shuttle is that the fundamental concept is flawed. It assumes that people are needed in orbit -- robots do a better job now, thanks to advancements in digital electronics. In turn, the original design also assumed that it's worth reusing the container for those people. If there are no people, nothing needs to be reused. The engines might be worth bringing back down, but a small ablative heat-shield and a parachute is more than enough for that, there's no need to build a huge heat-shielded structure with wings and avionics! When it costs $thousands per kg of material sent into orbit, anything not directly serving the purpose at hand is just waste. The orbiter weighs 68,585 kg empty, of which only 9,531 kg is the engines! Not counting the structure required to protect the payload, the remaining 50 tons of shuttle structure is just a huge waste of money. That 50 tons could be payload on every launch. Over the 100+ launches that have occurred, that's 5000 tons of satellites or space probes that could have been launched. A large satellite is 5 tons, so that's over a thousand that could have gone up, but didn't. Just imagine: if only 10% of those were for solar system exploration, we could have had a hundred or more additional space probes out there among the planets!
That's your mistake, and the mistake of many politicians when planning for the future.
Nobody seems to have paid any attention in their maths classes.
Our rate of consumption of practically everything has been increasing exponentially for centuries now. A large part of that is increased population, but increased per-capita usage also contributes. Think about what will happen when everyone in China will want a car!
"Current rates of consumption" doesn't even account for linear growth, let alone exponential.
You'll find that we have less than 50 years of oil left, and when it runs out, we'll likely switch to coal for whatever we used to use oil for. That will increase coal usage massively, on top of the background increase in usage.
Read about the Energy policy of China: "China currently generates around two thirds of its electricity from coal-fired power stations.[15] It is progressing with the construction of 562 new coal-fired plants over the next few years.[21] In June 2007, it was reported that an average of two new plants were being opened every week."
You might assume that "domestic coal usage will remain unchanged", but coal is a global commodity. If the price is driven up by the demand anywhere, it will be traded to maximize profits. Australia, where I live, is building multi-billion dollar docks to increase the amount of coal that can be exported to China. We export $22B AUD/year of coal now, and their demand just keeps going up.
For the love of god, educate yourself (and your representatives) about the implications of exponential growth. There's a great series of videos on Youtube which you must watch, because "at current rates of consumption" is basically deluded. You may as well believe in Santa Claus.
Volume is lost. Which you might not consider being "of value" but to the exchange it's the very valuable.
That's a good thing -- the exchange can save money by not having to have server infrastructure capable of handling a huge, real-time load. They can perform trades using a much more efficient and cheaper batch processing system.
They can make their 'cut' either way, it's not like they suddenly have to give up their primary source of income.
Anybody that needed to make a legitimate trade can still trade exactly as they would have done otherwise. The number of real trades will not change. The volume of *real* trades will not change, and that is all that matters.
Trades by HST systems are just shuffling things around. Shuffling things around, say, 20 times a second instead of once a minute doesn't increase liquidity for anyone who wants to sell a million shares "today". The number of buyers who want to purchase a million shares "today" is the same either way. That transaction can occur either way.
Wow... can I visit the fantasy land where you live? It sounds just like a classic sci-fi novel! Do you have flying cars too?
Lets break this down:
The real estate to spread a colony upon
We have plenty of real estate here. Lots of it, and it's cheap. There's the frozen tundra of Canada, or the arid interior of Australia. All of Canada is warmer than Mars, and all of Australia is wetter than Mars. So... why isn't there a big "land rush" to move out to those places? Hmm?
1/3 gravity would be healthier
There's absolutely no data for this, so you're just making shit up. If anything, an educated guess would be that it would be less healthy. Look at the long term zero-g space missions, where astronauts returned back barely able to walk.
Local water is pretty damn nice too
There's water here, in enormous quantities, and in a conveniently liquid form. Mars has some icy rocks, in some places. Most of the planet makes the Sahara look moist.
Easier construction environment
A near vacuum and lethal sub-zero temperatures are "easier"? Where did you build your last house, the core of the Earth?
simpler building designs
You mean, much more complex building designs that would have more in common with a space station, right? There's no air! Right off that bat that means every building must have a complex series of airlocks, safety systems, self-healing walls, air pumps, pressure sensors, filtration systems, humidifiers, water collection, CO2-scrubbers, air quality monitors, etc... At least the first few hundred colonists would have to take their buildings with them, so then you're looking at all of that, but with incredibly tight weight budgets. You'd have to build a robust air-tight building out of what amounts to foam and thin plastic sheeting.
The closest you could come to living on Mars on Earth is to live in the Death Zone of a tall mountain for a year. It actually has way more air, but you'll have roughly the same amount of resources available to you: cold rocks. Now live there for a year, and pay a charity $10K for every pound of material you take up there with you.
Call me when you get back!
Benchmarks don't give an indication of "real life" performance, which is to be blunt, quite shit.
I run the betas on several platforms, all high-end machines with next-gen SSDs, 64-bit, etc... and FF is slow. Especially during startup, it does a crazy amount of I/O, which gets worse over time.
Developers wouldn't notice this while doing micro benchmarks of nightly builds with a fresh Firefox user profile, because it takes a few weeks or months of real-world usage to really bog it down.
The mozilla devs really need to start investigating the growth and fragmentation of their SQLite databases, or whatever the source of the problem is.
Here's a rule of thumb I like to use: If your end-user app does so much I/O during common tasks that it runs slow on a high-end SSD, then you've made some big design errors.
Google results for unwashed masses dealing with technology problems != the list of valid solutions to technology problems.
But it's indicative of a real issue.
To enable a smooth transition of a huge number of people to a new technology, the transition has to be easy. It has to "just work". How many end-users had issues with the Y2K cutover? I bet not many had to "turn off 4 digit dates" to make their "computer work properly".
The problem with IPv6 adoption is that it has zero immediate tangible benefit, so convincing management at a corporation to cut over would be hard enough, but if enabling it causes problems, any problems, not matter how slight, it's impossible. Why would any mid-level suit-wearing paper-pusher risk breaking the entire production network to resolve a problem that doesn't yet impact the organization? It's instant career suicide!
There is not a single IPv6-only service anywhere that a corporation in the English-speaking world desperately wants. I hear there's free porn somewhere on IPv6 that someone uploaded as a "carrot", but there's free porn on IPv4 too, so I don't even see that as a serious motivation for anyone else either, even the horny technophiles at home.
NAT is stateful, 6to4 is stateless. Nat multiplexes using port numbers, 6to4 tunnels but doesn't multiplex. Nat munges headers, 6to4 doesn't. Nat undermines global addressability, 6to4 adheres to this principle.
Yeah, they are practically identical.
My mistake, I was thinking of something else.
It's possible that you've confused your acronyms too, 6to4 is an IPv6 to IPv6 protocol that enables the packets to tunnel over IPv4, but it does not allow IPv4 to IPv6 communicatio. It requires a unique IPv4 address for each IPv6 endpoint, so it doesn't solve IPv4 address exhaustion. NAT and/or proxying is still required in some form, which will be carrier grade NAT in practice, with all of its inherent horrors. Most home users will be have a double-NAT, because of ADSL or Cable routers. I'd love to see the gymnastics required to establish a P2P connection across 4 layers of NAT.
The 6to4 system is effectively carrier-grade NAT. You can't say that they found that "NAT didn't scale", because the two technologies solve the same problem in practically identical ways.
check your facts: http://www.google.com/ipv6 it is native on Google...
Did you read all the way to the end? Where it says: "If your network meets these requirements and you'd like to receive Google over IPv6, please see our FAQ for how to request access."
In other words, it would be broken if enabled, and it's not enabled for everyone, unless access is explicitly requested by an ISP network administrator. I even tested this, take a look:
nslookup
> set type=AAAA
> www.google.com
Server: ####.#####.###
Address: 151.178.210.155
Non-authoritative answer:
Name: www.google.com
> ipv6.google.com
Server: ####.#####.###
Address: 151.178.210.155
Non-authoritative answer:
Name: ipv6.l.google.com
Address: 2404:6800:8004::68
Aliases: ipv6.google.com
In other words, the organisation that is likely the world's most competent "Internet host" in terms of pure technical skill had to develop a procedure to enable ISPs to dip their toe in the water and enable IPv6 access only if they're very very certain it won't break anything.
If that's the state of IPv6 adoption in 2010, mere months from IPv4 address space exhaustion, we're in big trouble.
And there is a quite active IPv6 forum in Australia, and AARNET is IPv6 for a long time...
Talk is cheap. There's no action, particularly in management.
Imagine if in late 1999, there would have been "active forums" for some techos to talking about "testing" the possibility of rolling out 4-digit dates just as soon as management approves it. Not too quickly though, because it might "break things". Meanwhile, the world's biggest banks have "experimental" 4-digit date support, if you open a new "test" account.
There might be some pressure in the States to push IPv6 adoption, but there's none here in Australia.
Every consulting project I've been on in the last two years, I've asked this standard question: "Do you have a business requirement or mandate to deploy IPv6 now or in the future?"
Inevitably, the answer is "No."
Here in Australia, at both private enterprise and government, nobody has even begun to think about IPv6 at any level. Nobody requires IPv6 capability when purchasing software or equipment, and even when the capability is available, nobody turns it on. The more "IPv6 aware" clients turn it off to avoid compatibility issues. Even when I offer to implement IPv6 for some new system ("no extra cost, I'll just turn it on"), nobody wants it.
Pure IPv6 networking will be particularly hard to implement. I've tried experimental setups with products from various vendors. The usual result is that with IPv6 only most things work, but some things break. Stop and think about this for a moment: imagine if that sentence was: "the usual result is that with IPv4 addresses most things work, but some things break." That would be totally unacceptable for any enterprise software, yet it's "perfectly acceptable" for every major vendor to ship software where that's the situation with IPv6, because... nobody cares. The failures are often quite pathetic too, like dialog boxes that require an IPv4 address to be entered, even if it's never used or needed, or only accept IPv4 address for things like DNS servers. Clearly vendors have never tested their products in pure IPv6 environments, or did test them and decided it's too much effort to fix for something nobody cares about.
Let me whip out my crystal ball and predict that when IPv4 addresses run out and organisations scramble to implement IPv6, it's going to be a rush job, and we'll start hearing horror stories of incompetent admins that inadvertently bypass or break firewall rules by enabling IPv6 and cause major issues. These reports in turn are going to scare off management, who'll assume "IPv6 is bad", because they "read about some horror story of how Incompetent-r-Us Pty Ltd was hacked when they turned IPv6 on, hence, IPv6 must be insecure". Combined with stories of broken software and issues like IPv6-connected browsers waiting 30-60 seconds for IPv6 requests to time out, I'm certain that nobody is going to start using it until absolutely forced to.
It's a bad, bad sign that all the major websites like Google and Facebook have "ipv6.normalurl.com". That's because practical IPv6 implementations are often broken, and if enabled it on the main website, it breaks it for a huge fraction of users. If Google and their like can't implement IPv6 transparently without issues, and are forced to create "experimental" websites, then what hope does the typical admin have?
Electrical systems for heating ... can have significantly higher efficiency
Huh? Burning gas to produce heat is pretty damn efficient. Whereas if you convert it to electricity you'll get 60% efficiency at best and then lose 5-7% in transmission. Perhaps the article has a different definition of efficiency.
It's counter-intuitive, but it's true. You're thinking of "space heaters", where the electricity is used to directly heat the environment, which is less efficient than direct heating with fossil fuels compared to using the fossil fuels to generate the electricity.
In practice, electricity for heating and cooling is primarily done using air-conditioners, which are heat pumps, and don't heat or cool the air directly. Heat pumps are very efficient, sometimes over 100%! In other words, one can obtain more than 1W of heating using 1W of power, as long as the heat is simply "moved", cooling something else (the outside air, typically).
It's possible to create heat pumps without electricity, but that technology is not commonly used. I'm not sure why, but there's probably a good reason. I suspect complexity and/or reliability.
It's not a direct comparison, AT&T-s network has a much higher aggregate capacity.
The Iridium satellites can only handle 1100 concurrent phone calls each. While there are 66 active satellites, most of the coverage is over the poles because of their orbits, so the capacity over occupied land is much lower than one would think, probably below 10,000 concurrent calls. Each of those channels in turn is very narrow bandwidth, about 2400 bits per second, and uses heavy audio compression to make speech intelligible. This explains why Iridium plans are so expensive. They're not for "chatting", they're for professionals that need emergency communication in the middle of nowhere.
The iPhone in my pocket has a higher bandwidth for a single connection than an entire Iridium satellite!
Open notepad, paste in some text, and hit print. Now try to print anything other than "All pages". Can't, can you?
You're joking, right? The Windows 7 print dialog looks like this. Isn't that a page range selection box in the bottom left?
Did you not notice how the "current page" option is disabled? It's permanently disabled, and cannot be enabled via the WPF API.
The GUI elements are virtualized, but the data is not. . . . There is NO WORKAROUND. None.
Wrong again. There are sensible workarounds involving lazy loading, like this. No new data grid necessary. That said, this needs to be in the framework, and it sounds like they will be addressing this soon.
Now, I complain nearly everyday about all the quirks in WPF/XAML. I hate spending an hour writing XAML code, compiling regularly, and finding out at runtime that the basis of my strategy is flawed because of something that could have been checked in the compiler, but was not. But I can't deny the flexibility and ease that WPF lends to nice UI design. The XAML language needs a makeover, but WPF itself is second to none.
The workaround that doesn't involve writing huge amounts of code yourself is a mere 109 KB of source code involving substantial multi-threading and knowledge of the WPF data binding internals, most of which is undocumented. I'll just roll my sleeves up and do that right away.
Not counting third-party commercial control suites, this is the first such solution I've seen that even remotely has a hope of working. I've seen several before that claimed to virtualize the data but enumerated everything anyway. Either way, using this code will disable smooth scrolling, so significant functionality is lost. I tried turning it back on, but even with a 50 ms data loading delay, the result is unusable.
Also, notice that this is a post from April 2010. WPF has been out since Nov 2006, so it's taken over 3 years for a free-to-use solution to appear for what is a critical performance design flaw.
From what I've heard, most of the changes in WPF 4 were prompted by Microsoft's attempt to use it for Visual Studio 2010, the GUI of which was unusable while it was still using the 3.5-era WPF framework.
It's still broken, and at the rate Microsoft is going, it won't be fixed until WPF 6 or 7, by which time they'll get bored of it and invent something new and shiny and broken.
Out of everything I've tried (pretty much everything usable from C, C++, and C#), WPF is the best UI framework around. ...
WPF is the GUI framework that is "almost good enough" for whatever it is you want to do. It doesn't really matter what you're trying to do, it almost, but doesn't quite, do it right.
For example, data virtualization: it allows controls to display "millions" of records without slowdown. The GUI elements are virtualized, but the data is not. So the stupid control will read in 999,000 rows of data from the database to display the last 100 rows of it. Brilliant. There is NO WORKAROUND. None. Write your own damned data grid control if you don't want it to melt your database server into a pool of slag. Not surprisingly, there's a roaring trade in third-party controls written by developers that didn't eat their crayons in school.
I love how it has a print dialog which does not allow users to select what pages they want to print. I spent weeks trying to figure this one out until I realized that it's just broken, and the best thing to do is call the old version of the print dialog.
Don't believe me? Are you running Vista or Windows 7? Open notepad, paste in some text, and hit print. Now try to print anything other than "All pages". Can't, can you? That's Microsoft quality, right there.
If they stripped it down and provided only core services like OpenBSD it would be even better
You mean, like: Windows Server 2008 R2 Core ?
(I assume you mean "Windows Server", not "Windows Security")
Of course, a lot of admins assume that the "Core" edition is somehow magically more secure. In practice, it has the same default settings as the "full" editions, it just has fewer services and components, so there's less to patch. Real security comes from applying security templates that lock down the machine for a specific purpose, and tools like AppLocker, what restrict what executables are allowed to run.
That's just under 3 micrograms of arsenic. According to our trusted interwebs source, wikipedia: "The acute minimal lethal dose of arsenic in adults is estimated to be 70 to 200 mg". In other words, each chip contains about 1/25,000th of the lethal dose, in a non-soluble form.
I'll think you'll be fine.
depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
And I believe you can crank that dial all the way up
Also consider this: the number of cores in my desktop is doubling every year or two (and this is with a single core chip), 6 and 8 cores are cheap now, so we'll be at 1024 in roughly 7-14 years which makes sense because the GHz war is done and simply making more cores is relatively cheap (once you have the interconnect making a bigger CPU isn't all that hard).
Don't you worry, the GHz war is not done!
There's talk of exotic materials (SiC, diamond, etc...) going to 10 GHz. If someone figures out how to make the Rapid Single Flux Quantum digital chips with high temperature superconductors, then we may seriously start to see 1 THz clock speeds in practical computers, using extreme Peltier cooling to get the CPU core down to cryogenic temps.
Yours is actually a religious attitude, just an atheistic one
Suggesting that atheism is a religion is like saying that bald is a hair color.
so...they were right many hundreds of years ago when they thought the earth was the center of the universe...
i am being serious here.
It's not! Your own head is, not "the Earth", unless your head is at the center of the Earth!
An interesting metaphysical concept is that if you define the universe as the "observable universe" around an "observer", then it's still not 100% clear where there "center" is, because the human brain is not a mathematical point, it is an extended object! That is, there's a distinct "observable universe" around each infinitesimal point in your brain, but your brain has a large volume of those with a significant distance between them. This may have deep connections to quantum mechanics and the many-worlds theorem. For example, it implies that we observe a some sort of "combination" of a small volume of nearby universes, because our stream of consciousness is physically spread across them.
There's an obvious universal frame of reference: measure everything relative to the place where the big bang happened. Your choice of axes is somewhat arbitrary, though.
This is a common misunderstanding of the big bang theory.
There is no center. It didn't start at a "location". The entire universe is evenly expanding, from everywhere.
They common analogy is to reduce the 3D space of the universe to a 2D example. Imagine two points on the 2D surface of a balloon. One point is you ("the observer"), the other point is something distant, like a star, that you are observing. Now inflate the balloon. The result is that the two points move apart, because space (the rubber of the balloon) is expanding. A line drawn between the two points would be longer and longer. Note that neither point is "special". Both points observe the same symmetric effect: the other point moving away.
The real universe is a lot like this, except instead of a 2D surface expanding, it's a 3D volume expanding. There's no "center", all of the points move away from each other. From the point of view of each observer, they are the center.
More accurately speaking, each observer is the center of their own private spherical "observable" universe expanding away from them. The center of the universe is your own head. 8)
If IPv6 had not been horribly misconceived in the first place there would be no dual stack and there would be a much less painful transition path. By extending IPv4, not by trying to leave it behind.
It is in fact not too late to go back to IPv4 and extend it. Maybe the time is about right to do that.
IPv6 is exactly that: IPv4 with an extended address field.
You do realise that if you change the size of the address field of IPv4, then by definition, it's a whole new protocol, right?
There's no way to add more addresses to IPv4 without breaking compatibility.
no possible reason to want to write custom, non GUI software from scratch on Windows
That's a bit excessive! It does have some nice things going for it, including a fairly nice API that's been binary and source compatible for decades. There's end-to-end Unicode support in all APIs, a nice event logging and tracing system, a nice performance monitoring system (WMI), various asynchronous file and socket APIs, including advanced copy-less APIs that can tie TCP streams to specific CPU cores, etc...
Unlike Linux, Windows has a built-in volume snapshot system that supports application quiescing (not just cache flushing), exportable snapshots, advanced access-list support that is standard and consistent, etc...
Really, the biggest issue with Windows is that the source is closed, so if you need something special for a cluster, you're out of luck. "patch tuesday" is only an issue on networks which are not controlled, and a supercomputer would use a dedicated, isolated network.
All of the potential issues you have raised could be fixed using just two minor tweaks to the grandparent's suggestion:
- Trade every hour, on the hour (this is unaffected by timezones)
- Trade 24/7 (it's done by computers, after all, so it makes zero sense for an exchange to be "open" at only certain times of day)
- Every trade is logically split into some small unit (share, dollar, whatever), and randomized, or an algorithm is used that effectively trades simultaneously in a completely fair way.
Done.
Problem solved.
The current situation is not necessary and the alternative proposed by the gp has no real issues except that a bunch of HFT traders would lose their jobs. Boo-friggin-hoo.
Now try using SSE intrinsics. With Java, you can't do that. In C(++) you should get a nice speedup ending up several times faster than Java, unless you're bound by memory bandwidth.
Or use a better C++ compiler, like the Intel one, which gives a substantial speed boost with no developer effort.
There's also ready-made C++ maths libraries for pretty much everything, many with SSE optimizations.
These micro benchmarks also ignore cache thrashing, which kills Java performance for large apps.
That's a very valid point, most people don't realize that there never will be any "magic" improvements in rocketry to bring the cost down to the point that we'll all be taking holidays on Mars. It's still a high-energy problem, and new technology doesn't necessarily make the hard problems much easier.
The ultimate limit on the cost of getting into orbit is the cost of rocket fuel, which is not a lot. What is needed is reliable, reusable launchers which don't require months of maintenance by thousands of people between flights, and that's perfectly possibly with enough engineering effort... the idea that it will 'never' happen is just silly.
If there are no people, nothing needs to be reused.
So we should build single-use container ships and sink them after they've crossed the ocean once?
Reusability is _the_ biggest cost-saver possible, so long as it doesn't require the massive maintenance that a shuttle does between flights (not to mention the cost and complexity of the external tank and boosters).
You can't re-use the rocket fuel, and it makes up the bulk of all rockets, by both mass and volume. It is also necessarily much heavier than the payload. (think: rocket equation)
In contrast, a container ship is mostly metal, with only a small fuel fraction, and a high payload fraction.
The cost computations wildly are different, by several orders of magnitude.
None of this will change, ever, with chemical rockets for fundamental reasons. We'd need to invent entirely different propulsion systems (nuclear, fusion, etc...) before we can start designing rockets like container ships!
Your kind of logic created the shuttle, the least cost effective of all commonly used space launch system in use today.
Returning to my original point about the shuttle, I did mention that re-using the engines might be worthwhile. They're usually complex pieces of turbomachinery made from high-tech alloys. In contrast, the bulk of most rockets is basically just a tube with some internal struts for strength. Compared to the total cost of a typical launch (including payload), the cost of a metal tube is irrelevant.
Point me to a genuine major advance in airframe materials, thermal protection systems, or rocket engine design since the 1970s and maybe this contempt might be better supported by actual evidence.
That's a very valid point, most people don't realize that there never will be any "magic" improvements in rocketry to bring the cost down to the point that we'll all be taking holidays on Mars. It's still a high-energy problem, and new technology doesn't necessarily make the hard problems much easier.
There have been improvements though, they're just not that big or visible. For example, computer-aided design would allow a new rocket to be extensively modeled without expensive testing. Multiple design and testing iterations could be performed without ever stepping into a machine shop. This in turn allows design simplifications, a reduction in part counts, etc...
Computer-aided machining has made enormous improvements since the seventies, in part complexity, cost, precision, and the type of materials that can be used. Old designs would not have assumed the availability of CAM, so they might rely on manual steps, such as welding and riveting. To use parts made automatically by machines, a design optimized for that manufacturing process is required.
There have been significant materials-science advancements, which is why both Boeing and Airbus are now creating aircraft made of composites, which wasn't practical or cost-effective in the 70s. Of course, some of these advancements have made it into the shuttle, for example the Super Leightweight Tank is made of a high-tech aluminium-lithium alloy. That's an easy part to replace, but upgrading the orbiter would be essentially a redesign, so it has remained relatively unchanged.
The real problem with the shuttle is that the fundamental concept is flawed. It assumes that people are needed in orbit -- robots do a better job now, thanks to advancements in digital electronics. In turn, the original design also assumed that it's worth reusing the container for those people. If there are no people, nothing needs to be reused. The engines might be worth bringing back down, but a small ablative heat-shield and a parachute is more than enough for that, there's no need to build a huge heat-shielded structure with wings and avionics! When it costs $thousands per kg of material sent into orbit, anything not directly serving the purpose at hand is just waste. The orbiter weighs 68,585 kg empty, of which only 9,531 kg is the engines! Not counting the structure required to protect the payload, the remaining 50 tons of shuttle structure is just a huge waste of money. That 50 tons could be payload on every launch. Over the 100+ launches that have occurred, that's 5000 tons of satellites or space probes that could have been launched. A large satellite is 5 tons, so that's over a thousand that could have gone up, but didn't. Just imagine: if only 10% of those were for solar system exploration, we could have had a hundred or more additional space probes out there among the planets!
We have 250 years at current rates, including about 50% of our electric generation.
http://www.clean-energy.us/facts/coal.htm [clean-energy.us]
Emphasis mine.
That's your mistake, and the mistake of many politicians when planning for the future.
Nobody seems to have paid any attention in their maths classes.
Our rate of consumption of practically everything has been increasing exponentially for centuries now. A large part of that is increased population, but increased per-capita usage also contributes. Think about what will happen when everyone in China will want a car!
"Current rates of consumption" doesn't even account for linear growth, let alone exponential.
You'll find that we have less than 50 years of oil left, and when it runs out, we'll likely switch to coal for whatever we used to use oil for. That will increase coal usage massively, on top of the background increase in usage.
Read about the Energy policy of China: "China currently generates around two thirds of its electricity from coal-fired power stations.[15] It is progressing with the construction of 562 new coal-fired plants over the next few years.[21] In June 2007, it was reported that an average of two new plants were being opened every week."
You might assume that "domestic coal usage will remain unchanged", but coal is a global commodity. If the price is driven up by the demand anywhere, it will be traded to maximize profits. Australia, where I live, is building multi-billion dollar docks to increase the amount of coal that can be exported to China. We export $22B AUD/year of coal now, and their demand just keeps going up.
For the love of god, educate yourself (and your representatives) about the implications of exponential growth. There's a great series of videos on Youtube which you must watch, because "at current rates of consumption" is basically deluded. You may as well believe in Santa Claus.
The Most IMPORTANT Video You'll Ever See (part 1 of 8)
Volume is lost. Which you might not consider being "of value" but to the exchange it's the very valuable.
That's a good thing -- the exchange can save money by not having to have server infrastructure capable of handling a huge, real-time load. They can perform trades using a much more efficient and cheaper batch processing system.
They can make their 'cut' either way, it's not like they suddenly have to give up their primary source of income.
Anybody that needed to make a legitimate trade can still trade exactly as they would have done otherwise. The number of real trades will not change. The volume of *real* trades will not change, and that is all that matters.
Trades by HST systems are just shuffling things around. Shuffling things around, say, 20 times a second instead of once a minute doesn't increase liquidity for anyone who wants to sell a million shares "today". The number of buyers who want to purchase a million shares "today" is the same either way. That transaction can occur either way.