羊毛フェルト

mtjです

羊毛フェルトをしてみました。
100均の羊毛フェルトでも5cm*4cm程度のサイズなんですが作るのに3時間程度かかりました。

どんなものかというと、引っかかりのついた小さな針で羊毛を刺し、引っかかりに繊維が絡み羊毛の奥まで刺す事で
羊毛が絡み合っていって人形を作るような感じです。

パーツをつくって後から接着剤等も無しでくっ付けることができるので針を刺し続ける根気以外はお手軽でした。

PG言語は道具

こんにちはMTJです。

PGを覚えるのはあくまで通過地点でありゴールではないという話です。

基本PGは何かを実現するために使用する道具であり、○○の作り方を覚えるというものではないと思います。
例えば掲示板を作りたいからCGI、WEBサーバー関連を覚える等 Aに必要な技術は〇と△だから覚えようという感じです。

これをUMLを覚えて、その通りクラスを作る方法を覚えただけでは掲示板は作れませんよね。
もちろんオブジェクト指向等は重要ですが、あくまで道具を上手に扱えるようになっただけ
誰もペンチの使い方を学んでから、何かしようとは思いませんよね

同様に〇〇の言語は優秀という話をよく聞きます、C++、C#どっちがいいですかとかはよく訊かれる話ですが
どちらの道具にも利点と欠点があるため、一概にどちら良いとは言えません。

pythonの使い方を軽く覚えて、自分の場合デスクトップアプリメインで現状使いどころないと感じ上記のような事を感じました。

プログラマー

MTJです。

プログラム業界に入ってやっとこさ5年目ですが世の中の色々な事をみてきて感じる事は
やはり好奇心を失わない事だと思います。

例えばC#の新しい書き方が出たときに興味を持って近づくか、持たずにスルーしてしまうではこの変化が早い業界では置いていかれてしまいます。
なので只PGを覚えたいと漠然と思うのも間違いではないのですが、この業界はそのような新しい事に興味をなくさずに接し続けられるかは結構大事だと思います。

デスクトップアプリはWEB系に比べてAPIの移り変わりもゆるやかで新しい技術もそこまで増えませんがそれでも興味が無い人は有る人に比べてどんどん遅れて行ってしまうと思います。

自分の場合はゲームとその周辺技術だったり、新しいPCパーツが興味の対象だったりします。
PGとは離れているような話ですが、なんでCPUが速くなったとか技術的な情報を取り入れ、そこからPGに興味を持つのも悪くないと思います。

PC周りの変化

mtjです。

以前書いた通りnvidia のShieldというタブレットを買いました。
この10インチタブレットでフルHDを表示できるというのはよくよく考えたらすごいことだなと思いました。

昔は2Dのゲームですらノートできつかったはずなので、本当GPU,CPUの省電力、省スペース化は進んでいるんだなと実感しました。
SSDもいまや1TB 3万ぐらいまで値下がりしていると思います。
逆に気になるのはPC等の性能が上がった場合にその周辺ソフト、ゲーム、WEBサービス等はどのように変化していくのだろうかと気になりますね。

性能が上がってもその性能を十分に使用できるソフトが出ないともったいない気がしますね。

オーブン調理

mtjです。

冷凍ポテト等オーブンで調理することで油等を使用せずに作る事ができます。
冷凍ポテトは外がカリカリになり、焼き餃子も同じようになります。
もちろん電気代は少々かかりますが油の処理等が簡単になるのでおすすめです。
フライパンの前につかなくてもいいので色々楽もできます。
アルミホイルを被せたこ焼きを焼けばレンジで調理するとはまた違った感じに出来上がります。

以外とオーブンは便利なので色々使ってみると面白いかもしれません。

CPU

mtjです。

最近AMDのRyzenが出ました、不評のBulldozerからZENアーキテクチャに変化です。
そんな自分も新品好きなのでFXの最上位が現状なのですが、DDR3で古くなってきたので乗り換え用と考えているところです。

