2024,江端さんの忘備録

最近、次女が、就活の為にリモートでの説明会に参加しているようです。

Recently, my second daughter has been attending remote information sessions for job hunting.

次女はリビングでパソコンを開くことがあるので、食事の時間にバッティングした時は、私は自室に食事を持ち込んで食べています。

She sometimes opens the computer in the living room, so when it butts up with meal times, I bring my meals into my room to eat.

で、まあ、その間、ちょっと説明会の内容が耳に入ってくるのですが、

And, well, in the meantime, I'm hearing a bit of a presentation,

―― いいなぁ、そんなに夢のある会社なら、私もそこに再就職したいなぁ

"I envy you. If it's such a dream company, I wish to work at the company again."

と思うことがあります。

I sometimes think that.

-----

就活生や企業のリクルート担当の方には申し訳ありませんが、これまでの私の人生を返り見るに、

With apologies to job hunters and corporate recruiters, but looking back over my life so far, I'm sorry to say this, but in my life,

『そんな夢のある会社』は、大抵の場合『夢があるだけ』ということが多い。

I've found that most of the time, the "dream companies" are just dreams.

企業説明会というのは、いわゆる『合コン』です。

A company information session is what we call a "blind date.

『夢があるだけ』の男や女の無責任な発表会場の延長 ―― と考えるのが妥当でしょう。

It is reasonable to consider it an extension of the irresponsible presentation halls of men and women who "only have dreams" -- a place for irresponsible presentations.

長く仕事を続けたいのであれば、過度な夢を持たないことが大切です。

If you want to keep your job for a long time, it is crucial not to dream excessively.

―― 私たちは、自分の人生を自分でコントロールできない

 

2024,江端さんの技術メモ

VSCode の Auto Markdownで目次や章番号が出てこなくなったら、とにかく、拡張機能の全部にチェックをつける

未分類

このプログラムでは、緯度・経度の位置情報から距離の計算を行わずに補完を行っていますが、これは私の意図したものではありません。

下記のsmall_bus_data.csvのデータを使って、私が作って欲しいプログラムのアルゴリズムを説明します。

現在1番目のデータには、12:55:00の時刻情報が入っており、30番目のデータには、13:00:00の時刻情報が入っています。
つまり、この間には、300秒の時間が経過していることになります。

次に、1番目の緯度経度と2番目の緯度経度から距離(メートル)が算出できます。
次に、2番目の緯度経度と3番目の緯度経度から距離(メートル)が算出できます。
最後に、29番目の緯度経度と30番目の緯度経度から距離(メートル)が算出できます。
これらを合計すると、合計移動距離(メートル)が算出できます。
この合計移動距離を、前述の300秒で割ると、平均の秒速が算出できます。
この秒速を使って、現在、時間情報が入っていない、2、3、4、.... 29番目の時刻が算出できますので、それを表示して下さい。

同じように、
現在30番目のデータには、13:00:00の時刻情報が入っており、39番目のデータには、13:02:00の時刻情報が入っています。
つまり、この間には、120秒の時間が経過していることになります。

次に、30番目の緯度経度と31番目の緯度経度から距離(メートル)が算出できます。
次に、31番目の緯度経度と32番目の緯度経度から距離(メートル)が算出できます。
最後に、38番目の緯度経度と39番目の緯度経度から距離(メートル)が算出できます。
これらを合計すると、合計移動距離(メートル)が算出できます。
この合計移動距離を、前述の300秒で割ると、平均の秒速が算出できます。
この秒速を使って、現在、時間情報が入っていない、30、31、.... 38番目の時刻が算出できますので、それを表示して下さい。

以下のsmall_bus_data.csvの時間情報は以下の通りです。

====== small_bus_data.csv ここから =========

1, 93, 139.62957005198, 35.36604342344, 12:55:00
2, 94, 139.62977593991, 35.36605145489,
3, 95, 139.62975577321, 35.36614821472,
(中略)
28, 180, 139.6225614208, 35.36578048832,
29, 178, 139.62231637196, 35.36565733887,
30, 179, 139.62231637196, 35.36565733887, 13:00:00
31, 178, 139.62231637196, 35.36565733887,
(中略)
38, 122, 139.62212431581, 35.36739269906,
39, 123, 139.62186543167, 35.36793117811, 13:02:00

