Autonomous Driving Is A Pipe Dream

We have come a long way since the days of the first DARPA Grand Challenge, now every car manufacturer, technology giant and countless start-ups are creating driverless cars and put them on the road in Nevada, California, Switzerland, Singapore, and, more recently, in Pittsburgh for public use.

Many companies and cities are following the lead. Tesla will reach level 4 in 2018, they say. Ford announced to have a level-4 driverless car ready in high volumes by 2021.

It seems, at this point, it is an unstoppable, relentless and unreflecting hype.

And it is also a pipe dream.

This is a very dangerous situation. We have a clear and probably deliberate misunderstanding between engineers and computer scientists on the one side, and policy makers, investors, managers and the public on the other.

The engineering problem at this stage of development is becoming almost uninteresting. We have sufficient computing power within the limits of space, power consumption and processing time, we have any conceivable type of multi-dimensional optical and electro-magnetic sensors, we have highly precise maps and ubiquitous wireless network bandwidth to connect everything to everything and share and use every information. Building an (one) autonomous system is basically a somewhat more expensive game of LEGO® MINDSTORMS®.

Engineers don’t care about politics. Politicians and managers don’t care about engineering, as long as it is “Done.”

Nobody gives a … … cares about a system of different autonomous vehicles. Different in algorithms, protocols, evolution, capability, age, compute capacity, failure rate, reliability or any other means that defines their behavior.

What’s more, engineers don’t care about failure in a human sense. To them, failure is “learning” and, in the best case, “Do it better, next time.”.

Engineers care about excellent solutions for general cases. Failures in special circumstances commonly don’t receive a lot of favor.

This is uncomforting for people who’s lives depend on how these failures turn out.

With autonomous vehicles on public roads today, the burden of proof is turned to the analog controller. First, it is the driver’s mistake. Next time, it will be the fault of the bicycle rider, the pedestrian, the raccoon.

Autonomous driving is inextricably intertwined with Artificial Intelligence. Which is the pipe dream of our greater generation.

Nobody cares either.

Critique on autonomous driving is not welcome at this time. People cover their ears and go “la la la la”. And they cover their eyes, too.

But why do we start with the hard path? Driverless cars on public roads? Where are, at scale, the autonomous airplanes (no, drones are human-controlled), autonomous trains (other than short-track airport shuttles and some urban subways). What’s a train driver doing? Observe the track. Accelerate and break at signals. Even in an emergency, the stopping distance is measured in miles. An algorithm can do that.  These environments with limited options and predictable conflicts are much better suited to our automation’s actual capabilities than public roads. And as important for public safety. Anything in this area?

Not there yet.

Algorithms are developed or, if you want, trained, to behave deterministically from input to output. Pre-condition, invariant, post-condition. In a sense, algorithms do not have a choice.

Of course, we can relax that. But who will be the judge on that? Today’s artificial intelligence systems are rather complex and it usually takes more than a dozen engineers and a couple of weeks to troubleshoot and understand a single failure. That may not scale when millions of autonomous Tesla and Ford vehicles hit the roads in 2018 and 2021.

Every driver has to go through driving school, which ends with a certification. Why, again, can the engineers put systems on the road that are not certified?

Do those systems pass the test? If even engineers have trouble understanding their system, how would public officials perform a certification? Do they have to follow the same rules as we do? If not, why not? And, does each software update or system reconfiguration require re-certification as it is the regulated truth today for the devices and systems that control our health in the hospital, or produce our meds and food?

The answer is, currently, not at all. So, like a prestigious website, autonomous driving will forever be in “beta”. But this time, we may lose more than just some information or some bucks.

So, in the end, we may not get the promised security. Systems fail and it would be A New World if technology suddenly stopped failing just for the autonomous vehicles. Gee, why didn’t they come up with that earlier!

If, however, autonomous cars satisfied all today’s security regulations, even if those alone were precise, accurate and generally sound for all situations where humans of today yesterday use “judgment”, driving them will be an exercise in patience and humility. Will riders, and more importantly, buyers, really want to do that? Give way to THOSE PEOPLE, with their smaller, and, maybe, un-automated clunkers? Wait, until grandma crosses the road? Do we allow the rider override the car’s safety measures for personal gain? What about the owner? What about the data the car collects? Who owns it and who has the right to delete it?

The solution seems to be, that autonomous cars are not sold, but let and shared, for a single ride booked by Uber or maybe as a result of a Google search for the next restaurant. Not everybody needs a car, then. This means, to break even for decades of research and the ongoing hardware and software development, and, finally, production, cars have to become a magnitude more expensive than today and, subsequently, taxi fares and rental costs and transportation overall. This does not sound like an incentive to switch. Or even invest.

