Image for post
Image for post

We need invulnerable software systems, and we need them today, even if they are ten times slower than our current systems. Tomorrow we can start working on making them faster.
Daniel J. Bernstein

Recently, an npm “event-stream” vulnerability was found. Many apps were affected, including Copay.

In the times where I trust others’ people code to handle my money, and more important, other people trust mine, I can’t stop thinking about how can we fight unavoidable vulnerabilities. I thank Bernstein for his insight into whether it’s something wrong with the way we code, not with the code itself.

Security! Security! Security!

Image for post
Image for post
(It’s not a Bernstein, it’s Steve Ballmer. Sorry)

In the quote above, D. Bernstein proposes to give up the speed to the security. But what if we go deeper and…


Do you know the feeling when you are completely focused on the new feature, and you create a branch for it, say feature/profile, and start hacking. And then in two hours you find yourself here:

Changes not staged for commit:(use "git add <file>..." to update what will be committed)modified:   ViewControllers/ProfileViewController.swift
modified: ViewControllers/SettingsViewController.swift
modified: Models/UserProfileModel.swift
modified: Network/APITypes.swift
modified: Network/APIController.swift
modified: Tests/ProfileTests.swift

Okay, that looks nice. But then all of a sudden:

modified:   ViewControllers/SettingsViewController.swift

And somehow even these guys! What did they forget here?

modified:   Utils/Date.swift
modified: Utils/DateConversion.swift

Sounds familiar?

And you can’t just stage and commit them file-by-file, because you end up with three unbuildable commits. And had you created new files, project.pbxproj


When you combine cooperation, free duplication and cheapness, you have an explosion. Torrents take all three. ICOs take only cooperation and cheapness (relatively). Google Movies and Apple Music are free duplication and cheapness. Linux/GNU is cooperation and free duplication.

Each of there three is gold mine even by itself. Google Ads are so cheap for you, that you willingly pay your attention to them. And Google sells that attention.

Free duplication is what makes all the software profitable and that gave us boosting growth for the last 30 years. Movies are also the product of the free duplication.

Cooperation is any human interaction. Whenever you exchange your money for products or your work for your salary, you give away what is less valuable to your and receive what is more valuable. Moreover, that is true for another party, or they wouldn’t exchange at all! …

About

Aleksey Bykhun

developer, Black Swan follower, blockchain enthusiast, suites’ lover, music listener, video maker

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store