====== small_bus_data.csv ここまで =========

まあ、それでも、私が着手開始できる程度のコードの叩き台は作ってくれましたので、まずまず満足しています。

2024,江端さんの技術メモ

以下のGo言語プログラムで、"small2_bus_data.csv"が1行のみの
1, 93, 139.62957005198, 35.36604342344, 12:55:00
を使って、を読み込ませたのですが、その結果が
1 0 0 12:55:00 [{1 0001-01-01 00:00:00 +0000 UTC {0 0}}]
となってしまいます。

package main

import (
	"encoding/csv"
	"fmt"
	"os"
	"strconv"
	"time"
)

// 緯度経度の型定義
type LatLng struct {
	Lat, Lng float64
}

// 時間と緯度経度の情報を持つ構造体
type BusData struct {
	NodeID   int
	Time     time.Time
	Location LatLng
}

func main() {
	// CSVファイルを開く
	file, err := os.Open("small2_bus_data.csv")
	if err != nil {
		fmt.Println("Error:", err)
		return
	}
	defer file.Close()

	// CSVファイルの内容をパースする
	reader := csv.NewReader(file)
	records, err := reader.ReadAll()
	if err != nil {
		fmt.Println("Error:", err)
		return
	}

	// データを格納するためのスライス
	var busData []BusData

	// CSVの各行を処理する
	for _, record := range records {
		nodeID, _ := strconv.Atoi(record[0])
		lng, _ := strconv.ParseFloat(record[2], 64)
		lat, _ := strconv.ParseFloat(record[3], 64)
		timeStr := record[4]

		fmt.Println(nodeID, lng, lat, timeStr)

		// 時間のパース
		var parsedTime time.Time
		if timeStr != "" {
			parsedTime, _ = time.Parse("15:04:05", timeStr)
		}

		// データを構造体に格納
		data := BusData{
			NodeID: nodeID,
			Time:   parsedTime,
			Location: LatLng{
				Lat: lat,
				Lng: lng,
			},
		}
		busData = append(busData, data)
	}

	fmt.Println(busData)
}

で、かなり、すったもんだした結果、文字列に余分なスペースが含まれていたため であることが分かりました(このくらい自動で対処して欲しいが)。

strings.TrimSpace がキモだったようです。

修正後のプログラムは以下の通り。

package main

import (
	"encoding/csv"
	"fmt"
	"os"
	"strconv"
	"strings"
	"time"
)

// 緯度経度の型定義
type LatLng struct {
	Lat, Lng float64
}

// 時間と緯度経度の情報を持つ構造体
type BusData struct {
	NodeID   int
	Time     time.Time
	Location LatLng
}

func main() {
	// CSVファイルを開く
	file, err := os.Open("small2_bus_data.csv")
	if err != nil {
		fmt.Println("Error:", err)
		return
	}
	defer file.Close()

	// CSVファイルの内容をパースする
	reader := csv.NewReader(file)
	records, err := reader.ReadAll()
	if err != nil {
		fmt.Println("Error:", err)
		return
	}

	// データを格納するためのスライス
	var busData []BusData

	// CSVの各行を処理する
	for _, record := range records {
		nodeID, _ := strconv.Atoi(record[0])

		// スペースをトリムしてから実数に変換
		lng, err := strconv.ParseFloat(strings.TrimSpace(record[2]), 64)
		if err != nil {
			fmt.Println("Error parsing lng:", err)
			return
		}
		lat, err := strconv.ParseFloat(strings.TrimSpace(record[3]), 64)
		if err != nil {
			fmt.Println("Error parsing lat:", err)
			return
		}
		timeStr := strings.TrimSpace(record[4]) // スペースをトリム

		fmt.Println(nodeID, lng, lat, timeStr)

		// 時間のパース
		var parsedTime time.Time
		if timeStr != "" {
			parsedTime, err = time.Parse("15:04:05", timeStr)
			if err != nil {
				fmt.Println("Error parsing time:", err)
				return
			}
		}

		// データを構造体に格納
		data := BusData{
			NodeID: nodeID,
			Time:   parsedTime,
			Location: LatLng{
				Lat: lat,
				Lng: lng,
			},
		}
		busData = append(busData, data)
	}

	fmt.Println(busData)
}

