2020/07,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

これについては、以前から言い続けてきましたが、もう一つ言えそうなことは、

I've been saying this for a long time now, but the other thing I could say about this,

―― システム構築のセンスが絶望的にない

"many people are hopelessly lacking in the sense of system configuration"

と人間が多いということです。

私は、この理由がかなり明確に分かっていまいます。

I know the reason pretty clearly.

「モノを作らない/作れない」 ―― この一択です。

'They don't make/can't make things' -- this is one choice.

「情報工学」だの、「システム構築方法」だの、講義を受けたり、How to 本を読んでいる暇があるなら ――

If you have time reading "how to books" and attending lectures on "information engineering" and "how to build systems"

「週末使って、ラズパイを使って、ショボいアプリを一つ自作」した方が、その100倍も知識が得られるし、

You can get 100 times more knowledge if you "create a poor app by yourself using a Raspberry Pi on the weekend."

「寝る時間削って、100行のコードを書く」方が、その100倍も速く理解できる。

"Writing 100 lines of code without sleeping" is 100 times faster than them.

そもそも、モノを作らない/作れない人間に、その技術的な難しさを頭の中でイメージすることができるとは、私には到底思えないのです。

In the first place, it's hard for me to think that a person who doesn't/can't make things can imagine the technical difficulty in their mind.

-----

まあ、パワーポイントとワードしか使わない人間であっても、イベントプランや、ビジネスモデルを作ることはできるでしょう。

Well, even a person who uses only PowerPoint and Word can make event plans and business models.

しかし、モノを作らない/作れない人間に、発明などできるわけがない。

However, I don't think that a person who does or cannot make things can invent.

発明とは「技術的思想の創作」(特許法第1条)です。

An invention is a "creation of a technical idea" (Patent Law Article 1).

技術的思想は、技術的アプローチを経た経験、つまり「モノを作る経験」から案出されます。

A technical idea is devised from experience through a technical approach, that is, "the experience of making things."

パワーポイントとワードだけで、エンジニアを名乗り、特許発明の業務に携わるものは、

Those involved in the work of patented inventions, self-proclaimed an engineer Just using PowerPoint and Word are

『無銭飲食者よりもタチが悪い』

"it's worse than a cashless person".

と思っています。

I think.

私は、口にしないだけです。

I just don't speak that, because,

サラリーマンですから。

I'm an office worker.

2020/07,江端さんの忘備録

最近、発明のアイデアを創成する為に、ブレーンストーミング(BS)を頻繁に参加しています。

Lately, I've been participating in frequent brainstorming (BS) sessions to create ideas for inventions.

発明創成に関しては、BSの最中に「否定的なコメントをしてはならない」という暗黙のルールがあります。

When it comes to invention creation, there is an unspoken rule of "no negative comments" in the middle of the BS.

その理由の一つとしては、発明を創成する為には、現状の社会常識のパラダイムの「破壊」が前提となるからです。

One of the reasons is that in order to create an invention, "destruction" of the current paradigm of common sense is a prerequisite.

簡単に言えば、

Simply, it is

■「非常識」が常態となった世界のイメージ創成

"Creating an image of the world where "insane" is the norm"

であり、もっと簡単に言えば、

more simply, it is

■「異世界」の構築

"Creating 'another world'"

です。

-----

最近分かってきたのですが、他の人と比べて、私は、この『「異世界」の構築』が、比較的「得意」なようです。

I've recently discovered that, compared to others, I seem to be relatively 'good' at this 'another worldly' construction.

私は、「ぶっとんだ世界」を考えることが好きです。

I like to think of the "insane world".

例えば、

For example,

(1)ミサイルの着弾が3分後と確定した世界 → 被害は免れないが、この被害を最小にする為の情報システムは?

(1) A world where it is confirmed that the missile will land in three minutes → Damage is inevitable, but what is the information system to minimize this damage?

(2)日本の観測点の半分以上の最高気温が40度を越えと日々が20日ぶっつづけで続く世界 → 一日、千人~万人のオーダで発生する熱射病患者を、医療設備以外の手段でどうやって治療するか?

(2) More than half of the stations in Japan have a maximum temperature of over 40 degrees Celsius for 20 straight days → How do we treat tens of thousands of heatstroke patients a day, in tens of thousands of orders, by means other than medical equipment?