ZENは仮想コアに対応しており、Bulldozerと比べてシングルスレッド辺りの性能強化を狙っているそうです。
Bulldozerは論理コア8等にし、intelの4コア8スレッドの仮想技術に総合性能(8スレッドフル稼働)なら勝てるという
思想のでしょう。

Zenはそこらへんを気にしてか仮想コア技術に対応しました、最高で8コア16スレッドです。
また色々メモリ最適化、演算プロセスが、消費電力がうんぬんってありますが詳しい話は別のところに書いてあると思われます。

使用者側からいうと性能が良くなるのはもちろんですが、消費電力が低いのがいいなと感じました。
最高性能のRyzenでもTDP95Wです。

FX-9590がTDP220Wなので約半分です。
TDPが低くなれば発熱も低いだろうということで色々助かりそうです。

まだ出たばっかなので様子見ですが、なかなか期待できそうなCPUだと思われます。

アンドロイド初心者

こんにちはmtjです。

Shieldタブレットで時々フレーム落ちがあります。
友達に教えてもらったことですが開発者設定にハードウェアアクセラレーションのON,OFFがあるとのこと。
(ついでにAAx4の設定もありましたがさすがに厳しいので無し。)

上記をいじったところパフォーマンスがかなり上がりました
同時に発熱も上がり、ONにした直後はアプリがよく落ちました。

アプリが落ちやすくなったり等問題があるので通常では見えない設定にされているんだなと納得しました。
Shieldの設定と色々被ると落ちやすくなっていたようで、現在では調整も済んだので快適な状態です。

初心者にはアンドロイドはなかなか難しいと感じました。

Shieldタブレット

こんにちはMTJです。

以前購入したZENPADの性能があまり高くなかったのでNVIDIAのShieldタブレットを購入しました。

結果としては性能は問題なしです。
只、設定をいじらないと一部FPSが落ちたりするので注意が必要です。
その辺は普段からPCをいじっているので問題ないのですが、あんまり設定に詳しくない人は注意が必要です。

値段も3万程度でお手軽で、色々作業等を行ってもほんのり暖かい程度なので発熱も問題無しです。
現状は只のアンドロイド端末として使っておりますがShieldぽい使い方を今後は考えてみたいと思ってます。

ソフトでのハードの効率化

こんにちはmtjです。

主にPCのグラフィックボードの話ですがソフトの効率化を進めることでハードウェアを強化することなく
パフォーマンスが向上するというのがこの世界ではよくあります。

そういう話をよく見ているといくら内部の性能が高いGPUを作成してもそれを使用するドライバ等をうまく作らない限り
性能は生かせない事が多いのかなと感じてしまいました。

もちろんドライバ関連だけでなく、周辺のソフトにも言える事ですが潤沢な資源でしか動かないようにするのではなく
いかに低スペックで動かす事、または、最新の技術を使い今迄では行えないほどの高速化を行う事もソフトの目標ではないのかと思います。

そのためには新しい技術を日々確認したりする努力が必要なのかと感じました。

Windowsクラシックモードと通常モードの違い(win7)

mtjです。

WindowsFormで実装していると謎のエラーが発生する時があります。
表題の通り、クラシックと通常モードでWindowsFormの動作が変わるものもその一つです。

自分たちでテストしているときはクラシックにしないので何も発生せず、お客さんのところで運用している
間にクラシックで問題発生とのことが起こる場合があります。

原因はクラシックではFormが表示されていない(コンストラクタ内)にもかかわらず
一部イベントが発生するためです。
Formのコンストラクタ内部で初期化したとしてもデザイナーでnullが入る可能性もあるためなかなか把握できません。

一番簡単な方法で先で全てnullチェックをするのが確実な方法だと思われます。
またはCreatedプロパティがあるのでそれがtrueなら処理を行うが一番確実だと思われます。

上記の問題はログを確認してもなぜNULLが入っているのかわかりにくい点が厳しいです。
スタックトレースを見ればInitializeComponent()から発生しているのですぐわかりますが。