タイガー!タイガー!じれったいぞー!(SE編)

AS400,WAS,GlassFish,Java,JavaEE,JSF等の開発における日々の気づきをまとめたブログ(備忘録)。

【AS400】仮想テープ装置を試す

AS400のバックアップでは、物理テープ(LTO)を使うシーンもまだまだありますが、物理テープ装置がシングルの場合では、テープの入替の手間も発生し、SAVFを使う選択肢もあったかと思います。
ただし、SAVFでは1つのライブラリーしかやり取りできず、複数のライブラリーを一括でバックアップができません。

そこで、それを実現する方法が「仮想テープ装置」であることを取引先様に教えていただいたので、仮想テープ装置についての導入手順や保管と復元について手順をまとめておきたいと思います。
あくまでも個人的な備忘録になります(IBM iのVersionは V7R01)。

全体像

  • 基本的には、仮想テープと言っても、物理テープ装置と同じ使い方になります。
  • 下記の画面は「WRKDEVD *TAP」コマンドの結果ですが、TAP01が物理テープ装置、TAPVRT01が仮想テープ装置となっています。
                                装置記述の処理                                  
                                                          
 位置指定 . . . . . . .                開始文字                                 
                                                                                
 オプションを入力して,実行キーを押してください。                               
   2= 変更         3= コピー   4= 削除   5= 表示   6= 印刷   7= 名前の変更      
   8= 状況の処理   9= ソースの検索                                              
                                                                                
 OPT   装置        タイプ      テキスト                                         
      TAPVRT01    63B0                                                          
      TAP01       3580         自動構成によって作成された   

  • 新規で作成した仮想テープ装置に、イメージカタログというIFS上のファイルと連動する保管庫を紐づけます。仮想テープ装置に保管されたライブラリーやオブジェクトは、結果、IFS(AS400のHDD)に保管されます。よって、ディスクの空き容量がとても重要になります
  • DB2 for i とのやり取りは、仮想テープ装置を使い、外部へのバックアップとしては(私の場合は)FTPを使って、データの出し入れをIFS上のファイル操作で行うようにしました。

保管フロー

原理・原則を理解するためには、手を動かすことが最善の方法ですね。

まずは、テスト系のライブラリー群を保管してみましょう。上記の図の通り、進めていきます。

①仮想テープ装置の作成

CRTDEVTAP DEVD(TAPVRT01) RSRCNAME(*VRT)

②仮想テープ装置を有効化

VRYCFG CFGOBJ(TAPVRT01) CFGTYPE(*DEV) STATUS(*ON)

③イメージ・カタログの作成

  • IFSでは「/TAPEIMAGE」のパスに保管されるようにしました。
CRTIMGCLG IMGCLG(DAILYSAVE) DIR('/TAPEIMAGE') TYPE(*TAP) 

④仮想テープ・ボリュームの追加

  • せっかくなので、2つ作ってみました。FROMFILE(*NEW) で、新規作成となります。
  • また、ALCSTGオプションの指定も重要で、テープ・イメージ・ファイルの初期設定に必要な記憶域のみが割り振られます。
ADDIMGCLGE IMGCLG(DAILYSAVE) FROMFILE(*NEW) TOFILE('VOL001')  VOLNAM('VOL001') ALCSTG(*MIN)
ADDIMGCLGE IMGCLG(DAILYSAVE) FROMFILE(*NEW) TOFILE('VOL002')  VOLNAM('VOL002') ALCSTG(*MIN)

※ 追記 2018-06-08 ※

作成される仮想テープ・ボリュームは、最大サイズが設定されるようです。上記コマンドでは、1GBでした。
IMZSIZオプションで最大サイズを指定することができ、有効な範囲は 48 から 1,000,000 MB となっていました。 

// サイズ10GB のボリュームを作る
ADDIMGCLGE IMGCLG(DAILYSAVE) FROMFILE(*NEW) TOFILE('VOL003') IMGSIZ(10000) ALCSTG(*MIN) VOLNAM('VOL003')