(3)特殊出生率が0.5までに下った世界 → 子どもの存在が珍しい世界における、子どもの育成方法や教育方法は?

(3) A world where the fertility rate has fallen to 0.5 → What are the methods of raising and educating children in a world where the existence of children is rare?

とまあ、こんな風に、極端な世界を考えることで、「課題」が出てきます。

And, well, thinking about the world of extremes in this way helps us to see the "challenges".

でもって、こちらでも述べていますが、

―― 「発明」は難しくない。本当に難しいのは「その発明を必要とする課題」を見つけ出すことである

"Invention" is not hard. What is really hard is to find the "problem that requires the invention".

というのは本当です。

It is true that.

(続く)

(To be continued)

2020/07,江端さんの技術メモ

docker-compose.ymlの内容

version: '3.5'

services:
app:
build:
context: ./
dockerfile: docker/app/Dockerfile
target: build
command: ./main
depends_on:
- db
- tile38
volumes:
- ./:/XXXXXX_ride_hailing_go
db:
image: postgis-pgrouting:latest
build:
context: docker/postgis-pgrouting

expose:
- "5432"
ports:
- "15432:5432"
volumes:
- data
- ./:/XXXXX_ride_hailing_go
data:
image: busybox
volumes:
- "/data/db"
tile38:
image: tile38/tile38:1.17.0
expose:
- "9851"
ports:
- "19851:9851"
volumes:
- tile38_data
tile38_data:
image: busybox
volumes:
- "/data/tile38"
nginx:
image: nginx:1.15-alpine
ports:
- "80:80"
links:
- app:app
volumes:
- "./nginx.conf:/etc/nginx/conf.d/default.conf"

でもって、

XXXXXX_ride_hailing_go/docker/postgis-pgrouting/ の直下の Dockerfileの中身

FROM postgres:11.2
LABEL maintainer="dev@connect.co.jp"

ENV POSTGIS_MAJOR 2.5
ENV POSTGIS_VERSION 2.5.2+dfsg-1~exp1.pgdg90+1
ENV PGROUTING_MAJOR 2.5
ENV PGROUTING_VERSION 2.5.2

