
Ford Releases An SDK For Their Cars - sethbannon
http://bits.blogs.nytimes.com/2013/01/08/c-e-s-2013-have-you-programmed-a-ford-lately/
======
jakejake
This sounded awesome right up to the point that they said that this was a
hotly pursued space due to advertising potential to a captive audience. If I
am in my own car and my music is interrupted with an ad every time I drive by
a McDonalds - I would find that extremely annoying.

On the other hand, if you could lease a car at a subsidized price in exchange
for ads, that might be an attractive offer to some.

~~~
rossjudson
It ought to be flatly illegal to visually advertise through an in-car app. An
ad is designed to engage attention; visually engaging a driver is the last
thing we want on the road. It's beyond stupid.

YOU ARE PASSING A GAS STATION. PLEASE STOP AND BUY IT.

YOU ARE PASSING A SANDWICH SHOP. PLEASE SWERVE LEFT AND BUY SANDWICH.

5 POINTS IF YOU CHANGE TO THE FAR RIGHT LANE!

~~~
majormajor
Hm. I wonder if anyone has ever attempted to ban billboards under the guise of
being worried about distracted driving.

~~~
mobweb
This is actually already the case in a few European countries I am aware of.
Not all streets, but next to the highways there can't be any visible
billboards.

~~~
LeonidasXIV
Like Germany. The one country where there is no general speed limit on
highways.

Actually, everytime I visit countries with billboards on highway, it seems
really bizarre and stupid to place ads next to highways.

------
revelation
Since we are on the topic: I wish Tesla would finally live up to their
obligations and release the GPLed parts of their product (that includes, at a
minimum, the Linux kernel with all modifications).

~~~
jspthrowaway2
GPL compliance (sigh) and a new SDK for a vehicle aren't really the same
topic. They just happen to have cars in common. If I left a comment about the
camshaft on my Jeep, that wouldn't be on topic, even though it's about cars.

That aside, what do you hope to gain from their GPL compliance? Pop open the
GPL compliance kit from, say, a Netgear router and you get a kernel, a few
drivers, and the toolchain used to build it. And BusyBox. How useful will the
drivers for things in a Tesla be to you? Do you _own_ a Tesla, or is it just
curiosity?

If it's curiosity, well, I wish we weren't enforcing that with the GPL.

~~~
Niten
> If it's curiosity, well, I wish we weren't enforcing that with the GPL.

It's simple, either you comply with the GPL or you don't distribute GPL-based
code. As an author of GPL licensed software, I think it's pretty damned
arrogant for someone like you to imply curiosity isn't a good enough reason to
get back modifications in accordance with the chosen license. Who are you to
judge? And anyway, what reason could possibly be more worthy than curiosity?

It's the authors' choice, not the peanut gallery's; and if they hadn't
intended for _all_ distributed modifications to be made available under the
GPL, they would have chosen BSD or another license instead. And if you don't
like that, too bad.

~~~
i386
Because "for curiosity" isn't a term stated in any GPL license. You can be
offended as much as you want for them not releasing it but unless you own a
Tesla they don't have to share their modifications with you. If you are
unhappy with that, I suggest sharing your work under a different license.

~~~
Niten
I'm perfectly fine with that, but you seem confused about the argument here.
GPL code distributors don't have the right to say curiosity, or any other
reason, is invalid cause to enforce the GPL.

And while I do not have standing to request GPL licensed code from Tesla, they
have a legal obligation to either distribute that code directly, or a provide
a _transferable_ offer to distribute that code, to their customers. Code
properly distributed as such inevitably would make it back out into the wider
open source community; this is the design of the GPL. If Tesla currently does
not meet this obligation under the GPL, that is a problem.

~~~
i386
Yes, they are legally obligated to share their modifications with their
customers. No arguments here.

> Code properly distributed as such inevitably would make it back out into the
> wider open source community; this is the design of the GPL

The design of the GPL is to protect the users rights to use, access and modify
the software in perpetuity. There is no provision in the license that
modifiers have to share modified works with the author specifically - they
just have to make it accessible to the people they are distributing it to.

