
Ask HN: “If that was not open source, I would be screwed” - philliproso
I recently had a moment where I really appreciated running most of our stack on open source system. Needless to say it was a weird interaction with the way flask handles files, boto&#x2F;s3, flask admin, and a core mimetype util in python. A name was being set on a file stream as an integer which triggered a mime type check in boto, which caused the mimetype check to error because it expected a string. (I still have not figure why that name is being set on the stream of mostly excel file uploads.)<p>Needless to say, if I needed to go through some recent support hire from some enterprise service, it could have taken a long time to figure it all out. Reading the source made actually solving this much easier.<p>This is obviously not unique, as it is a core part of why open source is successful.<p>It would be great to hear of any other stories.
======
trippypig
A future-tense corollary: “What if it turns out not to be open source?”

As someone who works in crypto-currency, the enduring mystery over who
invented bitcoin bothers me a lot.

The going belief is in a still-anonymous fairy godfather, Satoshi Nakamoto,
who gave unto the world his/her/their foundational idea, or intellectual
property, and said go forth and multiply.

Just one problem: What if Nakamoto invented his/her/their technology at a
company or academic institution? That institution c/would claw back the
intellectual property. Where there is intellectual property, there are patent
lawyers; and where there are patent lawyers, there are licensing fees! See
Oracle v. Google over Sun Microsystems' Java.

What if the reason he/she/it maintains anonymity is because to reveal himself
is to reveal where he worked when he invented bitcoin? That employer would be
the true owner of the IP, and open-source bitcoin would go private. The
foundational idea that's launched a thousand startups, supposedly open-source,
turns out to be anything but open-source. That would suck.

I wager that, at some point in the future, bitcoin will be private property
owned by a corporation or academic institution.

~~~
setr
You can't retroactively patent something after its design has already been
released to the general public, can you? Imagine trying to patent a car engine
today, if it were a similar situation: the operation would be total nonsense.
The derivative works existed _before_ you claimed control; you can't just go
and say they now owe you money for it

At best I would imagine that nakamoto could get sued for releasing IP that
wasn't his to release, and they might be able to lay claim over the bitcoin
name and codebase for future updates... but they can't do anything about all
the existing forks and derivatives. They already exist!

And as I understood it, the Oracle v Google case was based on the fact that
Oracle was already licensing java for mobile devices, and android basically
wrote a new not-java, which is all fine and well, but Oracle was claiming that
not just the implementation but also the _API_ fell under their licensing
operation. That is, _licensing was already part of the story_ , it was just a
question of whether it applied to Google's usage.

Bitcoin is not that situation: _no licensing story currently exists_. If it
were taken into closed source, it wouldn't be much different from forking the
code and making a proprietary version of it, and licensing that out. But the
codebase that already exists, in the open, and includes a whole lot of code
that is by no means property of sakamoto's institution, can't just be removed
from the internet

Also, can you even patent a network protocol? Because the client itself
doesn't hold much value, especially not for the derivative works. It's the
protocol that's key

ofc I'm not a lawyer, I don't know squat about the topic, but intuitively it
seems nonsensical. Imagine doing that operation _intentionally_ : releasing a
design so you could retroactively patent and force licenses after worldwide
adoption. It'd be dumb as hell

~~~
trippypig
That makes a lot of sense. I can see a case if his/her/their intention was to
deceive for whatever reason, like personal gain.

The creative solution to the “double spend” problem is the valuable piece. The
other pieces, cryptographic hashing and proof-of-work have been around for
some time. Algorithms make up the largest pool of software patents.

If it went private (it's actually patent pending once publically released;
even if CC licensed, the license is null re: invalid ownership), an owner
could do what MasterCard and Visa do: percentage of transaction, etc. I bet
they could even make a case for ownership of his 1+ million coins ($6.4
billion USD).

The technology is already out of the bag, though, it's not going back in.

This article is interesting re: retroactivity:
[http://www.toikkalawgroup.com/blog/the-patent-bargain-and-
th...](http://www.toikkalawgroup.com/blog/the-patent-bargain-and-the-curse-of-
retroactivity)

~~~
setr
If I read your link correctly, retroactivity, at least by what your article is
addressing, is an ability held by _the federal government_ , and _only_ the
government. And moreover, its about updating the rules and validity of the
patent.

Im not sure its relevancy to retroactive creation of patents in this context.
I agree it was interesting though.

------
soulchild37
Linus Torvalds takes most of the cake : Linux + Git.

Most developers wouldn't have their job without these two, heck even Github
and Gitlab wouldn't exist.

~~~
slededit
I think that's going a bit far. We'd be using BSD, or a commercial Unix like
Solaris. Mercurial, SVN, and god forbid even CVS would still work for most
projects.

~~~
davidgould
We'd all be using Windows NT. Well, y'all would, I'd have become a mechanic or
chef or something.

Seriously, in the dim days of the early 90's it seemed like the overpricing
and fragmentation of the various Unix vendors would hand the mid-size and
small systems space to NT. Which was all part of Microsoft's plan. The BSDs
were themselves too factionalized to be a credible alternative. The Unix wars
were winding down and NT was winning.

Linux not only blocked NT's takeover of the data center it also ended the Unix
wars and ultimately destroyed the market for incompatible Unixes.

------
dizzystar
Too many too enumerate.

Once had used an HTML lib that didn't properly escape characters. I was able
to see the source, propose a change, and do it the correct way in my code. I
won't say which one it was, but it was extremely popular.

Used a JavaScript lib to create sheet music. The lib worked fine for the most
part, but I needed certain features to work, and that required diving into the
raw source and making many manual changes. If it was closed source, I'd have
to figure out how to write the whole thing myself. That probably wouldn't have
been possible for me.

A popular API had an official Python implementation. It was "ready" for
Python3, but there were a lot of bugs that would cause crashes. I was able to
fix them and send back proposed changes. It took over a year for them to
finally do the updates. I needed it that day.

------
settings11
Obviously. There was a moment an online application form was broken. myself
being CS student, inspected the source code and typed
`javascript:fnEditApplication` in chrome URL bar, which worked out.

