「@rana_kualu 2020年の開発者が知っておくべき11の必須技能」→回答編 → 並べ替え→項目合併(8項目)→内容追記。仮説（170）

@rana_kualu 2020年の開発者が知っておくべき11の必須スキル
https://qiita.com/rana_kualu/items/c79a16ff503c86b27483

11 Essential Skills Software Developers should Learn in 2020
https://dev.to/javinpaul/11-essential-skills-software-developers-should-learn-in-2020-1bio
>Top 11 Essentials Skills for Software Developers in 2020
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm
4) A Version Control Tool (Git)
5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language

# 回答編
１１の技能を自己評価してみる。

0:知らない、触ったことがない
1:知ってる。使ったことがあるかもしれない。
2:誰かに相談できれば仕事で使える。
3:仕事に使っている。
4:改良に取り組んでいる。

点数を書いたら、その数だけURLを示す。

### みだし補正
各みだしを　category と examplesに分けてみる。見出しにやや整合性がない気がした。
下記表では、適当に補足・補正してみた。一番右の列が自己評価。

| category | examples | value |
|:--|:--|--:|
| Containers | Docker and Kubernetes | 3 |
| Cloud Platform | AWS, GCP, or Azure | 3 |
| Data Structure and Algorithm | Machine Learning or Quantum Computing | 3 |
|  A Version Control Tool | git | 3 |
| One Text Editors | vim,  Emacs or Eclipse| 4 |
| IDEs | VSCode or IntelliJIDEA | 3 |
| Database and SQL | Oracle, SQL Server or MySQL | 2 |
| Unix or Linux| Ubuntu, Raspbian or Debian | 4 |
|  An OOP Programming language | C++, Java or JavaScript  | 3 |
|  Networking basics | TCP/IP and Wi-Fi  | 4 |
| One Scripting language | Python or Ruby | 3 |

大事なのはでこぼこ。他よりよいのが１つ以上、他より悪いのを１つ以上書くこと。
全部同じ値は役に立たない。

私の場合は、Networkが専門で、BSDを対抗試験にDebian(linux)でコンパイルしてきた。エディタは作業の要。
苦手なのはDB、リレーショナルDBの概念と実装の隙間の大きさに戸惑う。

下記の一部の記事は、失敗だったり、未完だったり、これから該当する技術を書く予定のものがあります。
うまく行っていないもので解決する方法、誤字、誤解などにお気づきになられましたら、暖かいご指導のほどお願いいたします。

## 回答一覧
### 1) Containers (Docker and Kubernetes):3

これまで、色々な版での試験をするのに、全部別々のdockerを作ってhubに登録しとけば、いつでも必要な版をすぐに取り出せて便利。pythonでも、各版ごとにdocker作っておくとか。

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

docker(1)利用を勧める17の理由
https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbe

docker(0) 資料集
https://qiita.com/kaizen_nagoya/items/45699eefd62677f69c1d

### 2) Cloud Platform (AWS, GCP, or Azure):3
いろいろなcloudの違いに依存されないためには、dockerで作ったものがそのままうごくサービスに限定して基本的な構造を設計するとよいかもというのが経験則。

「Qiitaのいろいろランキング2019」への感謝と提案
https://qiita.com/kaizen_nagoya/items/40b8557a20e8d75d62b5

日鉄ソリューションズのプライベートクラウドは、顧客満足度１位になっているほか、データサイエンティストの行事でDataRobotより上位の２位になっていることを記載。

転職(2) 転職者による、転職者のための、転職者の履歴、業績、面接
https://qiita.com/kaizen_nagoya/items/162fbb954deb886464bf

クラウドを利用するにあたってdockerを利用しているとよい点を記載。

製造業における機械学習
https://qiita.com/kaizen_nagoya/items/fbe846de16f74bea1d6f

製造業における機械学習でクラウド利用について記載。

### 3) Data Structure and Algorithm:3
機械学習をここに入れてもいいかもしれない。機械学習は、データ構造化と算法が鍵かも。