⑤テープ初期化

  • お試しで初期化してみました。物理テープ装置とやり方は一緒ですね。
  • ここでのVOLは、ボリューム IDのことで、④で作成した仮想テープ・ボリューム名を指定しています。
INZTAP DEV(TAPVRT01) NEWVOL(VOL001) VOL(VOL001) CHECK(*NO) 

⑥イメージ・カタログのロード

  • ③で作成したイメージカタログと①で作成した仮想テープ装置を連携させます。これで、仮想テープ装置が使えるようになりました!
LODIMGCLG IMGCLG(DAILYSAVE) DEV(TAPVRT01) 

⑦保管(ライブラリ、オブジェクト)

  • ただ単に、DEVに仮想テープ装置を、VOLでボリューム名を指定しました。
  • ライブラリーは、2つ指定しました。
SAVLIB LIB(TIGERDB TIGERDB2) DEV(TAPVRT01) VOL(VOL001) 

⑧リモート先へバックアップ(FTP

  • リモート先は、とりあえず自分のパソコン上にしました(C:¥temp)。
> ftp AS400IPアドレス
   ユーザー名
   パスワード
ftp> bin
ftp> get /TAPEIMAGE/VOL001 C:\temp\VOL001.stmf
ftp> quit

復元フロー

次に、外部に保管したストリームファイルよりライブラリーを復元してみます。

①仮想テープ・ボリュームをアンロード

  • これを実施せず、何度もFTPでIFS上のファイルを上書きしようと試みましたが、「UNABLE TO OPEN OR CREATE FILE」とメッセージに。
  • 結果的には、仮想テープ・ボリュームのマウントは外してやればオッケーでした。
LODIMGCLGE IMGCLG(DAILYSAVE) IMGCLGIDX(1) OPTION(*UNLOAD) 

②リモート先からIFSファイルを更新(FTP

  • 仕切り直しで、FTPでPUT!
> ftp AS400IPアドレス
   ユーザー名
   パスワード
ftp> bin
ftp> put C:\temp\VOL001.stmf /TAPEIMAGE/VOL001
ftp> quit

③仮想テープ・ボリュームをマウント

  • ①でアンロードしたままなので、再度マウントします。
LODIMGCLGE IMGCLG(DAILYSAVE) IMGCLGIDX(1) OPTION(*MOUNT) 

④ライブラリーを消去

  • ライブラリ内をクリーナップしました。
CLRLIB TIGERDB2

⑤ライブラリを復元

  • 仮想テープ装置では、「TIGERDB」と「TIGERDB2」の2つのライブラリが入っていますが、そのうちの1つを復元してみました。
RSTLIB SAVLIB(TIGERDB2) DEV(TAPVRT01) VOL(VOL001)  MBROPT(*ALL) ALWOBJDIF(*ALL)

これで、復元完了です!!

今回は、1つ1つコマンド化して、説明しましたが、実際に対話型で行う場合には、下記のツールが使いやすいです。

WRKIMGCLG      //イメージ・カタログの処理

このコマンドでは、存在するイメージカタログが表示されますが、OPTION=12で、カタログ内のボリューム操作も可能です。これは、最高ですね!

                          イメージ・カタログ項目の処理                           
                                                          
 カタログ . . :   DAILYSAVE               状況 . . . . :    作動可              
 タイプ . . . :    テープ                 装置 . . . . :   TAPVRT01             
 次の VOL . . :   *NONE                                                         
 ディレクトリー . . :   /TAPEIMAGE                                                    
                                                                                
 オプションを入力して,実行キーを押してください。                               
   1= 追加   2= 変更        4= 除去   6= マウント   8= ロード    9= アンロード  
   10= ボリュームの初期化   11= テープの表示        13= ダンプ   14= 複写       
                                                                                
                                                                                
 OPT   索引    状況       ボリューム  名   密度       タイプ   書き込み保護           
      *AVAIL                                                                    
           1   ロード       VOL001    *VRT256K    *SL      いいえ               
           2   マウント     VOL002    *VRT256K    *SL      いいえ               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                        終わり  
 F3= 終了   F5= 最新表示   F6= イメージ・カタログのロード/アンロード           
 F8= 索引別に再配列   F11= サイズ情報の表示   F12= 取り消し   F24= キーの続き   

最後に、注意事項を紹介して、終わりにします。

注意事項

イメージカタログ内に仮想テープボリュームが存在しないと、イメージカタログをロードできない

LODIMGCLG IMGCLG(DAILYSAVE) OPTION(*LOAD) DEV(TAPVRT01) 
 ロード状況のイメージ・カタログ項目がない。
 イメージ・カタログ DAILYSAVE が装置 TAPVRT01 にロードされなかった。
  • イメージカタログ内には、ボリュームは必ず必要です。当然ですね。

同一の名前のイメージファイルがIFS上に残っている場合、仮想テープボリュームが新規作成できない

ADDIMGCLGE IMGCLG(DAILYSAVE) FROMFILE(*NEW) TOFILE('VOL002') VOLNAM('VOL002') ALCSTG(*MIN) 
 イメージ・ファイルは既にイメージ・カタログ・ディレクトリーに存在しています。
 イメージ・カタログ項目がイメージ・カタログ DAILYSAVE に追加されなかった。 
  • この場合、WRKLNKコマンド等で、「VOL002.stmf」を削除してあげれば、うまくいきました。

仮想テープ・ボリュームがアンロード中の場合、 仮想テープ・ボリュームの初期化はできない

INZTAP DEV(TAPVRT01) NEWVOL(VOL001) VOL(VOL001) CHECK(*NO)
 仮想テープ・ボリュームは使用できません。
  エラーのためにコマンドが終了した。
  • こちらも当たり前でしょう。ただし、ロード状態のときは、初期化処理ができます。

【ACS】OpenJDK8での動作確認

またも、ACSネタです。

これまでは、Oracle Javaを使って記事を書いてきましたが、OpenJDK8でもACSを試してみました。
(Windows10 PC上です)

OpenJDK8のダウンロード、インストール

  • 下記のサイトを参照させていただきました(RedHatアカウントが必要とのこと)。

koboldtodragon.hatenablog.com

今回、私は「OpenJDK 8u151」を選択。「java-1.8.0-openjdk-1.8.0.151-1.b12.redhat.windows.x86_64.msi」を使ってPCへインストールしました。

f:id:no14141:20180525143728j:plain

batファイル作成

先のブログで作成した「5250.bat」を編集します。

set JAVA_HOME=C:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.151-1
set JAR_FILE=C:\Users\tigertaizo\IBM\ClientSolutions\acsbundle.jar
set HOD_FILE=C:\Users\tigertaizo\Documents\IBM\iAccessClient\Emulator\IBM5250.hod
path %JAVA_HOME%\bin

java -jar %JAR_FILE% %HOD_FILE%

無事に5250エミュレーターが起動してきました。

f:id:no14141:20180525081137j:plain

起動時のウィンドウの左上のアイコンは、「RedHat」になっています!

動作的には、まったく問題なさそうです。

f:id:no14141:20180525143755j:plain

ちなみに、OpenJDK9では、実行時に例外が吐き出されてしまいました。現時点では、Java9自体が未対応なのかもしれません。

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.ibm.iaccess.base.AcsSSLSecurityProvider (file:/C:/Users/tigertaizo/AppData/Local/Temp/acs.jar_cache14188513116756890390.dir/4.dat) to field java.security.Provider$Service.aliases
WARNING: Please consider reporting this to the maintainers of com.ibm.iaccess.base.AcsSSLSecurityProvider
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
java.lang.NullPointerException
        at java.desktop/com.sun.java.swing.plaf.windows.WindowsMenuBarUI$1.windowActivated(WindowsMenuBarUI.java:83)
        at java.desktop/java.awt.AWTEventMulticaster.windowActivated(AWTEventMulticaster.java:398)
        at java.desktop/java.awt.Window.processWindowEvent(Window.java:2076)
        at java.desktop/javax.swing.JFrame.processWindowEvent(JFrame.java:298)
        at java.desktop/java.awt.Window.processEvent(Window.java:2023)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4961)
         :

以上、検証結果でした。

【ACS】バッチファイルで5250エミュレータを起動する

前回の記事の通り、ACSはJavaVMの上で動作します。
となりますと、管理者は Javaの知識が必要になるかと思います。

例えば、次のようなケースでは、コマンドからACSを起動してやる必要がありそうです。

  • 初期ヒープサイズ、最大ヒープサイズなどを指定したい(非力なPCの場合)
  • 指定のJavaSEで起動させたい(他のアプリで指定されたJavaを利用しているため)

今回の記事では、Windows10のパソコン上で、初期ヒープサイズを指定し、指定したJavaSEのVersionで起動するバッチファイルでACSを起動する方法を書きとめておきたいと思います。

ACSドキュメントについて

  • 事前学習としまして、インストールしたフォルダ内にある「操作ガイド」を参考にしました。

file:///C:/Users/tigertaizo/IBM/ClientSolutions/Documentation/GettingStarted_ja.html

ACSの起動方法

  • Windowsの場合、通常のアプリケーション起動は、「acslaunch_win-64.exe」(64ビットOSの場合)の実行ファイルをクリックすれば起動しますが、バッチファイルでは「acsbundle.jar」という jarファイルを実行します。

実行ファイル

C:\Users\tigertaizo\IBM\ClientSolutions\Start_Programs\Windows_x86-64\acslaunch_win-64.exe

jarファイル

java -jar C:\Users\tigertaizo\IBM\ClientSolutions\acsbundle.jar

指定したJavaSEでの実行

  • こちらは、pathの環境変数で、コントールできそうです。
  • バッチファイル上で、path命令を使えば、実行したいjava環境でACSを起動できます。
set JAVA_HOME=C:\Program Files\Java\jre1.8.0_172
path %JAVA_HOME%\bin

ヒープサイズ

  • 次に、ヒープサイズのチューニングです。下記のサイトが参考になりそうです。

n-agetsuma.hatenablog.com

とりあえず、デフォルト最大ヒープサイズとデフォルト初期ヒープサイズを2GBで起動する設定を書いてみます。

  • デフォルト最大ヒープサイズ(-Xmx)
  • デフォルト初期ヒープサイズ(-Xms)
set MAX_HEAP_SIZE=2048m
set DEFAULT_HEAP_SIZE=2048m
java -Xms%DEFAULT_HEAP_SIZE% -Xmx%MAX_HEAP_SIZE% -jar acsbundle.jar

Java Mission Control」ツールで確認すると、きちんと約2GBの最大ヒープ・サイズになっているようです。

f:id:no14141:20180524210640j:plain

バッチファイルのサンプル(HODファイル読み取り)

  • 下記のサンプルでは、すでに定義済みのHODファイルを起動するように設定しました。
  • 完成したバッチファイルは、こちら ↓

5250.bat

set JAVA_HOME=C:\Program Files\Java\jre1.8.0_172
set JAR_FILE=C:\Users\tigertaizo\IBM\ClientSolutions\acsbundle.jar
set HOD_FILE=C:\Users\tigertaizo\Documents\IBM\iAccessClient\Emulator\IBM5250.hod
set MAX_HEAP_SIZE=2048m
set DEFAULT_HEAP_SIZE=2048m

path %JAVA_HOME%\bin

java -Xms%DEFAULT_HEAP_SIZE% -Xmx%MAX_HEAP_SIZE% -jar %JAR_FILE% %HOD_FILE%

実行時のコマンドプロンプト画面を表示しないで起動する

以上で終わりではなくて、先に作成したバッチファイル(ex: 5250.bat)をクリックすると、DOS窓が残ってしまいます。

こちらについては、下記のサイトを参考にさせてもらい、別途同一フォルダに設置した「5250.vbs」をクリックして、DOS窓非表示で無事にACSを起動させることに成功しました!

qiita.com

f:id:no14141:20180524220607j:plain

あとは、vbsファイルをデスクトップにショートカットを作って、アイコンを変更すれば、それらしくなるでしょう。

オッケー、オッケー!!

【ACS】日本語入力で動作が重くなる現象あり

Windows7環境では、AS400へアクセスするために5250エミュレーターソフトは「IBM i Access for Windows」のものを利用していました。
しかし、Windows10環境では「IBM i Access for Windows」が使用不可とのことで、その代わりのソフトウェアとして「IBM i Access Client Solutions」が登場しました。
ACSとは、「Access Client Solutions」の略になります。

https://www.ibm.com/support/knowledgecenter/ja/ssw_ibm_i_72/rzajr/rzajracsintro.htm

この「IBM i Access Client Solutions」は、JVMJava VM)の上で動作します。

