2019,江端さんの忘備録

断酒してから、娘たちが、私の体臭のことをピタリと言わなくなりました。

After having stopped drinking, my daughters no longer talk about my body odor.

アルコールと体臭には何か関係があるのかなと、ちょっと調べてみたら、

When I tried to research about the relationship between alcohol and body odor, I can know

「アルコールは、体臭の原因そのもの」

"Alcohol is the cause of body odor."

ということが分かりました。

-----

高校(か中学?)の時に習ったかと思いますが、基本的に、アルコールは、アセトアルデヒドという有害物質に変換された後、安全な物質である酢酸になります。

When we were in high school (or junior high school?), We learned that alcohol is converted into a safe substance, acetic acid, after being transformed into a harmful substance called acetaldehyde.

アセトアルデヒドは、強烈な臭気を発生しますし、酢酸は「酢」ですので、こちらも強い臭気が出ます。

Acetaldehyde generates a strong odor, and acetic acid, which is "vinegar," also has a strong odor.

つまり、アルコールを摂取することで、アセトアルデヒドや酢酸が、汗に入って体外に排出され、体臭が激しくなる、ということのようです。

In other words, acetaldehyde and acetic acid seem to be sweated and discharged outside the body, and the body odor becomes intense.

もっとも、肝機能が完全であれば、最終的には、無臭の水と二酸化炭素に分解されるはずです。

However, if liver function is complete, it should eventually be broken down into odorless water and carbon dioxide.

つまり、アルコールに起因する体臭の原因は、

After all, I know that the cause of body odor caused by alcohol is

■肝機能の能力を越える大量のアルコールを摂取している

- Taking a large amount of alcohol that exceeds the ability of the liver to function

か、

or

■肝機能が低下している

- Liver function is reduced

ということのようです。

-----

娘から、口臭の指摘も受けていました。

I have also received bad breath from my daughters.

最近は「リステリン」という口内殺菌消臭用の液体で、歯をすすぎ、うがいするようにしています。

Recently, a liquid for sterilization and deodorization called “listerin” has been used to rinse and gargle teeth.

リステリンは、初心者には、かなりキツい液体で、最初のうちは、口の中が燃えるような刺激があります ―― が、そのうち、慣れます。

Listerine is a reasonably complex liquid for beginners. At first, there is a stimulus that burns in your mouth. However, I can get used to it soon.

このように、断酒とリステリンで、現時点では、娘たちの指摘は発生しなくなりました。

In this way, with the cessation of alcohol and listerin, the daughters no longer point out my body odor and bad breath.

-----

ともあれ、JKやJDの娘は、高性能の「体臭用リトマス試験紙」と機能しています。

Anyway, my daughters work as a function of high-performance "Litmus test paper for body odor."

2019,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

「1984」タイプの(スマホ)管理社会は、すでに完成しています。

The "1984" type of smartphone-managed society has already been completed.

国家が国民の情報管理することを心配している人もいるようですが、そんな心配はありません。

It seems that some people are worried that the nation controls the information of the people, but I think there is no problem.

そんなフェーズは、とっくに完了しているのです。

Such a phase has already been completed.

-----

私たちがPCやスマホを手にした時、

When we got a PC or smartphone,

犯罪者が、監視カメラによって、追跡され、逮捕されることに、私達が疑問を感じなくなった時、

when we no longer have questions about criminals being tracked and arrested by surveillance cameras,

私達は、社会に対して、自分の個人情報の開示を、暗黙的に許諾したのです。

we have implicitly permitted society to disclose our personal information.

この監視社会は、私達が選択した社会です。

This surveillance society is the one we have chosen.

そして、私達はPCやスマホを前提としない社会に、戻ることはできないのです。

And we cannot return to a society that does not assume PCs or smartphones.

-----

どうせ戻れないのであれば、公の場で犯罪行為を行う「痴漢」というやつの人生を「台無し」にしてやる方向で、動き始めませんか?

If we cannot return, why not start moving in a direction that we destroy the life of "molest" who commits criminal acts in public?

