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

AS400, Java, JavaEE, JSF等の開発、習慣など。日々の気づきをまとめたブログ(備忘録)

2023年のふりかえり(マイ・ベスト3)

あけましておめでとうございます。
今年もよろしくお願いいたします!

昨年も、自分の強みについて、探求する年となりました。

3つの出来事を通して、振り返ってみたいと思います。

3位「ハーフマラソン、フルマラソンでPB」

まずは、私のライフワークの1つである「走ること」を1年を通して、継続できたことでしょうか。

それにしても昨年は、猛暑・酷暑で、非常にしんどい「夏」でした!

そんな中、ハーフマラソンで「1:40:36」、フルマラソンで「3:49:34」と、自己ベスト(PB)を更新できました。

特に8月下旬から11月下旬にかけては、『限界突破マラソン練習帳』の「サブ3.5」の練習メニューをやりきり、ほぼほぼプライベートは、RUN中心の生活となっていたように思います。

年代が変わっても、「全力でチャレンジしていいんだ!」と自分に自分でOKが出せた気がしています。

1年間、風邪もひかず、怪我もなく、動き続けることができたからこその結果だと思います。

今年も、「健康第一」で!

体の不調を感じたら、「葛根湯」を飲んで、早めの「就寝」を心がけます!

2位「電子書籍2冊発売」

昨年の1月末に、私自身初となる「電子書籍Kindle)」を発売することができました。

こちらが第2位です!

それから半年後の6月には、私のエッセイ本をリリース!

横書き、縦書きとリリースすることができて、大満足。

現在3冊目を書いているところですが、少しスランプ状態。今年の最大の目標になりましょう!

1位「師匠2人に直接会う」

第1位は、つい先日の話ですが、東京まで遠征し、2人の師匠に直接お会いして「感謝」を伝えることができたこと!

コロナ禍に、オンラインでそれぞれの「学び」の機会を得た私は幸せ者だと思います。

いつか、直接会って、話がしたい!

学んで2年以上経っていましたが、そうした「感謝」の思いは、必ずお伝えすると決めていたので、12月末に同時に叶えることができました!!!

お二人とは、またお会いすることはあるでしょう。

去年の年末が「いい節目」だったなぁ~と2024年になって感じているところであります。

まとめ

2023年の私の漢字1文字は「会」になります。

師匠以外にも、「人」に直接会うことがたくさんありました。
新しい仲間、去年加入したサロンのお仲間などなど。

また、マラソンや書籍出版を通して、新しい自分自身にも出会えた気がしています。

さて、今年はどんな年にしていきましょうか?

昨年以上に「アウトプット中心」の行動を取っていきたいと思っています。

まだまだ具体的にはなっていませんが、まずはそう「想うこと」が先でしょう。

今年も引き続き、よろしくお願いいたします!!!

たいぞー・パーティ完成!

構想2年、実装数週間。

ついに、「たいぞーパーティ」という名のオンラインで使えるアプリ集が完成しました!

とはいえ、まだベータ版です。

できるアプリは、2つだけ。

「写真で一言!」と「心フルワス!質問シャッフル!」になります。

2つのコミュニティで試してみたところ、なかなか盛況だったと自負しています。

最終的には、本家「マリオパーティ」のようにしていきたいのですが、そうですね、アプリは10本は作っていきたいところ。

まずは、同じフレームとはいえ、2つのアプリができたので、自分で自分を褒めるといたしましょう!

これも、今年の目標のひとつでしたので、超スッキリ!

あと2日あるので、残タスクをジャンジャンとクリアしていきますよぉ~!!!

【NetBeans】 NetBeans8.2 から Apache NetBeans20 へ移行

何年も「NetBeans8.2」を使い続けてきました。

世の中的には、「Apache NetBeans」になっているというのに、ずっと、IDEを移行するタスクが先延ばしにしてしまっていたのですね。

開発を再開するに当たり、このタイミングで、「Apache NetBeans」に移行することにしました。

2024年も好スタートを切りたいですしね!

現状の開発環境の確認

このようなVersionになっています。少なくてもJava11にはしたいところですが、まずは安定運用が大切!

Java11以降に上げるのは、次の課題です。

移行作業

(1) JDK 11の配備

Apache NetBeansでは JDK11以上が必須とのこと。

jdk.java.net

OpenJDK11をダウンロードして、「C:\apps\jdk\jdk-11.0.2」へ配備。

(2) Apache Netbeans20のダウンロードとインストール

netbeans.apache.org

Apache-NetBeans-20r1-bin-windows-x64.exe」を取得して、インストール!