So the story is, automated vehicles will not make us safer in general, but, with billions of dollars sunk, and then finally everything else prohibited from most roads, we either stay put, walk or pay up for every inch to use one, or the just the fine for being hit by one.

Posted in Coding Horror, Glorious Achievements, News and politics, Software Development, System Management | Tagged , , | Leave a comment

Steering wheels. Pry it from our frightened cold hands.

Google is trying hard to fast-track the Get Go of their autonomous vehicles and they are pushing the US government to accept that those “passed federal safety standards”.

This coup is nothing but aiming at turning around liability – should something happen, defendant’s first motion will be to proof it happened despite strictly following that regulation. Any victims might then sue the government, but not the manufacturer of the involved autonomous vehicle.

So unless the regulation is a sound and complete definition of how a vehicle should be operated in all kinds of traffic, hardly a thing anyone came up with for the last 100 years, there is everything to win on Google’s side and not a lot, if anything, on the side of users, today’s human car drivers, mostly.

Of course, that new regulation would apply to human drivers as well. It would be difficult to argue that traffic regulations differ depending on the nature of the vehicle’s operator.

But we need to have that argument. And we need to have the time for it. There is no need to hurry, actually.

Otherwise, we will soon get provisions that limit manual driving on certain roads and at certain times of the day. Eventually, we could be forced to buy autonomous vehicles for our commute and maybe keep the manual one for leisure tours on Sunday mornings.

Google virtually admitted that its car’s software is making guesses about other vehicles’ behavior. That is wrong and at the heart of the problem with autonomous systems.

A human is allowed to use their judgment and make a guess. Eventually, in case of damages, a court will decide whether that judgment was, simply said, good or bad.

An algorithm does not guess. It chooses, based on thoughtful planning and it’s hopefully well-tested design by it’s creators. Now, those are seeking general absolution by the government without having regulators looking funny at those algorithms.

Certainly they will argue that better all vehicles on all roads be autonomous, to prevent an accident as the one they caused and the vehicles would just have negotiated right-of-way.

How much safer would that be! Of course, even better, if all had the same algorithms, for which Google may offer gracious patent licenses.

But, to make that work, we would need to get rid of manual cars. And motorcycles. And bicycles. Deer. Raccoons. Falling trees. Blizzards.

All kinds of road works, too. Those flaggers would need to hold a Bluetooth beacon instead. Or an NFC tag, if they dare. But, really, they can’t be trusted to enter the map changes in real-time, or put up signs with the right QR codes instead of instructions.

Unless, Google is managing all that road works data and sending precise instructions to the workers. The unimaginable increase in security should be worth the comparably small fee associated with that service, I would guess.

And advertisements. Could being driven by Google cars get cheaper the more they slow down or stop in front of billboards? With a customized display of products? And a “OK Google car. Order product to continue trip.” button voice command in the car ?

Individual transport may fall victim to one of the deadliest fallacies of the industrial age: engineers’ (self) over-estimation. They are not inventing with a Plan B in mind. System failure is never an option. Fast Forward. Never in doubt.

Some time ago, in some discussion the question was, “When, do you think, will autonomous vehicles be a matter of course?” And I said, “When Larry Paige let’s a Google car drive his grand-children home from school. During a blizzard.”

So, hold on tightly to that steering wheel. They are coming for it.

Posted in Humor, News and Stories, Software Development | Tagged , , , , | Leave a comment

GWX off my …

Just in case

http://forums.theregister.co.uk/forum/containing/2805833

 

Posted in Computers and Internet, System Management | Leave a comment

Stagefright

Android phones may be exposed to an issue called Stagefright that allows attackers to take over a user’s computer (“phone”).

I would like to give updates on actual phones being fixed in regards of this vulnerability, but I can’t.

But, despite all-English settings, Google’s search returns only German results that have no relevance to the Android Stagefright issue at hand. Also, in this regard anyway, little is known about any recent or older phones from all the manufacturers, providers, resellers and vendors regarding firmware updates for affected models.

Apparently, Google has some fixes.

If one is old enough to remember, this is Windows Mobile history repeating. Little will you get for your one-to-three-year-old phone from your vendor, network provider, or manufacturer to fix even the direst of issues as they will not in a billion years figure out a coordinated way to get you protected.

There is no incentive for them to do that. You have already signed your contract and paid. And, in all likelihood, you still are, for months to come.

Same shit, similar phones. There is no spoon.

Posted in Uncategorized | Leave a comment

Abandon All Hope

Colbert-Stewart_2010_DC_rally_posters

Tonight, the Rally to Restore Sanity finally seems to come to an end.

And it’s not looking good.