『フカシギの数え方』 おねえさんといっしょ：組み合わせ爆発の凄さ
https://qiita.com/kaizen_nagoya/items/f309b0c2bb015bbc71c3

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

データ中心設計で田中伸明さんと連名で安全工学シンポジウム等で発表させていただいているのは光栄。

仮説（122）分析と設計
https://qiita.com/kaizen_nagoya/items/d7341c407026af61f216

### 4) A Version Control Tool (Git):3
版管理がこんなに楽になるなんて

仮説（51）公開算譜は機敏だ(open source is agile)GitHub and docker
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e

卒業論文、修士論文、博士論文は　github/gitlab/bitbacketのprivate利用をお勧め
https://qiita.com/kaizen_nagoya/items/eb9945a2649f6f3eabd0

現在努力中
https://github.com/kaizen-nagoya

### 5) One Text Editors (VIM):4
VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949

「アセンブラへの道」組立語(assembler)・機械語(machine language)・CPU
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2

令和で成果を出す予定のソフトウェア・プログラミング・IT（一部、平成のコピー）
https://qiita.com/kaizen_nagoya/items/d7eae2ca3229eda72f88

仮説（139）新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c8

### 6) IDEs (VSCode or IntelliJIDEA):3
docker(39) Cコンパイラ３種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6

g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5a

docker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a

### 7) Database and SQL:2
仮説（163）生産縮小、規模縮小、人員縮小時には自動化道具を増強
https://qiita.com/kaizen_nagoya/items/8df1dc7d3a5c7869d3c2

Python で SQL
https://qiita.com/kaizen_nagoya/items/1a210fd10efaead88f68

### 8) UNIX (Linux):4
Posix Test Suite docker downloads, tar, install
https://qiita.com/kaizen_nagoya/items/f1e24be04a2405ede00f