JDKの指定を(1)のパスに設定変更する必要があります。

(3) IDE起動

NetBeans8.2とは、別のアプリとして導入されました。アプリ一覧の中の「Apache NetBeans IDE 20」をクリック!

起動後は、メニューから「プロジェクトを開く」で既存のプロジェクトをOPENします。

(4) Dependency設定変更

一度、Mavenのビルドを実施すると、Lombokでエラーになってしまったので、最新版のLombokへ「pom.xml」ファイルのdependencyの設定変更を行いました。

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.30</version> <!-- 1.16.10 から変更 -->
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok-maven-plugin</artifactId>
    <version>1.18.20.0</version> <!-- 1.16.10.0 から変更 -->
</dependency>

この設定変更で、ビルドは成功!

(5) Serverの追加

自PCには、すでに「Payara4」のサーバが配備してありますので、こちらを追加していきます。

この設定は、8.2と同じ感じですね。

これまで通り、IDEからAPサーバを起動できるようになりました。

(6) デプロイ

あとは、プロジェクトの実行で、アプリケーションが「Payara」にデプロイされ、無事にアプリを起動することができました。

まとめ

とりあえずは、IDEの移行は成功したといえそうです。

画面をダークモードに変更したり、フォントを変えたり、CheckStyleを適用したり、細かい設定変更まで行うことができました。

まだ、本格的にコードを書いてはいませんので、これからどうなるかわかりませんが、とりあえず新しい環境で開発を進めることができそうです。

この調子で、JDK、APサーバ、内部ライブラリと、塩漬けしないように前進していく所存です!

Evernote「読書記録」のお引越し

2023年12月4日より、Evernoteの無料プランが大幅制限され、ノートの上限数が10万件から50件に削減されました。

www.itmedia.co.jp

これを受けて、引っ越し作業が「待ったなし」となりました。

Evernoteの中で、最も大切なものは、私がコツコツまとめてきた「読書記録」でした。

読んだ本すべてがまとめてあるわけではありませんが、Evernoteの「読書記録」を調べてみると、600件以上ありました。

無料枠のノート数上限が50件なので、すでに大幅にオーバーしています(TT)

これまでの記録は閲覧できるのでしょうが、追加できないのは、もう致命的ですね。

というわけで、お引越しです!

引越し先は、Notion一択!!!

調べてみると、EvernoteからNotionへのインポート機能は、すでに標準搭載済みでした。

「読書記録」のノートブックを選択して、待つこと数十分?で、下記のようなページがNotion上に作成されました!

素晴らしい!

これまでは、読書記録やマニュアル、スクラップ記事などの情報はEvernoteセミナーやオンライン教材での学び、開発情報はNotionにまとめて、住み分けをしていたのですが、これで一本化することができました。

Notionの読書記録を見ると、しっかり画像ファイルも移行されているし、言う事なしです。

それにしても、無料で便利に使い続けるというのも、世の中的に限界が来ているのかもしれませんね。

Notionに課金するか、Dropbox Paperなのか、これから先はどうなるかわかりませんが「情報はお金を払って管理してもらい、便利に活用する」という意識が必要になりそうです。

最後に、読書記録は移行できたはいいけど、最近、あまり本が読めていませんね。

年末年始が大チャンスでしょうか!?

MQ開発、はじめました~!

IBM MQ」を業務で使っております。

IBM i Server」で使用しているのですが、今回、「Windows Server」に移行するために、基礎から「MQ」を学ぶことになりました。

この歳になっても、持っていないスキルを学べるなんて、最高にワクワクしてしまいます!

これも、私が持っている資質の「学習欲」がそうさせているのでしょうか(ストレング・ファインダーでは2位なんです)。

さて、どんな風に、検証を行っていくか?

私の場合、その対象についての「チートシート作り」から始めていることに気が付きました!

チートシートとは、下記のサイトに掲載されているような早見表。

qiita.com

A4用紙 1枚にまとまっているので、とても使いやすいのです。

それを学びながら、自分でまとめていく作業が非常に心地よい!

今回のMQであれば、こんな感じです。

アクション コマンド
MQ Version確認 dspmqver
キュマネージャーの確認 dspmq
対話モードの開始 runmqsc QMGR名

まだまだ作成途中ですが、愛着のある手作りの「チートシート」を使って、実機で動作検証していくことで、血肉になっていくことでしょう。

最終的には、リモートのAPサーバのJavaアプリから、MQを操作するところまで実現させる必要があるので、追って、サンプルコードなども紹介しつつ、自分自身の知見を深めていくつもりです。

