Riverside Learning LABO(Skill/Idea/Code)

よりよいシステムのため工学系と人間系の学習メモ

読書 彼女は1人で歩くのか?

こどものひなまつりの日.
一挙手一投足に拍手がされる時期。
両親の送迎も終わり一段落ついた。
こんなとき何を読むかだと技術書より小説だろう。

人工細胞の移植技術によって人間の寿命は半永久的になった時代
資本主義が崩壊した後にくる持続可能性を合理的にデザインした社会
この社会はいったい誰のものなのか。

            • -

理想的な環境のなかで生きる人々が緩やかに死んでいく世界
子孫が生まれない閉塞感の打開策を模索する
人間から生まれた人間と人間によって作られた人間は判別できないほどだ
差を測定/把握することで、その差を埋める解を得ることにもなる

開発 WEBブラウザ開発環境 Colaboratory

深層学習や機械学習をブラウザor自マシンで試すためのノウハウがまとまっている
サンプルプログラムを利用し、実際に体験しながら機械学習をを学習する解説書。

キーワード
Python機械学習、深層学習、自然言語処理、Jupyter Notebook、
形態素解析ディープラーニングOpenCV

Googleアカウントがある方はいかにアクセスするとpythonの実行環境が手に入る。
(というか環境を構築する必要がない。
ブラウザ上でpythonのコードを記述、ブラウザの実行ボタンを押すと、実行結果がブラウザで確認できる。)
colab.research.google.com

読書 お伽草紙

印象的な言葉メモ
昔話の登場人物の心情が自由に描かれる。
変わらない人間の未熟さ、可憐さ、教訓となる言葉。

性格の悲喜劇といふものです。人間生活の底には、いつも、この問題が流れてゐます
好奇心を爆発させるのも冒険、また、好奇心を抑制するのも、やつぱり冒険…
美しい花が咲いてゐると信じ得た人だけが、何の躊躇もなく…向う側に渡つて行きます
野心があるから、孤独なんて事を気に病む
客を迎へて客を忘れる…
お互ひ他人の批評を気にして、泣いたり怒つたり、ケチにこそこそ暮してゐる陸上の人たちが、
たまらなく可憐で、さうして、何だか美しいもののやうにさへ思はれて来た…
まことに無邪気と悪魔とは紙一重である
絶対の強者は、どうも物語には向かない
優しい言葉だけは、ごめんだ…
年月は、人間の救ひである。 忘却は、人間の救ひである

読書 君たちはどう生きるか

君たちはどう生きるか
吉野源三郎

君たちはどう生きるか

君たちはどう生きるか

自分のこどもにもよんであげたいことば。
あたりまえにたいせつにしたいことについて優しく書いてある優れた作品。

印象的なことばメモ
君が人間て分子なのかもと言った時、僕は心を動かされた
みんなが集まって世の中を作っている
損得に関わることになると自分を離れて正しく判断していくと言う事は非常に難しい
君もそろそろ世の中や人間の一生について本気で考えるようになった
ただ目や耳が備わっているだけではなくそれを味わうだけの心の瞳心の耳が必要だ
最後の鍵は君自身の他にはない、自分が本当に感じたことを心を動かされたことから出発する
貧しさに対して微塵も侮る心持ちを持っていないと言う事は素晴らしい
勉強を妨げるものがない、人類の築き上げた資産を自由に獲得できる
芸術の世界だって生み出してゆく人は受け取る人々よりはるかに重要
値打ちがある事業は人類の進歩に役立ったねばならぬ
失敗してもきっと何度も背中を押してくれる
辛いことや苦しいことに出会い人間がどういうものであるかを知る
人間が悪みあうことで苦痛を感じるのはもともと敵対したくないからだ
人間らしい痛みとはするとは、目に見えないことで心が血を流すこと
誤りは真理に対して、ちょうど睡眠が目覚めに対すると同じ関係にある
人が誤りから目覚めて再び真理に向かうのを私は見たことがあるbyゲーテ

開発 Pythonによるスクレイピング-02

pythonを使ってスクレイピングを試す.
開発環境はWindowsの中にDocker imageのUbuntuを構築して試す.
開発環境準備についてのメモ