出力結果は
>go run main28.go
1 139.62957005198 35.36604342344 12:55:00
[{1 0000-01-01 12:55:00 +0000 UTC {35.36604342344 139.62957005198}}]
となり、一安心です。

2024,江端さんの忘備録

私は、人の成功を素直に喜べない、ひねくれた性格の人間です。

I am a person with a twisted personality who cannot honestly enjoy the success of others.

ですが、

However, 

『H3ロケットの打ち上げ成功』

When I learned of the successful launch of the H3 rocket

を知った時、涙が出そうなほど嬉しく思えました。

I was so happy that I almost cried when I learned of the "successful launch of the H3 rocket.

エンジニアは、失敗しつづけることが仕事です。

Engineers are in the business of continually failing.

それでも、"ちんけ"な研究員&エンジニアには、"ちんけ"なりの人類への貢献方法があるんですよ。

でも、本当に、たまに、こういう成功があるから、エンジニアはやめられない ―― と思うこともあります。

But, sometimes, successes like this make me think -- I can't stop being an engineer.

-----

月面探査機「SLIM」の月面着陸のニュースも、もちろん嬉しかったです。

Of course, I was also happy to hear the news of the landing of the SLIM lunar probe on the moon.

でも、それより私が驚愕したのは、「SLIM」の『再起動』です。

But what astonished me more was the "SLIM reboot."

『太陽電池パネルに太陽光が当たって、約9日ぶりに動き始めました』

"Sunlight hit the solar panels, and they started working for the first time in about nine days."

という記事の内容から読みとれることは、、エンジニアたちが、9日間、システムとの通信を遮断し、節電しながら再起動のタイミングまで、じっと我慢し続けた、ということです。

I read from this article that the engineers had to shut down communication with the system for nine days, saving power and holding still until it was time to reboot.

私(江端)は、会社の実験室に設営したシステムが停止すれば、あらゆる手段でアクセスを試みて、夜中であっても、出社してシステムを再起動しに行く、という、せっかちな性格です。

I (Ebata) am an impatient person, and if the system set up in the company's laboratory stops working, I try to access it by any means possible, and even if it is the middle of the night, I go to work to restart the system.

-----

『9日間の忍耐』ができるエンジニア ―― これが、SLIMプロジェクトのエンジニアの皆さんと、私の決定的な差です。

Engineers with "nine days of patience" are the critical difference between the engineers on the SLIM project and me.

言うまでもありませんが、これは『最大級の賛辞』です。

This is 'the greatest compliment'.

未分類

江端さんのひとりごと
「配線学」

2001/06/29

ベストセラーとなった、「話を聞かない男、地図の読めない女」を夫婦で読んで以来、嫁さんは、旅行中のナビゲーション担当を完全に放棄してしまいました。

この本は、全女性から「地図を読む」と言う生活必須の行為を放棄せしめ、彼女らに、地図が読めないことを正当化させてしまったと言う意味で、焚書に値する悪書であります。

私は、サンフランシスコや、ロサンゼルスの高速道路を、時速75マイル(120km)で運転しながら、コンマ1秒以内で、地図とGPSの座標を同時に読み取ると言う、ある意味『サーカスの綱渡りなんぞ、なんぼのもんじゃ』と言う程危険なこともせざるを得なくなってしまいました。

一方、この本が主張する(「話を聞かない男」と言うのはよく分からんが)、「冷蔵庫の中にあるマヨネーズを見つけだせない」「箪笥から該当のジーパンを探り当てれない」などは、恐しい程に当っているため、嫁さんのナビゲーション担当の放棄をあからさまに批判できない私がいます。

-----

私が中学の頃、「技術家庭」なるクラスがありました。

男子と女子が分かれて講義を受けると言う、時代錯誤も甚だしい ---- と言うよりも、今になって思えば、無益な区別をしていた授業がありました。

当時の文部省は、現在の結婚の高齢化、結婚率の低下、離婚率の増加などを全く、予測できなかったのしょうか。

勝手な言い分かもしれませんが、先見の明のない役人だ、と思います。

男子生徒と言う理由だけで、使いもしない本箱や、実用に耐えないドライバーやらを作らせて、一体どうする。

