If I was to invent a new cryptocurrency tomorrow such that hashing can only be done on a CPU, and it became sufficiently popular, is there anything that could prevent someone from designing and manufacturing an ASIC to run that algorithm, thereby bringing us back to the status quo?
Only because Tesla was willing to front the money to build a Supercharger network and nobody else was. There's nothing stopping anyone else from doing the same, if they want to.
When I was learning about functional programming in college, I got about as far as learning about the avoidance of side effects, at which point I started asking myself, "how would one write a video game in an FP language if you're not supposed to e.g. update the player's on-screen position in response to a keystroke"? The answer I got was to either generate an entire new game-state for each update (which seemed unwieldy), or work around the problem using monads, which admittedly I never really understood. I went back to procedural programming since that looked like the more straightforward way to implement the kinds of programs I wanted to write.
My question now is, do people ever actually write video games using functional programming? And if so, how would an FP-based arcade-style video game realistically handle things like updating the state of the player and the monsters at 60fps, as the game progresses?
Considering his smarts, it sure seems dumb for Musk to reinvent the wheel, especially for something the end user has no control over whether it works or not. As I have said many times before, there's a reason mechanical light switches are still around. They work every time.
Have you seen the doors on the Model X? Elon Musk is the new Rube Goldberg.;)
Hydrogen is a way of storing power that doesn't require a heavy, expensive, short-lived battery pack.
Of course, this was a much better argument back in the bad old days when batteries had horrible energy density, were insanely expensive, and didn't last very long.
Now that battery technology has improved quite a bit, batteries only somewhat suck and are only expensive instead of insanely expensive -- so the advantages of hydrogen over battery storage are smaller.
I expect that in the future batteries will continue to get better, and people will stop talking about hydrogen because there won't be any advantage anymore.
Don't be silly -- when Facebook taps into your pleasure center, it won't be to notify your friend that you're horny, it will be to give you a dopamine hit every time you view an advertisement. Within a few days you'll want to do nothing else.
That `ring' from the Death Star explosion has always bothered me. To this day I keep thinking they should have made that a spherical blast effect.
I always assumed it was due to the way the exploding nuclear (or whatever it was) core was armored -- everywhere except around the middle, so that's where most of the energy came out.
I'll nominate "Code 46"; it was beautifully filmed and acted, and was science fiction but it wasn't about stuff blowing up or constantly rubbing CGI in your face, so to me it felt like it could be a story that might actually happen 40-50 years from now rather than a fantasy play-set with robots and spaceships.
I'd link to the trailer, but the trailer is awful; it's better to just watch the movie directly.
No, we can explain our software projects to other developers just fine. It's usually not worth the time/aggravation it takes to try to explain it to anyone else.
You understand the program well, because you wrote it. Eventually, though, you'll retire (or move on to another job) and responsibility for the program will be handed over to Joey the Talented Ex-Intern, who knows enough to be able to recompile the program, and knows how to grep for keywords to find (what is probably) the right file to change in order to modify a particular minor behavior from time to time. But Joey doesn't really understand the design, and nobody else at the company knows anything about it at all...
(or at least that is how it seems to work in my industry... ymmv:))
Anyone remember the article from a year or two ago, when it was discovered that Apple was sourcing CPUs for its phones from two different manufacturers, and the phones containing CPUs from one source performed marginally better than the phones contain CPUs from the other source?
There was a big to-do, with people trying to figure out which iPhones were "the good ones", and people who had received (or thought they had received) the slower version were complaining and debating whether they ought to return their "inferior" iPhone in order to get one of the "better" ones.
Of course it turned out the difference wasn't really noticeable unless you were specifically benchmarking for it, but the fact that it was detectable at all produced a big (well, medium-sized) scandal and a headache for Apple.
Given that, I'm not at all surprised that Apple now aims for uniform performance across all units of a given model, rather than for best-possible-performance on any given OEM chipset. Uniformity makes everyone happy, whereas an optimal performance will go unnoticed by the people who have it and the people who don't will be pissed off.
To be fair, the reason GM only leased the vehicles was likely the same reason you can only lease a Fuel Cell-powered car today -- because if they were going to sell them, they'd either have to sell them at a big loss, or price them so high that nobody would buy one. Neither is a good option. It's a dilemma you face when the technology you're trying to sell costs you more to build than people are willing to pay you for it.
How would you like a regulation having passed that made every website use HTML 3.2, Perl and Oracle 8.
This would be a good argument against the government mandating that every ISP use only 100 megabit Ethernet, or DSL lines only.
But, speaking of straw-man arguments, that is not what net neutrality is about. Net neutrality is about preventing ISPs from leveraging their near-monopoly position as last-mile gatekeepers in order to price their non-ISP competitors out of the Internet-content market.
Net neutrality laws do not specify what technologies an ISP may or may not use; it only specifies that an ISP may not privilege some content above others by charging different content-providers different rates for the same number of kilobytes of content.
If you think that's an unreasonable restriction, feel free to describe why. If you think the ISPs can be trusted not to abuse their monopoly position in short order when given the opportunity to do so, explain why you think so.
Sounds like AOL/TimeWarner all over again. Like gluing a dolphin and a pelican together because you want to make a creature that can both fly and swim.
Pretty much every listed criticism of c++ is valid, but I still prefer c++ over c for one reason: c++ has constructors and destructors, which means you can automate deallocation of resources using RIAA and smart pointers. In C you must remember to deallocate manually, and sooner or later you *will* mess it up, leaving you with a nasty memory leak or dangling-freed-pointer problem which you will spend much time tracking down and fixing.
There's a good chance that this machine's software/interfaces will have....inadequate security.
Nothing I can see in the article suggests that this machine contains any software, or any interfaces other than your standard steering wheel/brake/accelerator. What are you referring to?
My gods, programmers have gotten lazy. What's next, extra CPU consumption for bold text? The system slowing down every time it beeps?
Or, we could at least allow for the possibility that the behavior was unintentional. If you've never written a program that inadvertently spins a core rather than correctly blocking while waiting for the next event in the event loop, then feel free to cast the first stone, but I imagine most programmers have made that mistake.
You get five stars for being over-the-top judgmental and insulting -- apparently that's a requirement on the Internet -- but unless you have the time and money to see every movie, try every restaurant, etc, then you have to decide which ones to try and which to avoid based on something. What you're advocating is either making random decisions (which can be fun occasionally but also leads to wasting a lot of time and money suffering through crap), or making decisions based on other, less relevant criteria (such as which movie has the most competent advertising team, or which restaurant happens to be located in front of your eyeballs when your stomach rumbles).
If you want to make your decisions based on subconscious reasoning that you don't even understand yourself, go ahead, but don't blame others for trying to make an informed decision.
The problem is that any given reviewer wont "mesh" with what *YOU* like. Or what *I* like.
That's the point of aggregation sites like RottenTomatoes. Any given particular reviewer might have tastes that differ from yours or mine, but if 999 of 1000 reviewers all say the movie stinks, then it's very likely the movie stinks. Sure, you might be the rare exception whose tastes are similar to the lone holdout, but that's not the way to bet.
Prior to this, I'd have thought America and especially its government agencies do not hack.
Why would you have thought that? Spying has been going on since pretty much the dawn of time. It's what spy agencies do, and hacking computers is one way that they do it. Being surprised that the CIA does hacking is like being surprised that the Army shoots people.
I guess I was wrong. What troubles me is that the media only talked about the Russians, yet the act was taking place in our backyard!
What makes you think this spying was taking place in our backyard? The fact that the CIA was installing spyware doesn't mean that the CIA was installing spyware on the property of US citizens. (it doesn't mean they weren't, either -- but as a matter of law, they are not legally allowed to spy inside the US)
Sayeth the noob who didn't think about how long testing the change would take...
Agreed that replacing tested/working code with new "more efficient" code does incur a re-validation cost.
On the other hand, that's also an argument for writing the more-efficient implementation the first time, rather than waiting until some later release. Since you know it's all going to have to go through the testing cycle at least once, why waste your QA group's time testing slow/throwaway code, when you could have them spend that time testing the code you actually want your program to contain? (Assuming all other things are equal, which they often aren't, of course)
The shortest distance from A to B is a straight line.
If I was to invent a new cryptocurrency tomorrow such that hashing can only be done on a CPU, and it became sufficiently popular, is there anything that could prevent someone from designing and manufacturing an ASIC to run that algorithm, thereby bringing us back to the status quo?
Still, Tesla is pretty much the next Comcast
Only because Tesla was willing to front the money to build a Supercharger network and nobody else was. There's nothing stopping anyone else from doing the same, if they want to.
When I was learning about functional programming in college, I got about as far as learning about the avoidance of side effects, at which point I started asking myself, "how would one write a video game in an FP language if you're not supposed to e.g. update the player's on-screen position in response to a keystroke"? The answer I got was to either generate an entire new game-state for each update (which seemed unwieldy), or work around the problem using monads, which admittedly I never really understood. I went back to procedural programming since that looked like the more straightforward way to implement the kinds of programs I wanted to write.
My question now is, do people ever actually write video games using functional programming? And if so, how would an FP-based arcade-style video game realistically handle things like updating the state of the player and the monsters at 60fps, as the game progresses?
Just look at the graphs.
No.
Ah c'mon. Just once. You'll like them, I promise.
Considering his smarts, it sure seems dumb for Musk to reinvent the wheel, especially for something the end user has no control over whether it works or not. As I have said many times before, there's a reason mechanical light switches are still around. They work every time.
Have you seen the doors on the Model X? Elon Musk is the new Rube Goldberg. ;)
Why Hydrogen?
Hydrogen is a way of storing power that doesn't require a heavy, expensive, short-lived battery pack.
Of course, this was a much better argument back in the bad old days when batteries had horrible energy density, were insanely expensive, and didn't last very long.
Now that battery technology has improved quite a bit, batteries only somewhat suck and are only expensive instead of insanely expensive -- so the advantages of hydrogen over battery storage are smaller.
I expect that in the future batteries will continue to get better, and people will stop talking about hydrogen because there won't be any advantage anymore.
Don't be silly -- when Facebook taps into your pleasure center, it won't be to notify your friend that you're horny, it will be to give you a dopamine hit every time you view an advertisement. Within a few days you'll want to do nothing else.
That `ring' from the Death Star explosion has always bothered me. To this day I keep thinking they should have made that a spherical blast effect.
I always assumed it was due to the way the exploding nuclear (or whatever it was) core was armored -- everywhere except around the middle, so that's where most of the energy came out.
Well, that, and because it looked cool :)
I'll nominate "Code 46"; it was beautifully filmed and acted, and was science fiction but it wasn't about stuff blowing up or constantly rubbing CGI in your face, so to me it felt like it could be a story that might actually happen 40-50 years from now rather than a fantasy play-set with robots and spaceships.
I'd link to the trailer, but the trailer is awful; it's better to just watch the movie directly.
No, we can explain our software projects to other developers just fine. It's usually not worth the time/aggravation it takes to try to explain it to anyone else.
You understand the program well, because you wrote it. Eventually, though, you'll retire (or move on to another job) and responsibility for the program will be handed over to Joey the Talented Ex-Intern, who knows enough to be able to recompile the program, and knows how to grep for keywords to find (what is probably) the right file to change in order to modify a particular minor behavior from time to time. But Joey doesn't really understand the design, and nobody else at the company knows anything about it at all...
(or at least that is how it seems to work in my industry... ymmv :))
Anyone remember the article from a year or two ago, when it was discovered that Apple was sourcing CPUs for its phones from two different manufacturers, and the phones containing CPUs from one source performed marginally better than the phones contain CPUs from the other source?
There was a big to-do, with people trying to figure out which iPhones were "the good ones", and people who had received (or thought they had received) the slower version were complaining and debating whether they ought to return their "inferior" iPhone in order to get one of the "better" ones.
Of course it turned out the difference wasn't really noticeable unless you were specifically benchmarking for it, but the fact that it was detectable at all produced a big (well, medium-sized) scandal and a headache for Apple.
Given that, I'm not at all surprised that Apple now aims for uniform performance across all units of a given model, rather than for best-possible-performance on any given OEM chipset. Uniformity makes everyone happy, whereas an optimal performance will go unnoticed by the people who have it and the people who don't will be pissed off.
A Big Problem With AI: Even Its Creators Can't Explain How It Works
Yeah, but isn't this eventually true of every software project? ;)
To be fair, the reason GM only leased the vehicles was likely the same reason you can only lease a Fuel Cell-powered car today -- because if they were going to sell them, they'd either have to sell them at a big loss, or price them so high that nobody would buy one. Neither is a good option. It's a dilemma you face when the technology you're trying to sell costs you more to build than people are willing to pay you for it.
How would you like a regulation having passed that made every website use HTML 3.2, Perl and Oracle 8.
This would be a good argument against the government mandating that every ISP use only 100 megabit Ethernet, or DSL lines only.
But, speaking of straw-man arguments, that is not what net neutrality is about. Net neutrality is about preventing ISPs from leveraging their near-monopoly position as last-mile gatekeepers in order to price their non-ISP competitors out of the Internet-content market.
Net neutrality laws do not specify what technologies an ISP may or may not use; it only specifies that an ISP may not privilege some content above others by charging different content-providers different rates for the same number of kilobytes of content.
If you think that's an unreasonable restriction, feel free to describe why. If you think the ISPs can be trusted not to abuse their monopoly position in short order when given the opportunity to do so, explain why you think so.
Sounds like AOL/TimeWarner all over again. Like gluing a dolphin and a pelican together because you want to make a creature that can both fly and swim.
Pretty much every listed criticism of c++ is valid, but I still prefer c++ over c for one reason: c++ has constructors and destructors, which means you can automate deallocation of resources using RIAA and smart pointers. In C you must remember to deallocate manually, and sooner or later you *will* mess it up, leaving you with a nasty memory leak or dangling-freed-pointer problem which you will spend much time tracking down and fixing.
Outlook isn't so good for tesla if bolt is selling around 1000 per month.
Dunno about the Bolt, but the first year's worth of Model 3's are already sold out. So Tesla's got that going for them.
It's basically a baby-blue enclosed forklift with a pump system, a water trailer, and a shield on the front. So terrifying.
It's not the implementation that makes it terrifying, it's the use case.
There's a good chance that this machine's software/interfaces will have....inadequate security.
Nothing I can see in the article suggests that this machine contains any software, or any interfaces other than your standard steering wheel/brake/accelerator. What are you referring to?
My gods, programmers have gotten lazy. What's next, extra CPU consumption for bold text? The system slowing down every time it beeps?
Or, we could at least allow for the possibility that the behavior was unintentional. If you've never written a program that inadvertently spins a core rather than correctly blocking while waiting for the next event in the event loop, then feel free to cast the first stone, but I imagine most programmers have made that mistake.
13 per cent CPU. For a blinking cursor. That's... impressive.
Yeah, but the blinking cursor looks so much more realistic when rendered at a full 60 frames per second. It really gives it that extra "pop".
You get five stars for being over-the-top judgmental and insulting -- apparently that's a requirement on the Internet -- but unless you have the time and money to see every movie, try every restaurant, etc, then you have to decide which ones to try and which to avoid based on something. What you're advocating is either making random decisions (which can be fun occasionally but also leads to wasting a lot of time and money suffering through crap), or making decisions based on other, less relevant criteria (such as which movie has the most competent advertising team, or which restaurant happens to be located in front of your eyeballs when your stomach rumbles).
If you want to make your decisions based on subconscious reasoning that you don't even understand yourself, go ahead, but don't blame others for trying to make an informed decision.
The problem is that any given reviewer wont "mesh" with what *YOU* like. Or what *I* like.
That's the point of aggregation sites like RottenTomatoes. Any given particular reviewer might have tastes that differ from yours or mine, but if 999 of 1000 reviewers all say the movie stinks, then it's very likely the movie stinks. Sure, you might be the rare exception whose tastes are similar to the lone holdout, but that's not the way to bet.
Prior to this, I'd have thought America and especially its government agencies do not hack.
Why would you have thought that? Spying has been going on since pretty much the dawn of time. It's what spy agencies do, and hacking computers is one way that they do it. Being surprised that the CIA does hacking is like being surprised that the Army shoots people.
I guess I was wrong. What troubles me is that the media only talked about the Russians, yet the act was taking place in our backyard!
What makes you think this spying was taking place in our backyard? The fact that the CIA was installing spyware doesn't mean that the CIA was installing spyware on the property of US citizens. (it doesn't mean they weren't, either -- but as a matter of law, they are not legally allowed to spy inside the US)
Sayeth the noob who didn't think about how long testing the change would take...
Agreed that replacing tested/working code with new "more efficient" code does incur a re-validation cost.
On the other hand, that's also an argument for writing the more-efficient implementation the first time, rather than waiting until some later release. Since you know it's all going to have to go through the testing cycle at least once, why waste your QA group's time testing slow/throwaway code, when you could have them spend that time testing the code you actually want your program to contain? (Assuming all other things are equal, which they often aren't, of course)
The shortest distance from A to B is a straight line.