PCパーツの変化

こんにちは mtjです。

GPUのRTX3090が販売されました。
以前のRTX2080を軽く超えるものらしいです。
シェーダー処理のFLOPSで言うと2080が11TFLOPSで3090は36TFLOPSらしいです

現状自分は1080tiなのでレイトレーシングすらまともにできないのでどちらでも欲しいのですが
2080の2倍以上という性能は魅力的です。
3090は欲しいのですが価格も20万超えと圧倒的なので悩んでいるところです。

あと数十年もすればこの性能がタブレット等携帯端末になっているかもしれないと考えると本当技術の進化は圧倒的です。

自分たちプログラマもハードの性能を発揮できるように勉強も必要になっていくと思います。
現状でも大量のCPUコアを扱えるので非同期処理等をうまくできないとコアを遊ばせてしまう状態です。

プログラムの変化もそうですが扱うPCの性能、進化を知るのも大事だと感じました。

デザインパターン

GoFの23のデザインパターンを学習しています。
デザインパターンの多くは、
抽象的な概念を抽象クラスやインタフェースで定義して、
継承や実装により、実クラスで表現する手法を取ります。

デザインパターンを知ると設計の幅が広がるとともに、
ソースコードを読むときの理解の助けにもなると思いました。

例えばiPhoneで使われるviewには、
Observerパターンが使われているものがあります。
Observerパターンを知っていればすぐに理解できますが、
知らないと概念の理解に少し苦しみます。

チームで開発を行う場合でも、
「ここはSingletonパターンを使おう」など、
言語を問わずに共通の概念を共有することができるので、
連携がスムーズにできそうですね。

忙しくなりました。

コロナ禍の影響による案件停滞も落ち着き、反動で急激に忙しくなりました。
手が空いている間に進めていました評価用画像処理ソフトは一旦置いといて、納期がある通常業務の開発を進めています。
なんとか前倒しして、評価用画像処理ソフトの開発を進めたいところです。

ロボットエンジニア講習

mgcです。

昨日携帯ニュースを見ていると川崎重工が
子供向けにロボットエンジニアの講習を開いており
すでに現状の予約がパンパンになっているとの事..
こういった取り組みは素晴らしいですね。

子供に興味を持ってもらい将来的に製造系の仕事に人が増えれば
それだけでもやっている価値があると思います。
現在の製造業は人手不足が大きな問題となっている為
制御系、機械配線、機械調整、等いろいろな分野で
若年層に触れてもらい興味を引くことが出来れば
人手不足も改善していくと思います。

ipV6

最近自分の部屋もipv6契約にしました。

ipV6なので早くなります! と思いきや自分のルーターは2014年ぐらいのものなのでIPv4 over IPv6に対応していなくて 新しいルータを
買うことになりました。
そのままではipV6で使えないので遅いです。
まだipV6のサイトだけ早いことを確認しただけなので 実際にipV4のサイトまで早くなるかは楽しみですが

ipV6に詳しくない人は案外古いルーターのままipV4のまま使っているのではないのでしょうか?

ルーターの設定もままならない人はレンタルなので問題なさそうですが
自分でルータを買って終端機器とつないでいる人はipV6にしたのに遅いなぁって思って使っていたりするのではないのでしょうか?

よくわからないならレンタルが一番ということですね

Microsoft Code Analysis

自宅で使用している Visual studio に、
「Microsoft Code Analysis」を導入してみました。
VSの拡張機能から簡単にインストールすることができます。
コードの問題を検出して、改善・修正の提案を行ってくれるので、
初学者の方にもおすすめです。

例えば次のような冗長なコードを書いてしまった場合でも、
if(isDebug == true){ ...
コードを簡単にできる旨をヒントや警告で表示してくれて、
クリックで修正する事ができます。
if(isDebug){ ...
他にも private にできるメンバーを教えてくれたりなど機能が豊富で、
自然と Microsoft が推奨する、一般的なコードを書くことができるようになります。

会社では ReSharper を使用しているので必要無いのですが、
自宅でも同様の分析機能があると少し安心します。

フォーマットの良し悪し

mgcです。

ラダーやTPのフォーマットを持つことは工数削減にもつながり
良い事がある反面
フォーマットに固執しすぎて正常に設計が行えないという悪い面もあります。

あくまでフォーマットは基本のラダー回路というだけで
それをそのまま依頼を受けた設備に対して流用できるとは限りません。
そのあたりを勘違いされている方がすごく多い気がします。

フォーマットの使い方について考えて使用しなければ
効率良くどころか無駄に時間がかかってしまう可能性もあると思います。

新規ソフトと既存ソフトの改造

こんにちは

現在新規ソフトの設計、作成を行っております。
やはり新規ソフトのほうが気楽に作れます。

既存ソフトの場合は共通化、既存機能の把握、リファクタリング等新規追加前の検討が必要になり
予想以上に時間がかかります。

もちろん元ソフトの設計にも引っ張られます。

改造の方が新規に同じ機能を作るより簡単に思われがちですが 複雑なアルゴリズムを流用する等ない限りは基本改造のほうが負荷は大きいと感じました。

リファクタリング、共通化等考えなければ簡単にできますが そのようなソフトはいずれ破城してしまいます。