コミュニティの空気感

これまでたくさんのコミュニティに参加してきました。

居心地がいい場もあれば、自分には合わないなぁ~と感じる所もありました。

個人との相性もあるように、コミュニティとの相性も「2:6:2」なのかもしれません。

「2:6:2」とは、「2:6:2の法則」のこと。

人間関係に当てはめてると、2割の人が自分に対して好意的であり、もう2割の人は自分を受け入れてくれず、残り6割はそのどちらでもないというもの。

なので、自分との相性バツグンのコミュニティは、必ず存在するはずなのですね。

最近、感じるのは、やはり、ファシリテーターの存在です。

「場」の空気を作るのは、間違いなく、ファシリの方で、ちょっとした「間」の取り方、全体に向ける温かい表情などで「安心感」に包まれてしまうのですよ!

もし、新しいコミュニティにJoinする場合には、ぜひ、その「空気感」を味わってみてはいかがでしょうか?

自然豊かな草原に行ったなら、両手を広げて、思いっきり「空気」を吸うじゃないですか!

オンラインであっても、きっと感じることはできるはず。

時間もお金を有限です。

相性のいい所に身を置きましょう。
もしくは自分がその「場」を作るというのも選択肢の1つかもしれませんね。

最後に、世界中のコミュニティで、その「場」を作ってくださっている方に、心からの感謝をお伝えしましょう!

そんな方々がいるからこそ、我々はJoinできるのですから……。

テスターとしての気づき

先週から、ひたすらバッチ処理のテストを行っています。

テスト仕様書を作り、愚直に1つずつ、1つずつテストケースをこなしています。

半年以上ぶりにテストを行ってみて、「心得」的なものをまとめておきたいと思います。

ちなみに、小規模な開発チームなので、「プログラマー=テスター」です!

ユーザーの立場になる(UIテストの場合)

まずは何と言ってもこちらでしょう。

今回はバッチPGMなので、「1 + 1 =」 が「2」になればOK!

とはいえ、画面開発なんかは、使ってくれる方がどんな思いで操作をするかをイメージしながらテストをすることは、もうマストといっていいでしょうね。

相手の立場に立って、徹底的に動作検証を行う。

それにより、テスト仕様書の内容も変わってくるはずです。

思い込みを捨てる

これが超・重要です!

仕様通りに行っても、テストを速く終わらせたい欲求から、「きっとこうだろう!」と思いがちです。

さらに、ユーザーは予想もしないような操作を行うケースがあります。

今まで、何度もその場面に直面してきたからこそ、声を大にして言いたい!

この操作は「当たり前!」などと思わずに、フラットな心理で、テストを実施していきたいものです。

テストケース設計時にも大事になってきます。

クリーンなテストデータを使用する

テストケースで使うデータは、テスト専用のデータだったりします。

となると、テストデータではOKだったけど、本番になったら例外が発生するなんてことも!?

とくにデータ量には意識した方が良さそうです。

まあ、負荷テストなんかも行うので、そこで非効率なSQLに気づいたりもするのですが。

仕様に沿ったデータで、テストをしましょうという話です。

Fast! Fast! Fast!

丁寧にやることは、もちろんなのですが、とにかく確実に速く終わらせることです。

そのためにも、テスト作業を短縮させる仕組みを作ることが大事。

毎回同じ操作をやっているなと思ったら、テスト結果に影響の無い範囲で、自動化したり、単一化したりするべきだと思っています。

とはいえ、きちんと休憩を取ること。

テスト作業は、コーディング以上に神経をすり減らすことになるので(私だけ?)、定期的に背伸びをする、コーヒーの飲むなどして、リフレッシュしましょう。

私は「ポモドーロ・テクニック」を取り入れています。

完成品に近づいている感覚を味わう

最後は、1つ1つの作業を通して、完成品に近づいているんだ!という感覚を味わうことになりますか。

まさにテストは、「使命感」が「貢献感」に変わる行為だと思っています。

私の大好きな名言、「ひとつだけ拾えばひとつだけきれいになる(鍵山秀三郎氏)」の通り、コツコツ、コツコツとテストを続けて、すべてをコンプリートすることで、大切なリリース日を迎えることができるでしょう。


まとめ

まだまだテストは、続きます。

つまり、自分へ言い聞かせるため、奮起を促すためにこんな記事を書いてみました。

きっと数年後に見る日も来るでしょう。

今は、こんな気持ちでテストをしているという事実を記したかった。

完全に自己満ではありますが、あらためて「テストの大切さ」を実感することができました。

引き続き、テストを丁寧に、素早くやりきります!