おそらく、IBMとしては、今後半年周期で行われることになったWindows10のメジャーアップデートに対抗しての処置だと思われます。 JVMの上であれば、プラットフォームを選びませんし、安定した稼働が見込めると判断したのでしょう(あれ? ACS登場→MS発表だったかな!?)。

f:id:no14141:20180516131028j:plain

しかしながら、先々月頃から突然、ユーザーから「動きが重くなった!」という声が届くようになりました。

「動きが遅い?」と言われてから、早速調査していくと、どうやら「日本語変換」の時に動作が重くなっていることがわかり、 その後、ACSのVersionを変えたり(1.1.7.1→ 1.1.7.2)、日本語入力ソフトを変更するなどしても、一向に改善されず。。。

すると、ベル・データさんのサイトから、下記の情報を入手(サイコーすぎ)!

www.e-bellnet.com

ACSの問題ではなく、原因はJava側だったというオチでした。

現時点で、複数のJava8のVersionで試験したところ、現時点での最新版8u172でもこの問題は解消されました。

Java Version(64bit) 動作
8u151
8u152
8u161 ×
8u162 ×
8u171 ×
8u172

今後は、ACSのVersionだけでなく、JavaのVersion管理もきちんと行っていく必要がありそうです。

めでたし、めでたし。