公の機関(政府、地方自治体)は、このような「性犯罪者を監視する」を名目としたシステムを作ることはできません。

Public institutions (government, local government) cannot create such a system for "monitoring sex offenders" because of human rights issues.

実際のところ、警察がやっているのは、鉄道会社や、小売店舗、公園などの画像を手に入れて、犯罪者を特定することです(まあ、ツールくらいは使っているでしょうが)。

In fact, what the police are doing is getting images of railroad companies, retail stores, parks, etc. to identify criminals (well, maybe you use tools).

公の機関ができないなら、私達が独自に動けば良いのです。

If there is no public institution, we can move on our own.

つまり、痴漢行為を行っている人間を、数十人から百人のスマホで撮影することを、「是」とする社会通念の確立です。

In other words, it is the establishment of social wisdom that monitors dozens or hundreds of smartphones of persons who are performing molestation.

----

これは、"正義"の名を冠した"集団暴力"です。

This is "collective violence" bearing the name of "justice."

こういう集団的行動が、ファシズムの台頭を許し、自由な言論社会を破壊し、そして、実際に行われたレッドパージ(赤狩り)のような狂った社会を許してしまったことを、私はよく知っています。

I know well, that such collective action had forgiven the rise of fascism, destroy free speech society, and red purge in a crazy society.

こういう集団暴力を、私はたくさん知っています。

I know a lot of this kind of collective violence.

このような社会通念が、私たちを今よりも更に息苦しい社会を作ることも、知っています。

I know that this kind of social wisdom can make us even more stuffy.

-----

しかし ―― 私の娘に痴漢行為を働いた奴の人生を壊滅させる為なら、

However, in order to destroy the life of the guy who worked molesting my daughter, I think that it is

「概ね妥当なコスト」

"Generally reasonable cost"

であると、私は思っています。

2019,江端さんの忘備録

最近、芸能人の禁止薬物摂取による逮捕のニュースが続いています。

Recently, news of arrests due to celebrity drug intake continues.

私も、早朝不眠時には、安定剤を摂取していますので、

I also take stabilizers in the early morning for insomnia,

「クスリづけ」

"drug dependence"

と言っても良いと思います。

I can accept the above words.

-----

しかし、ちゃんと寝られる日は、安定剤は全く必要ありません。

However, I don't need the stabilizer when I can sleep properly.

薬物常用者や中毒者の言う『"クスリ"の事しか考えられなくなる』ということはありません。

I have no experiment that "thinking about "drag" all day" by drug addicts.

-----

21歳の時、9ヶ月だけ吸っていたタバコを止めた時は、最初の2週間はかなり辛かったですが、その後は、あまり辛かったという記憶はありません。

I stopped smoking for nine months when I was 21 years old. It was pretty hard for the first two weeks, but I don't remember it was tough after that.

むしろ、問題はアルコールです。

Rather, the problem is alcohol.

現在、私は断酒中ですが、断酒直後はかなり辛かったですし、仕事が立て込んできたときなどは特に辛く、今でも、スーパーのリカーコーナーを通過するのは辛いです。

Now I stop drinking at all. However, it was very hard right after I stopped drinking, especially when working hard. Even now, going through the supermarket's liquor corner is hard.

(断酒ついては、「ノンアルコールビール」の存在は、相当に大きいです)

(For stop drinking, the existence of "non-alcoholic beer" is quite large)

-----

酒を楽しめない人生は、人生の半分を損している ―― てなことを言う輩(やから)がいます。

"A life you can't enjoy liquor is losing half of your life" --- some persons said that.

この場で、この私がはっきり断言しましょう。

Let me make a clear statement here.

これは「真実」です。

This is "truth."

酒を楽しめない人生は、本当につまらないし、辛い。

Life without drinking is boring and painful.

夏に「枝豆にビール」、冬に「鍋に熱燗」。

"Beer and green soybeans" in summer and "hot sake and hot pot" in winter.

この組み合わせの楽しめない人生に、一体、どんな価値があるでしょう。

