▲ 241 ▼ welcome to Metacity v (lemmy.sdf.org) submitted 1 year ago by pmjv@lemmy.sdf.org to c/unix_surrealism@lemmy.sdf.org 25 comments fedilink hide all child comments
[–] tetris11@lemmy.ml 43 points 1 year ago (7 children) OpenSSH version: 10.0 was released 2025 5.0 was released 2008 1.2 was released 2005 (on unix) Extrapolating: OpenSSH 43.2 is millions of years into the future https://www.openssh.com/releasenotes.html permalink fedilink source parent hideshow 7 child comments replies: [–] A_Union_of_Kobolds@lemmy.world 10 points 1 year ago (6 children) That doesn't seem right permalink fedilink source parent hideshow 6 child comments replies: [–] tetris11@lemmy.ml 32 points 1 year ago* (last edited 1 year ago) (5 children) Upon deeper analysis, you are correct. I was a bit floored by what appeared to be a power curve near the beginning, but after actually plotting, it's a simple linear trend: Data Code curl https://www.openssh.com/releasenotes.html \ | sed -nr '/^<h3><a/s/.*OpenSSH ([0-9.]+).*\(([0-9-]+)\).*/\2\t\1/p' \ | sort \ | sed -r 's|([0-9]+)\.([0-9]+)\.([0-9]+)|\1.\2\3|' \ | column -t -N 'Date,Version' > openssh.dat head openssh.dat Which yields: Date Version 2000-03-05 1.22 2000-03-24 1.23 ... 2025-02-18 9.9 2025-04-09 10.0 Fit Code gnuplot -p -e ' set xdata time; set timefmt "%Y-%m-%d"; set xlabel "Date"; set format x "%Y"; set ylabel "Version"; f(x) = a*x + b; a = 1e-10; b = -100; fit f(x) "openssh.dat" using 1:2 via a,b; set label 1 sprintf("Fit: Version = (%.3e * Date) %.3f", a ,b) at graph 0.05,0.95 left; plot "openssh.dat" using 1:2 with points title "Versions", f(x) with lines title "Fit" ' Which yields: Predict Use Y = (mX) + C, or Version = (9.55651e-09 * Date) -6.75132 CodeNote that Date are Epoch timestamps. export VERSION="43.2" date +%Y-%m-%d -d \ @$( export m="9.55651e-09"; export c="-6.75132"; ## Use python for better scientific number handling python -c "print(($VERSION - $c)/$m)" ) For OpenSSH version 43.2, the predicted date is: 2135-08-21 So, assuming a linear trend and no cataclysmic events that would pause development for a few thousand years, then it's only 110 years into the future permalink fedilink source parent hideshow 5 child comments replies: [–] A_Union_of_Kobolds@lemmy.world 11 points 1 year ago permalink fedilink source parent [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (3 children) This is Awesome! How did you learn to do that? I want to learn too permalink fedilink source parent hideshow 3 child comments replies: [–] tetris11@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (2 children) thanks! oh well data formatting, just 15 years of messing around with awk and sed Data fitting, gnuplot does all the heavy lifting with the modelling, and I always have to look up the syntax because I never remember it haha Play around and have fun with the code snippets! permalink fedilink source parent hideshow 2 child comments replies: [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] A_Union_of_Kobolds@lemmy.world 10 points 1 year ago (6 children) That doesn't seem right permalink fedilink source parent hideshow 6 child comments replies: [–] tetris11@lemmy.ml 32 points 1 year ago* (last edited 1 year ago) (5 children) Upon deeper analysis, you are correct. I was a bit floored by what appeared to be a power curve near the beginning, but after actually plotting, it's a simple linear trend: Data Code curl https://www.openssh.com/releasenotes.html \ | sed -nr '/^<h3><a/s/.*OpenSSH ([0-9.]+).*\(([0-9-]+)\).*/\2\t\1/p' \ | sort \ | sed -r 's|([0-9]+)\.([0-9]+)\.([0-9]+)|\1.\2\3|' \ | column -t -N 'Date,Version' > openssh.dat head openssh.dat Which yields: Date Version 2000-03-05 1.22 2000-03-24 1.23 ... 2025-02-18 9.9 2025-04-09 10.0 Fit Code gnuplot -p -e ' set xdata time; set timefmt "%Y-%m-%d"; set xlabel "Date"; set format x "%Y"; set ylabel "Version"; f(x) = a*x + b; a = 1e-10; b = -100; fit f(x) "openssh.dat" using 1:2 via a,b; set label 1 sprintf("Fit: Version = (%.3e * Date) %.3f", a ,b) at graph 0.05,0.95 left; plot "openssh.dat" using 1:2 with points title "Versions", f(x) with lines title "Fit" ' Which yields: Predict Use Y = (mX) + C, or Version = (9.55651e-09 * Date) -6.75132 CodeNote that Date are Epoch timestamps. export VERSION="43.2" date +%Y-%m-%d -d \ @$( export m="9.55651e-09"; export c="-6.75132"; ## Use python for better scientific number handling python -c "print(($VERSION - $c)/$m)" ) For OpenSSH version 43.2, the predicted date is: 2135-08-21 So, assuming a linear trend and no cataclysmic events that would pause development for a few thousand years, then it's only 110 years into the future permalink fedilink source parent hideshow 5 child comments replies: [–] A_Union_of_Kobolds@lemmy.world 11 points 1 year ago permalink fedilink source parent [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (3 children) This is Awesome! How did you learn to do that? I want to learn too permalink fedilink source parent hideshow 3 child comments replies: [–] tetris11@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (2 children) thanks! oh well data formatting, just 15 years of messing around with awk and sed Data fitting, gnuplot does all the heavy lifting with the modelling, and I always have to look up the syntax because I never remember it haha Play around and have fun with the code snippets! permalink fedilink source parent hideshow 2 child comments replies: [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] tetris11@lemmy.ml 32 points 1 year ago* (last edited 1 year ago) (5 children) Upon deeper analysis, you are correct. I was a bit floored by what appeared to be a power curve near the beginning, but after actually plotting, it's a simple linear trend: Data Code curl https://www.openssh.com/releasenotes.html \ | sed -nr '/^<h3><a/s/.*OpenSSH ([0-9.]+).*\(([0-9-]+)\).*/\2\t\1/p' \ | sort \ | sed -r 's|([0-9]+)\.([0-9]+)\.([0-9]+)|\1.\2\3|' \ | column -t -N 'Date,Version' > openssh.dat head openssh.dat Which yields: Date Version 2000-03-05 1.22 2000-03-24 1.23 ... 2025-02-18 9.9 2025-04-09 10.0 Fit Code gnuplot -p -e ' set xdata time; set timefmt "%Y-%m-%d"; set xlabel "Date"; set format x "%Y"; set ylabel "Version"; f(x) = a*x + b; a = 1e-10; b = -100; fit f(x) "openssh.dat" using 1:2 via a,b; set label 1 sprintf("Fit: Version = (%.3e * Date) %.3f", a ,b) at graph 0.05,0.95 left; plot "openssh.dat" using 1:2 with points title "Versions", f(x) with lines title "Fit" ' Which yields: Predict Use Y = (mX) + C, or Version = (9.55651e-09 * Date) -6.75132 CodeNote that Date are Epoch timestamps. export VERSION="43.2" date +%Y-%m-%d -d \ @$( export m="9.55651e-09"; export c="-6.75132"; ## Use python for better scientific number handling python -c "print(($VERSION - $c)/$m)" ) For OpenSSH version 43.2, the predicted date is: 2135-08-21 So, assuming a linear trend and no cataclysmic events that would pause development for a few thousand years, then it's only 110 years into the future permalink fedilink source parent hideshow 5 child comments replies: [–] A_Union_of_Kobolds@lemmy.world 11 points 1 year ago permalink fedilink source parent [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (3 children) This is Awesome! How did you learn to do that? I want to learn too permalink fedilink source parent hideshow 3 child comments replies: [–] tetris11@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (2 children) thanks! oh well data formatting, just 15 years of messing around with awk and sed Data fitting, gnuplot does all the heavy lifting with the modelling, and I always have to look up the syntax because I never remember it haha Play around and have fun with the code snippets! permalink fedilink source parent hideshow 2 child comments replies: [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (3 children) This is Awesome! How did you learn to do that? I want to learn too permalink fedilink source parent hideshow 3 child comments replies: [–] tetris11@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (2 children) thanks! oh well data formatting, just 15 years of messing around with awk and sed Data fitting, gnuplot does all the heavy lifting with the modelling, and I always have to look up the syntax because I never remember it haha Play around and have fun with the code snippets! permalink fedilink source parent hideshow 2 child comments replies: [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] tetris11@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (2 children) thanks! oh well data formatting, just 15 years of messing around with awk and sed Data fitting, gnuplot does all the heavy lifting with the modelling, and I always have to look up the syntax because I never remember it haha Play around and have fun with the code snippets! permalink fedilink source parent hideshow 2 child comments replies: [–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] stan_stanminson@lemmy.dbzer0.com 3 points 1 year ago (1 child) I will! And I'm going to give a look at awk and sed, I didn't know you can do all that stuff with it. Thanks for sharing :D permalink fedilink source parent hideshow 1 child comment replies: [–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent
[–] tetris11@lemmy.ml 3 points 1 year ago I seem to be on a gnuplot bender at the moment, but maybe you will enjoy this too! permalink fedilink source parent