あれ? Javaについては「Oracle Java」が有償になるんだったはず。
今後は、オープンソースJVMでのACS検証が必要になりそうですね。

Windows10 メジャーアップデート「Fall Creators Update」適用時の注意点(DVDメディアから)

先週末、オフィスのWindows10のパソコン(1703 Creators Update)を、1709の「Fall Creators Update」へメジャーアップグレードをしようとしたところ、何と、最新Versionの「1803 April 2018 Update」になってしまいました!!(1709用のDVDメディア使用)

f:id:no14141:20180514201745j:plain

さすがにエンタープライズ系のPCで、出たばかりのOS適用は、危険すぎます(セキュリティ対策ソフト等が最新版OSに対応していないため)。

それにしても、1703から1803へ一気にアップデートされるのですね。勉強になりました。。。

仕切り直しで、別のPCで1709が適用されるようにリトライ! 結果、うまくいきました。

結論的には、インストール設定「重要な更新プログラムをインストールします」のところで、
「今は実行しない」を選択すれば、大丈夫でした。
※「1803 April 2018 Update」になってしまった時は、推奨の「更新プログラムをダウンロードしてインストールする」を選択しておりました。

f:id:no14141:20180514202443p:plain

f:id:no14141:20180514202452p:plain

f:id:no14141:20180514202501p:plain

