To a first approximation, every single one of those wouldn't happen in a memory-safe language.
Of course, plenty of other things will. But it's not like choosing memory-unsafety makes those other things less like (memory unsafety does not, for instance, prevent incorrect ACL specification), so that's not very compelling.
Think of it this way. Suppose C didn't exist, and somebody proposed a new language today that was memory unsafe. Would it have any success, or be laughed out of existence?
In fact, go ahead and suppose C did exist, because it would still not be taken seriously.
If it's so wonderful that C is memory-unsafe, where's all the new languages that are also memory-unsafe?
(Note having specially-called out "unsafe" operators does not make a language "unsafe" the way C is.)
A few big projects written in C proves nothing about them or C. Need the larger picture with many instances to prove a claim. Certain, preventable vulnerabilities have occurred mostly in C software. Another commenter gave an example. Many of these similarly occurred in the C-lang projects you reference. So, using C instead of a language that prevents them was the first reason for their existence.
It doesn't, it's a fallacy. A lot of code that we think of today as buggy was written in the era in which people did not understanding threats and consequences of certain decisions. The reason we have nice things today is that we were lucky enough to have languages like C to experiment on and with and learn. "Safe" languages of today have the benefit of hindsight that good old C didn't have. Comparing legacy code in C to modern code in whatever you deem worthy is not only unhelpful but also very deceptive.
Compare new to new and tell me: how many web, smtp, imap, dns servers in Python, C# or Rust do we run today? There were some attempts but very few successful ones, despite of all the goodness that comes with better languages, libs and tools. I bet there's a reason behind it, other than just "people didn't try hard enough". There's old stuff out there being used today that we should definitely phase out. But we'll replace system software with new one written in system languages. Most likely C, perhaps Rust. But definitely now with ones written in "safe" languages that should deliver (if they are so awesome) but somehow didn't.
"that we were lucky enough to have languages like C to experiment on and with and learn. "Safe" languages of today have the benefit of hindsight that good old C didn't have. "
I've already detailed some of what was known about avoiding reliability and security problems before C and UNIX in the link below.
I know at least MULTIC's tricks were known at time of UNIX because it's name is a pun on MULTICS. Anyway, the better parts were largely eliminated to make C and UNIX efficient enough to run on a PDP-11. So, it's a fact that good stuff was known, they stripped it out due to constraints, and they never fixed those decisions as constraints lightened. That language, toolset, and coding style were adopted by many developers that continued to do things that way.
Meanwhile, in parallel, other trends began running. The evidence by the 1970's suggested that building secure systems require specs of behavior, a security policy, analysis one possesses the other, careful choice of language, pentesting, minimal TCB's, interface protection, and so on. Starting with MULTICS security evaluation, which talked about "insufficient argument validation" (ex: buffer overflows), that crowd demonstrated in one project and paper after another how to build secure systems. Plus, where most bang for buck was in terms of efforts.
In parallel, people like Margaret Hamilton, Dijkstra, Wirth, Hansen, etc determined how to make software that was correct by construction. Hamilton did that in 60's on Apollo. Dijkstra's method of layering of simple components with careful interfaces made nearly flawless software. Wirth & Jurg did a whole PC, safe (but efficient) language, compiler and OS in 2 years that performed fine. Kept building on that. Hansen and Dijkstra built things like Concurrent Pascal that eliminated concurrency errors on top of Wirth-style work that reduced sequential errors. One group after another built on such approaches with better results than UNIX and C crowds in terms of functionality vs labor available vs defects found.
So, this stuff was well-known at repeated points in the implementation of UNIX, server software, compilers, etc. Better approaches are finally mainstreaming with likes of Go (Wirth-inspired) and Rust (Ada redoux?). Other safe languages were plenty mature before they showed up. Yet, many projects focused on security still use C. So what I'm talking about not only happened then: it's still happening now.
"Compare new to new and tell me: how many web, smtp, imap, dns servers in Python, C# or Rust do we run today?"
Let me just apply your words to another problem. How much enterprise transaction processing uses C and UNIX today vs IBM and COBOL? There were some attempts to switch but very few successful ones despite all the goodness that comes with better languages, libs, and tools. I bet there's a reason behind it. Yep, but it's not that IBM and COBOL were best. I'd venture people not willing to put that work in, fear of breaking things, inertia, not knowing about better approaches, etc. The usual. Currently happening to C, C++, and Java stacks. :)
"But definitely now with ones written in "safe" languages that should deliver (if they are so awesome) but somehow didn't."
They did. Wirth made a whole series of them that delivered in many ways. Borland Delphi, Oberon, Component Pascal, and Modula-3 saw use in industry. GEMSOS used Pascal w/ coding guidelines to hit high security in the 1980's. Ada improved defect count in every empirical study I saw. A tasking profile for Ada and Eiffel both knocked out plenty concurrency errors. MULTICS used PL/0 to avoid issues that plagued C. Academics working on large projects like compilers and sometimes OS's had positive experiences with the LISP's, ML's, and Haskell. And so on.
They proved their worth every time they were used. People's gripes could've been fixed with less effort than what's been put into making C code maintainable, reliable, secure, etc. Instead, they kept trying to build modern stuff on a language & OS stripped of its best features to run on a PDP-11. And stayed on that bandwagon to the end.
The precision of motion of a stepper motor is several magnitudes higher than a simple DC motor. For a project that needs weeks to execute I wouldn't save the few bucks for a micro.
> precision of motion of a stepper motor is several magnitudes higher than a simple DC motor
Depends on whether we're talking about open-loop control or closed-loop control. A stepper motor can only move in half-jumps or full-jumps. The size of the jump is intrinsic to the motor, and can be reduced with a gearbox. If we're doing closed-loop control of a DC motor, the resolution is limited by the feedback encoder, which typically has a resolution a magnitude or two higher than a stepper motor's.
I feel like the same as OP. Change for the sake of change without any real benefits. But with plenty of draw-backs. For example the new Gmail App on Android now uses an almost unreadable font in the overview. It is "designy" but not good for usability - and I still have 100% eye sight.
In general I feel like surrounded by the Microsoft paper clip. There is constantly something animating, popping up or popping with strong colors into your eyes.
Try to find in all the talk about material design the underlying reasons for usability. There aren't any. To me it feels like the emperor's new cloths.
I was about to buy a Nexus 6 but the new Gmail app is a no go for me and I will avoid it as long as possible.
I mean this in the most respectful way possible, but, your concrete flaws are that you believe it's just designed for the sake of change, it animates too much, and that a font is too small in one place?
For what it's worth, the underlying usability really is very well explained and pretty sound in the material (no pun intended) from Google on MD. Eg: http://www.google.com/design/ in the top 2 items.
I have yet to see a company that gets 3M€ for what could be done with 10k€ and writing a FAQ where they state they are overpaid ;)
To me this is very questionable marketing non-sense. You take the excellent bicycling culture of the Netherlands, you combine it with solar energy and the result is profit.
Just exchange Wcycling track" with "landfill" and tell everybody you'd cover them for 300 times the normal price with solar panels and you'd be kicked in the balls.
All suitable roofs are not filled yet. And once they are filled -which sure takes many more years- you will still find many other more suitable places than roads which need to sustain the weight of a truck (which is a must even for a cycle track).
So are those 25% suitable roofs already filled with solar cells? If not, why do you waste money on somthing that is roughly 30-50 times more expensive? And once the suitable roofs are filled are there really no other more suitable surfaces than roads?
Putting it more directly: would YC think that this is a good investment of money? I think you wouldn't even get an interview.
Putting it more directly: would YC think that this is a good investment of money?
Well, if that would be the criterium, a lot of great investments would never have happened. E.g. many railroad routes that were constructed in the late 19th century took decades to be profitable. However, in the very long term they were good investments. Luckily, we had/have governments that are bold enough to invest in stuff that doesn't lead to an IPO the next 5 or 10 years.
And at a certain point you hit decreasing returns and should use another source of power. Once you are supplying 25% of the energy grid from solar, which has vagaries of its own, why would you pay extra for even more, er, exposure to that?
Be happy with 25% from solar, if you can sustain that. After that, work on wind or thermal solar or natural gas or nuclear or tidal or something.
> why do you waste money on somthing that is roughly 30-50 times more expensive?
This is called research and development. They're not replacing all the roads and cyclepaths with this stuff, they are testing and developing it because we will need it in the future.
Also, I do not appreciate the "you" in that sentence.
First of all my apologies for "you" I guess it should read "one" - English is not my native tongue.
I am just very sensitive about public funded projects.
To give you an example:
"XYZ is a project co-founded by the European Union that aims to validate how to approach Open & User Driven Innovation methodologies to the Public Sector in a scenario of Future Internet Services for Smart Cities. It will do so, by leveraging existing tools, trials and platforms in Crowdsourcing, Open Data, Fiber to the Home and Open Sensor Networks in seven major European cities: Helsinki, Berlin, Amsterdam, Paris, Rome, Barcelona and Bologna."
Would YC fund that? Would they get an interview?
The EU gave 3M€ for that. The outcome is three websites that nobody uses.
There are companies in the EU specialised for grant grabbing. They will get 10% of the funding if the application succeeds.
The EU funds 50% and the expected outcome is that the funded companies will create a viable product out of it. Now tell me, why do the same companies funded over and over again?
Just google for "Wetab". The same company of that miserable disaster was on plenty of EU funded projects.
> First of all my apologies for "you" I guess it should read "one" - English is not my native tongue.
Thanks. It can be used both ways but being a Dutchman I wasn't sure. Not my native tongue either :)
I understand your issues with publicly funded projects, and where there is money there will always be abuse. I've interned at a company that did research because they could get it subsidized and I know they wouldn't if they didn't get that money; it was simply too expensive (they didn't have a lot to spend). However that is also the goal of the grant/subsidy: stimulating companies to do that very research (if I remember correctly it was something about VoIP, not sure).
So yeah people make money with it, but it also helps development. I too think that €3 mil is a bit much for 70m of cyclepath, but if it's the first in the world... gotta start somewhere when you have huge R&D costs. If you read their FAQ, they are testing for a lot of things like slickness, reflection, strength, etc. I always just hope they know more about it than I do.
This is called research and development. They're not replacing all the roads and cyclepaths with this stuff, they are testing and developing it because we will need it in the future.
Sometime the idea is just outright stupid, like flying cars.
road-worthy airplanes have their uses -- for people who have to travel to a lot of remote locations (say, if you own/maintain several radio transmitters spread throughout the rural parts of Kansas, you can cut down significantly on travel time by flying from local airfield to local airfield and then driving to the tower.) They're not a mass-market technology; they're a specialized product for people with very specific travel needs.
Solar roadways, though? I don't see any need that actually meets.
Maybe because the local politicians are your cronies and enable grant-grabbing from the EU? For 3M€ you can put solar panels on at least at least 100 houses and not just have energy for 3 as the article states. Plus they wont degrade or be covered with plenty of dirt or snow in winter.
As always, just follow the money and you can find out what's going on.
I grew up in Germany not far from the dutch border and am an avid cyclist. My point is that at the time being you can produce far more efficiently solar energy with putting solar cells on roof tops and you are being ripped off tax payers money. Once you run out of roof tops there is not much of development needed to add a 1cm glass plate on top of a solar cell. It is not like developing a fusion reactor. You are legally stolen 2.7M€ because you can supply three house for just 30.000€.
My goodness, I really like the Netherlands and even consider relocating to Amsterdam. It is not against the Netherlands it is against stupid politicians. Last not least I would support you with regard to you link about EU spending / receiving.