nixos
If not, you're just pushing responsibility up.
Chernobyl isn't hypothetical. And neither is Fukushima. And those weren't as bad as they could have been.
And we still don't know what to do with all the waste we have.
It depends on the CPU.
The problem is that C was designed to be as close as possible to hardware, and some places (RTOS? Kernel?) speed is critical.
The opposite. When the field was in its infancy, one was able to keep whole stacks in his head.
How complicated were CPUs in the 1960s?
How many lines of assembler was in the LM?
How many lines is Linux or FreeBSD kernel? Now add libc.
Now you have a 1970s C compiler.
Now take into account all the optimizations any modern C compiler does. Now make sure there's no bugs _there_.
Now add a Python stack.
Now you can have decent, "safe" code. Most hacks don't target this part. The low hanging fruit is lower.
You need a math library. OK, import that. You need some other library. OK, import that.
Oops, there's a bug in one module. Or the admin setup wasn't done right. Or something blew.
Bam. You have the keys to the kingdom.
And this is all deterministic. Someone _could_ verify that there are no bugs here.
But what about Neural Networks? The whole point of training is that the programmers _can't_ write a deterministic algorithm to self drive, and have to have a huge NN do the heavy lifting.
And that's not verifiable.
_This_ is what's going to be running your self-driving car.
That's why I compared software engineering to biology, where we "test" a lot, hope for the best, and have it blow up in our face a generation later.
Immensely so.
On a scale of engineering "hardness" (meaning, we can predict all side affects of action), software engineering is closer to medicine than to, say, civil engineering.
We know stresses, materials, and how they interact. We can predict what will happen, and how to avoid edge cases.
Software? Is there any commonly used secure software? Forget about Windows and Linux. What about OpenBSD?
Did it ever have a security hole?
And that's just the OS. What about software?
There are just too many variables.
So what will happen?
There will become "best practices" enshrined by law. Most will be security theater. Most will remove our rights, and most will actually make things less safe.
Right now, the number one problem of IoT security is fragmentation. Samsung puts out an S6, three years later stops updating it, a hole is found, too bad. Game over.
The problem is that "locking firmware" is common "security theater", which, if there'll ever be a legal security requirement on IoT, it'll require locked bootloader and firmware.
And you can't make a requirement to "keep code secure", because then the question will be for "how long"? Five years? 10 years?
Theoretically, we can put CO2 back in the bottle. Practically, we can do it now, just not with enough efficiency and scale to make it worth it.
This is the difficulty.
Right now, the only cheap and clean energy somewhat on the horizon is fusion, which is 50 years in the future for the past 50 years.
If it was, buying a spot on a Falcon or on a Delta would be simple:
TCOFalcon = cost of launch + self-insurance-markup.
TCODelta = cost of launch + self-insurance-markup.
Falcon costs $1233/lb
Delta IV costs $8694/lb.
To compare apples to apples, to launch 50,000 lbs (a full Falcon FT 50,000 lb), a Falcon would cost 61,650,000, and a Delta IV would cost 434,700,000).
A Delta IV failed once out of 33, and the Falcon 9 failed three out of 29.
Therefore, TotalCostOfLaunch = CostOfLaunch+costOfSatellite * failureRate.
For TCODelta = TCOFalcon
CostOfLaunchDelta+costOfSatellitefailureRateDelta = CostOfLaunchFalcon+costOfSatellitefailureRateFalcon.
Plugging in Numbers,
434,700,000+c * (1/33) = 61,650,000+c * 3/29
c/33-2 * c/28 = 61,650,000 - 434,700,000
c = 5,100,126,428
Any satellite worth less than five billion (!! That's an _insanely_ expensive single mission) would be cheaper to launch on a Falcon, despite its failure rate
The only problem is that you have to wait for a new satellite
Apple will stay Apple. I don't think they'll go anywhere.
The question is Google. If this happened in 2008, I don't think Android would have taken off anywhere close to the way it did.
But now? One one hand, Android has millions of apps already on the market. On the other hand, Microsoft now has potentially millions of old, existing, applications.
I don't think it will make a dent in the phone market. It's too commonly used as a hand-held rather than a station, and windows apps are useless there.
On the other hand, it can tank the Android tablet market
Everyone was on blogs ten years ago. Had Google kept up their product, people wouldn't need to leave.
The thing that killed blogs as they are is that they're too serious. When signing up you need a title, subtitle, and input is optimized for long essays. Facebook is optimized for sign up, write your name, find friends, and post pictures, videos and sometimes text.
Really, if Google+ was Blogger Basic where you sign up, put AdWords, post pics, and it could have taken off.
That's what newspaper execs said in the 90s
Google lives off the open web. Two out of four of its main products depend on the open web:
1. Search - the less of an open web, the less is searchable by Google. Facebook is a classic example. 2. AdWords/AdSense - Facebook, CNN, BBC don't need it. They have their own networks, and they 're big enough to offer a "take it or leave it" approach.
(The only two main products not relying on Open Web is Google Cloud and Android).
Google actually had everything set up, a social network (blogger), a wall (reader), IM (Google Voice, email).
But they decided that FB is taking over. What did they do? They made "their own FB". Which solved no one's problems. Google+ had nothing over FB (except for circles, which FB promptly copied), and killed their old social apps.
Now their running around as a chicken without a head.
That's the mistake. You bring in UX experts (who also happened to understand your primary users)
Graphics design != UX
The problem is that's actually one of the main powers of Open Source - the ability to fork it past the desires of upstream.
For example, I use Windows, which is "supported source". OK. Microsoft decides to put spyware. Now I need to rip it out. OK. Did so.
Now, one day later, Windows gets updated.
I have to go through the code again.
If it would be "Open Source", I'd just fork it. But now, I can't even share modifications (is it a derivative work?).Now every user would have to go through the code, find the privacy violations, and re-compile it.
Also, what happens Microsoft get's fed up and fully closes source (no more updates to "Supported Source", and they drop out of the program)? Each user has to keep up his version of Windows?
Not too useful.
If you think about it, how are there commercial communities around Apache/MIT/BSD?
Because no one wants to upkeep his fork, so they contribute code back so others can help maintain it.
That freedom can only be maintained by the ability to fork.
Commercial open source tends to be done for two reasons:
1. Common goal development. Several companies needs a UNIX. Rather than do all the development themselves, they work together. That's how Linux works. 2. Backup if original company's strategic goals move from your goal.
Here, neither work as you can't cooperate with others due to licensing issues.
As of now, most of Android APIs are in AOSP. How many Apple APIs are?
You can't compare the need for Windows 7 vs XP and the need for 95 after 3.1 . There was a huge amount of software which simply required 95.
Maybe, but what I'm saying is that:
Apple costs, is closed-source but (somewhat) cares about privacy. Google is free, (somewhat) open-source but actively doesn't care about privacy. Windows costs, closed source and actively doesn't care about privacy.
In other words, with Google you're not the customer, you're the product. With Microsoft you're the product and you have to pay for the privilege to be a product.
Windows isn't free. It just happens to come with the cost of your PC, but the PC manufacturer pays for it (and passes the cost to you).
They just noticed that no one upgrades Windows (and why should they? When was the last time you were excited about a windows release? XP? 95? 3.1? Maybe 7 if you're coming from Vista?)
I don't understand why they don't make a package for the pi, if it's a JS app anyways
Or you create a white-list (which is slowly being made). Your average Wordpress site counts against data. Want it to be "free"? Pay AT&T some money? Can't because it's too complicated for anyone but CNN? Too bad.
Oh, you only get 200 MB per month? Not a big deal, because CNN/BBC/YouTube pay money not to be counted against data limits.
We didn't have this for decades. Really, it started about a decade ago when dial-up died.
Under dialup, one could switch providers on a dime, so you could switch from anyone pulling such shenanigans.
It's easy. You get a large screen "Thanks for voting, hope you trust us!"
When you use a SaaS, you have to trust the provider.