f:id:no14141:20180514202510p:plain

f:id:no14141:20180514202523p:plain

ただし、この場合、最新のセキュリティパッチが適用されていないため、別途、メジャーアップデート後にWindows Updateをする必要がありそうです(自動更新で適用されますね)。

いずれにしまして、毎年2回、いろいろと骨が折れそうです。。。

「テレビ東京ビジネスオンデマンド」のスマホ版が倍速対応へ

去年の夏に、下記のようなブログを書きました。

tigertaizo.hatenablog.com

その中で、スマホの倍速再生機能を熱望しておったのですが、本日のアップデート(Ver3.0)より、ついに倍速対応(1.5倍速だけでなく、2.0倍速もあり)となりました!!!!!

テレビ東京ビジネスオンデマンド

テレビ東京ビジネスオンデマンド

  • TV TOKYO Communications Corporation
  • ビジネス
  • 無料

素晴らしいです。

昨年の春にサポートデスクさんへは、スマホ版の倍速再生は出ないのか、メールさせていただいていました。
その際のお返事では、丁寧なご回答をいただいており、期待していたのですが、その1年以内にコミットしてくださるとは感謝、感激、雨あられです!

まだ、PCでは1.5倍速までしか対応していないので、欲を言えば、そちらも2.0倍ができると嬉しいですが、そこまで欲しがってはいけませんね。
今後は、スマホで情報収集する機会が増えていきそうです。

