Home > 成長期 > 第126回 自称:神プログラム

第126回 自称:神プログラム

台風が1週間に1回来るようになった9月上旬。

会社から帰れとの指示が出るたびに
チームの誰かがキレてます。

「この状況で帰れるか!」と。

そりゃそうだ。

が、しかし問題はもし帰れなくなった場合、
アルバイトのミナミは先に帰らないといけないので、

もの凄く気まずいです。

次の日の朝に来て、皆が寝てたら

帰りたくなりますよ。

自分は家の布団でぐっすりだったのに・・・・・・。

さて、前担当者を越えるプログラムを組む為に、
頑張ろうと思ったミナミですが、

そんなに世の中甘くありません。

学生時代に友人すら超える事ができなかったミナミが
この業界に何十年といらっしゃる方を
超えるなんて不可能です。

真っ向勝負じゃ勝てないな(何が?)。

と、わけがわからない事を考えていたミナミは、
普通に誰もが思いつく方法ではなく、
誰も思いつかない方法で、AIを作ろうとしていました。

そのこと自体は良い事なんですよ。

誰も思いつかないプログラムを考える事は、
特許だって取れるかもしれませんからね。

その挑戦は素晴らしい事だと思いますが、

その処理の内容にもよります。

ホーミングのプログラムや、これまで書いてきた、
間に合う間に合わないを計算するプログラムなどの

珍しくも大変でもないプログラムに対して、

する必要性はないんですね。

むしろ時間の無駄だったりします。

参考書に書いてあるプログラムって、
本当にしっかり書いてますよ(本にもよりますが)。

処理の重さとか無視しているものもありますが。

先に言っておきますが、この後、

特に凄いプログラムを組んだわけではありません。

後に新しく組む事になった時、
全てを組みなおした事を考えると、

さっぱり役に立ってない事がわかります。

距離と速度のみから計算していたホーミングの処理を
ラジアンを多用するホーミングに変えたところを見ても、

まったく無駄だった事がわかります。

距離と速度だけの関数で、
これまでにないプログラムだと言っていたんですね。

プログラマーの皆様、すみません。

今は自分を知り、自重をしております。

その距離と時間から移動地点を判別するプログラムですが、

非常に原始的です。

物理の(v×v) - (v0×v0) = 2asの公式を元にしておりまして、
これを s = ((v×v) - (v0×v0))/2aの形に変換して
移動座標をわりだしてました。

それだけで、神プログラムとか言ってましたが何か?

調べる物体の初速度、現在の速度、加速度だけで
座標を求めるプログラム。
XY座標だけなので、たったの2行。

ソースの面でも処理の面でも神プログラム!

とか思っていましたが、

掛け算と割り算を存分に使っているプログラムが

軽いわけもなく、

擬似3次元で作っているので、横の動きには強いが

斜めの動きには対応していない

この処理のどこが神プログラムなのかわかりませんが
思う事と勝手に言う事は無料です。

じゃあ、ラジアン使う方は軽いのか?

というと、メーカー推奨の関数を使っているので、

はっきり言って軽いです。

しかも、微妙に使い勝手悪い速度と距離の計算に比べて。

どこのプログラムにでも汎用が聞きます。

新人が思いついたプログラムなんて、その程度です。

いえ、すみません。

ダメプログラマーが思いついたプログラムなんて、

動くだけ本望です。

数年後に見直したら、
何で動いてたかわからないバグも発見しましたからね、

ビギナーズラックって凄いです。

その一言ですましていいのかはわかりませんが。

そんな感じで、自称:神プログラムは作られました。

しばらくはダメな事に気付きませんでしたが、
2年後に気付いたという事は、
少しは成長したという事でしょうか。

最初が低いのでレベルアップしやすいだけかもしれませんが。

次回はアップが迫ってきたチームの状態と、
その時のミナミの状態を細かに説明したいと思います。

まだ、デスマーチに巻き込まれてないので、

笑っているミナミでした。

この笑みが数年後には消えるとは・・・・・・・。

                             (ギスギスしてます編)

↓記事がおもしろかったらクリックおねがいします。
プログラムランキング [人気blogランキング]  FC2 Blog Ranking  にほんブログ村 IT技術ブログ プログラム・プログラマへ

Comments:0

Comment Form
Remember personal info

Home > 成長期 > 第126回 自称:神プログラム

Search
Feeds
Meta

Return to page top