# docker imagesの実行中の一覧を取得commitコマンドで保存する
$ docker ps
$ docker commit CONTAINER ID REPOSITORY/TAG
例)
$ docker commit 80a09241ae94 mlearn/jpall


#保存したdocker imageの一覧を開く
$ docker images
例)
REPOSITORY TAG IMAGE ID CREATED SIZE
mlearn jpall 80a09241ae94 11 hours ago 442MB
continuumio/miniconda3 latest 1284db959d5d 2 weeks ago 409MB
hello-world latest e38bc07ac18e 2 months ago 1.85kB


#実環境のsmapleフォルダをVMマッピングして保存したdocker imageを起動
$ docker run -i -t -v /c/Users/Fujitsu/Documents/sample:/sample mlearn:init /bin/bash
(base) root@xxxxxxxxxxxxxx:/# cd sample


#pip3を使ったbeautifulsoup4ライブラリインストール
#1.python がインストール済みであること
Windows環境手順1.ダウンロード先:https://bootstrap.pypa.io/get-pip.py よりget-pip.pyを任意のディレクトリに保存する
#2.保存したディレクトリで下記コマンドを実行する
python3 get-pip.py
#3 pipコマンドでURL解析用のライブラリをインストールする
pip3 install beautifulsoup4


#実行中のdocker imageが表示される
$ docker ps
例)
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f7cc38d403a8 mlearn:jpall "/usr/bin/tini -- /b…" 40 seconds ago Up 39 seconds pensive_murdock

#表示されたdocker imageにはattach可能、表示されない場合はstartから必要
$ docker attach f7cc38d403a8
or
$ docker start f7cc38d403a8
$ docker attach f7cc38d403a8

#後は ?????????.pyにpythonスクリプトを配置すれば、スクレイピングを試せる
(base) root@xxxxxxxxxxxxxx:/# cd sample
(base) root@2f5ccabba444:/sample# python3 ?????????.py

開発 Pythonによるスクレイピング-01

pythonを使ってスクレイピングを試す.
開発環境はWindowsの中にDocker imageのUbuntuを構築して試す.
開発環境準備についてのメモ

準備1
Windows7,Windows8.1
Docker toolboxをダウンロード
取得元:https://docs.docker.com/toolbox/
参考 :Docker for Windows のインストール — Docker-docs-ja 1.13.RC ドキュメント

windows10
Docker Platformをダウンロード
取得元:www.docker.com
参考 :Dockerコンテナ テクノロジでアプリケーションをスピーディーに提供

準備2
デスクトップからTerminal.lnkを起動
Docker\Docker Quickstart Terminal.lnk"

## .
## ## ## ==
## ## ## ## ## ===
/"""""""""""""""""\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~
\______ o __/
\ \ __/
\____\_______/

準備3
docker run hello-world
hello-worldイメージがダウンロードされて画面上にhello worldが表示される


参考

開発 デスマーチ

デスマーチ ソフトウェア開発プロジェクトはなぜ混乱するのか
エドワードヨードン

デスマーチ 第2版 ソフトウエア開発プロジェクトはなぜ混乱するのか

デスマーチ 第2版 ソフトウエア開発プロジェクトはなぜ混乱するのか


ソフトウェア開発の古典を久しぶりに再読。
[概要]
ソフトウェア産業は成熟しているとは言えない。
成熟していないから、デスマーチはどこでも起き得るもので例外的なものでは無い。
何もしないとデスマーチになるので、最重要機能の見極めと他は作らないことにするのが良い。
難しいが…失敗すればもっとうまく失敗するようになる。
デスマーチは政治、国際化
規制緩和、規制強化、事故、楽観主義などが原因で発生し発生すると制御が困難を極める。
だが制御しようと試みなければ悪化の一途を辿るし、その試みは活きる。
キーワードその1:最優先事項に絞り込んで開発する「トリアージ
キーワードその2:組織内外での「失敗の共有」

開発者と使用者のITリテラシーの向上が不幸を減らす
果たして過去の話にはできるほど業界的に成熟しているのか?
失敗を糧に過去と比較して計画的なプロジェクトが増えている話は聞く
要求事項と実装の両面を正確に理解した設計、優先度をつけた現実的な計画
プロトタイプやモックアップによる仕様合意とそれを許容する計画
学習する組織が増えていくが、計画的で高品質はサービスにつながる.