テレビ東京ビジネスオンデマンド」の開発者の方、ありがとうございます!!!!!!!!!!
感謝!

「ストレングス・ファインダー」をやってみた

1/7の「Points of You®」の講座中に教えてもらった書籍『さあ、能力に目覚めよう - STRENGTHS FINDER2.0』。

帰りの新幹線で、早速Amazonに注文したまでは良かったのですが、その診断テスト(自己の資質、強みを調べる)を実施するのが少し遅くなってしまいました。。。

先週にWebテストを試してみたので、その感想をまとめておきたいと思います。

www.gallupstrengthscenter.com

資質とは?

そもそも『資質』ってなんなの? ということで、調べてみました。

デジタル大辞泉の解説では、「生まれつきの性質や才能。資性。天性」とありました。
”生まれ持った自分の性格や才能”ってことですね。

CliftonStrengthsテストでは、「非常に多くの人々が、自分の最も得意なことを見つけてきました。今日から自分の強みを使い始めましょう」と解説されている通り、確かに不得意なコト(特に仕事)に自分の大切な時間を投入し続けていても、思い通りの成果が出ないかもしれません。

これまでも、営業向きでない方が営業職で苦しんでいたり、技術が好きで伸び伸びと難しい仕事をこなしているエンジニアの方を見たりしていると、よりその認識が強くなります。
つまり、自分の得意分野で自分の強みを発揮して成果を出そう!ということでしょう。

CliftonStrengthsでは、次の34の資質に分類されているようです。

実行力資質群 影響力資質群 人間関係構築力資質群 戦略的思考力資質群
アレンジ 活発性 運命思考 学習欲
回復志向 競争性 共感性 原点思考
規律性 コミュニケーション 個別化 収集心
公平性 最上志向 親密性 戦略性
慎重さ 自我 成長促進 着想
信念 自己確信 調和性 内省
責任感 社交性 適応性 分析思考
達成欲 指令性 包含 未来志向
目標志向 ポジティブ

自分には、いったいどんな強みがあるのでしょうか?

自分ではわかっているつもりでも、「ジョハリの窓」の自分が知らない窓(盲点の窓、未知の窓)が見えるかもしれません。

f:id:no14141:20180127170622j:plain

本の附録でトライできるのは、「Top5の強みを見つけるためのテスト」になります。

パソコンに向かって、約30分程度。