そんなもんなくても生きていけます。

生きることの基本は、飯です。

栄養バランスの悪い外食に頼らないように、先ず自炊から教えないかんでしょうが。

一体、何の為の義務教育だ。

私のように、一月に一度、市民サークルの「男の料理教室」に通っていたような人間は特殊な部類に入るので除外するとして、アパートに帰ったら、ピザをレンジで暖めるだけの夕食、あるいは、ソーセージを突込んで煮たてるだけのスープを喰うような大量の男達を、文部省はどう捉えているのでしょうか。

上記の話が嘘だと思うのであれば、私は、日立の各事業所からアメリカに来ている独身男のサンプルを、山ほど提出してみせます。

まあ、とにかく、ここで私の主張したいことは、数学も英語も大事かもしれんが、先ず、家庭科(と言うか家政学)を徹底的に叩き込まねば、今の世代は勿論、次世代の日本も非常に危うい、と言うことです。

-----

私は、国語と技術家庭のカリキュラムに、それぞれ次の2項目の追加を提言したいと思います。

それは、「マニュアル学」と「配線学」です。

太宰も芥川も漱石も良いだろうが、それより先に、マニュアルの読み方を教えなあかんだろうが、文部省。

『マニュアルの内容は、わからん』と言う奴の話をよく聞いてみると、一度もマニュアル開いていなかった、なんてふざけた話はざらにあります。

こういう甘ったれを叱り飛ばすのは易いですが、それでは何の問題解決にもなりません。

実際、マニュアルの内容が判りにくいのは事実です。

その理由としては、マイコンを使った各種製品の高機能化、それに共なうユーザインターフェース(ボタンやらスイッチ)数の増大が挙げられます。

限られたインタフェース(例えば3つのスイッチ)で、100以上の機能を実現するには、そのスイッチの時系列方向の組み合わせに依存するしかありません。

具体的には、『Aのスイッチを2秒押し続けながら、Bのスイッチを2回押し、最後にCのスイッチを、電子音がするまで押し続ける』等。

はっきり言って、こんな操作は、普通の人間には無理です。

しかし、それが可能な人間もいます。

その製品の製作者と、マニュアルの執筆者です。

なんったって、彼等は、その製品の開発過程で、100を越えるマイコンのパラメータを同時にトレースし、デバッグを行っているのです。

製品のインターフェースなんぞは、それらのパラメータのほんの一部に過ぎません。

彼等の感覚からすれば、「マニュアルの内容が判らん」と言うこと自体が判らんでしょう。

これらの根本的な解決方法は、100以上の機能を、5つ以下にすることですが、他社製品との競争上、むやみに機能を落すこともできません。

しかし、この「機能」の件に関しては、購買客も悪いのです。

日本中が、バブル景気で踊り狂っていたとき、私は、ファジィ・ニューロ制御の炊飯器や洗濯機や電子レンジを作っていました。

ファジィ・ニューロ制御が、一体どのようなもので、本当のところ、どれほど役に立っていたか、私は本当によーーーく知っていました。

ファジィ・ニューロが、本当に旨い米を焚くことが出きたかどうか -----

私は、この秘密は自分の墓の中に持っていくつもりですが ----- は、さておき、「ファジィ・ニューロ機能」と書かれていれば、客はそちらを購入したのです(と言うか、こう書かないと売れなかった)。

技術者の立場からすれば、
『高機能を要求すれば、その操作が難しくなるのは、当たりまえではないか!』
『己の頭の程度と相談して、製品を購入せんかい!!』

と言いたいこともありますが、メーカーの社員の立場では、そのようなことは口が裂けても言えません。

で、「これっきりボタン」とか出てくる訳ですが、それについては、いずれまたの機会に。

マニュアルの話に戻ります。

どだい、技術者の理系的発想で記述されたマニュアルが、読みやすいものになる訳がないのです。

技術者は、「動かないのが当たり前」「動かすのが仕事」と言う認識で、技術開発をしています。

「電源入れれば、動いて当たり前」と考えるユーザと同じ視点に立てる訳がない。

ですから、ここは、一つ文系的な見地から、マニュアルを見なおす必要があると思います。

私は以下の事項を提案します。

