アセンブラ(インライン)を用いた高速化ですが、

あくまで個人的に、以下の条件を満たす事が必要です。
1.Cコンパイラより、優秀なコードが書ける事
専用ハード等の場合、コンパイルオプションが固定な場合、ある程度効果が期待できま す。
   最近のコンパイラでは、あまり期待しない方が良いと思っています。
というより、苦労に見合わない感じがします。

2.SSEを使う場合、精度の問題がクリアできている事
浮動小数点演算について、今時のPCでは、floatでも内部的には80bitの浮動小数点演算だそうで、結局64/32bitの並列処理にしても、演算精度の問題が出てきます。クリアできる場合、効果が期待できるので、Goですね。

結局、
アセンブラを用いた高速化が検討できるだけ、良い職場という事です。
少なくとも、良いソフトにしようという意思がある。という事。

ほとんどの職場では、それ以前の問題で、「そもそも動いていない」とかです。
自身、アセンブラは楽しくて好きなのですが、動いている物が来ない事が多いので、
適当に整数演算化し、スレッド切って、終了です。
なので、ここ数年、書いていないし、見かけません。
感覚的に、効果はさほど変わらないので、良しとし、勝手に納得しているのです。

では。
IT系の経営者、管理職の方々にお会いしても、「うちに来ないか?」とマジで誘われる事が多いのです。
10年前で、今の自分のスキルだったら、上位グループに入れるかどうか。微妙なライン。
という所なのでしょうが、現在は違います。

1.ネイティブ経験があり、アセンブラ、若しくはCがちゃんと理解できている。
2.オブジェクト指向で書かれたコードが読める(かけなくても良い)
3.スクリプト言語に理解がある
4.社会人として、まぁまぁ普通

以上の4つが備わっていれば、経験者採用は、超絶無双状態です。

例えば。。。。。
1.ネイティブ経験があり、アセンブラ、若しくはCがちゃんと理解できている。
- 他の言語仕様が理解できるという事。
      したがって、慣れの問題はあるが、「ネイティブ書ければ全部書ける」という事

2.オブジェクト指向で書かれたコードが読める(かけなくても良い)
- なんちゃってオブジェクト指向なコード??も、気合いで読める。
      ただし、自分はそんなコードは書かない。そういう事。

3.スクリプト言語に理解がある
- メリットを理解し、利用できる。
      また、機能の不足する部分にあっては、
      ライブラリに無いから出来ないと言い訳をせず、
      解決できる手段を提案できる(ネイティブ書ければ問題無いと言う事)

4.社会人として、まぁまぁ普通
- 部下、チームの監督が出来る。ネイティブ出来るから、技術的指導も十分できる。

現実的には、こんな感じでしょう。

こんなものでいいのか????と思うのですが、
まともなプログラマが急激に減っている。という事をふまえると、しょうがないのです。
そして、私のように歳いっても、現役な人も増えています。

企業としても、ゴミ10トン抱えるより、1gの金を大切にする方が、将来的に良い
という事に気付き始めたのでしょう。待遇も、改善されてきています。

という感じです。

今日は、バイトの面接があります。
というのも、アルバイトを雇おうと考えています。
ただし、未経験者に限る!

なんというか、「自分、PHP書けるから、技術、有りますよ!!!」的な
香ばしいのを避けるためです。
そういう人と、IT系の会話が成立した試しが無いのですよ。。。。

では。

最近思うこと

 コンピュータを知らない人でもプログラマになれてしまう時代です。フリーになって気付いたのですが、まともにコードが書ける人は、10人に1人位。自分のコードに責任を持って仕事をしてくれるなら、まともにかけなくても良いし、コピペだろうがなんだろうが良いのです。実際の標準的な現場では、できる1人が9人分の仕事をしていると言っても過言ではありません。

仕事柄、10~20年くらい昔のネイティブなコードを見ることも多いのですが、昔のプログラマの方が優秀なことが多いです。少なくともコンピュータを知ってる人が書いていることがわかります。

最近の大学は、コンピュータについて教えていないんでしょうかね???情報系の学部、学科でも、ネイティブプログラミングを取らずに学位が与えられるのでしょうか????
 スクリプト言語は、工数も削減できるし、パソコンが使えない人でも、2週間ほど拘束し、教育すればある程度書けるようになります。ビジネス的には正解でしょう。もちろん私も使います。ただ、断言できますが、スクリプト言語のプログラマ(スクリプタ)に、技術と言う物は微塵も存在しません。上っ面をなぞってできた謎なソフトが、ネイティブレベルでどのように動いているのか、理解出来ない人がほとんどだからです。

このような場合、問題が起きたときにお尻を拭くのは、ネイティブをきちんと理解しているプログラマなのです。。。

だれでもコードが書ける、いい世の中になりましたが、ゴミの量も増えました。
コンビニが増えてゴミが増えるのと、少し似てますね。

以上