Edited at

「ITエンジニアとしてのPC初期環境構築[MacOS編]」に付記したいこと

ITエンジニアとしてのPC初期環境構築[MacOS編]

https://qiita.com/to-lz1/items/ff84225ad8032e29a70c

研修室に21台Macを入れていて、半数くらいの来訪者がMac初めて。紹介資料をいろいろ作成してきた。

上記URLは、基本的な事項を記載している。記載事項内部の関連性について言及していないと感じたので、付記したいことを整理してみる。ただし、docker, wireshark以外は、言語依存で、著者とは違う方向性の可能性があるため、別記事とさせていただいた。主に、Javaを使う場合のEclipse。Pythonを使う場合のJupiternotebook及びそのPDF出力に必要なLaTeXである。LLVMは、XCodeよりも新しい版のコンパイラを使う場合や、コンパイラのソースコードを読む時に有効である。


XCode

後で出てくるbrewで、バイナリで導入できないときは、コンパイルするためにXCodeが必要になるかもしれない。

https://developer.apple.com/jp/xcode/

困るのは、最新のOSでないと、最新のXcodeを導入できない時。

時々、自分のOSの版のXcodeにWEBで誘導してくれないことがあるかもしれない。


CommandLineTools

上記では、自動で入る版についてと、簡単な導入方法を例示している。

$ xcode-select --install


llvm

Appleの公式コンパイラではなく、LLVMご本家の

$ brew install llvm --with-clang


brew


brew cask

brew caskについて、

「なかなか最新バージョンが降ってこない」という記述のサイトを紹介している。brewにしても、brew caskにしても自助努力が必要かも。

降ってくるものではなく、降らせるものとの認識に変わると嬉しい。


エディタ


Atom

エディタとして身の回りでよく使われている。導入もしている。


Eclipse

JAVAや、Ecipseと連携する道具を使うときには必須。

brew cask では、eclipseだけの導入はなく、installerの導入か、何かまとまった導入を直接できる。

eclipse-cpp                            eclipse-java ✔                         eclipse-php                            eclipse-scout

eclipse-dsl eclipse-javascript eclipse-platform eclipse-smarthome-designer
eclipse-ide eclipse-jee eclipse-ptp eclipse-testing
eclipse-installer ✔ eclipse-modeling eclipse-rcp

私の場合は道具をつかうので、

$ brew cask install eclipse-modeling 


git

bitbucketの記述もあるといいかも。


docker

ここまで書いていて、dockerの記述がないのが最大の違和感。

長いが引用させていただくと、

「Unixベースのツールをインストールする際、CommandLineToolsに含まれるGCCコンパイラなどが必須となる。なるほど、開発者としてマシンを使いこなすためには、あった方が良さそう。

ちなみに逆に言えば、MacはもともとUnixベースで開発されたOSだからこうしたツールだけで済む、とも言える。WindowsでUnixライクな環境を立ち上げたい場合は、互換レイヤとしてCygwinを噛ませて…みたいな話になるのでつらそう(やったことはないです)。



WindowsでもMacintoshでも、dockerを使うのは素敵。

brew cask install docker

ubuntu, debianが自由自在。多くの方が作られた環境をそのまま利用できたり、自分が作った環境を公開できたり。

この相互性が大事。誰かに何かをしてもらうだけでなく、自分が大勢のために何ができるか。ほんの小さなことでもよい。

Raspberry PIとdockerのubuntuはいずれもDebian系のLinux。

aptを使ってシステム構築する方法を共通化できると、

dockerとRaspberry PIのどちらかを使って、それぞれに合った試験ができる。


docker hub

https://hub.docker.com

gitとdockerの連携の記事があると嬉しい。

自分でまだうまく連携とれていない。


Wireshark

ネットワークの測定はWiresharkが基本

$ brew cask install wireshark


JupyterNotebook

MacはすでにPythonが入っている。しかし、Anacondaのようなさまざまなライブラリが揃っているわけではない。そこで、Anacondaを導入してJupyterNotebookを使えるようにすることをお勧めしたい。

ただし、brew caskでは、最新版ではないので、brew caskを最新版に更新するスクリプトを書くとよいかも。


LaTeX

pythonで, jupyternotebookを利用する場合に、PDF出力はLaTeXを使う。文書の再利用性も高いため、それ以外の場合もLaTeXを使っている。

$blew cask install mactex


まとめ

docker

wireshark

eclipse

LaTeX

llvm

の5つについて記述があると嬉しいかも。

docker, wireshark以外は、使う言語、道具によって必要度が違う。

逆に言えば、wireshark, dockerはどの言語、道具をつかっていても必須かも。web関連であれば、docker上にweb作って試験するとか。そのパケットはwiresharkで記録するとか。


参考資料(reference)

関連する記事を記載。

Homebrewを使ってプログラミング環境を構築しよう!(コマンドライン初心者向け)

https://qiita.com/KeitaNakamura/items/a85af86688c04e49d208

Mac mini 21台常備試験・研修室

https://qiita.com/kaizen_nagoya/items/3fc572d06eafe15a4c35

Dockerをどっかーらどうやって使えばいいんでしょう。TOPPERS/FMP on RaspberryPi with Macintosh編 5つの関門

https://qiita.com/kaizen_nagoya/items/9c46c6da8ceb64d2d7af

Wireshark 導入、記録、分析

https://qiita.com/kaizen_nagoya/items/d1d452d5f3eadd420d6e

MacintoshにWiresharkを導入する6つの壁

https://qiita.com/kaizen_nagoya/items/69eb2d357a125f5368e1

Macintosh OS Xにbrew caskでEclipseを導入する(5つの壁+1)

https://qiita.com/kaizen_nagoya/items/b17f03db00aceee41a80

MacintoshにLaTeXを導入する7つの利点と導入方法

https://qiita.com/kaizen_nagoya/items/75be26d34a7432d5700b

「DockerでPHP7.0×Apacheの環境を構築する@kurkuru」IT業界新人利用時の16の壁(mac mini編)

https://qiita.com/kaizen_nagoya/items/315e8d05a6eef00b56d1

docker利用を勧める256の理由(現在9つ)

https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbe


文書履歴(condiment history)

ver. 0.10 初稿 20180820 朝

ver. 0.11 brew cask install docker, https://hub.docker.com 追記 20180820 昼

ver. 0.12 wireshark, Latex追記 20180820 午後2時

ver. 0.13 参考資料追記 20180820 午後3時

ver. 0.15 Jupybernotebook, anaconda追記 20180821

ver. 0.16 docker利用を勧める256の理由 追記 20190212