SPIN:  50歳からのプログラミング言語入門。docker(152) coding(47) coq(10)

 ６５歳からのプログラミング入門 転職(16)
https://qiita.com/kaizen_nagoya/items/1561f910c275b22d7c9f

６５歳からのプログラミング入門(2) 二日目。docker (132) coding(46) https://qiita.com/kaizen_nagoya/items/57f362fb801fd3132803

上記記事のうち、５０歳からの話を、表を作ったことで切り離すことにした。４原則は再掲。

## 4原則
お金はかけない、
時間をかけない（１日１時間）
ネットに頼る（生身の人に頼らない）
コピペプログラミング

## ５０歳から
５０歳から毎年１言語学習を目指してきた。
１言語習得とは言えない。勉強しても使えるようになるとは限らないから。
最低でも基本的な教科書の１冊は全部動かしてみる。

Uml, python, Ruby, spin, C#, Coq, SML#, VDM, Event-B.uppaal, VHDL, ObjectiveC,  R, System C, SMV, alloy。

Haskell, prolog, Z, verifarstは処理系を起動しただけで、ほぼ手が止まっている。

教師の欄は、直接教えてもらった人以外に、
いろいろやりとりのあった人、
本を参考にさせていただいた人などを含みます。

|短縮名|内容|
|:--|:--|
|Go|打って動かした量|
|check|検査した量|
|edu|教育した量|
|get|習得度。10が先生、1が初心者|

量の表示で、0.1は1の100分の１、10は1の100倍。

年齢|西暦|言語|教師|Go|check|edu.|get|
|:----|:----|:----|:----|:----|:----|:----|:----|
|50|2004|Verilog HDL|末吉敏則|1|3|6|10|
|51|2005|UML|児玉公信|3|3|3|9|
|52|2006|SPIN|青木利晃|1|2|3|6|
|53|2007|VHDL|渡部謹二|0.5|2|2|5|
|54|2008|R|石井一夫|1|3|3|7|
|55|2009|Uppaal|掘武司|0.3|1|3|4|
|56|2010|Event-B|掘武司|0.5|1|1|3|
|57|2011|SMV|早水公二|0.4|0.5|1|2|
|58|2012|VDM|栗田太郎|0.1|0.2|0.4|0.7|
|59|2013|Ruby|田中和明|1|2|2|5|
|60|2014|alloy|斉藤直希|0.2|0.2|0.4|0.8|
|61|2015|Objective C|斉藤直希|0.5|1|1|3|
|62|2017|coq|今井宜洋|0.2|1|1|2|
|63|2018|python|東北大学|1|2|5|8|
|64|2019|SML#|齋藤啓太|0.1|0.4|0.4|0.9|
|65|2020|C#|尾崎秀典|1|1|2|4|
|66|2021|Rust |杉本明加|0.1|0.1|0.1|0.3|
|67|2022|JavaScript |これから|0|0|0|0|

今年はとある事情からRustを勉強することになりました。

Programming Rust on docker(149)
https://qiita.com/kaizen_nagoya/items/d71b2c1932562ac1ecfc

```macOS:bash
$ docker run -it rust /bin/bash
```

Errata of the Book "Modeling in Event-B"
http://www.event-b.org/A_errata.pdf

ちなみに、50歳までにお金になった仕事で取り組んだことがある言語は、

アセンブラ、C、C++, JAVA, Basic, Fortran, COBOL、LaTeX。１０年に３つくらいの言語しか学習していない。２０代に、アセンブラ、BASIC, COBOL, fortranをやっていて、30代にC++とJAVAとLaTex。40代は、、、。

LISPとSmallTalkは動かして見たけど実用的または研究的なプログラムは１行たりとも書いたことがなかった。

Squarkの子供向け教育は何度か行った。
Small Talkのデバッグは少しした。

電総研では、LISPが主言語の研究室に３ヶ月滞在したことがある。最初の１ヶ月でSmall C Compailerを入力し、次の１ヶ月でPascalで書かれたコンパイラをC言語に移植し、OBJという言語のシンタックスチェッカを作成して学会で発表した。
当時、パナソニック在籍の田中伸明さんも電総研にいたらしいことを後で知った。

仮説・検証（153）成功体験は語っても、成功体験に頼らないために。清水吉男・田中伸明・柏原一雄
https://qiita.com/kaizen_nagoya/items/d32adfaf7b2568bfd9d2

電総研当時に書いたまとめで、SEAで発表した際に、気が付いたことと同じ現象をEvent-Bでも経験した。

Errata of the Book "Modeling in Event-B"
http://www.event-b.org/A_errata.pdf

50歳以降で新たに学習した言語で、役にたったのはSlideshareで人気記事のVerilog HDL、VHDL以外には、pythonとRかもしれない。C#, Rubyもなんとか役立てようとしている。

How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
https://www.slideshare.net/kaizenjapan/how-to-use-starc-rtl-design-style-guide-veriloghdl-2011-version