xtUMLを導入する(linux編）
https://qiita.com/kaizen_nagoya/items/297097cc47a6487d9f20

仮説（165）40年でソフトウェア開発の景色はどのぐらい変わったのか？
https://qiita.com/kaizen_nagoya/items/54c17cf751894eef56f8

Raspberry Pi（SDカード付き）開封から起動までの時間測定
https://qiita.com/kaizen_nagoya/items/8cde74c07848ec413f7b

### 9) An OOP Programming language (C++, Java or Python):3
Object Oriented Programmingは、物をよく分析してプログラムすればいいだけだと思えば良い。
プログラミング言語をよく知らないうちなら理解可能な概念。
特定の言語を知ってしまうと、その言語での解決策の案に囚われて、すごく狭い理解しかしない人たちがいるかもしれない。抽象データ型に対応している言語ならどれでもよい。
COBOLは、元々Object Orientedな言語で、OOCOBOLでなくてもよいかも。機械語がいちばんのObject Oriented Languageだとずっと主張しつづけてきた。
Classによる体系化はOOPの一手法かもしれないがお勧めできない。C++ならTemplateを駆使したり、拡張するといいかもしれない。

見出しは忘れて、一つの言語を操れればいいと思うとよいかも。

Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76#_reference-6bf86e567f8b9d0a1028

仮説(89)インド、インドネシアとJava、Javascript:接尾辞がついて別物と言うが共通点は多い。
https://qiita.com/kaizen_nagoya/items/2c331ff6654d41d5e157

dockerで機械学習(87) with JAVA(1)「Machine Learning: End-to-End guide for Java developers」 By Richard Reese, Jennifer Reese, Bostjan Kaluza, Uday Kamath, Krishna Choppella
https://qiita.com/kaizen_nagoya/items/2d3a4f168b4c9a28b32e

### 10) Networking basics:4
TCP/IPを基本としてWi-Fiまで幅広く網羅してもらえると嬉しい。

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

情報処理技術者試験　ネットワークスペシャリストに合格　
https://qiita.com/kaizen_nagoya/items/407857392ca5c5677ee4

「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e

通信エミュレータの移植
https://qiita.com/kaizen_nagoya/items/ce505bbea4229b83e93b

### 11) One Scripting language:3
shellでもいいかも。自動実行できればいい。

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

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

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

# 並べ替え(re sort)
１１の項目を、自分が大事だと思う順番に並び替えるのも良い。

| K | J | category | examples | value |
|--:|--:|:--|:--|--:|
| 1 | 4 | A Version Control Tool | git | 3 |
| 2 | 1 | Containers | Docker and Kubernetes | 3 |
| 3 | 3 | Data Structure and Algorithm | Machine Learning or Quantum Computing | 3 |
| 4 | 5 | One Text Editors | vim, Emacs or Eclipse | 4 |
| 5 | 6 | IDEs | VSCode or IntelliJIDEA | 3 |
| 6 | 10 | Networking basics | TCP/IP and Wi-Fi | 4 |
| 7 | 8 | Unix or Linux | Ubuntu, Raspbian or Debian | 4 |
| 8 | 11 | One Scripting language | Python or Ruby | 3 |
| 9 | 9 | An OOP Programming language | C++, Java or JavaScript | 3 |
| 10 | 7 | Database and SQL | Oracle, SQL Server or MySQL | 2 |
| 11 | 2 | Cloud Platform | AWS, GCP, or Azure | 3 |

自分が得意な分野が真ん中にある。この並べ替えは、一つの意見。他の分野が得意な人は、他の並び方になるだろう。Jは原著者のJavinpaul, kは@kaizen_nagoya。

cloud platformが低いのは、もっと便利になる物が生き残るだろうという想定から。
cloud platformを作るプログラマがもっと頑張ると良い。
Database が低いのも同じ理由。
Unix/Linuxがどんどん便利になって、Raspbianやubuntuのように普及して使いやすくなるともっと上にするかも。

# 項目合併(merge)
IDEにエディタは含むこともあり、One Text Editors とIDEは一つの項目でも良いかもしれない。
UNIXがTCP/IPとともに普及してきたことを考えると、Networking basics と Unix or Linuxも一つの項目でも良いかもしれない。
言語はOOPかどうかはどっちゃでも良くて、One Scripting language と An OOP Programming language もpythonかJavascriptで良いので一つの項目で良いかもしれない。

私版「開発者が知っておくべき8の必須技能」に縮退。

| K | J | category | examples | value |
|--:|:--|:--|:--|--:|
| 1 | 4 | A Version Control  | git | 3 |
| 2 | 1 | Containers | Docker and Kubernetes | 3 |
| 3 | 3 | Data Structure and Algorithm | Machine Learning or Quantum Computing | 3 |
| 4 | 5+6 | One Text Editors and IDEs | vim, Emacs, Eclipse, VSCode or IntelliJIDEA | 4 |
| 5 | 10+8 | Networking and Unix(Linux) | TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian | 4 |
| 6 | 11+9 | One Scripting or  Programming llanguage | Python, Ruby, C++, Java or JavaScript | 3 |
| 7 | 7 | Database  |  Oracle, SQL Server or MySQL | 2 |
| 8 | 2 | Cloud Platform | AWS, GCP, or Azure | 3 |

おお、重複感が減りすっきりした。もちろん、他の統合方法もいっぱいあると思う。
自分なりに整理すると仕事で役立つかも。

どんな資料も、再利用可能な方法で再計画(re programming)するのがprogrammer流かも。

# 内容追加(addition)
A version control toolにはissuとwikiも合わせたdocument toolに拡張した。
Web Serverがないので、Databeseと合体して１項目にした。Data Structure and Algorithmと合体するかどうかは悩んだ。

| K | J | category | examples | value |
|--:|:--|:--|:--|--:|
| 1 | 4 | A Version Control and document Tool | GitHub, gitlab or bitbucket | 3 |
| 2 | 1 | Containers | Docker and Kubernetes | 3 |
| 3 | 3 | Data Structure and Algorithm | Machine Learning or Quantum Computing | 3 |
| 4 | 5+6 | One Text Editors and IDEs | vim, Emacs, Eclipse, VSCode or IntelliJIDEA | 4 |
| 5 | 10+8 | Networking and Unix(Linux) | TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian | 4 |
| 6 | 11+9 | One Scripting or  Programming llanguage | Python, Ruby, C++, Java or JavaScript | 3 |
| 7 | 7 | Web and Database  | Apache or Nginx and Oracle, SQL Server or MySQL | 2 |
| 8 | 2 | Cloud Platform | AWS, GCP, or Azure | 3 |

# 参考資料(reference)
docker(59) Githubとdocker
https://qiita.com/kaizen_nagoya/items/f7e142cd283a1c314234

プログラマが知っているとよい色使い(JIS安全色)
https://qiita.com/kaizen_nagoya/items/cb7eb3199b0b98904a35

参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1

「平成のうちにやめたかった『ITの7つの無意味な習慣』」に付け加えたかったこと。
https://qiita.com/kaizen_nagoya/items/e6f9c2e0afbf8ab4181c

仮説（54）プログラムは音楽だ (A program is a music.)
https://qiita.com/kaizen_nagoya/items/33c9f33581e6886f8ad8

## 補足資料（Additions)
2023 Countdown Calendar 主催・参加一覧
https://qiita.com/kaizen_nagoya/items/c4c2f08ac97f38d08543

CountDownCalendar月間　いいねをいただいた記事群　views　順
https://qiita.com/kaizen_nagoya/items/583c5cbc225dac23398a

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

量子(0) 計算機, 量子力学
https://qiita.com/kaizen_nagoya/items/1cd954cb0eed92879fd4

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

統計(0)一覧
https://qiita.com/kaizen_nagoya/items/80d3b221807e53e88aba

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

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

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

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

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

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

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

仮説（0）一覧
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df

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

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

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

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

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) 記事一覧
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

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

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