文部省は、まず全国の国立大学に、「文学部マニュアル学科」を設立し、体系的なマニュアルについての学問を推進します。

次に、義務教育過程に、「マニュアルの読みかた」と言うカリキュラムを導入します。

中間、期末の国語のテストには、次のような問題が出されるようにならなければなりません。

設問10 以下のマニュアルを読んで、問に答えなさい。

ethereal-*-non-capture.zipでは、パケットキャプチャはできないので、ethereal-*-capture.zipのほうを落とします。この段階で、c:\bin\etherealには、2つのzipファイルがあるはずです。これを、c:\bin\etherealの中で展開します。ethereal-0_8_8-capture.zipの方が、ディレクトリを掘ってしまうので、展開後にc:\bin\etherealのディレクトリを作って移動させて下さい。

(1)以下の単語の読みがなと、意味を書きなさい。

読み 意味

zip ( ) ( )

bin ( ) ( )

(2)このマニュアル内の、2個所の不適切な表現を選んで、それぞれ正しい文章

に直しなさい。

(3)このマニュアルを書いた作者の心情を30文字以内で記述しなさい。

受験用の参考書としては、「やさしいマニュアル学」「精解マニュアル解読」などが出版されることでしょう。

マニュアルは、「読む」「理解する」の次元を超越して、「感じる」ところまで高みに至る必要があります。

『あのマニュアルは、泣けた』とか『私の人生を決めたのは、この一冊のマニュアルです』と言う発言が日常会話で普通に出てくるようになるまで、マニュアル学は、高まる必要があると思います。

-----

次に「配線学」について述べます。

テレビ、ビデオは勿論、パソコンなど、今や「配線できぬもの、文明人にあらず」は、もはや誇張でも何でもなく、事実、配線ができないと、人並にAV機器や電子メールを楽しむことすらできません。

女性はこの配線に関しては弱い、と断言して良いでしょう。

一方で、男性は、収納に関しては、致命的なほど無能です。

理由はよく分からないのですが、女性はスカラー量には強く、ベクトル量には弱く、男性はその逆、と思われる場面が多いです。

配線とは、つまるところ「流れ(ベクトル)」を理解するだけのことなのです。

例えば、ビデオデッキを例に上げれば、

(1)映像を流し出すところと、それを受けるところ(テレビ)がある
(2)音声を流し出すところと、それを受けるところ(テレビ)がある
(3)その映像と音声を受けとるところと、それを出すところ(アンテナ)がある。
(4)電気を受けとるところがある。

と4つの「流れ」があり、それを正しく流すように線を継いでやれば、必ずビデオは動くのです。

ところが、配線が苦手な人は、この(1)-(4)が、頭の中で大混乱している訳です。

で、結果として何をしてしまうか。

総当たり戦を実施してしまう訳です。

映像出力端子、映像入力端子、音声出力端子、音声入力端子、NTSCケーブル2本、アンテナ線用同軸ケーブル、これにS端子でもついていたら、配線の組み合わせは、軽く100を越えるでしょう。

ビデオごときで、総当たり戦を実施している人に、パソコンの組み立てなんぞやらせたら、組み合わせ爆発は必至。

パソコンが動き出すのに25世紀くらいまでかかってしまう。

このような「配線問題」に関しては、現状2つのアプローチがあると思われます。

(1)「配線は素人にはできない」と割りきって、「配線サービス」と言う新しい産業の育成に力を注ぐ

(2)「配線学」を義務教育課程に組みこむ

の2つです。

しかし、私は、(1)の「配線アウトソーシング」が、一つの産業になるのは難しいであろう、と推測しています。

3万円のビデオデッキに、出張費と拘束時間を考え、安く見積っても1万円以下にはならないであろう配線サービス料金を、本当にエンドユーザは払えるだろうか。

そもそも家電製品と言うものは、大量生産によるコスト低減を掲げて製造されるものです。

激しいコスト競争の中で扱われているこれらの家電製品は、それ自体、ソフト的なサービスとは合い入れません。

ソフトサービスをエンドユーザに押しつけて、コストダウンを図る。

これが家電製品の市場原理なのです。

上記の分析が示すことは、当面の間、「配線問題」は、独力、あるいは、プライベートな極めて狭い範囲の人間による解決しかありえない、と言う悲観的な結論となります。