RUN apt-get update \
&& apt-cache showpkg postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR \
&& apt-get install -y --no-install-recommends \
postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR=$POSTGIS_VERSION \
postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR-scripts=$POSTGIS_VERSION \
postgis=$POSTGIS_VERSION \
postgresql-$PG_MAJOR-pgrouting \
&& rm -rf /var/lib/apt/lists/*

RUN mkdir -p /docker-entrypoint-initdb.d
COPY ./initdb-postgis.sh /docker-entrypoint-initdb.d/postgis.sh
COPY ./update-postgis.sh /usr/local/bin
COPY ./initdb-pgrouting.sh /docker-entrypoint-initdb.d/routing.sh

VOLUME /XXXXXX_ride_hailing_go
WORKDIR /XXXXXX_ride_hailing_go

の赤字の部分が原因で、以下のようなエラーが出ているらしい、というところまで分かった。

Reverse Provides:
Reading package lists…
Building dependency tree…
Reading state information…
E: Version '2.5.2+dfsg-1~exp1.pgdg90+1' for 'postgresql-11-postgis-2.5' was not found
E: Version '2.5.2+dfsg-1~exp1.pgdg90+1' for 'postgresql-11-postgis-2.5-scripts' was not found
E: Version '2.5.2+dfsg-1~exp1.pgdg90+1' for 'postgis' was not found

Service 'db' failed to build: The command '/bin/sh -c apt-get update && apt-cache showpkg postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR && apt-get install -y --no-install-recommends postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR=$POSTGIS_VERSION postgresql-$PG_MAJOR-postgis-$POSTGIS_MAJOR-scripts=$POSTGIS_VERSION postgis=$POSTGIS_VERSION postgresql-$PG_MAJOR-pgrouting && rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100

さて、どうも最新バージョンの問題だな、というところまでは分かたけど、何を入れたら良いのか分からず、2時間ほどすったもんだしていた。

そこで、最近構築したPostgreSQLにログインして、色々情報を探ってみたら、

ca_sim-# \dx
List of installed extensions
Name | Version | Schema | Description
-----------+---------+------------+---------------------------------------------------------------------
pgrouting | 3.0.0 | public | pgRouting Extension
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
postgis | 3.0.0 | public | PostGIS geometry, geography, and raster spatial types and functions
(3 rows)

ca_sim-# select postgis_version();
3.0 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)

ということが分かり、postgreSQLも、pgroutingも、postgisも、全部'3'になっていることが分った。そこで、docker-compose buildの画面に戻って、調べていたら、こんなメッセージを見つけた。

Reverse Depends:
postgresql-11-postgis-3,postgresql-11-postgis-3-scripts
Dependencies:
3.0.1+dfsg-4.pgdg90+1 - perl:any (0 (null)) postgresql-11-postgis-3 (0 (null)) postgresql-11-postgis-scripts (3 2.2.2+dfsg-3~)
Provides:
3.0.1+dfsg-4.pgdg90+1 - postgresql-postgis-scripts (= ) postgresql-11-postgis-scripts (= )
Reverse Provides:
Package: postgresql-11-postgis-3-dbgsym
Versions:
3.0.1+dfsg-4.pgdg90+1 (/var/lib/apt/lists/apt.postgresql.org_pub_repos_apt_dists_stretch-pgdg_main_binary-amd64_Packages.lz4)

なんか、これがクサいな、と思い、XXXXXX_ride_hailing_go/docker/postgis-pgrouting/ の直下の Dockerfileの中身を以下のように変えてみた。

FROM postgres:12.2
LABEL maintainer="dev@connect.co.jp"

ENV POSTGIS_MAJOR 3
ENV POSTGIS_VERSION 3.0.1+dfsg-4.pgdg100+1

# ENV PGROUTING_MAJOR 2.5
# ENV PGROUTING_VERSION 3.0.0
(上記2つの環境変数は、使われていないようだったのでコメントアウトしておいた)

この変更で、docker-compose build が無事通ることを確認した。

(あいかわらず、docker-compose.yml も Dockerfile も、よく分かっていないが、トライアンドエラーで何とかしている)

以上

=====

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose ps

xxxxxxx_ride_hailing_go_app_1 ./main Exit 1
xxxxxxx_ride_hailing_go_data_1 sh Exit 0
xxxxxxx_ride_hailing_go_db_1 docker-entrypoint.sh postgres Exit 1
xxxxxxx_ride_hailing_go_nginx_1 nginx -g daemon off; Up 0.0.0.0:80->80/tcp
xxxxxxx_ride_hailing_go_tile38_1 tile38-server -d /data Up 0.0.0.0:19851->9851/tcp
xxxxxxx_ride_hailing_go_tile38_data_1 sh Exit 0

となって、DBがどうしても動いてくれない問題発生。手動で起動を試みてみたら、こうなった。

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker start -a xxxxxxx_ride_hailing_go_db_1
Error: Database is uninitialized and superuser password is not specified.
You must specify POSTGRES_PASSWORD to a non-empty value for the
superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run".

You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all
connections without a password. This is not recommended.

See PostgreSQL documentation about "trust":
https://www.postgresql.org/docs/current/auth-trust.html

そこで、PostgresのDockerImageに変更があって起動ができなくなった話 を参照させて頂き、docker-compose.yml に

  POSTGRES_HOST_AUTH_METHOD: 'trust'
  POSTGRES_PASSWORD: 'postgres'

を追加して、

  db:
    image:  postgis-pgrouting:latest
    environment:
      POSTGRES_HOST_AUTH_METHOD: 'trust'
      POSTGRES_PASSWORD: 'postgres'
    build:
      context: docker/postgis-pgrouting
    expose:
      - "5432"
    ports:
      - "15432:5432"
    volumes:
      - data
      - ./:/xxxxxxx_ride_hailing_go
  data:
    image:  busybox
    volumes:
      - "/data/db"

のようにしてみて、再度 docker rmでコンテナ潰しておき、$ docker-compose build $ docker-compose up -d で、(さらに上手く動かない場合は) docker-compose restartを実施してみたら

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose restart
Restarting xxxxxxx_ride_hailing_go_nginx_1       ... done                                                                                                                                                              Restarting xxxxxxx_ride_hailing_go_app_1         ... done                                                                                                                                                              Restarting xxxxxxx_ride_hailing_go_data_1        ... done                                                                                                                                                              Restarting xxxxxxx_ride_hailing_go_tile38_data_1 ... done                                                                                                                                                              Restarting xxxxxxx_ride_hailing_go_db_1          ... done                                                                                                                                                              Restarting xxxxxxx_ride_hailing_go_tile38_1      ... done                                                                                                                                                              
C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose ps
                Name                               Command              State             Ports
--------------------------------------------------------------------------------------------------------
xxxxxxx_ride_hailing_go_app_1           ./main                          Exit 1
xxxxxxx_ride_hailing_go_data_1          sh                              Exit 0
xxxxxxx_ride_hailing_go_db_1            docker-entrypoint.sh postgres   Up       0.0.0.0:15432->5432/tcp
xxxxxxx_ride_hailing_go_nginx_1         nginx -g daemon off;            Up       0.0.0.0:80->80/tcp
xxxxxxx_ride_hailing_go_tile38_1        tile38-server -d /data          Up       0.0.0.0:19851->9851/tcp
xxxxxxx_ride_hailing_go_tile38_data_1   sh                              Exit 0

となり、xxxxxxx_ride_hailing_go_db_1 docker-entrypoint.sh postgres Up 0.0.0.0:15432->5432/tcp を確認できるようになるに至った。

docker-compose run db psql -h db -U postgres -d gis -c 'CREATE EXTENSION pgrouting CASCADE; CREATE EXTENSION hstore;' で失敗した

失敗のメッセージはこんな感じ

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose run db psql -h db -U postgres -d gis -c 'CREATE EXTENSION pgrouting CASCADE; CREATE EXTENSION hstore;'
psql: warning: extra command-line argument "EXTENSION" ignored
psql: warning: extra command-line argument "pgrouting" ignored
psql: warning: extra command-line argument "CASCADE;" ignored
psql: warning: extra command-line argument "CREATE" ignored
psql: warning: extra command-line argument "EXTENSION" ignored
psql: warning: extra command-line argument "hstore;'" ignored
ERROR: unterminated quoted string at or near "'CREATE"
LINE 1: 'CREATE

ので、pgAdminで、xxxxxxx_ride_hailing_go のエントリーを作って接続してみたら、一応繋げた。

試しに、C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose run db psql -h db -U postgres をやってみたら、ログインできて、こうなった

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose run db psql -h db -U postgres
psql (12.2 (Debian 12.2-2.pgdg100+1))
Type "help" for help.

postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+------------+------------+-----------------------
gis | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
template0 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)

postgres=# \c gis
You are now connected to database "gis" as user "postgres".
gis=# \dt
Did not find any relations.
gis=#

やっぱり何も入っていないか。

ここから直接、

CREATE EXTENSION pgrouting CASCADE;
CREATE EXTENSION hstore;

を実行したら成功した。

次は、

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose run app migrate -database 'postgres://postgres:@db:5432/gis?sslmode=disable' -path ./repository/postgresql/migrations up
Starting xxxxxxx_ride_hailing_go_tile38_1 … done
Starting xxxxxxx_ride_hailing_go_db_1 … done
error: database: parse 'postgres://postgres:@db:5432/gis?sslmode=disable': first path segment in URL cannot contain colon

うーん、「コロンを消せ」と言われているようだけど、まあ、試してみる

C:\Users\ebata\xxxxxxx_ride_hailing_go>docker-compose run app migrate -database postgres://postgres:@db:5432/gis?sslmode=disable -path ./repository/postgresql/migrations up
Starting xxxxxxx_ride_hailing_go_db_1 … done Starting xxxxxxx_ride_hailing_go_tile38_1 … done 1/u create_administrators (43.041999ms)
2/u create_worlds (84.101398ms)
3/u create_passengers (126.189996ms)
4/u create_services (169.342395ms)
5/u create_bus_stops (237.856592ms)
6/u create_service_bus_stops (277.409391ms)
7/u create_waypoints (320.23459ms)
8/u create_trips (386.509487ms)
9/u add_pickuped_at_to_trips (410.829887ms)
10/u add_dissatisfaction_to_trips (437.705386ms)

通った。(ただ、その後、コンテナの再構築したら「コロンを消せ」のメッセージが出てこなくなった)。


その後、何度http://localhost をしても動かないので、試しに、http://localhost/admin/login から、 admin-0/password でログインできた。

「デモ世界の管理」を選択すると

が出てくるので、「地図表示」を選択すると、例の画面が出てきた。

そういえば、データの生成は、以下のコマンドで。

docker-compose run app go run cmd/dummy_data_generator_concurrent_small/main.go

ああ、疲れた。(これで、ようやく眠れる)

==========

$ cd /path/to/hitachi_ride_hailing_go
$ docker-compose build
# 上記部分が完了するまで、はじめての場合はネットワーク環境により数分かかります
$ docker-compose up -d
$ docker-compose run db createdb -h db -U postgres gis
$ docker-compose run db psql -h db -U postgres -d gis -c 'CREATE EXTENSION pgrouting CASCADE; CREATE EXTENSION hstore;'
$ docker-compose run db psql -h db -U postgres gis < repository/postgresql/data/dump.sql
$ docker-compose run db psql -h db -U postgres -d gis -f repository/postgresql/data/postgis-vt-util.sql
$ docker-compose stop
$ docker-compose start
$ docker-compose run app migrate -database 'postgres://postgres:@db:5432/gis?sslmode=disable' -path ./repository/postgresql/migrations up
$ docker-compose run app go run cmd/dummy_data_generator_concurrent_small/main.go
$ docker-compose stop
$ docker-compose start

Windows10のコマンドプロンプトではなく、MinGW64のシェルを使うと調子がいい

==========

2020/07,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

研究者やエンジニアにとって、「できるかどうかが分からないもの」を作るのは、物凄いストレスがあります。

For researchers and engineers, it is extremely stressful to make "what you can make or not".

なにしろ「分からない」のですから。

Above all, "we can't know to make".

しかし、「できることが分かっている」ものであれば、そのストレスは、1/100以下まで下がります。

However, if you "know what you can do", the stress will drop to less than 1/100.

なぜなら、「苦労の果てにゴールがあることが分かっている」からです。

Because "I know there is a goal at the end of my hard work."

私にしても、すでに開発されている技術の後追いをしたり、それを活用したりすることはできます。

Even I can follow the technology already developed and used it.

もちろん、そこに至る為には、何十回~何百回にも及びトライアンドエラーがあります。

Of course, there are tens to hundreds of trials and errors to get there.

しかし、それは、本人の努力と時間の問題でなんとかなる(ことが多い)ものです。

However, it is (often) manageable with the effort and time of the individual.

-----

加えて、「できるかどうかが分からないもの」は、間違いなく、世間から、過激でネガティブな批判に晒されます。

In addition, "what we don't know if we can do it" is definitely exposed to radical and negative criticism from the public.

そして、多くの場合、この過激でネガティブな批判は、「できるかどうかが分からないもの」に挑戦する人間を潰します。

And in many cases, this radical and negative criticism kills people who try "what we don't know if we can do it".

我が国の場合、どういう訳か、この「できるかどうかが分からないもの」に対して、「敬意」とか「支援」とかいう概念が出てきません。

In Japan, I don't know the reason, however there is no concept of "respect" or "support" for this "what we don't know if we can do it".

「潰す」の一択です。

It is a choice of "crush".

この「陰湿な均一性を尊ぶ我が国の国民性」が、私を含めた日本人の特性です。

This "national character of Japan that respects insidious uniformity" is a characteristic of Japanese people including myself.

そういう挑戦をしている人間を、私達、多くの凡人は『黙って看過する』ことすらできないのです ―― 自分に、1mmも不利益がないにもかかわらず。

Many ordinary people, like us, cannot even "silently overlook" those who are taking on such challenges --- even though we do not have a disadvantage at all.

-----

天才とは何か ――

What is a genius?

これらの、過激でネガティブな批判に「耐えられる」では足りず、「耳を貸さない」「聞こえない」という、

It's not enough to "bear" these radical, negative criticisms, but to "turn a deaf ear" and "not be heard

『そんじょそこらの「狂い方」では足りない、「人間的な感情を喪失するほどの狂い方」をすることができる者をいう』

"A person who is capable of going 'so mad that they lose their human emotions,' not just some 'madness' is not enough.

と、私には思えます。

I think so.

そして、そのような「人間的な感情を喪失するほどの狂い方」は、「幸せな人生」というフレームワークの枠外です。

And such 'so mad that they lose their human emotions' is outside the framework of the "happy life" framework.

-----

ほとんどの人は、「天才」を見ることすらなく、自分の人生を終えます。

Most people end their lives without even seeing the "genius" in them.

私は、これまで、私の認定する「天才」を2人"も"見ました。

I have "seen" two "geniuses" in my lifetime.

これだけでも、私の人生は、かなりラッキーだったと思います。

I've been pretty lucky in my life for this reason.

2020/07,江端さんの忘備録

『天才とそうでない者を分けるものは何か?』

"What separates the geniuses from the non-geniuses?"

私、このネタについては、何度も記載してきました。

I have described this story many times.

■「天才は、自分の天賦の才(天才)に無自覚である」というのが、私の観察結果です。

My observation result is that "Genius is unaware of their genius".

■故に、彼らは、平気で「毎日の練習」だの「継続は力」だの「努力は報われる」だのと言い放ちます。

Therefore, they are confident that they are "everyday practice", "continuation is power" and "effort is rewarded".

■ですので、私は、人に説教垂れる「こと」が嫌いですし、人に説教垂れる「奴」はもっと嫌いです。

So I don't like to give a sermon to others, and don't like a person who give a sermon to me more.

■『致死率"100%"だけど、伝染率"0%"のインフルエンザ病症』

"Influenza disease with a lethal rate of" 100% "and a transmission rate of" 0% ""

-----

基本的には、この考え方、

Basically, this thoght is coming from the topic of

■それは、彼らの一人一人が「狂っている」からです。

Each member of them becomes crazy.

がベースですが、今回は、さらにこの「狂い方」についてお話したいと思います。

Today, I would talk about the "crazy".

-----

(1)原子爆弾は、かなり早い段階で、その基本方式については分っていました。

(1) The basic method of the atomic bomb was known very early on.

(2)しかし、それが実現されるのは、「マンハッタン計画」を待たなければなりませんでした。

(2) However, it had to wait for the "Manhattan Project" to be realized.

(3)そして、広島、長崎への原爆投下後、各国は続々と開発に成功していきました。

(3) After the atomic bombs were dropped on Hiroshima and Nagasaki, each country succeeded in development one after another.

この(1)~(2)の期間と、(2)~(3)の期間に、メチャクチャな差があるのです。

There is a messy difference between this period (1)-(2) and the period (2)-(3).

感じとしては、1/10~1/20の期間です。

As my feeling, it was a period from 1/10 to 1/20.

これは、各国スパイの暗躍や、内通者の存在は確かに大きかったのですが、一番大きいかったことは、

It was true that the spy of each country's spies and the presence of insiders were big reasons, howeer, the biggest thing was

―― 原子爆弾を「作ることができる」という事実

"The fact that we can "make" an atomic bomb"

です。

(続く)

(To be continued)

2020/07,江端さんの技術メモ

石膏ボード 600円 5+1 枚
4x2フォーム 3000円くらい

吸音ざい 910X910 6 = 4500 x 6 27000 → 18000円くらい

防音シート 5885円
https://item.rakuten.co.jp/pialiving/cz-12/?iasid=07rpp_10095___eh-kcng6x35-2p-d8c44078-682d-426b-96ad-33c9bf2dc05f

2020/07,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

我が家では、家族の誰かが嬉しいことがあった場合、その本人が、他の家族に対して

At home, if someone in my family is happy, that person has the right to claim

「(理由を尋ねることなく)本人を褒めること」

"praise her/him" (without asking why)

を請求する権利があります。

to another family member.

また、本人が何か/誰かに怒っている時には、

If someone in my family are angry at something/someone, that person has the right to claim to

「(理由を尋ねることなく)本人に対して『お前が正しい。相手が悪い』と慰めること」

"say 'you are right, your friend is bad"" (without asking why)

を請求する権利もあります。

to another family member.

-----

多くの場合、我々は、正しい分析や評価を欲していません。

In many cases, we don't want the right analysis or assessment.

ただ、"Yes"とだけ言って欲しいだけです。

I just want them to say "Yes".

この権利システムを江端家に導入したのは、何を隠そう、この私です。

It is me who introduced this rights system to the Ebata family.

それはさておき。

That aside.

-----

最近の、"Stay Home"によって、江端家の無線LANの使用率は格段に上っています。

Recently, "Stay Home" has significantly increased the usage rate of Ebata's wireless LAN.

無線LANの不感帯を調べるために、Padにインストールしたアナライザを持って、家中を歩き回って、家族から不満のあるエリアの、通信感度を上げるために、日々、WiFiのリピータの増設を行っています。

In order to investigate the dead zone of wireless LAN, I have an analyzer installed on my Pad, walk around the house. Thanks for my efforts, the number of WiFi repeaters every day are increasing, for deleting areas where my family is dissatisfied.

環境が改善された後、クレームは消えてなくなりますが、感謝の声も聞こえてきません。

After the environment has improved, the claims have disappeared, but no gratitude is heard.

『私への功労に対する、感謝の言葉がない』

"There is no word of gratitude for my service"

というクレームをしたところ、

When I said that,

長女:「この手のインフラは、通信できることが『普通』と思ってしまうので、どうにも感謝の気持ちを忘れがちになって」

Senior daughter: "I feel like being able to communicate is'normal' in this kind of infrastructure, so I tend to forget my appreciation."

彼女はそう言い訳をして、私に一回だけ感謝の言葉を述べました。

She made that excuse and gave me a single thank-you note.

その後は、感謝の言葉を聞いたことはありません。

After that, I never heard the words of gratitude.

-----

皆さん。インフラを守る者に、もっと思いを馳せましょう。

Everyone. Let's think more about those who maintain the infrastructures.

毎日、水を使わせて貰ってありがとう。

Thank you for letting me use water every day.

毎日、電気が使えてありがとう。

Thank you for letting me use electricity every day.

毎日、ガスが使えてありがとう。

Thank you for letting me use gas every day.

毎日、道路/鉄道が使えてありがとう。

Thank you for letting me use the road/railway every day.

朝、起きたら、この感謝の言葉を心の中で唱えましょう。

When you get up in the morning, say this word of thanks in your heart.

もし、これを3日連続して忘れたら ―― 私が、あなたの家の真下にある「活断層」を活性化する"(邪)念"を送りますよ。

If you forget this for three days in a row, I will send you a "(wickedness) trigger" that activates the "Active Fault" in the basement of your house.

2020/07,江端さんの忘備録

「奥方の作った料理に対して、美味しい時には黙っていて、不味い時だけ文句を言う男」が、公に批判されるようになったのは、昭和の終わりころだったように思います。

"A man who keeps quiet about his wife's cooking when it's good and only complains about it when it's bad". It seems to me that it was around the end of the Showa era that such a man began to be publicly criticized.

男は寡黙であるべきである ―― という価値観が、まだ残存していた時代であり、少年期から青年期にかけて、私は辛い目にあってきました。

It was a time when the sense of value that "a man should be silent" still remained. From boyhood to adolescence, I had a hard time.

『口から先に産まれた男』

"A man born before the mouth"

という蔑称で、大人から揶揄(やゆ)されていたものです。

I was scorned by an adult with such a derogatory name.

ただ、私が見ている限り、「寡黙な男のほとんどは『低能』」 ―― とまで言わないものの、インプットされている知識量が圧倒的に少ない様に、見えました。

However, as far as I can see, "most of the silent men are "incompetent"". Even if it was overstated, it seemed that the amount of input knowledge was overwhelmingly small.

つまるところ、私には「勉学や好奇心に決定的に欠けているだけの男」に見えました。

After all, it seemed to me "a man who was decisively lacking in study and curiosity".

-----

「部下の優れた成果に対しては黙っていて、失敗した時にだけ文句を言う上司」は、私が見ている限り、我が国ではデフォルトのようです。

"A boss who is silent about his excellent work and complains only when he fails" seems to be the default in our country, as far as I can see.

日本人は、「優れた成果を褒める」という能力に決定的に欠けている、または、我が国には、「褒め方」の教育プロセスがない様にも思えます。

Japanese people are decisively lacking in the ability to "praise excellent results", or it seems that our country does not have an educational process of "praise".

(続く)

(To be continued)

2020/07,江端さんの忘備録

「シュタインズゲート」に関する私の日記が、検索エンジンで調べるだけでも77件(重複カウントがあるので、40件以上程度)あります。

Just by looking up my diary about "Steins;Gate" in a search engine, there are 77 case(however, considering duplicate there are about 40+ cases).

他にも、アニメに関する日記を多く書いてきました。

I've also written many other diaries about anime.

ところが、日本を代表するアニメ「新世紀エヴァンゲリオン」に関しては、一つも見つけられませんでした。

However, I couldn't find any of Japan's representative anime "Neon Genesis Evangelion".

私は、「新世紀エヴァンゲリオン」が比類なき素晴しいアニメであることには、異義はありません。

Needless to say, "Neon Genesis Evangelion" is an unrivaled and wonderful anime.

しかし、自分でも驚くほど、私はこのアニメには「はまらなかった」です。

But to my surprise, I was "not crazy" for this anime.

-----

自分でも理由が分かっていて ―― 内容が分からない ―― からです。

I know the reason by myself "I cannot understand the content".

まあ、そこが魅力のアニメではあり、その「分からない」に対して、解説で挑戦されている方もも多くいるようです。

Well, that is an attractive anime. It seems that there are many people who are trying to explain the "I don't know" in the commentary.

しかし、課題と問題解決手段を明確にすることを至上主義とする「エンジニアリングアプローチ」をマインドセットされている私にとっては、

However, for me, being in the mindset of an "engineering approach" that is based on the supremacy of defining the problem and the means of solving it,

―― 「新世紀エヴァンゲリオン」は、ストレスの溜るアニメである

"'Neon Genesis Evangelion' is a stressful anime"

とは言えます。

-----

それでも、地上波の「第6話 決戦、第3新東京市」と、「第13話 使徒、侵入」は好きです。

Still, I like the terrestrial "Episode 6 Final Battle, 3rd New Tokyo City" and "Episode 13 Apostles, Invasion".

■第6話については、以前、日本の全電力エネルギー量について、

As for the sixth episode, I have previously discussed the total amount of electricity energy in Japan.

■第13話については、暗号と、コンピュータのクロック同期の考え方について

For Episode 13, I thought about cryptography and the concept of computer clock synchronization.

強い興味と違和感を同時に感じたことを覚えています。

I remember feeling strong interest and discomfort at the same time.

アニメ等の創作物に対して、現実世界(の数値で)のツッコミをするのは「野暮」、というか「マナー違反」と思いますので、これ以上は言及致しません。

I think that it is "stuff" or "violation of manners" in the real world (in terms of numerical values) for creative works such as anime, so I will not mention it further.

-----

最近、第13話に登場するセリフを思い浮べています。

Recently, I have come up with the words that appear in episode 13.

=====

リツコ:「使徒が進化しつづけるのなら、勝算はあります」

Ritsuko: "If the apostles continue to evolve, there is a chance of winning."

ゲンドウ:「進化の促進かね」

Gendou: "Promotion of evolution?"

リツコ:「はい」

Ritsuko: "Yes. That's it"

ゲンドウ:「進化の終着地点は自滅、死、そのものだ」

Gendou: "The end point of evolution is self-destruction, death itself"

冬月:「ならば、進化をこちらで促進させてやればいいわけか」

Fuyutsuki: "So then, we can facilitate the evolution here?

リツコ:「使徒が死の効率的な回避を考えれば、MAGIとの共生を選択するかもしれません」

Ritsuko: "If the Apostle considers the efficient avoidance of death, the Apostle may choose to live in harmony with MAGI.

=====

上記を「使徒→新型コロナウイスル」「MAGI→人類」と置き換えることで、「新型コロナウイルスの未来の姿」が見えるかもしれない ――

"Replacing the above with "Apostle -> New Coronavirus" and "MAGI -> Humanity" may give us a glimpse into the future of the new coronavirus"

という内容のコラムが、近日中にリリースされる予定です。

The column will be released in the near future.