JAVA, Python, JavaScript, C# あなたはXML処理ソフトをどの言語で書きますか？
https://qiita.com/kaizen_nagoya/items/08cc37b64d0995774fb1

趣味で使うなら、機械学習できなきゃ。
組織の経営分析をするのにRかPythonがいいかも。

この記事は、当時６４歳のプログラマが、同世代のプログラムを組んだことがない方に、相談に応じた記録でもあります。

機械語、アセンブラでも楽しむ方法はある。アセンブラ短歌とか。
趣味ですぐに役立つプログラミングならpythonかも。

2017 年から開催した「ゼロから始めるDeep Learning読書会」
https://qiita.com/kaizen_nagoya/items/537b1810265bbbc70e73
に65歳以上の方が数人参加されており、pythonの導入、習得にいろいろ苦労されている状態を手助けした記録も兼ねています。

機械学習はdocker利用をお勧めしています。

なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

古いWindowsしかない方で、どうしてもWindowsでpythonをしたいという方のために作った資料はこちら。

Windows(M.S.)にPython3(Anaconda3)を導入する（7つの罠）
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679

自分のQiita記事で、一番viewsが多い。読んで、うまくanacondaが導入できたら「いいね」をお願い。

dockerもWindowsもと思う方に、お勧めしているのはRaspberry PI。

## 参考資料
 人生で影響を受けた本100冊。 
https://qiita.com/kaizen_nagoya/items/16af53acbb147a94172e

Modeling in Event-B: System and Software Engineering, 2010/5, [Jean-Raymond Abrial](https://en.wikipedia.org/wiki/Jean-Raymond_Abrial)
<img width="200" alt="51BK0YmblTL._SX379_BO1,204,203,200_.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/51423/df272342-0f21-0340-c4fd-1ae433878051.jpeg">
https://www.amazon.co.jp/dp/0521895561/
https://bookmeter.com/books/1162389
https://booklog.jp/item/1/B00AKE1X6G

Rust入門
https://qiita.com/kaizen_nagoya/items/b3a42bf5a849dabe52c5

今日Xpathを覚えた
https://qiita.com/kaizen_nagoya/items/b3d9a3aca9643e5d243a

物理記事　上位100
https://qiita.com/kaizen_nagoya/items/66e90fe31fbe3facc6ff

数学関連記事１００
https://qiita.com/kaizen_nagoya/items/d8dadb49a6397e854c6d

言語・文学記事　１００
https://qiita.com/kaizen_nagoya/items/42d58d5ef7fb53c407d6

医工連携関連記事一覧
https://qiita.com/kaizen_nagoya/items/6ab51c12ba51bc260a82

通信記事１００
https://qiita.com/kaizen_nagoya/items/1d67de5e1cd207b05ef7

自動車　記事　１００
https://qiita.com/kaizen_nagoya/items/f7f0b9ab36569ad409c5

Qiita(0)Qiita関連記事一覧（自分）
https://qiita.com/kaizen_nagoya/items/58db5fbf036b28e9dfa6

鉄道（０）鉄道のシステム考察はてっちゃんがてつだってくれる
https://qiita.com/kaizen_nagoya/items/26bda595f341a27901a0

日本語（０）一欄
https://qiita.com/kaizen_nagoya/items/7498dcfa3a9ba7fd1e68

英語(0) 一覧
https://qiita.com/kaizen_nagoya/items/680e3f5cbf9430486c7d

転職(0)一覧
https://qiita.com/kaizen_nagoya/items/f77520d378d33451d6fe

仮説（0）一覧（目標100現在40）
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df

安全（0）安全工学シンポジウムに向けて: 21
https://qiita.com/kaizen_nagoya/items/c5d78f3def8195cb2409

Error一覧 error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

Ethernet 記事一覧　Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48) 
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網（Wi-Fi）空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

OSEK OS設計の基礎　OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3

官公庁・学校・公的団体（NPOを含む）システムの課題、官（０）
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

Error一覧(C/C++, python, bash...) Error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

C++ Support(0)　
https://qiita.com/kaizen_nagoya/items/8720d26f762369a80514

Coding Rules(0) C Secure , MISRA and so on 
https://qiita.com/kaizen_nagoya/items/400725644a8a0e90fbb0

なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

言語処理100本ノックをdockerで。python覚えるのに最適。:10+12
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4

プログラムちょい替え（0）一覧:4件
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394

TOPPERSまとめ　#名古屋のIoTは名古屋のOSで
https://qiita.com/kaizen_nagoya/items/9026c049cb0309b9d451

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

Rust(0) 一覧　
https://qiita.com/kaizen_nagoya/items/5e8bb080ba6ca0281927

小川清最終講義、小川清最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞
This article is an individual impression based on the individual's experience. It has nothing to do with the organization or business to which I currently belong.
### 文書履歴
ver. 0.01 初稿 20210505
ver. 0.02 補足 20210508
ver. 0.03 RUST追記 20210905
ver. 0.04 誤植訂正 20211016
ver. 0.05 JavaScript, Xpath追記 20220220
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
####  Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.