Being the author of a GPL work and wanting access to those changes because you
are merely curious or want those changes to be merged into the original work,
the unfortunate reality is that the GPL will do squat for you in that regard.

~~~
tellarin
> Yes, they are legally obligated to share their modifications with their
> customers. No arguments here.

Nope, if you distribute something with GPL code, you must make the source
available to _anyone_ that requests it. Not only to your customers. And you
can't put any kind of filter on reasons for the request.

One can only charge a "reasonable" amount for the work of making it available
(CD, hosting, etc).

The only corner case I see is if they claim that they are selling a device
(like the whole car) as a single package and there is only a single package of
code along with it.

~~~
callahad
> if you distribute something with GPL code, you must make the source
> available to anyone that requests it. Not only to your customers. And you
> can't put any kind of filter on reasons for the request.

That's patently false for both the GPLv2 and GPLv3. For v2, see section 3.
Only _one_ of the three compliance options requires universal fulfillment of
requests for source.

GPLv3 has no similar requirement. The closest analogue to v2's section 3(b)
has its scope explicitly limited to "anyone who possesses the object code."

~~~
tellarin
GPLv2 makes no such distinction or limitation in section 3.

I states that distribution of binaries must include either: a) Complete
corresponding machine-readable source code; or b) Written offer to give any
third party a complete machine-readable copy of the corresponding source code;

Item c) applies only to non-commercial cases, which is not the case here.

So if they are not doing a), they need to do b). And written does not imply
regular mail (which you mentioned in your other reply), it can be anything on
their web page or an e-mail.

If every distributed copy includes full source, then that's covered. Otherwise
any request must be fulfilled, as there should be a written notice offering it
somewhere. There is no limitation to who can request it.

GPLv3 on the other hand is more "legalese" and harder to read. Section 6
mentions possession of object code only for item b), which is the case for
"written notice". So it will only apply if there is such written notice upon
distribution.

Item c) is only for non-commercial cases. Items d) and e) require making
source electronically available. Item a) says that if it is a physical product
it needs to include full sources in some media.

If the distributor doesn't do d) or e), they need to do a) or b).

So, nowhere it is "patently false". Only if using GPLv3, and the binaries
being provided along with a physical product, then there is no obligation to
provide the code to any request.

The "corner case" I mentioned in my comment is related to item a). The
limitation on item b) is actually something I had never noticed before.

But I have no idea which license version Tesla uses, so I don't know if this
applies.

PS: Just to clarify one thing: trying to download a file from a URL or via P2P
also constitutes a request. It's just on another media.

~~~
callahad
I apologize for my tone, and I think we're in agreement. "Patently false" is a
bit extreme, but we seem to agree that it's _possible_ to comply with the
GPLv2 without being required to distribute source to anyone that asks. That's
section 3(a): include source alongside the object code. If the Tesla cars come
with a CD-ROM or a USB stick containing the source, then they're in
compliance.

I mention mail order because, oddly, the GPLv2 actually requires that you
provide source via postal mail to people if you're opting to comply under
3(b). That subsection states that in response to a written offer, you must
provide source "on a medium customarily used for software interchange." That's
interpreted by the FSF's GPL FAQ as "if any [third party] would rather get the
source on physical media by mail, you are required to provide that" [0].

There's an additional entry in the FAQ [1] specifically covering the
definition of third parties for GPLv2: "If you choose to provide source
through a written offer, then anybody who requests the source from you is
entitled to receive it."

So written-offer-for-source appears to be the exceptional case for GPLv2: you
have to provide it on physical media, and to anyone that asks. But if you
choose to distribute source alongside the binaries, per section 3(a), then
you're free from that obligation.

Given that GPLv3's section 6(b) intentionally constrained this to only people
who possess the object code, it feels like the universality of v2's section
3(b) is a bit of a fluke, and not representative of the goals of the GPL.
Thus, in responding to your claim that "you must make the source available to
anyone that requests it. Not only to your customers." I'd argue that the GPLv2
clearly and explicitly allows you to only make source available to your
customers, if you comply with 3(a).