1つの質問の回答制限が20秒なので、誰にも邪魔されず、体調も万全のときに実施するのがおすすめです(事前にトイレにも行っておきましょう! 子どもか!)。

直訳のせいなのか、「質問の意味が理解できな~い!!」って問いも数問ありましたが、直感でどんどん進めていきましょう。

事前予想

始める前に、34の中から自分の資質を予想してみるのも楽しそう。ということで5連複を2点買いで! 以下が自分自身の事前予想です。

  • 学習欲か成長促進
  • 原点思考
  • 公平性
  • 責任感
  • 分析思考

STRENGTHS FINDER 結果

さあ、結果発表です。

  1. 学習欲 (戦略的思考力資質)
  2. 収集心 (戦略的思考力資質)
  3. 分析思考(戦略的思考力資質)
  4. 目標思考(実行力資質)
  5. 戦略性 (戦略的思考力資質)

何と、自分でもわかってしましたが、自分は「学習やデータが大好き!」。予想通りの結果となりました。
それにしても、5分の4が「戦略的思考力資質」とは、自分でも驚きです。

STRENGTHS FINDERをどう活していくか?

学習欲については、磨きをかけるためにアウトプットをする機会を見つけようとありました。

20代のとき、極真空手の練習後に、師範代から「人間は常に昨日の自分より成長していかねばならない。死を迎えるその時まで向上していくべきである。また、その死の瞬間が、人生で最も輝くときなのだ!」という熱い言葉をいただいたことがあります。
その言葉がずっと私の頭の片隅に残っていて「生涯、学び続けなれば!」という思いが人一倍あるのかもしれません。

是久昌信さんのメルマガを読んで、自分の座右の銘「生涯青春、生涯成長!」を追加したところでありました。

収集心、分析思考は、小学6年生のときに、ファミコンソフトの「燃えろ プロ野球!」をコンピュータ相手に130試合戦い、巨人の選手の打率、本塁打、打点をノートに計算したことを思い出しました。
ホント、子どもって時間があったのですね。たしかクロマティが毎試合ホームランを打って、最終的に150本くらいカウントしたように記憶しています。原は何とか20本だったか?

また、コレクションが趣味で、HR/HMのCDは1,000枚以上、所有していましたが、結婚を機にすべて売却できました。
今でも収集しているのは、「競馬G1レースのテレカ、クオカード」と「ギタリストのピック」くらいでしょうか(これらは場所を取りません)。

やはり、今後の私の生き方としましては、「戦略的に学習し(INPUT)、仕事や生活に活かしていく(OUTPUT)。結果、周りの人達をいい方向に導く」。これを意識して実践していこうと、より強く認識することができました。

机に向かって、調べたり、勉強したり、読書をしたり。ずっとやっていても苦にならないことは、ズバリ私の最大の強みだったということですね。
ということで、今年はブログ記事50件(週1ペース)を目標リストに追加しました! アウトプットを継続できるように。

最後に、気になるのは、自分の薄い資質について。Webで「全34の強みへのアップグレード付き電子書籍(US $69.00)」を購入すれば、確認できそうですが、今回はTOP5までで我慢しておきます。

ぜひ、あなたの上位資質がこれまででどう役立ってきたかを思い出してください。 そうすれば、その資質を「強み」に向かわせるようにコントロールすることができます。 あなたの資質を誰か他者のために使うことができるようになったとき、 原石だった資質は磨かれたダイヤモンドのように輝きを放ち、周囲を照らしはじめるでしょう。 自分にない資質をうらやむのではなく、自分が持つ資質を認めてそれを受け入れたときにこそ、 あなたはそれを使ってすばらしい結果を出すことができます。 あなたではない他の誰かになるのではなく、自分が持つ資質を磨いてあなたらしさを極めていくのです。 自分らしくあることは決して自己中心的なことではなく、自分らしいかたちで誰かのために貢献することなのです。(本書より 引用)