Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
We fail to follow SemVer – and why it needn't m...
Search
Stephan Bönnemann
October 27, 2015
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
We fail to follow SemVer – and why it needn't matter
https://skillsmatter.com/conferences/6612-fullstack#program
Stephan Bönnemann
October 27, 2015
More Decks by Stephan Bönnemann
See All by Stephan Bönnemann
Greenkeeper – managing dependencies with confidence
boennemann
0
340
Greenkeeper – managing dependencies with confidence
boennemann
0
110
JavaScript Release Management for Open Source Projects and Companies
boennemann
0
540
Dependency Hell Just Froze Over
boennemann
1
600
npm – more than just install
boennemann
0
200
We fail to follow SemVer – and why it needn’t matter
boennemann
0
310
We fail to follow SemVer – and why it needn’t matter
boennemann
3
1.4k
We fail to follow SemVer – and why it needn’t matter
boennemann
0
280
Hoodie.js Introduction – Salzburg Web Dev Meetup
boennemann
0
780
Other Decks in Programming
See All in Programming
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
520
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
300
Java 27新機能 / Java 27 new features
kishida
2
190
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
Are APIs Still Relevant in the AI Era?
soyuka
0
400
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
33
14k
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
20
20k
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
9.4k
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
270
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
510
AWSに止められる覚悟してますか?
morizo_1984
2
500
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
470
Featured
See All Featured
Side Projects
sachag
456
43k
How to train your dragon (web standard)
notwaldorf
97
6.8k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
520
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
380
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Embracing the Ebb and Flow
colly
88
5.2k
Transcript
125,000 @boennemann packages on npm
@boennemann 200,00 packages on npm
Each package is a problem solved @boennemann
@boennemann
1. npmsearch.com @boennemann
1. npmsearch.com 2. npm install <package> @boennemann
1. npmsearch.com 2. npm install <package> 3. ? @boennemann
1. npmsearch.com 2. npm install <package> 3. ? 4. profit
@boennemann
X.Y.Z @boennemann
X.Y.Z @boennemann Major Minor Patch http://semver.org
@boennemann Major Minor Patch http://semver.org 1.0.0
@boennemann Major Minor Patch http://semver.org 1.0.1
@boennemann Major Minor Patch http://semver.org 1.1.0
@boennemann Major Minor Patch http://semver.org 2.0.0
2.0.0 @boennemann Major Minor Patch
2.0.0 @boennemann Major Minor Patch
2.0.0 @boennemann Patch Breaking Feature
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/ ~
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/ ^
not really @boennemann
We fail to follow SemVer @boennemann
@boennemann http://npmbynumbers.bocoup.com/
@boennemann http://npmbynumbers.bocoup.com/ 0.y.z >0.y.z
Anything may change at any time @boennemann
@boennemann
No changelogs @boennemann
@boennemann
@boennemann
@boennemann
Hauptversionsnummern- erhöhungsangst¹ @boennemann ¹ Fear of increasing the major version
If we strictly followed “semantic” versioning, it would probably be
Backbone.js 43.0.0 by now — which doesn't help anyone evaluate the actual progress of the project. – Jeremy Ashkenas, http://backbonejs.org/ @boennemann
evaluate the actual progress of the project @boennemann
@boennemann
Versions are not for humans @boennemann
@boennemann
@boennemann
@boennemann 1.x 2.x
@boennemann 1.x 1.x
Versions are not for humans – names are @boennemann
@boennemann – Stephan Seidt, http://fucking.engineering/
Our tools are so bad, we value human readability in
computer protocols when it really doesn’t. fucking. matter. @boennemann – Stephan Seidt, http://fucking.engineering/
We fail to follow SemVer and why it needn’t matter
@boennemann
we need better tools @boennemann
semantic-release fully automated package publishing @boennemann
@boennemann
@boennemann – http://egghead.io/
Trust us, this will change your workflow for the better
@boennemann – http://egghead.io/
⭐⭐⭐ git.io/semantic-release @boennemann
@boennemann
automated dependency updates and testing @boennemann
@boennemann
@boennemann
@boennemann
npm install -g greenkeeper http://greenkeeper.io @boennemann
@boennemann
@boennemann
Thank you @boennemann