プログラマによる、プログラマのための、統計(0)と確率のプログラミングとその後
https://qiita.com/kaizen_nagoya/items/6e9897eb641268766909

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

「はじめての」シリーズ　 ベクタージャパン　
https://qiita.com/kaizen_nagoya/items/2e41634f6e21a3cf74eb

AUTOSAR(0)Qiita記事一覧, OSEK(75)
https://qiita.com/kaizen_nagoya/items/89c07961b59a8754c869

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

LaTeX(0) 一覧　
https://qiita.com/kaizen_nagoya/items/e3f7dafacab58c499792

自動制御、制御工学一覧（０）
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.
#### 文書履歴(document history)
ver. 0.01 初稿 20200122 午前
ver. 0.02 順番並べ替え 20200122 昼
ver. 0.03 項目縮退 20200122 午後１時
ver. 0.04 Web追記 20200122 午後２時
ver. 0.05 参考資料追記 20200122 午後３時
ver. 0.06 表記補正、誤記訂正、Emacs追記 20200122 午後４時
ver. 0.07 構造見直し 20200122 午後５時
ver. 0.08 抜け漏れ補正 20200122 夜
ver. 0.09 内容追加(addition)追記 20200123
ver. 0.10 表現補正 20220312 
ver. 0.11 ありがとう追記　20230413
## 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
####  Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.

<a href="https://b.hatena.ne.jp/entry/s/qiita.com/kaizen_nagoya/items/39e1c69bddb8e608b42b" class="hatena-bookmark-button" data-hatena-bookmark-layout="basic-label-counter" data-hatena-bookmark-lang="ja" title="このエントリーをはてなブックマークに追加"><img src="https://b.st-hatena.com/images/v4/public/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="20" height="20" style="border: none;" /></a><script type="text/javascript" src="https://b.st-hatena.com/js/bookmark_button.js" charset="utf-8" async="async"></script>
https://b.hatena.ne.jp/guide/bbutton