ですから、私は(2)の「配線学」を義務教育課程に組みこむしかないと思います。

ラジカセの操作は、小学3年生までに、

ビデオデッキは、小学6年生までに、

パソコンの組み立て(周辺機器付き)は、中学3年までに体得することを、今からでも遅くはありません、是非とも文部省は、技術家庭課程のカリキュラムとして採用することを、検討して貰いたいです。

日本のIT化を本気で考えるのであれば、これらのことが実施できない児童、生徒は、留年もやむなし、との処置でお願いします。

「炊飯器で飯が喰えず餓死」「メールが使えず孤独死」などと言う、ハイテク家電が引き起こしかねない悲しい事件を回避するためにも、国は断固とした姿勢で、接続学の取得を国民に課して貰いたいと切望します。

-----

あながち、大袈裟でもないのです。

電子レンジに猫を入れて、乾かそうとした主婦の話を例に上げるまでもなく、(赤ん坊でなくて、本当によかった)、パソコンのプリンタの設定ファイルと、ISPのプロバイダの接続設定を壊してしまい、アメリカに行ってしまった息子の帰省を1年以上も待っている、実家の両親たち ----

そして、紙切れが判っていても、補充されないFAX。

設定方法が分からず、いつまでも動き出さない全自動洗濯機。

マニュアルの例文を、2回印刷しただけのワープロ

ユーザにとっても、製品にとっても、これは悲劇に違いあません。

そのような悲劇を、この日本からなくす為にも、私はここに声を大にして、「マニュアル学」と「配線学」の、速やかな導入を提言したいと思います。

(本文章は、全文を掲載し内容を一切変更せず著者を明記する限りにおいて、転載して頂いて構いません。)

 

2024,江端さんの忘備録

基本的に、私は、モノを修復して使い続けるのが好きです。

I like to restore things and keep using them.

ケチとか、倹約とか、SDGsなどは、私のスコープ外です。

Cheapskate, frugality, SDGs, etc., are outside my scope.

私は、単に、DIYが好きで、修復が好きだけど、面倒くさがり屋で、モノのライフタイムが延ばすことに喜びを感じる変態だからです。

I am simply a pervert who likes to DIY, likes to restore but is a pain in the ass, and takes pleasure in extending the lifetime of things.

昨日も、DIYの理髪(セルフカット)をしました。

Yesterday, I also did a DIY haircut (self-cut).

で、その結果、私の頭には、3箇所のハゲができていますが、これは前向きに考えることにしています。

And as a result, I have three bald spots on my head, which I consider positive.

「江端は過度の仕事のストレスで脱毛症になったんだ → 江端の仕事を減らさないと、また江端が『抑うつ』になるぞ」と、誰かに思って貰えれば、とか(※)。

If someone thinks, "Ebata got alopecia due to excessive work stress → if we don't reduce Ebata's workload, he will become 'depressed' again" (*), or something.

(※『抑うつ』は、信じれないほど辛い病気です、冗談でこんなことを書くべきではありません(書いていますが))