Still, the only voice against hate, political lies and outright fraud, institutional overreach, and general stupidity and/or malice, is a stand-up comedian that appears to do nothing than just stick together clips of Very Serious People and other everyday pricks and dicks, uttering stupid and, most of the time, unfortunately, dangerous and bone-headed beliefs.

That has made a huge difference in human kind’s new millennium that is seeing more (of the same) wars and more (of the same) economical meltdowns and more, badly handled, even natural catastrophes that left (the same) huge numbers of people dying, starving, drowning, freezing, actively or passively tortured or humiliated in any other thinkable and unthinkable way.

And it is not that this isn’t approached by other political satire or comedy, or even that the Daily Show won’t continue to be revealing without Stewart, it is his edge that will be missed.

Stewart’s secret ingredient is New-York-style US-intellectual humanism, of course mixed with Comedy Central trademark butt jokes and foul language, but more often than not exactly at the right point.

With this humanism underneath, his (almost) never cynical comedy brings to light the poisonous inhumanity of everyday politics at world or nation scale or in every small community as well as the recklessness and ignorance and the tears, we, everybody of us, may be brought to.

Maybe, Comedy Central, or Viacom, for what its worth, just want to get out of the political business, and get back to its insanity, its 24-hour stream of fart and butt jokes. Already in 2014, it had already stopped world-wide online distribution of the The Daily Show and The Colbert Report.

To Jon Stewart, it may be a now 16-year long streak of tiring days weeks with other sad and depressing truths he has to work with his writers and shed some comical light on almost every night.

To us, it may have been an important (the only) sign of sanity in a mad world.

That sanity will be missed.

Posted in News and politics | Tagged | 1 Comment

Reason № 20140125102752 nobody should be forced to write Windows software

[http://msdn.microsoft.com/en-us/library/windows/desktop/gg263344.aspx] Emphasis mine

When designing a program for Windows 7, you should consider using the XPS Print API to provide the printing functionality because it provides the most compatibility for the future.

[http://msdn.microsoft.com/en-us/library/windows/desktop/ff686814.aspx]

[The XPS Print API is not supported and may be altered or unavailable in the future. Client applications should use the Print Document Package API instead.]

[http://msdn.microsoft.com/en-us/library/windows/desktop/hh448418.aspx]

The Windows Store app printing API is available with Windows 8 and later versions of Windows desktop.

It goes to show a lot of “nascent” technologies in the Redmond company’s stack go down the drain.

Maybe the thing to reconsider regarding software development in general and for Windows in particular, if any, is re-learning C/C++.

Everything else seems just like a string of fads.

Posted in Coding Horror | Tagged , , | Leave a comment

You say it best, when you say nothing at all

Which is why I’ve been hesitant to utter my dissatisfaction with the mess the development for Microsoft Windows has become.

Of course, I’m not alone predicting Windows 8’s demise. But since the new runtime and environment hordes of Windows programmers are supposed to write software against is deeply rooted in this new OS in general and its shiny whatchamacallit user interaction system in particular, apart from which Windows 8 is little more than Windows 7 without the Start button.

And all those “apps”, not coincidentally sharing sound with “crap”, we are all to write, are nothing but little pieces of marginally useful software, that clog the “Start Desktop” and often provide nothing more than a handful of screens easing access to a web service that in all likelihood already has a nice, accessible web interface for humans.

But commercial and “enterprise” software will not move to this Desktop any time soon and not until the powers-that-be come down from heaven and get rid of the improvised junk API they adopted from Phone, where its restrictions might have some merit in terms of battery life and bandwidth arbitration.

Those limitations are killers on the Desktop http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.notifications.periodicupdaterecurrence.aspx, not to mention the crazy concept behind the Windows Push Notification Service, soon to be one of the most gigantic single-points-of-failure ever known to mankind, right after iTunes or Amazon S3.

Most of the things real applications do is talk to multiple on-premise “intranet” services and/or devices, occasionally transferring large amounts of data or performing lengthy calculations, nothing of which is recommended with or even supported on the nascent Windows Runtime.

The example I’m involved with is setting up and acquiring data from scientific instruments, which may take a while although the user might want be notified about the status within seconds, if not immediately. This data is then processed and reports are being generated and reviewed, also a time-consuming process. Finally, the results and reports are stored in a content-management and data-warehousing system, again a lengthy process given that the amount of data measures in gigabytes. There is not going to be a live tile for this thing anytime soon.

The architecture of Windows 8 makes it almost impossible for ISV to create distributed “Windows Store” applications, much less selling anything close into the enterprise, unless the ISV are willing to become SaaS providers and their customers are willing to trust their data into the cloud and to bet their business on a chain of internet web services on an infrastructure run by the lowest bidder and which they have no control over, whatsoever.

When hell freezes over …

Posted in Coding Horror, Computers and Internet, Software Development | Leave a comment