[0]: [https://www.gnu.org/licenses/gpl-
faq#DistributeWithSourceOnI...](https://www.gnu.org/licenses/gpl-
faq#DistributeWithSourceOnInternet) [1]: [https://www.gnu.org/licenses/gpl-
faq#WhatDoesWrittenOfferVal...](https://www.gnu.org/licenses/gpl-
faq#WhatDoesWrittenOfferValid)

------
manicho
I was notified today that GM also came out with there API today. Seems a bit
odd that they would both release the exact same feature on the same day. I
wonder how similar their SDK's will be.
[http://media.gm.com/media/us/en/gm/news.detail.html/content/...](http://media.gm.com/media/us/en/gm/news.detail.html/content/Pages/news/us/en/2013/Jan/0108-sdk.html)

~~~
dcesiel
GM's is cool too because they have an API that allows you to remotely get
vehicle data through Onstar. This allows approved apps to get data like fuel
level, vehicle alarm alerts, oil life, fuel economy, remote start/stop,
location, speed and direction etc. Not sure Ford has anything like that..

------
ImprovedSilence
Nice, I like the forward thinking by ford on this. I only wish next they open
up the engine controller, and let the real hackers in!

~~~
untog
I can't imagine the amount of penetration testing they'd need to do before
opening up core components of a car. I would not want to be in charge of that
project.

~~~
ImprovedSilence
Of course they'd never open that up, that was just me dreaming.

~~~
sukuriant
Isn't that what stage 2 systems for cars already does? Updates the car's
internal computer, as well as changing out physical components?

------
rem1313
"Certain kinds of apps will be barred, like games, elaborate video and
anything that would require extensive reading." .. "Ford also announced nine
new apps that would be part of the Sync system, including The Wall Street
Journal, USA Today..."

Good that these don't require extensive reading

~~~
mandlar
I would assume like NPR it would be for controlling audio streams of news?

------
reginaldo
Which means that briefly we'll live in a time where a stack overflow
vulnerability will cause your car to break or accelerate at very inappropriate
times.

Just google for "researchers car software vulnerability" (without quotes) to
see what I'm talking about.

[1]
[http://www.computerworld.com/s/article/9229919/Car_hacking_R...](http://www.computerworld.com/s/article/9229919/Car_hacking_Remote_access_and_other_security_issues)

~~~
gizmo686
It seems like you know that hackable cars are already the norm. Hopefully,
with a focus on security and open software development, cars will become more
secure.

------
jbigelow76
When I bought my 2009 Ford Fusion it was marketed as having "Microsoft Sync",
the Sync name has stuck around but I haven't seen any mention of Sync being or
derived from Microsoft technology in Ford's marketing in the last couple year
(nor in the article). I wonder if that is still the back end of it or if Ford
rebuilt Sync from the ground up?

~~~
baddox
[http://en.wikipedia.org/wiki/Ford_Sync#Exclusivity_agreement...](http://en.wikipedia.org/wiki/Ford_Sync#Exclusivity_agreement_with_Microsoft)

------
gps710
It is going to make a huge difference whether dealerships work to set up
accounts for customers. If ford apps try to survive on ad support it is going
to turn into a pile of garbage apps and irritating ads.

------
zgchurch
This video explains better IMO: [http://cnettv.cnet.com/ford-touts-car-app-
development/9742-1...](http://cnettv.cnet.com/ford-touts-car-app-
development/9742-1_53-50138474.html)

------
31reasons
Would developers have to buy a Ford Car to test Apps on the device ?

~~~
zgchurch
The video below mentions that there's a hardware "SYNC in a box" available,
and a software emulator in the works.

[http://cnettv.cnet.com/ford-touts-car-app-
development/9742-1...](http://cnettv.cnet.com/ford-touts-car-app-
development/9742-1_53-50138474.html)

------
jjtheblunt
Perhaps the article mentioned advertising as an example of a source of apps;
perhaps non-advertiser-funded apps are just what the SDK lets anyone build.

------
runn1ng
I am looking forward to playing Angry Birds while driving.

------
tom68
This is Kind of Old news SYNC APi has been around a while

~~~
blcArmadillo
Yes, it's been around for awhile but the general public hasn't been able to
develop apps for it until now.

------
nthitz
So can I get a free car? Er I mean dev kit? :)

