I have my own war stories from working at Qualcomm. Gather together, children.
Ahem. One upon a time I was the tech lead for one of the many software components in Qualcomm's GPU software stack. At one point there was customer interest in caching certain blobs of data that were relatively costly to compute, in order to reduce the startup times of a wide range of apps.
Since the caching needed to happen across different processes over time, we needed some sort of persistent storage with some metadata to track stuff like usage stats, limit storage requirements, etc. Simple stuff, right? I decided that we didn't need to reinvent the wheel, and thus suggested to the team's most recent hire to use SQLite.
Oh, Dear Lord. That was a mistake. SQLite worked great, no, no. That wasn't the issue. The problem was obtaining approval from Legal to use SQLite in our little project.
"Does SQLite have one of those viral licenses that require you to open-source your own code?" -- you may ask. No, it doesn't. It is the most lax OSS license that you could ask for. Super friendly to commercial closed-source projects.
No, the obstacle was that Legal wanted to audit SQLite line by line, down to the books and research that was mentioned in the comments, searching for anything from copyright infringement within SQLite itself, to patents that may be associated with any of its features. IIRC, it was going to take months and would require approval by my management chain. And any time we wanted to upgrade the version of SQLite we shipped with would require another extensive review.
I used to explain Qualcomm as a navy of lawyers and a dinghy of developers.
I spent SO MUCH TIME getting legal review to publish code.
One of my favorite battles was someone out there in the wild took the Microsoft boilerplate MIDL (MIT 2.0) and stripped the headers, licensing them as GPL. So our boilerplate MIDL files suddenly got ducked and we couldn't ship them any more.
Ah so the Oracle syndrome, where the engineering is a sidekick in the lawyer business?
In all seriousness, this is just appalling. This would make a good poison pill to prevent an opensource project from being used in such a corporation /s
Thanks for sharing! The sad part is, it's the qualcomm customers that pay for the end result.
Eh. I used to work for a large corporation that had multiple development sites worldwide. I remember telling someone at another site that I was considering using an OSS library. His jaw dropped, "You can use Open-Source? At our location using OSS is a fireable offence."
One of my friends, Matt, owned Seattle's Metrix Create:Space. He had a pick and place and a problem: Qualcomm had nice chips, but he couldn't buy them on tape, and he couldn't get data sheets.
The CEO of QCA? QCE? Don't remember. Was coming up to Seattle to rub elbows; there was to be a Q&A session afterwards. I told my friend Joe that if none of the employees would ask any hard questions, I would. They didn't and I did: you talk about open source, you talk about how important getting hardware into the world is, but my pal Matt can't get open data sheets or parts on tape. WHO DO I TALK TO?
He gave me someone, after many weeks of going around, they pointed me to the multi-thousand dollar IoT dev kits as the best option. Minimum order was like 1000 units.
As we have in France: Père castor, raconte-nous une histoire !
For the rest of the world: it's a children cartoon with a grandpa beaver telling stories to his grandchildren, and has been immensely popular for decades.
We were working on Windows on ARM for the Surface tablets (funny story: I worked in the office of the CTO of Microsoft in 2008? 2009? and we had a couple of the original Surfaces. Cool machines to demo) and we had a couple of the tablets. We needed like 20 to do testing. We were able to get a couple more. I think the chargeback was on the order of $50k each.
None of them were the same. One of the best engineers I ever worked with, who I'll call Bill, had to reverse-engineer how to JTAG each one to re-flash them, since each tablet was slightly different and undocumented.
Bill was one of the guys in the late 90s, early 2000s that was cracking satellite cards for fun. He also reverse engineered a bunch of CANBUS stuff for another product group. Good times.
> What does it mean to work "in the office of the CTO"?
Many companies have a small research division directly reporting to the CTO. It usually has the implication of "experimental research at the discretion of the CTO, may become something production later in which case it'll move elsewhere".
1: This one isn't about open source, but: the guy that said this and that about how 64 bit ARM was never going to happen? We were working on exactly that at the time.
OK. One OEM (I don't remember who, they make TVs and the like) took our BSP and just... sent it out. To millions of devices. Tens of millions of devices. However many TVs there are.
We had just added a TURN implementation to AllJoyn and set up a dev server. Not literally a small machine under someone's desk, but basically that. Maybe a two vCPU VM.
The DDoS was _very_ distributed. The DNS requests knocked Qualcomm off the air.
So we made that an opt-in compile-time feature for all BSPs going forward.