(*'Depression' is a harrowing disease; I shouldn't write this in jest (although I do).)

コラムでさんざんエラそうなことを書いてきた江端の、この体たらくを知って、少しでも気が楽になって貰えれば、幸いでございます。

それはさておき。

That aside.

-----

昨日、Amazonで、ミシンについて調べていました。

Yesterday, I was on Amazon researching sewing machines.

最近は、5000円程度の安いミシンがあるようなので、購入しようかと思いまして。

I was thinking of buying a cheap sewing machine, as there seem to be some available these days for around 5,000 yen.

基本的に私は、なんでも「木工用ボンド」でくっつけて、ジーパンのライフタイムを延ばしています。

I use "wood bond" to attach everything to extend the lifetime of my jeans.

しかし、先日、私のジーパンが、この対応が難しいくらいの破れをしました。

However, the other day, my jeans broke to an extent that this was difficult.

普通に「捨てる」が一択となるような、破れ方だったのですが ―― それでは、何か「負けたような気」がしまして。

It was a rupture, where "throw-away" would generally be the only choice -- but then, I felt like I was "lost" by something.

で、ミシンについてYouTubeで勉強していたのですが、上糸とか下糸とかの設置、糸の張り巡らせ方、ミシンの操作など、―― 見ていたら目が眩みそうになりました。

So I was learning about sewing machines on YouTube, setting up upper and lower threads, tensioning the threads, operating the sewing machine, etc. I was almost dazzled by what I was seeing.

少なくとも、ミシンは「スタートボタン」だけで始められるようなものではないことは、分かりました。

I have found, at least, that sewing machines are not something I can start with the "start button."

これで、気持ちが折れました。

This broke my heart.

ミシンも、この「配線学」の中で教えて欲しかったものです。

I wish that sewing machines had been taught in this "wiring study" as well.

江端さんのひとりごと 「配線学」

-----

パソコンにUSBで接続したら、CAD画面がでてきて、そこに設計図を投入すると、勝手に動き出す ―― そういうミシンは、まだ世の中に存在していないようです。

When connected to a PC via USB, a CAD screen appears, and when a blueprint is input, the sewing machine starts working independently. However, such sewing machines do not seem to exist yet.

取り敢えず、今は、木工用ボンドでジーパンの断面を塗りたくりながら、「PC対応のUSBミシン」の登場を待つことにします。

For now, I will wait for the arrival of the "PC-compatible USB sewing machine" while painting sections of my jeans with wood glue.

2024,江端さんの忘備録

私は興味のある技術は、コストと時間に見合えば、一度試してみたい方です。

I am willing to try any technology that interests me once it is worth the cost and time.

そして、その結果は、会社の秘密情報や会社の不利益になる内容では"ない"と判断すれば、公開することがあります。

The results may be disclosed to the public if we determine that the information is not "confidential" or detrimental to the company.

これは、遵法精神でもなければ、いわんや愛社精神でもありません ―― 約束(契約)です。

This is not a law-abiding spirit or love for the company; it is a promise (contract).

忘れないでください ―― 私は「会社の犬」です。

実際、私の持ちネタは、もっと沢山あって、その中には『墓の中まで持っていく』と決めているものもあります。

I have many more stories, some of which I have decided to 'take to my grave.

それはさておき。

Aside from that.

-----

私は、興味のある技術を試すことは楽しいですが、興味のない技術をやらされることは苦痛です。

I enjoy experimenting with techniques I am interested in, but being forced to do techniques I am not interested in is painful.

実際に、直感的に『この技術はダメだ』と思えるものがあります。

I have a technique that intuitively tells me, 'This technique is no good.

例えば、バズワードと言われているものです。

For example, they are known as buzzwords.

私は、そういう技術には近付かないようにしているのですが、業務命令で、それらに取り組まなければならないこともあります。

I try to avoid those technologies, but sometimes, I have to work on them because of work orders.

予想通り、ダメダメだったこともありますが、しぶしぶ取り組んでいたら、これが意外に面白くなったりすることもあります。

Occasionally, as expected, it was a no-no, but this can be surprisingly interesting if I am reluctant to work on it.

とは言え、ダメダメでも、ダメダメでなくても、業務命令であれば、一定の成果を出さなければなりません。

Nevertheless, if it is a no-no or not, certain results must be achieved if it is a work order.

ダメダメだと思っている技術の仕事を命じられて、予想通りにダメダメな結果を出して、それを理由に上長や幹部から叱責されることがあります ―― これは理不尽で辛いことです。

I may be assigned to work on a technology that I think is no good, produce predictably bad results, and then be reprimanded by my superiors and executives for it -- this is unreasonable and painful.

何が言いたいかというと、

What I'm trying to say is,

―― 私たちは、自分の人生を自分でコントロールできない

"We are not in control of our own lives."

という、ありふれた話です

It is a common story.

今、次女が、絶賛、就活中です。

Right now, my second daughter is job hunting, to great acclaim.

それを見ながら、『彼女も、これから、自分でコントロールできない人生を歩み始めるのだな』と思うと、せつない気持ちになります。

As I watched, I felt sad, thinking, 'She, too, is going to start a life she cannot control.

それはさておき。

Aside from that.

-----

30%:50%:70%の法則 ―― 大学、高校、中学の卒業生が、3年以内に離職する比率です。

The 30%:50%:70% rule is the ratio of college, high school, and secondary school graduates who leave the workforce within three years.

これは、ここ20年間変化がありません。

This has not changed in the last 20 years.

この法則を「悲劇」と見るか、「当然」と見るかは、人によって違うと思います。

Whether one sees this law as "tragic" or "deserved" depends on one's point of view.

しかし、現在の政府の掲げている目標『労働人口の流動化』という観点から見れば、逆の見方ができます。

However, from the perspective of the current government's stated goal of "workforce mobility," the opposite can be seen.

90%:90%:90%の法則 ―― 新入社員の9割が3年以内に離職する世界の実現。これができれば、日本の労働人口の流動は確実になります。

The 90%:90%:90% rule is a world in which 90% of new hires leave their jobs within three years. If this can be achieved, the fluidity of the Japanese workforce will be assured.

もっとも、それで生産性が上がるかどうかは分かりませんが(まあ、下るでしょう。それも劇的に)。

I don't know if it will increase productivity (well, it will decrease...dramatically).

-----

労働人口の流動性は、

The mobility of the workforce is,

(1)新しく生まれた仕事が、誰にとっても楽しい仕事になるわけではない

(1) Not all newly created jobs will be enjoyable for everyone.

(2)新しく生まれた仕事に対応する為には、また最初から勉強をしなおす必要がある

(2) To cope with the newly created work, it is necessary to study all over again from the beginning.

という現実に向き合う必要があります。

We need to face the reality that

どっちにしても、労働人口の流動化は、多くの人の考える気持ち、「面倒くさい」によって阻まれている、というのは事実でしょう。

Either way, it is probably true that the mobility of the workforce is hampered by what many people consider a "hassle.

好きなことであれば、勉強しなおすことも苦痛ではないでしょうが ―― 基本的に、多くの人にとって、勉強は、苦痛です。

If it's something you love, it won't be painful to study again -- but, for many people, studying is painful.

「一度苦労して覚えたことだけを使って、残りの人生をラクして食っていきたい」と思うのは、だれにとっても自然なことなのですから。

It is natural for anyone to want to "make the rest of my life easy, using only what I have learned through hard work.

未分類

組織から「やれ」と言われたら、なんでもやるのがサラリーマンです。

とは言え、『この歳になって、Java(×JavaScript)かぁ』と、少々意外な感じです。

私、C/C++, Go, Python、SQL、JavaScriptは、普通にしゃべれますが、そのすきまを狙ったかのような"Java"とは ―― うん、面倒ですが、仕方ありません。

という訳で、今、VSCodeの環境にJava開発環境を仕込んでいます。

しかし、こんなトラブルが発生していて、ChatGPTと議論をしていました。

public class App {
public static void main(String[] args) throws Exception{
System.out.println("Hello, World!");
}
}
vscodeを使って、F5で実行しようとしたのですが、
Missing artifact org.json:json:jar:20140107
Missing artifact redis.clients:jedis:jar:2.7.2
等がでてきます。
コマンドからはちゃんとコンパイルして実行できるようですが。

色々教えて貰い、他のツールを入れたりしないように言われましたが、VSCodeの拡張機能で、同じような機能入っているようなので、『???』となやんでいました。

で、今回は、こちらが私には当たりでした。

VSCodeでJavaを始める方法(環境構築)

まあ、Javaだろうと、C/C++だろうと、Goだろうと構いません。今回の私の真の目的は、Github Copilotの攻略ですから。

GitHub Copilotが『怖い』件

以前、ChatGPTの登場で、英語の教師が本気でヤバイかもしれない、とか書きました。

私は生れて始めて『AI技術による廃業』の予感を感じました ―― 最初の犠牲者は、語学教師です。

Copilotでは、ソフト外注が ―― というか、今なお、現場でコーディングをやっている、この私(江端)が、本気でヤバい。

しかし、これ、もしかしたら、良い意味で「ヤバい」かもしれません。

ChatGPTやGitHub Copilotと、ガチで語り合えるスキルがあってこそ、彼らを使い倒すことができると思えるからです。

生成AIを使い倒す技能は、場数を踏んできたシニアの方が上手いと思う。

だから、これはチャンスだ ―― と、そう思うことにします、当面の間は。