What is the value of this unfortunate life?

それでも、なお、私が、断酒に踏み切ったのは、断酒によるメリットが大きかったらです。

Still, the reason why I decided to stop drinking has a lot of benefits.

その話はいずれまた。

The story will come soon.

-----

アルコールでさえ、こんな感じです。

Even alcohol is like this.

ましてや「"クスリ"漬け」の人にとって、クスリを断つことは、本当に辛いのだろうと、推測されます。

Even more so, for a person with "drug dependence," I think it would be excruciating.

特に、精神的に追いつめられた時に、"クスリ"に手が出てしまうことは、容易に想像できます。

In particular, it is easy to imagine that when they are under a lot of emotional pressure, they restart "drugs" again.

『"クスリ"の事しか考えられなくなる』日々は ―― 多分、地獄なのでしょう。

The days of "thinking about drugs all day" are probably hell.

-----

やはり、同じ"クスリ漬け"であっても、安定剤や、睡眠薬程度がいいと思います。

After all, even for the same "drug dependence," I think a stabilizer and a sleeping pill are good.

私は、上手く眠ることさえできれば、次の日は、もう、それだけで幸せ一杯です。

When I can sleep well, I will be happy the next day.

江端さんの技術メモ

11月23日 17:00ー

  • 1.背景
    • 11月23日17:00より通信系の改修を行うが、これまで一部の成功に目を取られ、全体を通じた実験を行わなかった為に、出戻りが大量に発生した、と考えている
    • このような再発を防止する為、全体を網羅するチェックリストを作成し、チェック漏れを防ぎ、全体の進行イメージを共有す
  • 2.目的
    • 「動くハズ」は全て棄却。4台の全部で目的の機能を発揮していることを確認する
      • (1)位置情報と乗客数の情報が、AGISに上っていることを確認する
      • (2)DBに乗降情報が正しく反映されていることを確認する
      • (3)自動車等を動かして、上記(1)(2)が正しく実施されていることを確認する
  • 3.事前準備
    • (0)装備
      • 完全冬装備+雨装備
      • 食料、飲料水は各自で調達
      • パソコン等の機材
      • SDカードリードライタ
      • スマホ
    • (1)配置
      • 開発チーム
        • 開発チームは事務所の中から、自動車およびカートの無線LANにアクセスして、確認およびデバッグを行う
      • 操作チーム
        • 操作チームは、自動車の中で、開発チームの支持を受けて、カートの操作を行う
      • 検証チーム
        • 検証チームは、AGISの内容をチェックし続ける
    • (2)チーム間連絡
      • 開発チームと操作チームは、携帯電話で連絡を取り合って、操作タイミングを合わせる
    • (3)その他
      • 休憩は各自が独自の判断で行う
  • 4.チェック項目
    • (0)準備段階
      • DSの試運転を実施したか(江端)
        • 実施した
      • CTの運転は実施したか(江端)
        • 夜間運転は危険なので取り下げ
      • SDカードのバックアップは取ったか
        • 3台完了
        • YHの20日改造バージョンだけが間に合わなかった
        • 22日の運用後に作成する
    • (1)実験前のチェック
      • ■「DBに乗降状態が全く反映されないメールが送付されてくる」という問題がある
        • 本日と昨日のDBの記載内容を確認する
        • DBの記載が性格であればメールのプログラムを確認する
        • この問題が解決していない場合、自動車等を使った実験は実施しない
      • ■ラズパイがGPS情報を取得できなかった場合、その理由を記載するDBまたはログの記載は正しく表示されているかを確認する
        • この問題が解決しない場合、自動車等を使った実験は実施しない
    • (2)1台目実験(D1号機)
      • (a)自動車静止状態
        • ■ラズパイのGPS取得は確認したか
          • この状態でもみちびきGPSの値はゆらぐので、GPS情報が全く同じになることはない
          • GPS情報はA-GISに反映されているか
        • ■乗降状態は正しくDBに反映されているか
          • 乗降状態は、実際に車の中のタブレットを使って実施する
          • 全部のDBの内容をチェック
        • ■GPSと乗降状態をA-GISは反映しているか
      • (b)自動車移動状態
        • ■ラズパイのGPS取得は確認したか(同上)
        • ■乗降状態は正しくDBに反映されているか(同上)
        • ■GPSと乗降状態をA-GISは反映しているか(同上)
    • (3)2台目実験(D2号機)
      • (a)自動車静止状態(同上)
      • (b)自動車移動状態(同上)
    • (4)3台目実験((Y1号機)
      • (a)自動車静止状態(同上)
        • 移動実験は行わず、GPS情報のゆらぎで代替とする
    • (5)4台目実験((Y2号機)
      • 同上
  • 以上

2019,江端さんの忘備録

十数年前、私はフィールド(屋外)での無線を使った実証実験システムで、開発チームのリーダをやっていました。

About ten years ago, I was a development team leader of an experimental system in an outdoor field.

その時、

At that time,

―― 屋外実験において、無線通信に手を出してはならない

"I never touch "wireless communication" in any outdoor experiment.

というフレーズを自らの人生訓としました。

has been my motto.

■設置場所によって通信に失敗し、

- communications were going down in some quarters,

■原因不明のシステム障害が発生し、

- some unknown system failures happened,

■飛んでいる電波の電文内容が読めなくなる、

- broken characters were inserted in communication messages

して、システム障害の要件を特定できないからです。

Anyway I could not fix the reason for the system failures of "wireless"

-----

無線は非常に役に立つものです。

I know that "wireless" is useful.

それはスマホを見れば明らかです。

It's clear if you look at your smartphone.

しかし、それは、キャリア(通信インフラ会社)が、

However, this is a result that carries(telephone companies) have invested some resources about

■10年に及ぶ期間と、

- more than ten years,

■万の単位の技術者と、

- tens of thousands of engineers,

■兆の単位のお金と、

- some trillion yen of money,

を投入した結果のものです。

数週間程度の期間と、数人のエンジニアを投入しただけのシステムとは、投入コストが違います。

The input cost is different from a cost of several weeks and only a few engineers.

-----

―― 屋外実験において、無線通信に手を出してはならない

"I never touch "wireless communication" in any outdoor experiment.

私の人生の三大教訓の一つであったはずの、こんな大切なことを、なぜ、私は、忘れてしまったのだろうか?

Why have I forgotten such an important thing that should have been one of the three lessons of my life?

今、私は、大型ディスプレイに表示された、カーネルパニックの表示内容(内容は意味不明)の前で、ただ青冷めながら、呆然と立ちすくんでいます。

Now, I'm standing stunningly pale in front of the large display that shows kernel panic messages (I don't understand the content).

(ちなみに、江端家のセキュリティシステムは、「無線を絶対的に信じない」という思想の上に成り立っています)

(By the way, the security system of the Ebatas is based on the idea of "never believing in radio absolutely")

2019,江端さんの忘備録

お酒を飲むのを止めてから、初めて気がついたのですが、

I first noticed after I stopped drinking,

―― 我が国は、世界に冠たるアルコール大国

"Japan is the world's leading alcoholic power."

です。

あんなに度数の高い酎ハイが、ジュースや牛乳より安い値段で購入できます。

We can get chuuhai(shochu mixed with soda water) with high alcohol content at a lower price than juice and milk.

それも、かなり安くて美味しく、今も新商品が開発され続けられています。

It is also relatively cheap and delicious, and new products are still being developed.

ビール、日本酒、ウイスキーも、(近くにコンビニ等があれば)、思い立ったら10分以内で購入可能状態です。

Beer, sake, and whiskey (near a convenience store) are available for purchase within 10 minutes.

私、以前は海外にもよく出張していましたが、こんなにアルコールに寛容な国は、見たことがありません。

I used to travel abroad often, but I have never seen such a free-drink (× drink-free) country.

----

飲酒を嗜む人にとっては、我が国は「天国」ですが ―― 断酒中の人間にとっては、「地獄」と言えます。

For those who like drinking, Japan is "heaven", however for those who have stopped drinking, our country is "hell".

断酒中の私がそう言っているのだから、間違いありません。

There is no doubt that I'm saying who has stopped drinking.

「コンビニの大きな一角が、あらゆる種類のアルコール飲料で占拠されている」という事実は、私にとっては、結構な「拷問」です。

The fact that "a big corner of a convenience store is occupied with all kinds of alcoholic beverages" is a pretty "torture" for me.

私は、

However, I have no intention to claim

『コンビニは、酒類の販売を、煙草と同様にカウンターの奥に設置しろ』

"Convenience stores should install alcoholic beverages at the back of the counter, just like tobacco."

とか、

or

『エロ本と同様に、酒類の販売も禁止としろ』

"Like selling erotic books, prohibit the sale of alcoholic beverages."

などと、言うつもりはありません ―― それは、あまりにも図々しい言い分です。

I think that that's too impressive.

-----

世紀の悪法と言われた、米国の「禁酒法」は、結果として、闇酒を製造販売するマフィアを巨大化させて(アル・カポネ等)、社会秩序を大混乱させました。

The "prohibition law" in the United States, said to be a bad law of the century, as a result, made the mafia, which manufactures and sells dark sake, huge (Al Capone, etc.), and the social order was disrupted.

これらの嗜好品を"0"か"1"のような取扱をすると、事態を悪化させる、という良い例です。

This is a good example of how handling luxury items like "0" or "1" can make things worse.

とは言え、私は、日本のこのアルコール販売の環境が、かなり効果的に、アルコール中毒者やアルコール依存症患者を大量生産しているのだろうなぁ、とは思っています。

However, I think that this alcohol sales environment in Japan is quite effective in mass-producing alcoholic people.

2019,江端さんの忘備録

本日は、コラムがリリースされた日なので、日記はお休みです。

My new column is released today, so I am taking a day off.

江端さんのDIY奮闘記 介護地獄に安らぎを与える“自力救済的IT”の作り方(2):

それでも介護ITを回してみせる ~国内ユーザー5人の見守りシステムができるまで

Mr. Ebata's struggling for DIY IT Nursing Support System(1)."

Still, I work this system just for five domestic users.

-----

今回の「見守りシステム」の話を、以前、技術専門書の編集者の方に相談してみたところ、『今更、ラズパイの映像システムは、技術記事としては価値がないです』とはっきり言われました。

When I talked with the editor of a technical specialist book about the story of this "watching system," I was told that "The system of Raspberry Pi is not worthy of a technical article."

私も「そうでしょうね」と応えました

I also responded with, "I guess so."

ネタとしては古すぎるし、実際、今回のコラムの内容程度の「技術」の話であれば、本屋を歩けば、2~3冊ほど目にします(ラズパイ専門誌には必ず記載されているくらい)。

It's too old as a technical issue, and it is easy to find the same story in books at bookstores (They are typical stories in the Raspberry Pi magazine).

ですので、今回は「技術」は前面に出さずに、システムの構築のドタバタ劇の方を、時系列で記載してみました。

Therefore, this time, without talking about "technology," I tried to describe the slapstick play of system construction on a "time chart" basis.

-----

ところで、今回、私が嫁さんの実家に構築したシステムは、目的は達成できませんでしたが、別の課題を残してくれました。

By the way, this time, the system I built in my wife's parents' house did not achieve its purpose but left another problem.

それは、嫁さんと長女の二人が、義母の見舞いと他の手続で、嫁さんの実家に戻っていた時のことです。

That was when my wife and the eldest daughter returned to their parent's home to visit my mother-in-law for other procedures.

電話がかかってきて、嫁さんに言われました。

I got a phone call, and my wife told me.

嫁さん:「私達が、この家に滞在している最中は、システムを停止して」

Wife: "While we are staying at this house, stop the system"

江端:「見ていないよ」

Ebata: "I haven't watched you"

それに、私以外の人間は、システムを使うことはできない設定になっていました。

In addition, it was installed so that people could not use the system.

嫁さん:「いいから、とにかく止めて」

Wife: "Stop it anyway"

と、言われました。

まあ、止めることは簡単でしたので、数個のコマンドを打ち込んで、システムを停止し、その旨を嫁さんに伝えました。

It was easy to stop, so I entered a few commands, stopped the system, and told my wife about it.

(続く)

(To be continued)

2019,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

我が家では、娘が、仕事中の私の書斎に入ってきて、「相談ごと」を持ちかけくることがあります。

My daughters sometimes ask me to listen to their problem, even when I am working in my room.

相談ごと、といっても「金の無心」とかではありません。

The "problem" is not beg me for money.

私は、『お前に渡す金があれば、私は、RTKシステム用の送受信機を購入する』と言い放って、かつ、その通りに実施してきた人間です。

In my case, I always say "I will buy TX and RX devices of RTK system, even if I have money for you", and actually I have done it.

ですので、娘たちは、私に、そういう相談はしてきません。

So they don't approach me with such a problem.

------

ところで、ちょっと話はズレますが。

Changing the subject,

次女に聞いたところでは、『娘にプレゼントに欲しいものを尋ねて、それを買い与える』という奇特な父親がいるそうです。

In the world, there are some strange fathers who "ask their daughter what she wants as a present, and buy and give it to her "

私は100回生まれ変わっても、そういう父親になることは、期待できそうにありません。

Even if I get reincarnated 100 times, I will not be able to be such a father.

私の場合、「安全」「教育」「自己啓発」「トラブル」以外については、

My basic policy is "fight and get what you want by your own"

『自力で闘って、奪い取ってこい』

except for "safety","education", "self-development" and "troubles"

が基本方針です。

閑話休題。

to return.

-----

娘の相談ごとは、「キューバ危機」「文化大革命」「デザイナーズベイビー」のような具体的なネタが多いようです。

My daughter's problems are relatively practical topics, for example "Cuban Crisis", "Proletarian Cultural Revolution" and "designer child".

条件によっては、娘の宿題のレポートの代筆をすることもあります。

If conditions permitted, I will write a report of homework for her.

私は娘に、手提げ袋(ブランドバックとも言う)なんぞに、1円も出すつもりはありません ―― が、

I don't intent to pay for briefcase (called "branded goods") at all, however,

無茶な量の宿題を、無茶な締切で命じてくる、パワハラ教師に対しては、娘と『共闘』できます。

I can struggle jointly against a power harassment of teachers, who order a homework of nonsense mount and deadline.

―― 「プロの研究員のレポート」を、その教師のツラに叩きつけてこい!

"Slap the teacher in the face by "the report written by a professional research engineer""

と言って、レポートを娘に手渡します。

and, I hand the report to her.

この他には、「進路」とか「ライフスタイル」のような、抽象的な相談を受けることがあります。

I am also asked by her to discuss abstract issues like, "career options" or "life style"

私は、この手の相談に対しても、できるだけ具体例で語ることにしています ―― 自分の経験の範囲内で、ですが。

According to these case, I will tell her operative examples, which are, of course, within my previous experiments.

(続く)

(To be continued)

2019,江端さんの忘備録

(昨日の続きです)

(Continuation from yesterday)

しかし、信仰者側には、その説明をする責任 ―― 立証責任 ―― はないのです。

However, the believer has no responsibility to explain it. It is "burden of proof".

立証責任とは、「その証明によって利益を得る側にその説明の義務が発生する」という、基本原則です。

A burden of proof is a basic principle that "the proof will be obliged to explain to the profitable party."

考えてみれば、これは、あたりまえです ―― 『利益を得る者が、汗をかく』のは当然です。

Thinking of it, it is natural that "a peron who break a sweat, will get profit"

しかし、この原則を知らない人が、世の中には驚く程沢山います。

However, there are surprisingly many people who do not know this principle.

-----

信仰者側は、神(の存在や機能)を「信じる」だけで良く、「立証責任」はありません。

The believer only needs to "believe" God (the existence and function), not the burden of proof.

逆に、非信仰者(つまり私)、すなわち、神の存在、または、神の機能を否定したい側に、その否定を証明する責任 ―― 『ないことを証明する』 ―― いわゆる、"悪魔の証明"の義務が発生します。

Conversely, non-believers who want to deny the existence of God or the function of God, will be obliged to prove their denial. That is so-called "demon proof".

これが、有史以来この不毛な議論が終わらない理由です。

This is why this barren debate has not ended since history.

非信仰者側(つまり私)は『神は存在しないと仮定すると、上記の理不尽や不条理をキレイに説明できる』とは言えます。

The non-believers (like me) can say, that "assuming that God does not exist, I can explain the above-mentioned unreasonableness and absurdity neatly".

しかし、しょせん、これは仮説です。

But this is just a hypothesis.

この程度の仮説では、『神の不存在の証明』には、遠く及ばないのです。

This level of hypothesis is far from being a "proof of the absence of God".

-----

話は変わります。

Let me change a subject.

学生の頃、ある女性から相談を受けたことがあります。

When I was a student, I was consulted by a female friend.

■友人(女性)が、明らかに"悪い男"と付き合っていて、『付き合うのをやめたほうがいい』と言い聞かせてるるのだけど、まったく話を聞こうとしない

"A friend (female) is clearly dating a "bad man", and I am telling her to "stop from dating", but she never hear me"

■『あなたは、彼のことを誤解している』と言い張って、誰の言うことも聞かなくなっている

"She said "you misunderstand him" and she have never heard anyone"

■どうしたらいいだろうか?

"What should I do?"

この相談に対して、私は以下の通りに答えました。

In response to this consultation, I answered as follows.

『残念だが、何もできないだろうと思う。"信仰"は理屈ではないから』

"I am sorry but I think that you can't do anything. "Faith" is not logical"

-----

私には「神の不存在証明」はできません。

I can't do "proof of the absence of God".

しかし、上記の話は「"信仰"の本質」を上手く説明できているのではないか、と、自負しております。

However, I am proud that the above story is a good explanation of the "essence of faith".

2019,江端さんの技術メモ

/*
  g++ -g specific_skill2.cpp -o specific_skill2
*/

/*

*/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h> 



typedef struct person{
  int age;
  int type1_lifetime;  // 1号の残り時間
  int retirement_age; // 65歳で引退

  ///////////
  struct person *prev;  /* 前の構造体を示すポインタ */
  struct person *next;  /* 次の構造体を示すポインタ */ 

} PERSON;


int int_max(int a, int b)
{
  if (a < b) 
	return b;
  else 
	return a;
}



PERSON *p_first_person, *p_last_person;  

void init_person_list(PERSON **p_first_person, PERSON **p_last_person)
{
  PERSON *p_top_person = (PERSON *)malloc(sizeof(PERSON));
  if(p_top_person == NULL) {
	printf("メモリが確保できません\n");
	exit(EXIT_FAILURE);
  }
  memset(p_top_person, 0, sizeof(PERSON)); // ゼロクリア


  PERSON *p_tail_person = (PERSON *)malloc(sizeof(PERSON));
  if(p_tail_person == NULL) {
	printf("メモリが確保できません\n");
	exit(EXIT_FAILURE);
  }
  memset(p_tail_person, 0, sizeof(PERSON)); // ゼロクリア

  *p_first_person = p_top_person;
  *p_last_person = p_tail_person;

  (*p_first_person)->prev = NULL;
  (*p_last_person)->next = NULL;
  (*p_first_person)->next = (*p_last_person);
  (*p_last_person)->prev = (*p_first_person);

  return;
}

void add_person(PERSON *p_ref_person)
{

  PERSON *new_p_person = (PERSON *)malloc(sizeof(PERSON));
  if(new_p_person == NULL) {
	printf("メモリが確保できません\n");
	exit(EXIT_FAILURE);
  }
  memset(new_p_person, 0, sizeof(PERSON)); // ゼロクリア
  memcpy(new_p_person, p_ref_person, sizeof(PERSON)); // 引数の動的メモリの内容コピー
 
  // personの追加属性記述ここから
 
  // personの追加属性記述ここまで

  PERSON *p_person = p_last_person->prev;

  p_person->next = new_p_person;
  new_p_person->prev = p_person;

  p_last_person->prev = new_p_person;
  new_p_person->next = p_last_person;

  return;
}

void delete_person(PERSON *p_person)  
{
  // ポインタを貼り替えて
  p_person->prev->next = p_person->next;
  p_person->next->prev = p_person->prev;
  
  // そのメモリを解放する
  free(p_person);

  return;

}

int type1(int k){
  int number = 40000 + 4000 * (k - 2019);
  if (number > 60000){
	number = 60000;
  }
  return number;
}

// 2.1.1 C言語のrand関数を用いた方法
double Uniform( void ){
    return ((double)rand()+1.0)/((double)RAND_MAX+2.0);
}

// 3.3. 正規分布・ガウス分布 (Normal Distribution)
double rand_normal( double mu, double sigma ){
  double z=sqrt( -2.0*log(Uniform()) ) * sin( 2.0*M_PI*Uniform() );
  return mu + sigma*z;
} 


int main()
{
  srand(13);

  // 社員格納用リストの作成
  init_person_list(&p_first_person, &p_last_person); 

  int pass1_number;

  for (int i = 2019; i < 2080; i++){
  // for (int i = 2019; i < 2200; i++){
	// 1号試験パス者の生成
	pass1_number = type1(i);

	for (int k = 0; k < pass1_number; k++){
	  PERSON person;
	  person.age = int_max((int)rand_normal(26.0, 3.5), 18); // 18歳以下は応募できない
	  // printf("person.age = %d\n",person.age);
	  person.type1_lifetime = 5;
	  person.retirement_age = 65;
	  
	  add_person(&person);
	} // for (int k = 0, k < type1(k); k++)
	// 1号試験パス者の生成(ここまで)

    // ===== PERSON ループを回す========
    PERSON* p_person = p_first_person->next;  
    while (p_person != p_last_person){
	  
	  // 1号 強制帰国
	  if (p_person->type1_lifetime == 0){  // 5年を使い果した
		if (Uniform() <= 0.4){   // 2号合格率 40%
		  p_person->type1_lifetime = -1;  // 免責フラグ
		}
		else{
		  PERSON* p_person_prev = p_person->prev;
		  delete_person(p_person);
		  p_person = p_person_prev;
		}
	  }
	  
	  if (p_person->age > 65){  // 65歳以上になったら、強制帰国
		PERSON* p_person_prev = p_person->prev;
		delete_person(p_person);
		p_person = p_person_prev;
	  }

	  // 次のループに回る
	  p_person = p_person->next;
	}

    p_person = p_first_person->next;  
    while (p_person != p_last_person){

	  // 1号 強制帰国を迎えるまでのタイムリミットを減らす
	  if (p_person->type1_lifetime != -1){
		p_person->type1_lifetime -= 1;
	  }

	  // 全員の年齢の加算
	  p_person->age += 1;

	  // 次のループに回る
	  p_person = p_person->next;
	}


	int type1_person_count = 0;
	int type2_person_count = 0;
    p_person = p_first_person->next;  
    while (p_person != p_last_person){

	  if (p_person->type1_lifetime != -1)
		type1_person_count += 1;
	  else
		type2_person_count += 1;		

	  p_person = p_person->next;
	}

	//printf("i:%d, type1:%d, type2:%d\n", i, type1_person_count, type2_person_count);
	printf("%d, %d, %d, %d\n", 
		   i, 
		   type1_person_count, 
		   type2_person_count,
		   type1_person_count + type2_person_count);


  }//   for (int i = 2019; i < 2100; i++){

  return 0;
}